Die Windows 10 Architektur erklärt – Da wächst was zusammen

(09.02.2017)

Microsoft arbeitet zur Zeit mit Hochdruck an den nächsten Entwicklungsstufen von Windows 10. Die Gerüchteküche brodelt und die Begriffe fliegen ziemlich durcheinander: CShell, Windows 10 ARM, Windows 10 Cloud, Windows 10 Mobile… Da kann man schonmal den Überblick verlieren. Wie das alles zusammenhängt und wie die Windows-10-Plattform in Zukunft (wahrscheinlich) aussehen wird, erklärt euch dieser Gastbeitrag.

Ein kleiner Einblick in den Windows Baukasten

Microsoft hat schon vor langer Zeit angefangen, möglichst alles wiederverwendbar zu programmieren. Ein frühes Beispiel ist Word für Windows 2.0. Deren alte Such-Engine war um Welten schneller, entsprach aber nicht mehr den Vorgaben, die Microsoft an Code stellte, wie z.B. Dokumentation und Schnittstellen. Mit Word 6.0 für Windows bzw. dem darauf folgenden Office 95 wurde deshalb auch die Such-Engine neu geschrieben. Ähnlich war es auch mit der Rechtschreibprüfung. Ursprünglich für Word entwickelt, wird sie nun überall in Windows benutzt, selbst in der Nachrichten-App zum Schreiben von SMS.

Stark vereinfacht folgt Windows dabei einem „Schichten-Modell“, das zuunterst mit der benutzten Hardware beginnt. Damit der Windows Kernel, der immer gleich ist, auch mit jeder Hardware funktioniert, folgt auf die Hardware (und deren Firmware, nicht abgebildet) der Hardware Abstraction Layer (HAL).

Nach dem Windows Kernel folgt der Services Layer, der die Kommunikation mit den Applikationen übernimmt, hier durch Subsets an API-Funktionen je nach verwendeter Applikationsgruppe (64 Bit, 32 Bit oder Metro/UWP) dargestellt. Zuoberst kommt die Shell, also das User Interface.

Windows konvergiert

Je nach verwendeter Hardware wird der HAL und der Kernel entsprechend kompiliert – nach ARM- oder x86-Prozessorarchitektur. Durch die vielen verschiedenen Formfaktoren haben sich eine ganze Reihe von Shells entwickelt, die Microsoft nun mit der CShell alle zusammenfassen will. Dabei soll sich die CShell-Benutzeroberfläche auch automatisch an den benutzten Formfaktor anpassen.

Je nach Einsatzzweck, z.B. Smartphone, Tablet oder PC mit Bildschirm, werden nun auch die API-Subsets dazu genommen oder weggelassen/deaktiviert. Zum Beispiel findet sich bei der Hololens nur noch die Metro-API, bei der Xbox die Metro-API und eine eigene „Xbox-API“.

Wer nun genau hinschaut, sieht sehr schnell, dass sich Windows 10 Cloud nicht mehr von Windows 10 Mobile unterscheidet, es ist nur ein unterschiedlicher Formfaktor zu „vermuten“, denn bei Windows 10 Mobile hat man ein Smartphone vor Augen und bei Windows 10 Cloud ein Tablet. Und eben genau diese unterschiedlichen Formfaktoren und die damit bisher unterschiedlichen Shells werden nun von der CShell ausgeglichen.

Windows 10 ARM wiederum ist das gleiche wie das herkömmliche Windows 10, aber für die ARM-Plattform kompiliert.
Der Unterschied zwischen Windows 10 Cloud und Windows 10 ARM wird dann letztlich nur noch in der eventuell möglichen Freischaltung der API-Subsets bestehen (Upgrade von Windows 10 Cloud auf Windows 10 ARM).

Die ganze Umsetzung dauert natürlich etwas und teilweise ist auch die Hardware noch nicht leistungsstark genug, z.B. wäre der Nutzer von Windows 10 ARM auf einem Snapdragon 820 zum Einschlafen verurteilt. Anhand des Modells wird aber auch klar, dass es Microsoft daran gelegen sein muss, möglichst alle 32-Bit- und 64-Bit-Anwendungen zu Metro-Apps zu portieren. Dann könnte nämlich auf sehr lange Sicht die Entwicklung der Win-32- und Win-64-APIs eingestellt werden.

Mit weiteren leistungsstarken ARM-Prozessoren ist es auch durchaus denkbar, dass viele Desktop-PC-Eigentümer beim Neukauf auf ein ARM-Gerät mit Windows wechseln werden. Ca. 60% aller PCs laufen mit Windows. Wenn nur die Hälfte dieser Nutzer als neues Windows-Gerät eines mit Smartphone-Formfaktor wählen würden, weil zuhause noch Monitor (Fernseher), Maus und Tastatur vorhanden sind, dann könnte Windows im Smartphone-Bereich durchaus einen Marktanteil von 20% oder mehr erreichen.

Ich hoffe, dass nun klar ist, wieso Unkenrufe wie „Windows 10 Mobile ist tot“ unsinnig sind. Oder wie seht Ihr das?