Betriebssystem und Hardware

Was ist der Hauptgrund dafür, dass in üblichen Betriebssystemen Anwendungen Geräteregister nicht direkt lesen und schreiben können?

  1. AWeil sich in Anwendungsprogrammen Befehle zum Lesen und Schreiben von Registern nicht schreiben lassen
  2. BWeil bei eigenmächtiger Bedienung eines Geräts durch mehrere Programme der Gerätezustand zerstört oder der Schutz durchbrochen werden könnte
  3. CWeil Geräteregister nur unmittelbar nach dem Einschalten gelesen und geschrieben werden können
Antwort und Erläuterung anzeigen

Antwort: B. Weil bei eigenmächtiger Bedienung eines Geräts durch mehrere Programme der Gerätezustand zerstört oder der Schutz durchbrochen werden könnte

Die Adressen, an denen Geräteregister liegen, werden in der Seitentabelle so eingestellt, dass der Zugriff aus dem Benutzermodus nicht möglich ist und nur der Treiber des Betriebssystems sie bedienen kann. Bedienen mehrere Programme dasselbe Gerät eigenmächtig, vermischen sich Zwischenzustände, das Gerät arbeitet fehlerhaft, und der Schutz wird durchbrochen, etwa wenn per DMA beliebiger Speicher überschrieben wird. Anwendungen bitten das Betriebssystem per Systemaufruf um die Bedienung. Es liegt nicht daran, dass sich die Befehle nicht schreiben ließen; sie sind durch den Schutz verboten.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Betriebssystem und Hardware

  1. Wie heißt die Software, die auf einem Computer mehrere Betriebssysteme gleichzeitig als jeweils unabhängige virtuelle Maschinen ausführt?
  2. Welche Aussage zu den Typen von Hypervisoren ist richtig?
  3. Welche Erklärung der von der Hardware durchgeführten Adressumsetzung bei Virtualisierung mit Nested Paging (zweistufige Adressumsetzung) ist richtig?
  4. Wie viele Speicherzugriffe sind im ungünstigsten Fall bei einem TLB-Miss nötig, wenn bei Nested Paging sowohl Gast als auch Host vierstufige Seitentabellen verwenden?
  5. Wie heißt das Verfahren, bei dem die Verarbeitung an den Hypervisor übergeht, wenn das Betriebssystem einer virtuellen Maschine einen Befehl mit erforderlichen Privilegien ausführt, und der Hypervisor die Wirkung dieses Befehls stellvertretend nachbildet?

Vergleiche zu diesem Thema