Darwin (Betriebssystem)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Darwin
Basisdaten
Entwickler Apple
Aktuelle Version 15.2.0
(9. Dezember 2015)
Abstammung Unix
↳ BSD4.4-Lite
↳ Rhapsody
↳ Darwin
Architekturen x86, ARM
(bis Version 9.x: PowerPC)
Lizenz APSL 2.0
Sonstiges Preis: kostenlos
Kompatibilität zu FreeBSD
Website opensource.apple.com
Darwin ist die untere Schicht von OS X

Darwin ist ein freies Unix-Betriebssystem des Unternehmens Apple und bildet die Grundlage für dessen proprietäre Distribution OS X, das bis 2011 „Mac OS X“ hieß. Es beinhaltet weder die grafische Benutzerschnittstelle Aqua noch Quartz, OpenGL oder QuickTime und auch nicht die Programmierschnittstellen Cocoa und Carbon. Freie, z. B. unter FreeBSD nutzbare Desktop-Umgebungen können unter Darwin nachinstalliert und genutzt werden.

Architektur, Funktionsbeschreibung und Systemanforderungen[Bearbeiten]

Darwins Kernel XNU ist ein Hybridkernel, das heißt, er versucht die Vorteile eines monolithischen Kernels mit den Vorteilen eines Microkernels zu verbinden. Darwin basiert auf dem FreeBSD-Userland und einem Mach-Kernel und bildet so für Benutzer und Software eine Schnittstelle zur Kommunikation mit der Hardware.

Darwin ist in verschiedenen Versionen auf PPC-Prozessoren, x86-Prozessoren und auf ARM-Prozessoren lauffähig. Während alle Programme für Darwin auch auf OS X laufen, funktionieren auf OS X zugeschnittene Programme nicht unbedingt auf Darwin. Das Mobilbetriebssystem iOS für iPhone, iPad, iPod touch, Apple TV und die Apple Watch basiert ebenfalls auf Darwin, wobei der Nutzer jedoch weder Zugriff auf das Dateisystem noch auf die Kommandozeile hat. Diese Beschränkung lässt sich in einigen Fällen durch einen Jailbreak aufheben.

Lizenzierung und Marketing[Bearbeiten]

Darwin wird unter der Apple Public Source License herausgegeben, die seit der Version 2.0 von der Free Software Foundation als Lizenz für freie Software anerkannt wird.[1] Das Maskottchen von Darwin ist Hexley, das Schnabeltier.[2][3]

Verfügbarkeit[Bearbeiten]

Von Apple selbst wird nur der Quelltext der zur Erstellung eines Darwin-Betriebssystems nötigen Teile herausgegeben.[4][5] Aufgrund des von Apple genutzten internen Build-Systems, das nicht öffentlich verfügbar ist, sind die Quellen jedoch nicht so einfach zu kompilieren.[6] Bei Projekten wie OpenDarwin und PureDarwin war es daher die erste Aufgabe, den Quelltext auch mit öffentlich verfügbaren Compilern übersetzbar zu machen. Auch sind die Quelltexte spezifisch auf die Apple-Hardware angepasst und zudem nicht sehr gut dokumentiert, was eine Anpassung schwierig macht. Beim XNU-Kernel beispielsweise veröffentlichte Apple stets nur die für die von den aktuellen Macs genutzte Prozessorarchitektur notwendigen Teile für OS X, nicht aber jene für iOS. Da mit Mac OS X 10.6 alias „Snow Leopard“ die Unterstützung für PowerPC eingestellt wurde, ist auch keine PowerPC-Unterstützung mehr im XNU-Kernel für Darwin 10.0 und neuer zu finden. Quelltexte von iOS sind bis auf wenige Ausnahmen nicht verfügbar.[7]

Dennoch gab es einige Bestrebungen, eine auf Darwin basierte Distribution eines vollwertigen Unix-Betriebssystem zu erstellen.

