MIT’s Exokernel Presented by Victoria Barrow Kyle Safford Sean Sommers.

Slides:



Advertisements
Similar presentations
Processes and Threads Chapter 3 and 4 Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College,
Advertisements

Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Exokernel: An Operating System Architecture for Application-Level Resource Management.
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.
Chapter 6 Limited Direct Execution
Exokernel: An Opertion System Architecture for Application-Level Resource Management SIGCOMM ’ 96, PDOS-MIT Presented by Ahn Seunghoon Dawson R. Engler,
Extensible Kernels Edgar Velázquez-Armendáriz September 24 th 2009.
Method Manipulation in an Object-Oriented Processor.
G Robert Grimm New York University Extensibility: SPIN and exokernels.
Architectural Support for OS March 29, 2000 Instructor: Gary Kimura Slides courtesy of Hank Levy.
OS Fall ’ 02 Introduction Operating Systems Fall 2002.
Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr.
Dawson R. Engler, M. Frans Kaashoek, and James O'Tool Jr.
G Robert Grimm New York University Extensibility: SPIN and exokernels.
Active Messages: a Mechanism for Integrated Communication and Computation von Eicken et. al. Brian Kazian CS258 Spring 2008.
OS Spring’03 Introduction Operating Systems Spring 2003.
1 Last Class: Introduction Operating system = interface between user & architecture Importance of OS OS history: Change is only constant User-level Applications.
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.
OS Spring’04 Introduction Operating Systems Spring 2004.
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.
1 OS & Computer Architecture Modern OS Functionality (brief review) Architecture Basics Hardware Support for OS Features.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
M. Frans Kaashoek, Dawson R. Engler, Gregory R. Ganger, Hector M. Bricefio, Russell Hunt, David Mazikres, Thomas Pinckney, Robert Grimm, John Jannotti.
COP 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00-6:00 PM.
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.
CSC 501 Lecture 2: Processes. Process Process is a running program a program in execution an “instantiation” of a program Program is a bunch of instructions.
Scheduling Basic scheduling policies, for OS schedulers (threads, tasks, processes) or thread library schedulers Review of Context Switching overheads.
Exokernel: An Operating System Architecture for Application-Level Resource Management" by Dawson R. Engler, M. Frans Kaashoek, and James O'Toole Jr. Chris.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Multi-Tasking The Multi-Tasking service is offered by VxWorks with its real- time kernel “WIND”.
Operating Systems Engineering Based on MIT (2012, lec3) Recitation 2: OS Organization.
Overview of the MIT Exokernel Operating System James Madison University CS 450 Abzug MWF 10:10-11:00 12/2/02 Steven Petzinger Billy Lehner.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Advanced Operating Systems (CS 202) Extensible Operating Systems Jan, 11, 2016.
Managing Processors Jeff Chase Duke University. The story so far: protected CPU mode user mode kernel mode kernel “top half” kernel “bottom half” (interrupt.
What is a Process ? A program in execution.
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.
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
Chapter 6 Limited Direct Execution Chien-Chung Shen CIS/UD
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.
Process concept.
Operating Systems CMPSC 473
Presentation by Omar Abu-Azzah
Overview of today’s lecture
Structure of Processes
Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr [SOSP’97]
Architectural Support for OS
Threads Chapter 4.
CS201 - Lecture 17 Exceptions
Process Control B.Ramamurthy 2/22/2019 B.Ramamurthy.
CSE 451: Operating Systems Autumn 2003 Lecture 2 Architectural Support for Operating Systems Hank Levy 596 Allen Center 1.
EXOKERNEL Gabriel Beltran John Blackman David Martin Kurt Rohrbacher
CSE 451: Operating Systems Autumn 2001 Lecture 2 Architectural Support for Operating Systems Brian Bershad 310 Sieg Hall 1.
Unix Process Control B.Ramamurthy 4/11/2019 B.Ramamurthy.
CSE 451: Operating Systems Winter 2003 Lecture 2 Architectural Support for Operating Systems Hank Levy 412 Sieg Hall 1.
CS510 Operating System Foundations
Architectural Support for OS
Process Description and Control in Unix
Process Description and Control in Unix
Threads CSE 2431: Introduction to Operating Systems
Presentation transcript:

MIT’s Exokernel Presented by Victoria Barrow Kyle Safford Sean Sommers

Traditional Operating Systems –Overly Complicated More included than necessary –Inflexible Abstractions are hardcoded and hard to change –Inefficient Application programmers have to work around the hardcoded abstractions

The Exokernel’s Design Principles –Separation of protection from management Library Operating Systems manage resources Exokernel ensures protection of resources –Expose as much of the resources as possible while still ensuring security

Techniques to Export and Expose Resources Securely –Secure bindings –Visible revocation –Abort Protocol

The Aegis Exokernel Represents CPU as linear vector of time slices. Can be allocated similarly to physical memory. Beginning and end time slices denoted by timer interrupts. (similar deliver to exceptions) General purpose context switching done through the applications’ handlers.

Aegis Scheduling and Processor Environments Scheduling of the time slices is done Round Robin style. Scheduling of Library OSes, not of processes and threads. Fairness achieved through binding the time an application takes to save its context. Processor Environments store information needed to deliver events. Contain four contexts to support four kinds of events. –Exception context –Interrupt context –Protected Entry context –Addressing context

Procedure & System calls Exceptions Aegis has two system call paths –do not require stack/ require stack Exceptions –unalign (unaligned pointer access) –overflow –coproc (floating point) –prot (access to protected pages)

Address Translations &Protected Control Transfers Address Translations –Two problems with supporting application level VM. Must provide bootstrapping for virtual naming system Must support virtual memory efficiently Protected Control Transfers –Provides synchronous & asynchronous for efficient implementations of IPC abstractions. –Both guaranty two important properties An atomic protected control transfer. Aegis will not overwrite any application visible register.

Xok/ExOS Xok –Utilized for x86-based computers –Provides protection for accessing higher-level objects –Multiplexes like Aegis and uses round-robin-scheduling –Implements a low-level interface and allows versatility –Implements predicates –Requires explicit credentials to allow access

Xok/ExOS ExOS –LibOS that supports abstractions –Utilizes a process map –Utilizes a global file descriptor table –Must use shared libraries

Xok/ExOS Performance

Conclusion Questions???