Surplus Fair Scheduling (SFS) [1] is a practical instantiation of GMS which provides
proportionate allocation and performance isolation to applications.

Deadline Fair Scheduling (DFS) [2] is a proportional-share
multiprocessor scheduler based on the notion of P-fairness, which is
a stricter form of proportional-share fairness.

Start-time Fair Queuing (SFQ) [3] is a uniprocessor
proportional-share scheduling algorithm based on GPS (Generalized
Processor Sharing). It has been implemented as a multiprocessor
algorithm for comparison purposes.

These algorithms have been implemented in the Linux kernel version 2.2.14.

We have implemented Surplus Fair Scheduling (SFS) [1] and Deadline
Fair Scheduling (DFS) [2] scheduling algorithm in the 2.2.14 Linux kernel. In addition,
we have also implemented a non-hierarchical version of Start-time Fair Queueing (SFQ) [3]
in the same kernel for comparison purposes. The schedulers were developed and tested on RedHat Linux
6.0. While we believe the code should work on othere versions of Linux, we haven't verified it due
to resource constraints.