[gesichtete Version] | [gesichtete Version] |
Zeile 38: | Zeile 38: | ||
<br /> | <br /> | ||
== | == Geräteabhängig und Geräteunabhängig == | ||
<p> | <p> | ||
Die Geräteverwaltung hat es schwer: sie muss mit allen erdenklichen Peripheriegeräten kommunizieren können. | Die Geräteverwaltung hat es schwer: sie muss mit allen erdenklichen Peripheriegeräten kommunizieren können. |
Wenn Prozesse mit Peripheriegeräten kommunizieren wollen, so können sie dies niemals direkt erledigen. Stattdessen tätigen sie einen Systemaufruf, wodurch das Betriebssystem mit der gewünschten Kommunikation beauftragt wird.
Die Geräteverwaltung ist nun ein Bestandteil des Betriebssystems und realisiert eine Schnittstelle zwischen den Peripheriegeräten und dem Betriebssystem. Die folgende Abbildung zeigt dies an einem Beispiel.
In der vorangegangenen Abbildung kommuniziert Prozess N über Betriebssystem und Geräteverwaltung mit Gerät 1. Die Pfeilrichtungen kennzeichnen diesen Weg.
Müssen (ganz allgemein betrachtet) die Pfeilrichtungen immer so sein?
Welches konkrete Gerät kommuniziert in deinen Beispielen mit welchem konkreten Prozess?
Die Geräteverwaltung hat es schwer: sie muss mit allen erdenklichen Peripheriegeräten kommunizieren können.
Die Geräteverwaltung ist ein Bestandteil des Betriebssystems, also ein Stück Software.
Sie muss mit unterschiedlichsten Hardware-Geräten kommunizieren, u.a. auch mit Hardware, die vielleicht noch gar nicht entwickelt war, als sie (die Geräteverwaltung) programmiert wurde.
Diesen Spagat bewältigt die Geräteverwaltung durch eine klare Teilung: Sie besitzt sowohl geräteabhängige Teile, als auch geräteunabhängige Teile.
Betrachte noch einmal das Kapitel Kernel-Mode, User-Mode und Systemaufrufe und wiederhole, was es mit eben diesen Fachbegriffen auf sich hat:
Welcher Pfeil aus der obigen Abbildung repräsentiert einen Systemaufruf?
Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png