Seite 5: Geheimes Windows-Wissen für Profis - Tipps für ein besseres Betriebssystem

GameStar Plus Logo
Weiter mit GameStar Plus

Wenn dir gute Spiele wichtig sind.

Besondere Reportagen, Analysen und Hintergründe für Rollenspiel-Helden, Hobbygeneräle und Singleplayer-Fans – von Experten, die wissen, was gespielt wird. Deine Vorteile:

Alle Artikel, Videos & Podcasts von GameStar
Frei von Banner- und Video-Werbung
Einfach online kündbar

Die Windows-Registry

Hardware, Kernel, Treiber, Dienste, Netzwerk, GUI, Shell, Programme, Dateitypen – die Registry ist der zentrale Kleister, der alles zusammenhält. Hier steht das nebensächlichste Kontextmenü für einen Dateityp ebenso wie der Pfad zum fundamentalen Systemdienst. Immerhin lässt sich vereinfacht zusammenfassen, dass die wirklich kritischen Schlüssel praktisch allesamt unter Hkey_Local_Machine\System liegen und damit in der Binärdatei %windir%\System32\Config\System. Fehler im wesentlich umfangreicheren Software-Zweig bringen das System nicht zum Erliegen.
Trotzdem: Das Konzept, alles und jedes bequem per API in die zentrale Registry zu kippen, hat auch Nachteile. Die Fehlersuche ist mühsam bis aussichtslos, wenn sich die Informationen auf diverse Registry-Stellen verteilen. Punktuelle Reparaturen setzen immer eine funktionierende Windows-API voraus.

Windows-Registrierdatenbank

Funktion

Konfigurationszentrale für System, Hardware und Software

Speicherort

%windir%\System32\Config + Ntuser.DAT (im User-Konto)

Zugriffstools

Regedit, Reg, Subinacl, *.REG-Import, API, pcwRegSaveRestore etc.

Hauptschlüssel HKCR

Hkey_Classes_Root (=HKLM\Software\Classes)

Hauptschlüssel HKCU

Hkey_Current_User (=HKU\<SID>)

Hauptschlüssel HKLM

Hkey_Local_Machine

Hauptschlüssel HKU

Hkey_Users

Hauptschlüssel HKCC

Hkey_Current_Config (=HKLM\System\CurrentControlset\Hardware Profiles\Current)

Shell-kritisch

Hkey_Local_Machine\Software\Microsoft\Windows NT\CurrentVersion\Winlogon

System-kritisch

Hkey_Local_Machine\System\CurrentControlSet\Control\

Hardware-kritisch

Hkey_Local_Machine\System\CurrentControlSet\Enum

System-kritisch

Hkey_Local_Machine\System\CurrentControlSet\Services

Boot-kritisch

Hkey_Local_Machine\System\MountedDevices

Registry-Vorteile

zentral und sprachunabhängig, API, Import- und Exportfunktionen

Registry-Nachteile

Heterogenität, mühsame Migration und Fehlersuche, Fragmentierung, Dateitypen-Krieg

Prozesse, Programm und Threads

Ein Prozess ist ein Programm, das gegenwärtig abläuft. Sein Code wird dazu in den Arbeitsspeicher geladen und von der CPU abgearbeitet. Ein Prozess wird entweder per Systemaufruf oder vom User durch den Start einer ausführbaren Datei erzeugt. Mittels eines Systemaufrufs führt ein Prozess Aufgaben aus, für er die eigentlich gar nicht genug Privilegien besitzt, etwa das Schreiben auf Festplatte. Er teilt dem Kernel per API mit, was er tun möchte und gibt die Kontrolle an den Kernel ab. Der Kernel schaut in den PCB (Process Control Block) und führt die Anfrage entweder aus oder lehnt sie ab. Der ursprüngliche Prozess wird dabei so lange unterbrochen (Zustand: Blocked), bis die Anfrage komplett bearbeitet ist. Nach dem Systemaufruf gibt der Kernel die CPU wieder an den Prozess im Benutzer-Modus zurück und führt den Programmcode an der Stelle fort (Zustand: Active), an der er zuvor unterbrochen wurde.

Wer jemals einen Festplattenschaden hatte, konnte diesen Vorgang mit eigenen Augen verfolgen: Solange der Kernel einen Schreib-Vorgang nicht abschließen kann, reagiert die Anwendung auf nichts und friert komplett ein (Blocked). Sie taut erst wieder auf, wenn der notwendige Event eintritt – sei es, dass die Festplatte noch einmal überredet werden konnte oder dass eine sauber programmierte Fehlerbehandlung das Problem abfängt.
Prozesse beenden sich nach kompletter Abarbeitung entweder selbst oder werden von außen - durch den Task-Manager oder den Shutdown - terminiert. Fehler wie unerlaubte Speicherzugriffe führen ebenfalls zum zwangsweisen Ende.

Programme - Prozesse - Threads

Programm

maschinenlesbare Abschrift einer definierten Befehlsfolge "Buch" für den Prozess (Datei)

Prozess

Programm im RAM während der Ausführung lebendes Programm

Thread

optionale, unabhängige Unterprozesse im Minimalfall ist Prozess =Main-Thread

Task

Synonym für Prozess (siehe Task-Manager, Task-Switcher) selten als Synonym für Thread

Process Control Block

Prozess-Verwaltungsakte für Kernel und Scheduler enthält u. a. PID, Rechte, Adressen, Priorität

PID

eindeutige Kennziffer pro Prozess (Process ID) Prozess-Name aus Kernel-Sicht

Process-Zustände

Ready (wartet), Active (arbeitet), Blocked (Event erforderlich) Zustandsänderungen durch Kernel und Scheduler

Scheduling

Zeitsteuerung der Prozesse auf Multitasking-Systemen Kiriterien sind Events, Zeitscheiben, Priorität, Semaphoren

Prozess-Priorität

Kriterium für den Kernel, den Prozess-Zustand zu ändern weitere Kriterien sind Events und Zeitscheiben

Semaphoren

Variablen für zeitkritische Abläufe (für alle Prozesse lesbar), Notizen für die Prozesskooperation

5 von 7

nächste Seite


zu den Kommentaren (0)

Kommentare(0)
Kommentar-Regeln von GameStar
Bitte lies unsere Kommentar-Regeln, bevor Du einen Kommentar verfasst.

Nur angemeldete Benutzer können kommentieren und bewerten.