Loading…

The Flux OSKit: A Substrate for Kernel and Language Research

Implementing new operating systems is tedious, costly and often impractical except for large projects. The Flux OSKit addresses this problem in a novel way by providing clean, well-documented OS components designed to be reused in a wide variety of other environments rather than defining a new OS st...

Full description

Saved in:
Bibliographic Details
Main Authors: Ford, Bryan, Back, Godmar, Benson, Greg, Lepreau, Jay, Lin, Albert, Shivers, Olin
Format: Report
Language:English
Subjects:
Online Access:Request full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Implementing new operating systems is tedious, costly and often impractical except for large projects. The Flux OSKit addresses this problem in a novel way by providing clean, well-documented OS components designed to be reused in a wide variety of other environments rather than defining a new OS structure. The OSKit uses unconventional techniques to maximize its usefulness, such as intentionally exposing implementation details and platform-specific facilities. Further the OSKit demonstrates a technique that allows unmodified code from existing mature operating systems to be incorporated quickly and updated regularly, by wrapping it with a small amount of carefully designed glue code to isolate its dependencies and export well-defined interfaces. The OSKit uses this technique to incorporate over 230,000 lines of stable code including device drivers, file systems, and network protocols. Our experience demonstrates that this approach to component software structure and reuse has a surprisingly large impact in the OS implementation domain. Four real-world examples show how the OSKit is catalyzing research and development in operating systems and programming languages. Published in Proceedings of the 16th ACM Symposium on Operating Systems Principles, 1997. Presented at the 16th ACM Symposium on Operating Systems Principles held in Saint-Malo, France in Oct 1997. Sponsored in part by Rome Laboratory.