Die Architektur von Android

Android geht in vielerlei Hinsicht ganz andere Wege als andere Linux-Versionen – das beginnt bei Anpassungen am Kernel und hört bei der virtuellen Maschine Dalvik noch lange nicht auf.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 25 Min.
Von
  • Arno Becker
Inhaltsverzeichnis

Android geht in vielerlei Hinsicht ganz andere Wege als andere Linux-Versionen – das beginnt bei Anpassungen am Kernel und hört bei der virtuellen Maschine Dalvik noch lange nicht auf. Die Besonderheiten der Android-Architektur zu kennen hilft dabei, die Eigenarten der populärsten Linux-Variante zu verstehen.

Es ist schon erstaunlich, wie viele Funktionen ein modernes Smartphone in sich birgt: telefonieren, Internet-Zugang, Spiele, Videos drehen … Selbstverständlich ist das nicht, eher ein kleines Wunder: Jede Funktion verbraucht Strom und Speicher, und das sind auf mobilen Geräten sehr endliche Ressourcen. Android ist ein Betriebssystem mit Linux-Kernel für Smartphones, aber auch andere Embedded Systems, das den Beschränkungen solcher Geräte Rechnung trägt. Es lohnt sich, einen genaueren Blick auf Android zu werfen: Vieles, was an der Android-Systemarchitektur besonders ist, hat direkte Auswirkungen auf das Verhalten von Android-Geräten und -Anwendungen.

Android ist eine Open-Source-Plattform, die von der Open Handset Alliance entwickelt wird, einem von Google initiierten breiten Zusammenschluss von Netzbetreibern, Smartphone-, Prozessor- und Chip-Herstellern sowie Softwarefirmen. Kern des Betriebssystems ist ein angepasster Linux-Kernel 2.6. Zudem sind zahlreiche Treiber und Bibliotheken verändert oder vollständig ersetzt – ein normales Linux würde die mobile CPU zu stark belasten, wodurch Anwendungen im Multitasking-Betrieb nicht schnell genug laufen würden und der Akku eines mobilen Geräts im Handumdrehen geleert wäre.

Daher erweitert Android das klassische Power Management des Linux-Kernels, um es an die Gegebenheiten mobiler Hardware anzupassen. So muss das System beispielsweise die Hintergrundbeleuchtung von Tastatur und Bildschirm ein- und ausschalten können. Ebenso muss das System den Status des Akkus überwachen und zuverlässig das Gerät herunterfahren, bevor die Stromversorgung zusammenbricht.