OpenDarwin (2002–2006)[Bearbeiten]

OpenDarwin wurde im April 2002 von der ISC und Apple gegründet. Es stand jedermann frei, dem Projekt beizutreten, doch viele Mitglieder waren Apple- oder Darwin-Entwickler. Das Ziel war eine eigenständige Darwin-Distribution, als Plattform sollten sowohl PowerPC- als auch x86-Architekturen unterstützt werden. Damit war OpenDarwin eine Verkörperung des Darwin-Betriebssystems, die es auch externen Entwicklern möglich machte, am CVS-Tree direkt Quelltext beizutragen, ohne Apple-Mitarbeiter zu sein oder sich bei Apple registrieren zu müssen. Es war die bisher einzige Möglichkeit für externe Entwickler am aktuellen Systemkernel mitarbeiten zu können, da der CVS-Tree in einigen Teilen immer auf dem Live-Darwin-CVS beruhte, andere Teile wurden hingegen periodisch aktualisiert.[8][6] OpenDarwin wurde aufgrund des jeweils aktuellen CVS-Tree verfügbar gemacht.

Am 26. Juli 2006 wurde OpenDarwin wegen mangelnder Unterstützung der Community eingestellt.[9] Auf der offiziellen Webpräsenz, die bis zum 28. Juni 2007 erreichbar war, gaben die Administratoren zuletzt als Begründung an, dass die gesetzten Ziele des Projektes in vier Jahren nicht erreicht wurden.[8]

PureDarwin (2007–2012)[Bearbeiten]

Nachdem OpenDarwin eingestellt wurde, gab es ab Ende 2007 mit PureDarwin ein Nachfolgeprojekt, dessen Ziel es war, ein startfähiges Darwin-ISO herzustellen. Allerdings gab es seit 2012 keine neuen Bemühungen und die letzte Version is PureDarwin 1.3 Beta, die auf Darwin 9.8 (analog Mac OS X 10.5.8 „Leopard“ von 2007–2009) basiert.[10]

Darwin on ARM Project (seit 2013)[Bearbeiten]

Mit dem „Darwin on ARM Project“ gibt es seit ca. 2013 ein auf Darwin 12.x (OS X 10.8) basiertes Projekt eines einzelnen Entwicklers, das den Darwin-Kernel XNU (und allem, was dazu benötigt wird) auf ARM-Geräten lauffähig machen soll.[11]

Versionsgeschichte[Bearbeiten]

Trotz der Bestrebungen, Darwin abseits von OS X (bis 2012 Mac OS X) verfügbar zu machen, gibt es das Darwin-Betriebssystem hauptsächlich als Unterbau und somit als integralen Bestandteil von OS X und iOS. Daher nimmt diese somit unvollständige Versionsgeschichte auch nur auf die Betriebssysteme von Apple Bezug, nicht aber auf die oben erwähnten Projekte oder mögliche weitere Inkarnationen von Darwin.

Welche Version auf einem System läuft kann mit uname -v ausgelesen werden, wenn Zugang zu einer Kommandozeile vorhanden ist, was bei iOS ohne Jailbreak grundsätzlich nicht der Fall ist. Unter Mac OS X 10.7.2 gibt uname -v beispielsweise Darwin Kernel Version 11.2.0: Tue Aug 9 20:54:00 PDT 2011; root:xnu-1699.24.8~1/RELEASE_X86_64 aus.

