Speicherschutz
aus Wikipedia, der freien Enzyklopädie
Speicherschutz ist die Eigenschaft von Betriebssystemen, den verfügbaren Arbeitsspeicher so aufzuteilen und laufende Programme so voneinander zu trennen, dass ein Programmierfehler/Absturz eines einzelnen Programms nicht die Stabilität anderer Programme oder des Gesamtsystems beeinträchtigt. Programme werden zwangsweise daran gehindert, versehentlich oder absichtlich auf den Speicherbereich anderer Programme zuzugreifen oder das Betriebssystem anders als durch standardisierte „Eingänge“ zu benutzen. Hardwareseitige Voraussetzung ist eine Speicherverwaltungseinheit (MMU), die Speicherschutz unterstützt.
Moderne Vielzweck-Betriebssysteme verfügen durchgehend über diese Eigenschaft, mit wenigen Ausnahmen, wie etwa Betriebssystemen, auf denen nur einzelne Applikationen laufen -- zum Beispiel in eingebetteten Systemen.
Durch Sicherheitslücken in der Konstruktion der diversen Betriebssysteme, insbesondere auf x86-Prozessoren, wird der Speicherschutz jedoch immer häufiger unterlaufen. So besteht ein Trick beispielsweise darin, Pufferüberläufe zu erzeugen und so den Programmfluss zu verändern. Allerdings unterstützen immer mehr Prozessoren das so genannte NX-Bit, mit dem sich bestimmte Speicherbereiche als nicht ausführbar markieren lassen um damit zu versuchen, das Ausnutzen von Pufferüberläufen zu verhindern.
[Bearbeiten] Beispiele
- Betriebssysteme ohne Speicherschutz
- Mac OS (bis 9)
- AmigaOS1 bis 3
- DOS
- VxWorks
- OS-9
- Betriebssysteme mit eingeschränktem Speicherschutz
- Betriebssysteme mit vollem Speicherschutz
- Fast alle UNIX-Varianten
- Windows NT, Windows 2000, Windows XP, Windows Vista
- MVS, OS/390, z/OS
- Symbian OS
Siehe auch: Real Mode, Protected Mode