CS533 Concepts of Operating Systems Jonathan Walpole.

Slides:



Advertisements
Similar presentations
Slide 19-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 19.
Advertisements

CS533 Concepts of Operating Systems Class 14 Virtualization and Exokernels.
Department of Computer Science and Engineering University of Washington Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
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.
Chorus and other Microkernels Presented by: Jonathan Tanner and Brian Doyle Articles By: Jon Udell Peter D. Varhol Dick Pountain.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, David Becker, Marc.
Extensibility, Safety and Performance in the SPIN Operating System Department of Computer Science and Engineering, University of Washington Brian N. Bershad,
CS533 Concepts of Operating Systems Class 12 Extensibility via Software Based Protection.
Extensible Kernels Edgar Velázquez-Armendáriz September 24 th 2009.
CS533 Concepts of Operating Systems Class 5 Integrated Task and Stack Management.
CS533 Concepts of Operating Systems Class 13 Micro-kernels (cont.) Extensibility via Software Based Protection.
G Robert Grimm New York University Extensibility: SPIN and exokernels.
Extensibility, Safety and Performance in the SPIN Operating System B. N. Bershad, S. Savage, P. Pardyak, E. G. Sirer, M. E. Fiuczyski, D. Becker, C. Chambers,
G Robert Grimm New York University Opal.
CS533 Concepts of Operating Systems Class 20 Summary.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
CS533 Concepts of Operating Systems Class 12 Micro-kernels (or Extensibility via Hardware-Based Protection)
Extensibility, Safety and Performance in the SPIN Operating System Bershad et al Presentation by norm Slides shamelessly “borrowed” from Stefan Savage’s.
CS533 Concepts of Operating Systems Class 14 Virtualization.
Dawson R. Engler, M. Frans Kaashoek, and James O'Tool Jr.
Scheduler Activations Effective Kernel Support for the User-Level Management of Parallelism.
G Robert Grimm New York University Extensibility: SPIN and exokernels.
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Extensibility, Safety and Performance in the SPIN Operating System Dave Camarillo.
CS533 Concepts of Operating Systems Class 12 Micro-kernels (or Extensibility via Hardware-Based Protection)
Microkernels: Mach and L4
Presentation of Extensibility, Safety and Performance in the SPIN Operating System Brain N. BershadStefan SavagePrzemyslaw Emin Gun Sirer Marc E.FiuczynskiDavid.
CS533 Concepts of Operating Systems Class 7 Integrated Task and Stack Management.
1 Last Class: Introduction Operating system = interface between user & architecture Importance of OS OS history: Change is only constant User-level Applications.
CS533 Concepts of Operating Systems Class 3 Integrated Task and Stack Management.
CS533 Concepts of Operating Systems Class 6 Micro-kernels Extensibility via Hardware or Software Based Protection.
User-Level Interprocess Communication for Shared Memory Multiprocessors Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, and Henry M. Levy Presented.
Extensible Kernels Mingsheng Hong. OS Kernel Types Monolithic Kernels Microkernels – Flexible (?) – Module Design – Reliable – Secure Extensible Kernels.
The Mach System "Operating Systems Concepts, Sixth Edition" by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne Presentation by Jonathan Walpole.
CS533 Concepts of Operating Systems Class 9 Micro-Kernel Based OSs.
CS533 Concepts of Operating Systems Class 11 Micro-kernels Extensibility via Hardware Based Protection.
Stack Management Each process/thread has two stacks  Kernel stack  User stack Stack pointer changes when exiting/entering the kernel Q: Why is this necessary?
CSE 451: Operating Systems Autumn 2013 Module 6 Review of Processes, Kernel Threads, User-Level Threads Ed Lazowska 570 Allen.
SPIN: Design Contention between Safety-Extensibility-Performance Review of Extensibility, Safety and Performance in the SPIN Operating System By Lewis.
Operating System Architectures
CS533 Concepts of Operating Systems Jonathan Walpole.
Operating System Architectures
Extensibility, Safety and Performance in the SPIN Operating System Ashwini Kulkarni Operating Systems Winter 2006.
Kernel, processes and threads Windows and Linux. Windows Architecture Operating system design Modified microkernel Layered Components HAL Interacts with.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Architecture Support for OS CSCI 444/544 Operating Systems Fall 2008.
CS533 Concepts of Operating Systems Jonathan Walpole.
The Performance of Microkernel-Based Systems
The Performance of Micro-Kernel- Based Systems H. Haertig, M. Hohmuth, J. Liedtke, S. Schoenberg, J. Wolter Presentation by: Seungweon Park.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Ihr Logo Operating Systems Internals & Design Principles Fifth Edition William Stallings Chapter 2 (Part II) Operating System Overview.
Processes Introduction to Operating Systems: Module 3.
Operating Systems Structure what is the organizational principle?
EXTENSIBILITY, SAFETY AND PERFORMANCE IN THE SPIN OPERATING SYSTEM
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
The Performance of Micro-Kernel- Based Systems H. Haertig, M. Hohmuth, J. Liedtke, S. Schoenberg, J. Wolter Presentation by: Tim Hamilton.
CS533 Concepts of Operating Systems Jonathan Walpole.
Advanced Operating Systems (CS 202) Extensible Operating Systems Jan, 11, 2016.
CENG334 Introduction to Operating Systems 1 Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
1 Threads, SMP, and Microkernels Chapter 4. 2 Process Resource ownership - process includes a virtual address space to hold the process image Scheduling/execution-
Threads, SMP and Microkernels Process vs. thread: –Unit of resource ownership (process has virtual address space, memory, I/O channels, files) –Unit of.
Introduction to Operating Systems Concepts
Presentation by Omar Abu-Azzah
CS533 Concepts of Operating Systems Class 13
CS533 Concepts of Operating Systems Class 6
Advanced Operating Systems (CS 202) Operating System Structure
Presentation transcript:

CS533 Concepts of Operating Systems Jonathan Walpole

Extensibility, Safety and Performance in the SPIN Operating System

SPIN Architecture SPIN is an extensible micro-kernel -minimal kernel -modular OS above micro-kernel -easily tunable OS modules SPIN uses software based protection -micro-kernel and OS modules in same address space -OS modules written in type safe language -correct use of interfaces enforced statically

Extensibility System behavior can be modified by writing extensions -Defined in terms of events and handlers -Low latency access to SPIN services supported via dynamic linking and colocation -SPIN and modules written in SPIN’s safe extension language (Modular 3)

Modular 3 Support for interfaces Type safety prevents arbitrary memory accesses Automatic storage management Modules communicate via procedure calls through interfaces Safety depends on static type checking and dynamic linking

How Does It Work? Extension code is dynamically linked into the system -References resolved via exported interfaces Extensions register new handlers with SPIN’s event dispatcher -Guards (predicates) identify handlers to call SPIN compiler ensures extensions are safe

SPIN’s Core Services Lower-level abstractions than Mach or L4 Memory services -physical address service -virtual address service -translation service Thread management -strands -defines events handled by user-level and kernel schedulers

SPIN Memory Management Physical address service -allocation of physical page frames Virtual address service -allocation of virtual pages Translation service -manipulation of page tables and TLB

Strands CPU contexts Interface for user-level threads libraries -events to signal change in thread state -block, unblock, preempt etc Control flow for user-level threads Like scheduler activations

Performance Summary Cross-domain calls are procedure calls within the same address space OS must be written in Modular 3 Overall efficiency is better than Mach, but worse than a monolithic kernel -but it has fine-grain protection

Some Thoughts Is SPIN really a micro-kernel? What is the ideal minimal kernel interface? -what abstractions should it export?