Seminar Origins of Operating Systems The Microkernel Mach

  • Slides: 21
Download presentation
Seminar Origins of Operating Systems The Microkernel Mach in Ne. XTSTEP Gregor Schmidt 2006

Seminar Origins of Operating Systems The Microkernel Mach in Ne. XTSTEP Gregor Schmidt 2006 -06 -29 Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 1

Overview ¨ Introduction § The road to Ne. XTSTEP § The Ne. XT computers

Overview ¨ Introduction § The road to Ne. XTSTEP § The Ne. XT computers ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel § Interprocess Communication by example ¨ The next steps Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 2

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨ The next steps Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 3

The Road to Ne. XTStep ¨ 1986 - Ne. XT computers, Inc. was founded

The Road to Ne. XTStep ¨ 1986 - Ne. XT computers, Inc. was founded by Steve Jobs and § colleagues from Apple - Rich Page - George Crow - Bud Tribble - Dan‘L Lewin - Susan Barnes § and - Randy Heffner - Gary H. Moore ¨ 1988 - The first computer was presented Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 4

The Ne. XT computers ¨ based on Motorola 680 x 0 ¨ 2 basic

The Ne. XT computers ¨ based on Motorola 680 x 0 ¨ 2 basic models § Ne. XTcube (1989) § Ne. XTstation (1990) - 25 MHz resp. 33 MHz - 8 MB RAM (up to 32 MB) - 105 MB SCSI HDD - Floppy Disc Drive - 10 Base-T and 10 Base-2 Ethernet - Monochrome Display $ 4. 995, - ¨ All later versions of Ne. XTSTEP operating systems run on these machines Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 5

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨ The next steps Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 6

The Ne. XTStep Operating System Main Features 1988 - BSD refactoring 1990 - BSD-Reno

The Ne. XTStep Operating System Main Features 1988 - BSD refactoring 1990 - BSD-Reno for Mach ¨ Mach Kernel ¨ BSD 4. 3 user space server ¨ Ne. XTSTEP user interface ¨ Display Postscript ¨ Object-oriented application framework ¨ Objective C as standard programming language ¨ Extraordinary OO-development tools ¨ High integration of all native applications Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 7

The Ne. XTSTEP Operating System Demo - By Steve Jobs ¨ Product Demonstration of

The Ne. XTSTEP Operating System Demo - By Steve Jobs ¨ Product Demonstration of Ne. XTSTEP Release 3. 0 1: 00 Start 6: 30 Word Perfect 24: 00 Interface Builder Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 8

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨ The next steps Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 9

The Mach Microkernel History ¨ 1985 - 1994 - developed at Carnegie-Mellon university ¨

The Mach Microkernel History ¨ 1985 - 1994 - developed at Carnegie-Mellon university ¨ Microkernel ¨ Deployed in several systems § Ne. XTSTEP / OPENSTEP - Rhapsody - Mac OS X § GNU/Hurd § Mk. Linux § Tru 64 (OSF/1) ¨ Ne. XTSTEP uses Mach 2. 5 Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 10

The Mach Microkernel ¨ Little features - great reliability ¨ Only the main features

The Mach Microkernel ¨ Little features - great reliability ¨ Only the main features run in privileged mode § Process management - Scheduling § Synchronization and communication ¨ Device drivers and all other services run as user services ¨small interface ¨lots of communication overhead ¨little trusted computing base ¨lots of synchronization Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 11

The Mach Microkernel Main Features ¨ Preemptive Multitasking ¨ Multithreading, Multiprocessing ¨ Memory protection,

The Mach Microkernel Main Features ¨ Preemptive Multitasking ¨ Multithreading, Multiprocessing ¨ Memory protection, virtual memory ¨ Interprocess communication via mach messages Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 12

The Mach Microkernel Interprocess Communication ¨ Transparent network support ¨ Typed messages § including

