Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Exokernel: An Operating System Architecture for Application-Level Resource Management.

Slides:



Advertisements
Similar presentations
CS533 Concepts of Operating Systems Class 14 Virtualization and Exokernels.
Advertisements

More on Processes Chapter 3. Process image _the physical representation of a process in the OS _an address space consisting of code, data and stack segments.
Operating Systems Lecture 10 Issues in Paging and Virtual Memory Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard. Zhiqing.
Effects of Virtual Cache Aliasing on the Performance of the NetBSD Operating System Rafal Boni CS 535 Project Presentation.
EXTENSIBILITY, SAFETY AND PERFORMANCE IN THE SPIN OPERATING SYSTEM B. Bershad, S. Savage, P. Pardyak, E. G. Sirer, D. Becker, M. Fiuczynski, C. Chambers,
Extensibility, Safety and Performance in the SPIN Operating System Presented by Allen Kerr.
Fast Communication Firefly RPC Lightweight RPC  CS 614  Tuesday March 13, 2001  Jeff Hoy.
Exokernel: An Opertion System Architecture for Application-Level Resource Management SIGCOMM ’ 96, PDOS-MIT Presented by Ahn Seunghoon Dawson R. Engler,
1. Overview  Introduction  Motivations  Multikernel Model  Implementation – The Barrelfish  Performance Testing  Conclusion 2.
Extensible Kernels Edgar Velázquez-Armendáriz September 24 th 2009.
G Robert Grimm New York University Extensibility: SPIN and exokernels.
CS533 Concepts of Operating Systems Class 20 Summary.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
CS533 Concepts of Operating Systems Class 7 Virtualization and Exokernels.
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
OS Fall ’ 02 Introduction Operating Systems Fall 2002.
Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr.
DISTRIBUTED CONSISTENCY MANAGEMENT IN A SINGLE ADDRESS SPACE DISTRIBUTED OPERATING SYSTEM Sombrero.
Dawson R. Engler, M. Frans Kaashoek, and James O'Tool Jr.
G Robert Grimm New York University Extensibility: SPIN and exokernels.
Improving IPC by Kernel Design Jochen Liedtke Presented by Ahmed Badran.
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Microkernels: Mach and L4
Figure 1.1 Interaction between applications and the operating system.
Dawson Engler, Frans Kaashoek, James O’Toole
Exokernel: An Operating System Architecture for Application-Level Resource Management Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr. M.I.T.
1  1998 Morgan Kaufmann Publishers Chapter Seven Large and Fast: Exploiting Memory Hierarchy (Part II)
Extensible Kernels Mingsheng Hong. OS Kernel Types Monolithic Kernels Microkernels – Flexible (?) – Module Design – Reliable – Secure Extensible Kernels.
CS533 Concepts of OS Class 16 ExoKernel by Constantia Tryman.
1 Extensible Kernels Amar Phanishayee. 2 Traditional OS services – Management and Protection Provides a set of abstractions Processes, Threads, Virtual.
Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems The Google File System S. Ghemawat, H. Gobioff and S-T. Leung, The Google File.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
Design and Implementation of a Single System Image Operating System for High Performance Computing on Clusters Christine MORIN PARIS project-team, IRISA/INRIA.
M. Frans Kaashoek, Dawson R. Engler, Gregory R. Ganger, Hector M. Bricefio, Russell Hunt, David Mazikres, Thomas Pinckney, Robert Grimm, John Jannotti.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
Operating System Architectures
APPLICATION PERFORMANCE AND FLEXIBILITY ON EXOKERNEL SYSTEMS M. F. Kaashoek, D. R. Engler, G. R. Ganger H. M. Briceño, R. Hunt, D. Mazières, T. Pinckney,
Paper by Engler, Kaashoek, O’Toole Presentation by Charles Haiber.
CS533 Concepts of Operating Systems Jonathan Walpole.
Operating System Architectures
Processes and Threads Processes have two characteristics: – Resource ownership - process includes a virtual address space to hold the process image – Scheduling/execution.
Exokernel: An Operating System Architecture for Application-Level Resource Management" by Dawson R. Engler, M. Frans Kaashoek, and James O'Toole Jr. Chris.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
OSes: 3. OS Structs 1 Operating Systems v Objectives –summarise OSes from several perspectives Certificate Program in Software Development CSE-TC and CSIM,
MIT’s Exokernel Presented by Victoria Barrow Kyle Safford Sean Sommers.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
4-Dec-15CSE 60641: Operating Systems1 -Exokernel: an operating system architecture for application-level resource management. Dawson R. Engler, M. Frans.
M. Accetta, R. Baron, W. Bolosky, D. Golub, R. Rashid, A. Tevanian, and M. Young MACH: A New Kernel Foundation for UNIX Development Presenter: Wei-Lwun.
Advanced Operating Systems (CS 202) Extensible Operating Systems Jan, 11, 2016.
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
CS533 Concepts of Operating Systems Jonathan Walpole.
Advanced Operating Systems (CS 202) Extensible Operating Systems (II) Jan, 13, 2016.
Exokernel: An Operating System Architecture for Application-Level Resource Management By Dawson R. Engler, M. Frans Kaashoek, James O’Toole Jr. Presented.
Exokernel Operating System: An Introduction Liming Shu COSC 513, Summer 2002.
Exokernel: An Operating System Architecture for Application-Level Resource Management by Dawson R. Engler, M. Frans Kaashoek, and James O'Toole Jr. Presented.
CE 454 Computer Architecture
Distributed Shared Memory
Memory Caches & TLB Virtual Memory
R
OS Virtualization.
Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr [SOSP’97]
Modern Systems: Extensible KERNELS AND containers
Jennifer Rose Daniel Stanaland Amy Turlington
Page Replacement.
TLB Performance Seung Ki Lee.
CS533 Concepts of Operating Systems Class 16
EXOKERNEL Gabriel Beltran John Blackman David Martin Kurt Rohrbacher
Improving IPC by Kernel Design
Operating Systems Structure
Presentation transcript:

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Exokernel: An Operating System Architecture for Application-Level Resource Management D.R. Engler, F. Kaashoek and J. O'Toole, Exokernel: An Operating System Architecture for Application-Level Resource Management, In Proc. of the 15th ACM Symposium on Operating System Principles, Dec Presenter: John Otto

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Outline Overview Why Ultrix? Motivation Design Goals Exokernel / Aegis App Level Library OS / ExOS Related Work Discussion

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Overview Exokernel (Aegis): barebones system resource management Application level library operating system (ExOS): implement customized higher level OS functions Emphasis on increased virtual memory and IPC performance in comparison to Ultrix

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Why Ultrix? Ultrix and Aegis both developed for and run on DEC platform Ultrix implements System V IPCgood for comparative performance tests BSD-based systems tend to be more research-oriented

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Motivation Core abstractions: e.g. files, processes Core abstractions can make development of certain applications difficult: Hiding knowledge/implementation of the hardware Example: LRU page replacement with database Ongoing issue: Current core abstractions are so heavily relied upon that it's difficult for new ideas or abstractions to gain a foothold in popular OSes

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Design Goals Goal: securely manage resources Methods: Expose hardware names and information to application, allowing informed application resource management Event system for application notification Enforce access to system resources Use Secure Binding to give exclusive control of resources to an application

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Exokernel / Aegis Revocation Comparison Claims and Costs Exceptions Supporting Application Virtual Memory

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Revocation invisible: no OS communication with application; it is likely unaware of the loss of resources unaware when resources are scarce visible: dialogue between exokernel and application 1: Request to application: asking nicely 2: Imperative to application: demand 3: Abort Protocol Repossession Exception passed to application

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Comparison Claims and Costs Argument: fair comparison between Aegis and Ultrix Ultrix has the advantage with larger cache, more tuned OS Typical result: Aegis is at least an order of magnitude faster than Ultrix Doubts: While Aegis is faster without any high-level OS extensions, will this improved performance be paralleled in higher-level OS functionality?

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Exceptions 1: Application's exception handling code is invoked 2: After handling the exception, application continues to run Comparison to Explicit Checks Require portable, correct compiler Not as efficient as Aegis's simple exceptions

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Supporting Application Virtual Memory Virtual Memory Address Space Sectors 1: Application data 2: Exception handling code Exception handling sector can be pinned down, or Aegis can handle a cache miss Prevents application's access of exception code from generating yet another exception from cache miss Software TLB used as second level cache

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems App Level Library OS / ExOS IPC pipe: send message between processes; yield call used to transfer control shmem: increment counters in shared memory lrpc: remote procedure call Note: Ultrix couldn't perform many of these tests by the same mechanism Virtual Memory Current implementation limitations: No swapping Page tables as linear vector Tuning, improved implementation should increase performance

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Related Work Comparison to VM/370 OS VM/370 implements an entire virtual machine Costly and inefficient Exokernel only implements hardware interface Gives direct control of hardware to applications Simple and efficient Cache Kernel Focuses on reliability, not efficiency Still mostly qualifies as an exokernel

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Discussion / Questions Virtual Machines vs. Exokernels Optimizing app level OS libraries for a particular application; conflicting goals? Exokernel focus on customizability? How important is the improved performance? Given variability of hardware, is the exokernel idea feasible? What is the target audience of exokernels?