Systemaufbau - Subsysteme Die Windows Architektur ähnelt der Microkernel-Architektur. Im Executive sind elementare Betriebssystem-Funktionalitäten zusammengefaßt. Hierzu zählen Sicherheitsmechanismen, Inter-Prozeß-Kommunikation, Scheduling, Ein/Ausgabe (I/O), Dateisystem und Speichermanagement.
Auf dem Kernel setzten Betriebssystem-Subsysteme auf. Im
Augenblick enthält Windwos NT/2000 das 32-Bit Windows Subsystem (win32), ein
POSIX-Subsystem und ein
OS/2 Subsystem für OS/2 Applikationen. Es können somit auch POSIX-Applikationen
ausgeführt werden. Dies beinhaltet jedoch keine Binärkompatibilität; POSIX-Applikationen müssen
für Windows kompiliert werden. SubSysteme Das Win32 Subsystem stellt die Ausführungsumgebung für 32-Bit Applikationen, 16-Bit Applikationen (Windows 3.1-Programme) und DOS-Applikationen zu Verfügung. Insbesondere die grafische Oberfläche wird von diesem Subsystem verwaltet. Windows 32-Bit Applikationen setzen direkt auf dem Subsystem auf. Ihre Speicherbereiche sind voneinander getrennt. Ein Fehler in einem Programm beeinträchtigt somit kein anderes.
Das OS/2-Subsystem stellt nur eine sehr eingeschränkte Emulation von OS/2 inklusive der Unterstützung des OS/2-Dateisystems HPFS dar. Es werden zeichenorientierte 16 Bit OS/2 Anwendungen nur auf dem x86 PC unterstützt. Andere Anwendungen, die sowohl unter OS/2 als auch unter MS-DOS laufen, können auch auf dem MS-DOS-Teilsystem von RISC-Computern ausgeführt werden. Bei der Anmeldung des Benutzers wird das Subsystem in den Speicher gebracht und aktiviert; ggf. wird es anschließend wieder ausgelagert, weil es nicht gebraucht wird. Es werden nur POSIX-Anwendungen gemäß IEEE-Standard 1003.1, die unter Windows kompiliert wurden, unterstützt. Das Grafik-API von Win32 kann nicht benutzt werden; dazu kommt, daß man nur einen eingeschränkten Zugriff auf den Bildschirm und einige NT-Funktionen zur Ausgabe hat. Genauso wie beim OS/2-Subsystem gilt auch hier, daß bei der Anmeldung des Benutzers das Subsystem in den Speicher gebracht und aktiviert wird, auch wenn es anschließend wieder ausgelagert wird, weil es nicht gebraucht wird. Das integrale Sicherheits-Subsystem Um überhaupt erst einmal Zugriff auf das System zu bekommen, muß man sich über einen Login-Prozeß identifizieren (1). Das Sicherheits-Subsystem überprüft die Daten mittels einer Datenbank (dem Security Account Manager, kurz SAM) durch den Executive und gewährt bei korrekten Angaben des Benutzers Zugriff auf das System (2). Dazu wird ein Access-Token (Zugriffsschlüssel) mit allen Berechtigungen generiert und beim Kreieren des neuen Prozesses weitergegeben (3), so daß das System jederzeit beim Starten eines neuen Prozesses vom Benutzer über dessen Zugriffsrechte informiert ist. Zuletzt wird die Benutzerschnittstelle, sprich der Programm-Manager gestartet (4). Die Anmeldung |