www.wikidata.de-de.nina.az
Mach ist ein Mikrokernel der 1985 1994 im Rahmen eines DARPA finanzierten Projekts an der Carnegie Mellon University CMU entwickelt wurde Das Design Ziel fur Mach war ein Unix kompatibles Betriebssystem der Kernel ist jedoch prinzipiell fur verschiedene Betriebssysteme verwendbar Bis Version 2 war ein vollstandiger 4 3BSD Kernel Teil von Mach der jedoch in Mach 3 0 entfernt werden konnte Fur das Betriebssystem OSF 1 wurde der ursprungliche CMU Mach3 Kernel weiterentwickelt und von anderen Mach Implementierungen weiterer Betriebssysteme als Open Software Foundation Mach Kernel kurz OSF MK ubernommen An der Universitat von Utah wurde in der Flux Research Group bis 1996 an Mach 4 gearbeitet das als Basis fur die freie Implementierung GNU Mach diente Mach gilt heute als erste Mikrokernel Generation Der L4 Mikrokernel hat die grosste Schwache von Mach den zu langsamen Interkommunikationsprozess annahernd behoben und gilt als zweite Mikrokernel Generation 1 Deshalb wird Mach manchmal auch als uberholt bezeichnet 2 Inhaltsverzeichnis 1 Entwicklung 2 Eigenschaften 3 Beispiele 4 Weblinks 5 EinzelnachweiseEntwicklung BearbeitenMach wurde unter Leitung von Richard Rashid und Avie Tevanian an der Carnegie Mellon University kurz CMU 1985 als Nachfolger von Accent entwickelt Accent war ebenfalls von Rashid am CMU zwischen 1979 und 1981 entwickelt worden und lief dort bis 1985 auf den hauseigenen Rechnern wurde aber schliesslich durch den Erfolg von Unix obsolet 3 Mach hatte ursprunglich wohl MUCK heissen sollen fur englisch Multiprocessor Universal Communication Kernel 4 Der endgultige Name Mach war zwar keine Abkurzung mehr doch waren die wesentlichen Ziele der Entwicklung damit klar abgesteckt Multiprozessorfahigkeit leichte Portierbarkeit sowie Nutzung von Interprozesskommunikation IPC kurz fur englisch interprocess communication Als Mikrokernel sollte Mach sehr klein bleiben und nur die notigsten Funktionen erledigen Das Konzept der Interprozesskommunikation zur Verarbeitung von Mach messages zur Verwaltung einzelner darauf laufender Prozesse wurde von Accent ubernommen die virtuelle Speicherverwaltung sowie die Process und Thread Verwaltung sind jedoch Neuentwicklungen Zu Entwicklungsbeginn wurde 4 2BSD Unix als Grundlage fur ein Mach Betriebssystem verwendet In diesen bestehenden BSD Kernel wurden nach und nach Mach Komponenten eingebaut um die vorhandenen Kernel Funktionen zu ersetzen bzw wie spater vorgesehen diese Funktionen auf die Abstraktion im Mach Mikrokernel aufbauen zu lassen Obwohl es hauptsachlich um den Mikrokernel ging wollte man von Anfang an die Unix Kompatibilitat bewahren Spater war geplant dass auch andere existierende Betriebssysteme auf Mach als Kernel laufen sollten darunter auch System V VMS und sogar MS DOS 5 Das Mach Betriebssystem wurde auf 4 3BSD aktualisiert als dieses 1986 verfugbar wurde Bis zur ersten veroffentlichten Version im selben Jahr Mach 1 0 wurde an der Verbesserung der Geschwindigkeit gegenuber dem vorhandenen monolithischen Kernel gearbeitet 1988 mit Mach 2 0 lief der Kernel bereits auf den Architekturen DEC VAX IBM RT PC und Sun 3 und wurde z B von BBN Advanced Computers Inc Evans and Sutherland Computer Division Encore Computers und NeXT fur kommerziell vertriebene Unix Betriebssysteme u a auf den Rechnerarchitekturen IBM RP3 Sequent Balance Macintosh II IBM 370 und Intel 80386 genutzt 6 Bis Mach 2 6 waren noch grosse Teile des BSD Kernels selbst enthalten womit Mach zwar grosser als ein reiner BSD Kernel war aber auch voll dazu kompatibel Mit Mach 3 0 von 1989 wurden alle BSD Bestandteile ausgelagert und Mach zum Mikrokernel dem anfanglichen Entwicklungsziel Der verbleibende reine µ Kernel war dadurch leichter fur weitere Betriebssysteme nutzbar Nachdem CMU Mach3 veroffentlichte wurde der µ Kernel vom OSF Research Institute im Rahmen des OSF 1 Betriebssystems weiterentwickelt Durch die zahlreichen Verbesserungen erhielt dieser Kernel den Namen OSF MK 7 Auf OSF MK dem verbesserten Mach3 Kernel wurde ab 1995 MkLinux entwickelt und gleichzeitig OSF MK auf die PowerPC Plattform portiert MkLinux ist als Single Server angelegt das heisst Linux wird als einzelner Prozess englisch task auf dem Mach3 Mikrokernel ausgefuhrt Auf OSF MK basiert ebenfalls der in Rhapsody und macOS eingesetzte XNU Kernel der jedoch als Hybridkernel ausgelegt ist und somit nicht mehr nur dem Mikrokernel Konzept von Mach entspricht Aufbauend auf CMU Mach3 wurde an der Universitat von Utah kurz UU in der Flux Research Group der Abteilung Computerwissenschaften englisch Departement of Computer Science bis 1996 an Version 4 von Mach gearbeitet Mach4 hatte als Kernel fur ein Betriebssystem im Rahmen des Flux Projekts dienen sollen wurde jedoch nach kurzer Zeit nicht mehr weiterentwickelt und zugunsten von OSKit aufgegeben OSKit beinhaltet die ursprunglich fur Mach4 entwickelten Kompatibilitatsschichten englisch glue code um Linux Treiber und Unix Komponenten mit relativ geringem Aufwand auf andere Betriebssysteme portieren zu konnen Mach4 diente als Basis fur die freie Implementierung GNU Mach die beim GNU Betriebssystem eingesetzt wird Aufbauend auf den Mach Mikrokernel stellt GNU Hurd die Unix kompatible Betriebssystemkomponente analog zu BSD Unix bei CMU Mach In den 1990er Jahren wurde Linux als monolithischer Kernel benutzt was GNU Linux als vorlaufiges GNU Betriebssystem hervorbrachte bis der GNU eigene Kernel GNU Hurd benutzbar war Siehe GNU Linux Namensstreit Eigenschaften BearbeitenZu den Design Zielen von Mach zahlte zusatzlich auch Multitasking und Speicherschutz Als Mikrokernel soll Mach so wenig der traditionellen Kernel Funktionen wie moglich und gleichzeitig so viele wie notig implementieren Daraus ergaben sich diese vier Kernaufgaben Prozess und Thread Verwaltung englisch tasks and threads Interprozesskommunikation IPC virtueller Speicher SchedulingAls minimale Abstraktion bietet Mach letztlich folgende Systemkomponenten die sehr stark auf die Interprozesskommunikation IPC zuruckgreifen 8 task ein Prozess der einen oder mehrere Threads enthalten kann thread die kleinste Ausfuhrungseinheit die Teil eines Prozesses ist port ein einfacher Objektreferenzmechanismus von Mach implementiert durch den Mach IPC Mechanismus port set eine Gruppe von ports die sich einen gemeinsamen message queue teilen message eine grundlegende Methode zur Kommunikation zwischen Threads memory object ein Speicherobjekt das von Prozessen genutzt werden kannBeispiele BearbeitenMACH 0 x 2 5 Referenzimplementation Mach Betriebssystem der Carnegie Mellon University CMU MACH 2 0 NeXTStep bis 0 9 1988 das auf den ersten NeXTcubes vorinstallierte Betriebssystem MACH 2 5 OSF 1 ab 1989 spater Digital UNIX und Tru64 UNIX HP bis 2012 NeXTStep 1 0 3 3 1989 1995 OPENSTEP 4 0 4 2 1996 1997 CMU Mach3 OSF 1 ab 1989 OSF MK verbesserter CMU Mach3 Kernel durch die Open Software Foundation OSF 1 ab 1990 und dessen Nachfolger Tru64 UNIX 1993 2012 MkLinux 1996 2002 Linux Kernel als einzelner Task im Mach Kernel Mach4 Weiterentwicklung durch die Universitat von Utah GNU Mach Weiterentwicklung von Mach4 durch das GNU Projekt in Form von GNU Hurd u a Debian GNU Hurd seit 1998 Mach basiert nur teilweise implementiert oder stark verandert Beispiele OS 2 Warp Connect PowerPC edition Beta Versionen ab 1994 9 in Form von XNU einem zum Hybridkernel weiterentwickelten OSF MK Kernel u a mit Komponenten des FreeBSD Kernels Rhapsody 1997 2000 Darwin ab 1999 als Basis von macOS iOS iPadOS tvOS watchOS und audioOSWeblinks BearbeitenMach Homepage der Carnegie Mellon Universitat englisch Einzelnachweise Bearbeiten Jason Wu Dan Williams Hakim Weatherspoon Microkernels Mach and L4 PDF 1 6 MB S 2 abgerufen am 12 August 2018 englisch Porting the Hurd to another microkernel In GNU Mach GNU 17 Februar 2015 abgerufen am 12 August 2018 englisch assuming that Mach is no longer considered state of the art Early beginnings In GNU Mach History GNU 18 Dezember 2016 abgerufen am 12 August 2018 englisch Amit Singh What NeXT The Mach Factor Mach Nicht mehr online verfugbar In kernelthread org Februar 2004 archiviert vom Original am 24 September 2018 abgerufen am 12 August 2018 englisch Richard Rashid recounts that after a series of unsuccessful naming attempts he came up with the name MUCK Multiprocessor Universal Communication Kernel One of his colleagues Dario Giuse who was Italian inadvertently pronounced MUCK as Mach and the name stuck nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot www kernelthread com Joseph Boykin Alan Langerman Mach 4 3BSD A Conservative Approach To Parallelization PDF 1 5 MB In Computing Systems Vol 3 Encore Computer Corporation 1990 S 2 abgerufen am 12 August 2018 englisch The designers of Mach intend to produce a compact efficient kernel on top of which may be layered interfaces for traditional operating systems such as 4 3BSD System V MS DOS VMS etc Richard Rashid u a Mach A System Software Kernel PDF 13 kB Carnegie Mellon University Department of Computer Science November 1988 S 3 abgerufen am 7 Oktober 2018 englisch Abschnitt 4 Current Status Francois Barbou des Places Nick Stephen Franklin D Reynolds Linux on the OSF Mach3 microkernel Nicht mehr online verfugbar OSF Research Institute Grenoble and Cambridge archiviert vom Original am 11 Februar 2012 abgerufen am 5 Oktober 2018 englisch The OSF Research Institute has made significant improvements and extensions to the original CMU Mach3 0 microkernel and the result named OSF MK is still available for free nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot bat8 inria fr The Mach System PDF 826 kB Appendix B In unbekannt Abgerufen am 12 August 2018 englisch OS 2 Warp PowerPC Edition The PowerPC adventure by far the most exotic release of OS 2 In OS 2 Museum Abgerufen am 14 Dezember 2018 englisch OS 2 for PowerPCs System Overview The product was based on the IBM microkernel which was a refinement of the Carnegie Mellon University Mach microkernel The microkernel bore no resemblance to the Intel OS 2 kernel whatsoever and it was also very different from most other operating systems of the time NeXTSTEP was also based on the Mach microkernel Abgerufen von https de wikipedia org w index php title Mach Kernel amp oldid 229633734