Achieving speed and flexibility by separating management from protection: embracing the Exokernel operating system

  • Authors:
  • Tim Leschke

  • Affiliations:
  • Illinois Institute of Technology, Chicago, Illinois

  • Venue:
  • ACM SIGOPS Operating Systems Review
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

The modern operating system is currently caught in a tug-of-war between two forces. At one end, there is a force that is demanding that the operating system become more flexible to handle the needs of evolving hardware and evolving user applications. At the other end, there is a force that is demanding that the operating system become more efficient to meet the needs of faster hardware. If the modern operating system does not keep pace with these two forces, it could cause the progress in computer design to become stagnant. One possible solution to this problem is the Exokernel Operating System - an extensible (or easily modifiable) operating system developed at the Massachusetts Institute of Technology. Extensibility allows the operating system to be flexible to change and also open to optimization. Extensibility within an operating system has resulted in several new issues. For example, extensibility seems to make customer-support harder to provide. Furthermore, some multithreaded applications perform worse in an extensible environment. Lastly, some have argued that it is optimization, not extensibility, that should be credited for the enhanced operating system speeds. In this paper, we discuss the Exokernel Operating System with some detail. We explore some of the issues that have kept the Exokernel design from being the main-stream approach. We propose solutions to these issues and we conclude by trying to motivate the reader to embrace the Exokernel approach.