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

  • Authors:
  • Gilles Muller;Julia L. Lawall;Herve Duchesne

  • Affiliations:
  • EMN-INRIA, LINA;University of Copenhagen;EMN-INRIA, LINA

  • Venue:
  • HASE '05 Proceedings of the Ninth IEEE International Symposium on High-Assurance Systems Engineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Writing a new scheduler and integrating it into an existing 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 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.