Die meisten Prozessoren haben 2 Modi:
- Benutzermodus - für “normale” Programme
- “Privilegierter” Modus - auch System- oder Kernel-Modus
Bestimmte Befehle werden nur im priviligierten Modus ausgeführt, z.B.:
- Lesen/Schreiben bestimmter Register
- Speicherverwaltung
Grund: Schutz des OS vor Benutzern
Wie weiß der Prozessor in welchem Modus er arbeitet?
Durch ein Bit im Programmstatuswort-Register (PSW)
Wie wird der Modus geändert?
Durch bestimmte Ereignisse (z.B. Aufruf eines OS-Dienstes, CHM Change Mode in Assembler)
Nicht alle Betriebssysteme verwenden mehrere Modi, z.B. Embedded Systems wegen Effizienz
Allgemein gilt: Alles im Kernmodus gehört zum Betriebssystem aber nicht umgekehrt