A Framework for Simplifying the Development of Kernel Schedulers: Design and Performance Evaluation

G. Muller, J.L. Lawall, H. Duchesne
10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems  
Writing a new scheduler and integrating it into an exist- ing OS is a daunting task, requiring the understanding of multiple low-level kernel mechanisms. Indeed, implementing a new scheduler is outside the expertise of application programmers, even though they are the ones who understand best the scheduling needs of their applications. To address these problems, we present the design of Bossa, a language targeted toward the development of scheduling policies. Bossa provides high-level
more » ... igh-level abstractions that are specific to the domain of scheduling. These constructs simplify the task of specifying a new scheduling policy and facilitate the static verification of critical safety properties. We illustrate our approach by presenting an implementation of the EDF scheduling policy. The overhead of Bossa is acceptable. Overall, we have found that Bossa simplifies scheduler development to the point that kernel expertise is not required to add a new scheduler to an existing kernel.
doi:10.1109/words.2005.7 dblp:conf/words/MullerLD05 fatcat:3347yav3wjck3hrkn5hrauil7y