$24
**Developers**: Diego Magdaleno, Shawn Chumbar, Sean Dow
## Building the kernel
Two files are modified and must be placed inside the kernel source code: `sched_ule`, and `kern_switch.c`. You can copy them in manually, or run:
sudo make install
and copies of them will be added to the directory `/usr/src/sys/kern`. Please note that in most cases the command must be run as root (hence the sudo).
Once the files are in place, move to the directory `/usr/src/` and run:
sudo make buildkernel # compiles the kernel
sudo make installkernel # installs the kernel
You can add the -DKERNFAST flag to the first command to speed things up.
Upon rebooting, the kernel should be running.
To remove the files from `/usr/src/sys/kern`, run:
sudo make uninstall
But please note that it won't add the original ones back in -- your kernel source code will simply be incomplete.
## Benchmarks
To build the benchmark executable, run:
make benchmark
The executable will be compiled. To run it, simply type `./Benchmark`.
The benchmark runtime can vary significantly depending on the system, but shouldn't take more than a minute or two. Once it's complete, two files will be created. The first is `benchmark_results.txt` which, as the name suggests, contains the results of the benchmark. The second file is called `dmesg_output` and is the section of the kernel logs that was examined in the benchmark. You're free to do your own analysis of it if you so choose.