In what is one of the most challenging projects, students
write a new scheduling policy for the Linux kernel. This
is the rst assignment which requires students to manip-
ulate a substantial portion of core Linux kernel code. To
mitigate the daunting task of implementing a new sched-
uler, we leverage the modular scheduling framework in Linux
which provides several examples of self-contained schedulers.
We encourage students to use these existing schedulers as
templates. The new scheduling policy trades fairness and
throughput for responsiveness, a key metric in mobile de-
vices. We call our new scheduler, Display Boosted Multi-
level Container" (DBMC) scheduling, and the primary ob-
jective of this scheduler is to oost" the priority of fore-
ground applications. Since mobile devices typically display
a single application at at time, boosting the priority of this
single, foreground, application decreases its execution time
and increases the apparent device responsiveness.