![Page 1: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/1.jpg)
1Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
SeminarOrigins of Operating Systems
The Microkernel Machin NeXTSTEP
Gregor Schmidt
2006-06-29
1
![Page 2: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/2.jpg)
2Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 2
Overview
Introduction The road to NeXTSTEP
The NeXT computers
The NeXTSTEP operating system The Mach Microkernel
Interprocess Communication by example
The next steps
2
![Page 3: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/3.jpg)
3Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 3
Overview
Introduction The NeXTSTEP operating system The Mach Microkernel The next steps
3
![Page 4: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/4.jpg)
4Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 4
The Road to NeXTStep
1986 - NeXT 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
4
![Page 5: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/5.jpg)
5Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 5
The NeXT computers
based on Motorola 680x0 2 basic models
NeXTcube (1989)
NeXTstation (1990)
- 25 MHz resp. 33 MHz
- 8 MB RAM (up to 32 MB)
- 105 MB SCSI HDD
- Floppy Disc Drive
- 10Base-T and 10Base-2 Ethernet
- Monochrome Display
All later versions of NeXTSTEP operating systems run on these machines
5
$ 4.995,-$ 4.995,-
![Page 6: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/6.jpg)
6Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 6
Overview
Introduction The NeXTSTEP operating system The Mach Microkernel The next steps
6
![Page 7: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/7.jpg)
7Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 7
The NeXTStep Operating SystemMain Features
Mach Kernel BSD4.3 user space server NeXTSTEP user interface
Display Postscript Object-oriented application framework Objective C as standard programming language Extraordinary OO-development tools High integration of all native applications
7
1988 - BSD re-factoring1990 - BSD-Reno for Mach
1988 - BSD re-factoring1990 - BSD-Reno for Mach
![Page 8: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/8.jpg)
8Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 8
The NeXTSTEP Operating SystemDemo - By Steve Jobs
Product Demonstration of NeXTSTEP Release 3.0
8
1:00 Start6:30 Word Perfect24:00 Interface Builder
1:00 Start6:30 Word Perfect24:00 Interface Builder
![Page 9: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/9.jpg)
9Gregor Schmidt
Origins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 9
Overview
Introduction The NeXTSTEP operating system The Mach Microkernel The next steps
9
![Page 10: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/10.jpg)
10
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
0
The Mach MicrokernelHistory
1985 - 1994 - developed at Carnegie-Mellon university Microkernel
Deployed in several systems NeXTSTEP / OPENSTEP - Rhapsody - Mac OS X
GNU/Hurd
MkLinux
Tru64 (OSF/1)
NeXTSTEP uses Mach 2.5
10
![Page 11: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/11.jpg)
11
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
1
The Mach MicrokernelMicrokernel
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
11
small interfacelittle trusted computing base
lots of communication overheadlots of synchronization
![Page 12: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/12.jpg)
12
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
2
The Mach MicrokernelMain Features
Preemptive Multitasking Multithreading, Multiprocessing Memory protection, virtual memory Interprocess communication via mach messages
12
![Page 13: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/13.jpg)
13
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
3
The Mach MicrokernelInterprocess 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
13
![Page 14: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/14.jpg)
14
Environment Manager for local use only
Network Message Server enables network-wide communication
Service Server
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
4
The Mach MicrokernelHow to find Ports in NeXTStep
14
in Mac OS X: Bootstrap Server
![Page 15: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/15.jpg)
15
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
5
The Mach MicrokernelMessage Sending the Easy Way
Mach Interface Generator Corba-like Stub-and-Skeleton-Generator
15
Message encoding anddecoding for freeLittle RPC-specific code
![Page 16: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/16.jpg)
16
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
6
The Mach MicrokernelInterprocess Communication by Example
Calculator example Server providing calculation facilities
Client using command line interface to receive tasks and queries server for the answer
16
![Page 17: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/17.jpg)
17
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
7
Overview
Introduction The NeXTSTEP operating system The Mach Microkernel The next steps
17
![Page 18: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/18.jpg)
18
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
8
The next steps
1995 - reorganization of NeXT towards software NeXT computers, Inc. - NeXT software, Inc. NeXTSTEP - OPENSTEP support for different platforms
all NeXT computers
Intel based computers
PA-RISC Workstations
Sun SPARC
(IBM PPC) in labs
WebObjects - first application server
18
![Page 19: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/19.jpg)
19
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 1
9
The next stepsOpenStep and OPENSTEP
OpenStep is an object oriented API Designed by NeXT and Sun OPENSTEP is an implementation Other for
Windows NT
Solaris
Linux - GNUStep
Main components Display PostScript
Objective-C Runtime and Compilers
Majority of NeXTSTEP's Objective-C libraries
19
![Page 20: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/20.jpg)
20
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 2
0
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
20
![Page 21: 1 Gregor Schmidt Origins of Operating Systems - The Microkernel Mach Betriebssysteme und Middleware / Prof. Andreas Polze Hasso-Plattner-Institut 1 Seminar](https://reader036.vdocument.in/reader036/viewer/2022062618/551434355503466d1a8b51b2/html5/thumbnails/21.jpg)
21
Gregor SchmidtOrigins of Operating Systems - The Microkernel Mach
Betriebssysteme und Middleware / Prof. Andreas PolzeHasso-Plattner-Institut 2
1
References
BOYKIN, Joseph; KIRSCHEN, David; LANGERMAN, Alan; LoVERSO; 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.: NeXTSTEP 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.hu-berlin.de/~apolze/papers/um2-95.ps>. - online im Internet
SLABIHOUD, Stephan: NeXT Computer, Inc., 1998-2005, Verfügbar im Internet: <http://www.8bit-museum.de/docs/next1.htm>. Stand: Juni 2006 - online im Internet
Special References: en.wikipedia.org - for lots of information around NeXTStep and Mach lists.apple.com - for good code example and special information
21