Magenta: Binärkompatibler iOS-Nachbau

In der aktuellen Version des Open-Source-Projekts Magenta(öffnet im neuen Fenster) ist es Entwicklerin Christina Brooks gelungen, mehrere Kernbibliotheken aus Darwin(öffnet im neuen Fenster) zur Zusammenarbeit mit einem Linux-Kernel zu bewegen. Darwin basiert auf BSD, bildet die Basis für iOS sowie für Mac OS X und ist selbst unter einer Open-Source-Lizenz veröffentlicht worden. Bislang läuft Magenta nur auf der ARMv7-Plattform. Magenta soll weitgehend binärkompatibel zu iOS 1.0 sein.
Magenta enthält einige Basisbibliotheken, die aus dem Darwin-Code stammen, darunter CoreFoundation, Libstdc++, Libobjc, Linc++abi, Libicucore sowie Libncurses. Sie alle funktionieren mit dem darunterliegenden Linux-Kernel. Damit sollen sie im gleichen Binärformat vorliegen, das auch iOS 5.0 nutzt. Als Brücke zwischen den Userspace-Werkzeugen und dem Linux-Kernel dient die Bibliothek Libc.
Die Entwicklerin will den iOS-1.0-Stack komplett nachbauen. Das sei ein durchaus realistisches Ziel, denn es gebe genügend Open-Source-Bibliotheken, die selbst die proprietären Grafikbibliotheken von Apple ersetzen könnten, etwa Cairo samt Freetype und Libpng oder Chameleon als Ersatz für UIKit.
Allerdings will sich Brooks lediglich auf die Basiskomponenten konzentrieren. Wer nach einer Alternative sucht, auf dem iOS-Apps laufen, sei hier an der falschen Stelle, schreibt sie. Lediglich CoreOS soll möglichst vollständig kompatibel sein. Ein kompletter Nachbau sei viel zu kompliziert. Sie nutze den Linux-Kernel, weil weder der NetBSD- noch der FreeBSD-Kernel genügend Hardwarekompatibilität bietet.
"This is a very weird project. You may ask, why am I doing this? The answer is: no fucking idea" , schreibt Brooks.
Der Quellcode(öffnet im neuen Fenster) ist unter diversen Open-Source-Lizenzen veröffentlicht worden.