Version von
Darwin OS X und iOS
Ältere Version; nicht mehr unterstützt: 0.1 Mac OS X Developer Preview 1;
das Betriebssystem weist sich als „Mac OS X 10.0“ aus, nicht als „Darwin 0.1“
Ältere Version; nicht mehr unterstützt: 0.2 Mac OS X Developer Preview 2
Ältere Version; nicht mehr unterstützt: 1.0 Mac OS X Developer Preview 3
Ältere Version; nicht mehr unterstützt: 1.1 Mac OS X Developer Preview 4
Ältere Version; nicht mehr unterstützt: 1.2.1 Mac OS X Public Beta
Ältere Version; nicht mehr unterstützt: 1.3.1 Mac OS X 10.0.0-10.0.4 „Cheetah“
Ältere Version; nicht mehr unterstützt: 1.4.1 Mac OS X 10.1.0 „Puma“
Ältere Version; nicht mehr unterstützt: 5.1-5.5 Mac OS X 10.1.1-10.1.5 „Puma“
Ältere Version; nicht mehr unterstützt: 6.x Mac OS X 10.2.x „Jaguar“
Ältere Version; nicht mehr unterstützt: 7.x Mac OS X 10.3.x „Panther“
Ältere Version; nicht mehr unterstützt: 8.x Mac OS X 10.4.0-10.4.11 „Tiger“;
das Apple TV der 1. Generation nutzte ein modifiziertes Mac OS X 10.4, das sich ebenfalls als Darwin-Version 8 identifiziert[12]
Ältere Version; nicht mehr unterstützt: 9.x Mac OS X 10.5.x „Leopard“; iOS 1.x und 2.x;
letzte Version für PowerPC, gleichzeitig erste Version für ARM
Ältere Version; nicht mehr unterstützt: 10.x Mac OS X 10.6.x „Snow Leopard“; iOS 3.x und 4.0-4.2.1
Ältere Version; nicht mehr unterstützt: 11.x Mac OS X 10.7.x „Lion“; iOS 4.3-4.3.5 und 5.x
Ältere Version; nicht mehr unterstützt: 12.x OS X 10.8.x „Mountain Lion“
Ältere Version; nicht mehr unterstützt: 13.x OS X 10.9.x „Mavericks“; iOS 6.x
Ältere Version; noch unterstützt: 14.x OS X 10.10.x „Yosemite“; iOS 7.x und 8.x
Aktuelle Version: 15.x OS X 10.11.x „El Capitan“; iOS 9.x
Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version

iOS hieß vor Version 4.2.1 „iPhone OS“ und „iPad OS“ und wird auch als tvOS und watchOS verwendet.

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. Apple aktualisiert seine Public Source License. In: heise online. 7. August 2003, abgerufen am 30. Juni 2008.
  2. About Hexley. Archiviert vom Original am 13. Dezember 2006, abgerufen am 18. Dezember 2015 (englisch).
  3. http://www.hexley.com/
  4. Apple Source Browser: tarballs
  5. Apple Source Browser
  6. a b Rob Braun: A Brief History of Apple’s Open Source Efforts. Archiviert vom Original am 13. Oktober 2006, abgerufen am 18. Dezember 2015 (englisch).
  7. The iPhone Wiki – Kernel: „It is worth noting that Apple does not list XNU as being an open source component of iOS. This can be seen by viewing opensource.apple.com and selecting any iOS version. As far as can be told, none of the versions of XNU are available in source version.“ und „It does not appear that Apple assumes what you see in the OS X pages are also on iOS as JavaScriptCore, WebCore, among others are listed on both OS X (10.8) and iOS (6.0), albeit different versions.“
  8. a b OpenDarwin Shutting Down. 25. Juli 2006, archiviert vom Original am 31. Dezember 2006, abgerufen am 18. Dezember 2015 (englisch).
  9. OpenDarwin schließt die Pforten. In: heise online. 26. Juli 2006, abgerufen am 6. April 2013.
  10. New PureDarwin 1.3 beta release (englisch), 15. Dezember 2012, abgerufen am 18. Dezember 2015
  11. GitHub: Darwin on ARM Project, abgerufen am 18. Dezember 2015
  12. GitHub: oisc-logger/mac_os_agents.txt listet diverse Darwin-Versionen mit den zugehörigen OS-X-Versionen auf; abgerufen am 24. Dezember 2015