Die Woche: Wann darf man Linux dazu sagen?

Spätestens seit Android boomt Linux auf Mobilgeräten. Aber was hat Android eigentlich noch mit Linux zu tun?

In Pocket speichern vorlesen Druckansicht 86 Kommentare lesen
Lesezeit: 4 Min.
Von

Kürzlich habe ich einem Freund mein Motorola Milestone gezeigt. Als ich erwähnte, dass das Telefon mit Android läuft, sagte er: "Das ist doch das Google-Linux für Telefone ... läuft da OpenOffice drauf?" Ich musste ihn enttäuschen, aber das brachte mich auf die Frage: Wenn die Bedienoberfläche anders ist und das API für Entwickler anders ist, ist das Betriebssystem dann noch Linux?

Die meisten Linuxer wissen, dass auf ihrem Linux-Desktop oder -Server tatsächlich eine Kombination aus einem einem Betriebssystemkern, System-Bibliotheken, Anwendungen und einem GUI läuft. Linux bezeichnet dabei, streng genommen, nur den Kernel, hat sich aber als Bezeichnung für die Kombination aus Linux-Kernel, POSIX-API (genau gesagt den APIs des Linux Standard Base), GNU-Tools, X11 und Gnome oder KDE eingebürgert. Diese klassische Linux-Variante ist aber lediglich eine Möglichkeit, aus dem Linux-Kernel ein komplettes Betriebssystem zu machen – ein, die sich an dem Unix-Erbe und dessen Standards orientiert.

Android, zum Beispiel, enthält lediglich den Linux-Kernel (mit einigen Änderungen, die ihn inkompatibel zum Standard-Kernel machen) und einige wenige vertraute Linux-Bibliotheken. Davon sehen freilich selbst Entwickler nichts, weil alle Anwendungen auf der virtuellen Java-Maschine Dalvik laufen und die Android-Funktionen nur über das Java-API des Andoid-SDK zugänglich sind. Auch das Android Native Development Kit (NDK), das unterhalb von Dalvik ansetzt, lässt sich nur zusammen mit einer Dalvik-Anwendung nutzen. Wer ein Android-Gerät benutzt, sieht sowieso nichts, was irgendwie an Linux erinnert.

Ist Android nun ein Linux? Sicher nicht in dem Sinne wie ein Linux-Dektop oder -Server. Aber wie soll man Geräte nennen, die den Linux-Kernel verwenden, aber Anwendungen nicht das übliche Linux-API zur Verfügung stellen? "Linux-powered" könnte man dazu sagen – aber nur, wenn man sich darüber klar ist, dass ein Desktop- und ein Server-Linux etwas ganz anderes ist.

Aber es geht hier ja nicht nur um Technik, sondern auch um Offenheit; um das, was mit einem Gerät möglich ist. Anwender müssen wissen, dass "Linux-powered" weniger Offenheit bedeuten kann, als man es von Linux-Distributionen her kennt, dass auf einem solchen Gerät eben nicht jede Linux-Anwendung läuft – selbst wenn sie im Quelltext vorliegt und so sauber programmiert ist, dass sie sich sonst auf jeder Linux-Variante übersetzen lässt.

Wir haben bei der Linux Foundation, Hüterin der Marke Linux, nachgefragt, ob hier nicht Verwirrung für Anwender droht. Jim Zemlin, Geschäftsführer, der Linux Foundation, antwortete darauf:

"Die Linux-Plattform wird auf unterschiedlichen Ebenen mit unterschiedlichen Methoden vereinheitlicht. Da gibt es erstens das Kernel-Level, auf dem das Linux-Ökosystem hochgradig vereinheitlicht ist. Wer immer seine Hardware von Linux unterstützt sehen möchte, trägt seinen Code einfach zum Standard-Kernel auf kernel.org bei.

Zweitens gibt es auf der Ebene der Systembibliotheken Initiativen wie die Linux Standard Base, die einen Satz an Libraries definieren, die ein Linux-Entwickler in allen Linux-Varianten erwarten kann. Die Ökosysteme für Anwendungen schließlich sind auf einer viel höheren Ebene definiert, wo der Markt entscheidet, welche Linux-Versionen erfolgreich sind. Android zum Beispiel ist ein populäres Linux-basiertes Betriebssystem für mobile Geräte, dessen Java-Runtime bestimmt, welche Anwendungen kompatibel sind, und das diese Anwendungen über den Android Marketplace zugänglich macht. Der Palm Pre hat ein ähnliches Konzept mit einer anderen Laufzeitumgebung und einem anderen SDK. Auch der Amazon Kindle hat ein eigenes SDK für Anwendungen.

Das alles sind Linux-basierte Geräte, und niemand ist verwirrt. Es wird verschiedene Ökosysteme für Anwendungen auf verschiedenen Linux-Systemen geben, die auf tieferen Ebenen des Systems einheitlich bleiben." (odi) (odi)