Presentation by Omar Abu-Azzah

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.
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.
Department of Computer Science and Engineering University of Washington Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Ensuring Operating System Kernel Integrity with OSck By Owen S. Hofmann Alan M. Dunn Sangman Kim Indrajit Roy Emmett Witchel Kent State University College.
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.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, David Becker, Marc.
Background Computer System Architectures Computer System Software.
Extensibility, Safety and Performance in the SPIN Operating System Department of Computer Science and Engineering, University of Washington Brian N. Bershad,
Extensible Kernels Edgar Velázquez-Armendáriz September 24 th 2009.
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,
The Alta Operating System Patrick Tullmann Masters Thesis Defense University of Utah.
490dp Synchronous vs. Asynchronous Invocation Robert Grimm.
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Figure 2.8 Compiler phases Compiling. Figure 2.9 Object module Linking.
Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr.
Extensibility, Safety and Performance in the SPIN Operating System Bershad et al Presentation by norm Slides shamelessly “borrowed” from Stefan Savage’s.
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.
Presentation of Extensibility, Safety and Performance in the SPIN Operating System Brain N. BershadStefan SavagePrzemyslaw Emin Gun Sirer Marc E.FiuczynskiDavid.
Exokernel: An Operating System Architecture for Application-Level Resource Management Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr. M.I.T.
User-Level Interprocess Communication for Shared Memory Multiprocessors Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, and Henry M. Levy Presented.
1 I/O Management in Representative Operating Systems.
Extensible Kernels Mingsheng Hong. OS Kernel Types Monolithic Kernels Microkernels – Flexible (?) – Module Design – Reliable – Secure Extensible Kernels.
1 Extensible Kernels Amar Phanishayee. 2 Traditional OS services – Management and Protection Provides a set of abstractions Processes, Threads, Virtual.
1 Lightweight Remote Procedure Call Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska and Henry M. Levy Presented by: Karthika Kothapally.
Process Description and Control. Process concepts n Definitions – replaces task, job – program in execution – entity that can be assigned to and executed.
SPIN: Design Contention between Safety-Extensibility-Performance Review of Extensibility, Safety and Performance in the SPIN Operating System By Lewis.
Comparative Programming Languages hussein suleman uct csc304s 2003.
Operating System Architectures
Extensibility, Safety and Performance in the SPIN Operating System Ashwini Kulkarni Operating Systems Winter 2006.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
MIT’s Exokernel Presented by Victoria Barrow Kyle Safford Sean Sommers.
EXTENSIBILITY, SAFETY AND PERFORMANCE IN THE SPIN OPERATING SYSTEM
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 4: Threads.
System Components ● There are three main protected modules of the System  The Hardware Abstraction Layer ● A virtual machine to configure all devices.
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.
The Mach System Silberschatz et al Presented By Anjana Venkat.
CS533 Concepts of Operating Systems Jonathan Walpole.
Threads, SMP and Microkernels Process vs. thread: –Unit of resource ownership (process has virtual address space, memory, I/O channels, files) –Unit of.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
Exokernel: An Operating System Architecture for Application-Level Resource Management by Dawson R. Engler, M. Frans Kaashoek, and James O'Toole Jr. Presented.
Introduction to Operating Systems Concepts
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Kernel Design & Implementation
Chapter 4: Threads.
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
The Mach System Sri Ramkrishna.
Extensible OSes Exokernel and SPIN (Lecture 9, cs262a)
Capriccio – A Thread Model
Chapter 4: Threads.
Threads, SMP, and Microkernels
Lecture 4- Threads, SMP, and Microkernels
Threads and Concurrency
CHAPTER 4:THreads Bashair Al-harthi OPERATING SYSTEM
Thomas E. Anderson, Brian N. Bershad,
Threads vs. Processes Hank Levy 1.
Chapter 4: Threads.
CSE 542: Operating Systems
CSE 60641: Operating Systems
Advanced Operating Systems (CS 202) Operating System Structure
CSE 542: Operating Systems
Presentation transcript:

Presentation by Omar Abu-Azzah

Roadmap The Problem. SPIN’s solution. SPIN’S architecture. Performance. Conclusion.

http://cs.nyu.edu/rgrimm/teaching/sp05-os/020105.pdf

SPIN Solution Put extension code in the kernel Low communication overhead Rely on language safety features. Static type checking and dynamic linking. Event driven kernel.

http://cs.nyu.edu/rgrimm/teaching/sp05-os/020105.pdf

Modula-3 OO language designed in early 1990’s. Strongly typed. Separation of interface and implementation. Protection: members which are exported at the interface are only accessible. Strongly typed. Garbage collection. Other features: Objects, generic interfaces, threads, exceptions.

SPIN: Safety Capabilities A pointer. Unforgeable reference to objects. system object e.g. physical page Interface e.g. physical page allocation interface. collection of interfaces e.g. entire VM system. Compile time type checking for safe assignment and dereferencing. Can be passed to user level (externalized reference)

SPIN: Safety Protection domains Naming and protection interface is at language-level. Domain: An object. Contains one or more safe object files. Controls dynamic binding. Operations: Create, Resolve, Combine. Module must create domain to export its interface through in-kernel nameserver.

SPIN: Extensibility Extensions can: Event driven: Monitor system activity. Offer hints to the system. Replace existing system service. Event driven: System services are done by event handling. Extension is installation of new handler. Dispatcher routes events to handlers.

SPIN: Extensibility Event Handler The signature of a procedure. Raising an event is calling the function. Handler Registration: Dispatcher.InstallHandler (event-name, guard, handler) Handling is executing the procedure. Default handler: allow, deny, guard new handler. Multiple handlers: cooperatively. Synchronously, asynchronous, bounded time.

SPIN: Extensibility Guard A predicate evaluated when an event arrives. Can also be specified by the handler.

SPIN: Core Services Extensible memory management Provides three objects: Physical address. Virtual address Translation What is passed/returned?

SPIN: Core Services Extensible thread management No thread model for applications in SPIN. Strand object provided and can be scheduled. Safety: Kernel handles synchronization and binding of strands to processors using M-3 threads. Thread package defines an implementation of the strand interface. Strand interface: Block and unblock Checkpoint and resume

SPIN: Performance Comparison with Mach and OSF/1. Reasonable and realistic examples presented: TCP/IP, network video system, http server. Protected communication is significantly cheaper. Thread implementation and virtual memory management perform favorably.

http://cs.nyu.edu/rgrimm/teaching/sp05-os/020105.pdf

Conclusion Good performance can be achieved in an extensible system without compromising safety. Flexibility. Relies on Modula-3. Trusts the compiler.

References "Extensibility, Safety and Performance in the SPIN Operating System" by Brian Bershad, et al, in Proceedings of the 15th ACM Symposium on Operating System Principles (SOSP-15), Copper Mountain, CO. pp. 267--284. Extensibility: SPIN and exokernels. Grimm, Robert. New York University. Class slides. Available: http://cs.nyu.edu/rgrimm/teaching/sp05-os/020105.pdf The SPIN OS. http://www.cs.wisc.edu/~sschang/OS-Qual/kernel/SPIN.htm Related Work in Adaptive Operating Systems. Available: http://www.cse.ogi.edu/DISC/projects/synthetix/related.html Brewer, Eric A. Spin Leading OS Research Astray? January 2004. Available: http://www.cs.berkeley.edu/~brewer/cs262b/Lec-Spin.pdf Modula-3: Language definition. Available: http://www.cs.tut.fi/lintula/manual/modula3/m3defn/html/m3.html