1 / 13

Mach Kernel

Mach Kernel. Kris Ambrose. Overview. A research project at Carnegie Mellon University (CMU) from 1985 to 1994. Considered to be the next great operating system Designed to incorporate many new OS technologies Microkernel Multiprocessing Interprocess Communication (IPC)

Download Presentation

Mach Kernel

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mach Kernel Kris Ambrose Kris Ambrose 2003

  2. Overview • A research project at Carnegie Mellon University (CMU) from 1985 to 1994. • Considered to be the next great operating system • Designed to incorporate many new OS technologies • Microkernel • Multiprocessing • Interprocess Communication (IPC) • Distributed Operation • Portable across heterogeneous hardware • And still maintain BSD Unix compatible Kris Ambrose 2003

  3. Mach Kernel Abstractions • Task – a basic unit of resource allocation that must contain an address space and may contain port rights and threads. • Thread – a basic unit of CPU utilization that belongs to a task and uses the task’s resource allocation. • Port – a communication channel that the kernel protects, allows for all parts of the kernel and tasks to pass messages back and forth. • Message – a typed collection of data objects that may be actual data, port rights, or a pointer out-of-line-data. • Memory Object – a basic unit of memory used within the kernel and the a task may access it by mapping parts or all of it into its address space. Kris Ambrose 2003

  4. Mach’s Abstractions Silberschatz, Galvin, Gagne (2003) Appendix B: Mach Kris Ambrose 2003

  5. Mach as a Microkernel • Minimizes Kernel Operations • Task and Thread Management • IPC • Virtual Memory • Acts as a Virtual Machine • Parts are Modular Kris Ambrose 2003

  6. Structure of Mach Kris Ambrose 2003 Billard (2001): Mach Design

  7. Multiprocessing in Mach • Threads are scheduled not tasks • Threads are CPU independent • Preemptive Scheduling done with a Priority Queue • Quantum is based on Number of CPUs and Threads • Threads to run across many processors • Global and Local Run Queues Kris Ambrose 2003

  8. Interprocess Communication • Tasks and Threads pass messages • Ports accept messages • Port rights are assigned for protection • Tasks may create Port Sets • Large Messages use Copy-On-Write Kris Ambrose 2003

  9. Distributed Operation and Portability • Each Server Contains a different Module • Fast and Secure reload • Multiple CPUs may be used for different Modules • Runs across different Architectures Kris Ambrose 2003

  10. Unix Compatibility • Allows for Unix System calls • Mach needs Unix • Acts as a Virtual Machine Kris Ambrose 2003

  11. Today and Beyond • Many of the Operating Systems today use the ideas of Mach • QNX • Hurd • Mach 4 • Real-Time Mach • Some Actually Use the Mach/FreeBSD • NeXT • Mac OS X (based on NeXT) • IBM OS/2 for the RS6000 based machines • The Open Software Foundation (OSF) is still doing further research and development Kris Ambrose 2003

  12. Summary • Originally CMU and OSF Research Project • Major Accomplishments • Microkernel • Multiprocessing • Interprocess Communication • Distributed Operations • Portable • BSD Unix Compatible • Concepts still used Kris Ambrose 2003

  13. The End Kris Ambrose 2003

More Related