The Mach Microkernel Interprocess Communication ¨ Transparent network support ¨ Typed messages § including type conversion between different languages ¨ Integrated with virtual memory § local messages are not copied § but mapped into receiver‘s address space § Remote messages are send lazily ¨ Port Rights Management § Ownership § Receive § Send ¨ Port names - unique Integer Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 13

The Mach Microkernel How to find Ports in Ne. XTStep ¨ Environment Manager §

The Mach Microkernel How to find Ports in Ne. XTStep ¨ Environment Manager § for local use only ¨ Network Message Server § enables network-wide communication ¨ Service Server ¨in Mac OS X: Bootstrap Server Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 14

The Mach Microkernel Message Sending the Easy Way ¨ Mach Interface Generator ¨ Corba-like

The Mach Microkernel Message Sending the Easy Way ¨ Mach Interface Generator ¨ Corba-like Stub-and-Skeleton-Generator ¨Message encoding and decoding for free ¨Little RPC-specific code Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 15

The Mach Microkernel Interprocess Communication by Example ¨ Calculator example § Server providing calculation

The Mach Microkernel Interprocess Communication by Example ¨ Calculator example § Server providing calculation facilities § Client using command line interface to receive tasks and queries server for the answer Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 16

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨

Overview ¨ Introduction ¨ The Ne. XTSTEP operating system ¨ The Mach Microkernel ¨ The next steps Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 17

The next steps ¨ 1995 - reorganization of Ne. XT towards software ¨ Ne.

The next steps ¨ 1995 - reorganization of Ne. XT towards software ¨ Ne. XT computers, Inc. - Ne. XT software, Inc. ¨ Ne. XTSTEP - OPENSTEP ¨ support for different platforms § all Ne. XT computers § Intel based computers § PA-RISC Workstations § Sun SPARC § (IBM PPC) in labs ¨ Web. Objects - first application server Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 18

The next steps Open. Step and OPENSTEP ¨ Open. Step is an object oriented

The next steps Open. Step and OPENSTEP ¨ Open. Step is an object oriented API ¨ Designed by Ne. XT and Sun ¨ OPENSTEP is an implementation ¨ Other for § Windows NT § Solaris § Linux - GNUStep ¨ Main components § Display Post. Script § Objective-C Runtime and Compilers § Majority of Ne. XTSTEP's Objective-C libraries Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 19

The next steps ¨ 1996 - take over by Apple, Inc. - 400 Millions

The next steps ¨ 1996 - take over by Apple, Inc. - 400 Millions US$ ¨ OPENSTEP becomes Mac OS X § with a new User Interface - Aqua § but the same underlying system components § Mach enhanced to XNU (hybrid kernel) within Darwin Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 20

References ¨ BOYKIN, Joseph; KIRSCHEN, David; LANGERMAN, Alan; Lo. VERSO; Susan: Programming under Mach.

References ¨ BOYKIN, Joseph; KIRSCHEN, David; LANGERMAN, Alan; Lo. VERSO; Susan: Programming under Mach. Addison-Wesley UNIX and Open System Series, ISBN 0 -201 -52739 -1, Addison-Wesley 1993 ¨ GARFINKEL, Simon L. ; MAHONEY, Michael K. : Ne. XTSTEP PROGRAMMING STEP ONE: Object-Oriented Applications. TELOS. The Electronic Library of Science ISBN 0 -387 -97884 -4, Springer-Verlag 1993 ¨ POLZE, Andreas: Vereiltes Rechnen unter Mach. unix/mail 2/1995, Carl Hanser Verlag München. Verfügbar im Internet: <http: //www. informatik. huberlin. de/~apolze/papers/um 2 -95. ps>. - online im Internet ¨ SLABIHOUD, Stephan: Ne. XT Computer, Inc. , 1998 -2005, Verfügbar im Internet: <http: //www. 8 bit-museum. de/docs/next 1. htm>. Stand: Juni 2006 - online im Internet ¨ Special References: § en. wikipedia. org - for lots of information around Ne. XTStep and Mach § lists. apple. com - for good code example and special information Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut Gregor Schmidt Origins of Operating Systems - The Microkernel Mach 21