A2A_ExtKernels - Operating System Architectures Kernel...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
Operating System Architectures Kernel Design: Extensible Operating Systems
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
References “Exokernel: an Operating System Architecture for Application-Level Resource Management”, Dawson R. Engler, M. Frans Kaashoek, and James O’Toole jr; Proc. of the 15th ACM Symposium on Operating Systems Principles (SOSP ’95), December 1995. “Extensibility, Safety and Performance in the SPIN Operating System”’, Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Mar E. Fiuczynski, David Becker, Craig Chambers, Susan Eggers, Proc. of the 15th ACM Symposium on Operating Systems Principles (SOSP ’95), December 1995.
Background image of page 2
Hierarchy of Communication Mechanisms (Fastest to Slowest) Function calls within same process System calls (mode switch) Context Switch (process switch) IPC between processes (message passing, on the same or different machines)
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Motivation for Extensibility The traditional OS provides various abstractions of system resources (virtual address spaces, processes, files, interprocess communication) Provides general-purpose resource management algorithms System calls define user interface to OS Able to handle most applications, but handles no applications perfectly because there’s no easy way to specialize the OS to individual needs.
Background image of page 4
Motivation (2) Make operating systems more responsive to applications’ needs; e.g., Do your own scheduling Choose your own page replacement algorithm Authors of the SPIN paper say they were “…motivated by the need to support applications that present demands poorly matched by an operating system’s implementation or interface .”
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Cost of High-Level Abstractions OS use of high-level abstractions hides info that applications could use to manage their own resources; e.g. Database systems may be forced to build random-access files on top of the OS file system Performance and functionality are limited A large, unmodifiable OS can’t easily incorporate new research developments.
Background image of page 6
End-to-end Argument The end-to-end argument* argues that (high- level) applications know their own needs best. Services provided by low-level system
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 12/14/2011 for the course CS 690 taught by Professor Staff during the Fall '11 term at University of Alabama - Huntsville.

Page1 / 25

A2A_ExtKernels - Operating System Architectures Kernel...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online