Safe Kernel Extensions


General-purpose operating systems are ill-equipped to meet the quality of service (QoS) requirements of complex real-time applications. Consequently, many classes of real-time applications have either been carefully developed to compensate for inadequate system support, or they have been developed to run on special purpose systems. This work focuses on a safe extension architecture for general purpose systems, to allow applications to customize the behavior of the system for their individual needs. Using Linux as the basis for our work, we enable application programmers to safely incorporate `service extensions' into the kernel, so that application-specific QoS guarantees can be provided. We introduce the notion of `QoS safety', which is concerned with meeting the QoS constraints of applications while maintaining system integrity. 

Our safe extension architecture supports the dynamic-linking of code into the address space of the kernel, to affect service management decisions. Using this approach, we are implementing several service managers  (such as CPU and network service managers), that adapts the scheduling of various real-time tasks and network flows, to ensure their service constraints are met even when there are  run-time changes in resource demands. Extensions are written in a type-safe language, to monitor and adapt resource usage on behalf of specific applications. By embedding code inside the kernel, finer-grained management of system resources can be achieved. Experimental results show that safe kernel extensions can lead to fewer service violations (and, hence, better qualities of service) for real-time tasks, compared to user-level methods that monitor and adapt system resources.


Related Projects

User-Level Sandboxing: Efficient User-Level Sandboxing Techniques for Extensible Services.
Linux DWCS:
Dynamic Window-Constrained Scheduling for Linux.

Selected Papers

  • Richard West and Gabriel Parmer, "Application-Specific Service Technologies for Commodity Operating Systems in Real-Time Environments", in Proceedings of the  12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 2006), April 2006
  • Richard West and Jason Gloudon, " 'QoS Safe' Kernel Extensions for Real-Time Resource Management", in the 14th EuroMicro International Conference on Real-Time Systems, June 2002


  • 'QoS Safe' Kernel Extensions for Real-Time Resource Management , 14th EuroMicro International Conference on Real-Time Systems, June 2002

Department of Computer Science , Boston University

Page maintained by Rich West