Der Betrieb der unterschiedlichsten Anwenderprogramme 16auf all den vielen Hardware-Konzepten verlangt von der Hardware einheitliche Schnittstellen für die Kommunikation mit den Betriebssystemen. Damit diese Schnittstellen von der Hardware bereitgestellt werden können, werden logische und virtuelle Geräte definiert.
1.4 Logische und virtuelle Geräte
Damit ein Betriebssystem die Hardware überhaupt benutzen kann, muss diese derart standardisiert werden, dass der Austausch von Daten und Kontrollfunktionen zwischen der Hardware und dem Betriebssystem einheitlich wird.
Man erreicht dies, indem man das physische Gerät 17mit Hilfe von speziellen Hardwaretreibern 18mit einem logischen Gerät verbindet.
Eine physische Harddisk 19besteht im wesentlichen aus mehreren rotierenden, magnetisierbaren Scheiben. Die digitale Information wird mit Hilfe von Schreib/ Leseköpfen auf die Scheiben geschrieben und kann anschliessend wieder gelesen werden.
Die Information ist in der magnetischen Schicht gespeichert. Das entsprechende magnetische Muster befindet sich unterhalb einer sehr dünnen Schutzschicht. Das Bild 5 zeigt die Struktur in der Magnetschicht. Es lassen sich deutlich schmalere und breitere Linien erkennen 20, welche die gespeicherten Einsen und Nullen darstellen. Das Bild wurde mit einem magnetischen Kraftmikroskop aufgenommen.
Ebenfalls erkennen lässt sich eine übergeordnete Struktur, die sogenannten Spuren oder Zylinder (Im Bild diagonal von links unten nach rechts oben verlaufend). Diese Zylinder sind als konzentrische „Kreise“ auf der Platte organisiert (Bild 5).
Ein Betriebssystem, das von einem Anwenderprogramm die Anweisung erhält, dass es eine Datei auf der Platte abspeichern soll, hat nun das Problem, dass es sich die genaue Lage der geschriebenen Bits auf der Platte merken muss.
Das heisst, das Betriebssystem muss in diesem Fall eine Liste führen, welche angibt, welches Bit in welchem Zylinder und in welchem Sektor geschrieben wurde. Es spielen dabei noch weitere Parameter eine Rolle, wie zum Beispiel die Schreib-/ Lese-Kopf-Position und die Positions-Korrektur, welche notwendig ist wegen der Wärmedehnung der Platten! Ein Betriebssystem, das sich all diese Parameter merken muss, kann nicht mehr effizient arbeiten. Zudem wäre es notwendig, dass die Hardware vom Betriebssystem abhängig gebaut würde. Eine Harddisk, welche unter Windows NT läuft würde unter Windows 10 oder Linux versagen!
Damit dieses Problem nicht auftaucht, wird die Platte mit einem Controller (Hardwaretreiber) ausgerüstet. Diese Treiber sitzen in der Regel fest einprogrammiert in einem Chip auf der Hardware (Harddisk) und müssen unter anderem festlegen, wie die Köpfe die Daten, welche z. B. via IDE oder SCSI-Bus 21zum Controller gelangen, auf die Platte schreiben sollen.
Ein Betriebssystem könnte nun Daten über den erwähnten IDE oder SCSI Bus an den Controller übergeben. Dieser schreibt die Daten auf einen bestimmten Zylinder in einem bestimmten Sektor, merkt sich diese Information, kann die Daten anschliessend wieder finden und dem Betriebssystem übergeben.
Aus praktischen Gründen geht man jedoch noch einen Schritt weiter und ergänzt diese logische Festplatte mit einem Verwaltungstreiber. Dieser kann ebenfalls auf der Harddisk zu finden oder aber auf dem PC Motherboard als Software-Treiber im RAM abgelegt sein 22.
Diese neue Kombination zwischen logischer Harddisk und Verwaltungstreiber (oft einfach „Treiber“ oder „Modul“ genannt) wird nun „virtuelle Harddisk“ genannt.
Diese virtuelle Harddisk ist auf der dafür bestimmten Hardware-Plattform (z.B. MAC, PC) herstellerneutral. Zu beachten ist, dass daraus auch folgt, dass eine PC-Harddisk nicht in einem System ohne IDE oder SCSI-Bus eingesetzt werden kann (z.B. AS/400). Zudem kann es vorkommen, dass auch in Systemen mit SCSI-Bus, wie z.B. Postscript-Druckern, gewisse SCSI-Bus-Harddisks, die für PCs gebaut wurden, nicht laufen!
Mit Hilfe der erwähnten Verwaltungstreiber ist es möglich, die Festplatten als sequenzielles Feld von Speicherblöcken anzusprechen. Die Betriebssysteme stellen dem Benutzer bestimmte Werkzeuge (Tools) zur Verfügung, um die Platten zu partitionieren 23und zu formatieren 24.
Ein logisches Gerät ist somit das physische Gerät, ergänzt mit Hardwaretreibern. Ein virtuelles Gerät erhält man durch die weitere Ausstattung dieser logischen Geräte mit Verwaltungstreibern (siehe Bild 6).
Ob ein Betriebssystem die logischen oder die virtuellen Geräte ansprechen soll, hängt vom Einsatzgebiet der Hardware ab. PC Betriebssysteme sprechen in der Regel virtuelle Geräte an, bei den embedded systems existieren aber auch Betriebssystem-Varianten, die einen Massenspeicher (z.B. eine Harddisk) als logisches Gerät ansprechen (z.B. Harddisk in Postscript-Druckern).
Diese seit langem bekannte und eingesetzte Form der Virtualisierung wird heute in allen virtuellen Maschinen weiter entwickelt eingesetzt. In heutigen virtuellen Umgebungen spielt es keine Rolle mehr, woraus der Speicher wirklich (physisch) besteht. Es können Harddisks, Flashmemories, hybride Speicher, optische Speicher und andere Formen von Speichern sein.
Eine virtuelle Maschine stellt somit dem Gastbetriebssystem ein normiertes virtuelles Speichermedium zur Verfügung und sorgt für die korrekte Ablage und Speicherung der Daten auf den physischen Medien.
1.5 Aufbau von Betriebssystemen
Der Aufbau von Betriebssystemen kann in der Realität sehr kompliziert sein. Es existieren daher sehr verschiedene Modelle, um die verschiedenen Sachverhalte zum Aufbau der Betriebssysteme darzustellen.
Abgeleitet von unserer Definition des Begriffs „Betriebssystem“ (das Betriebssystem sei eine Verbindung zwischen der Hardware und den Anwendungen, respektive den Benutzern) existieren Modelle, die diesen Sachverhalt aufzeigen. Diese Modelle sind nicht eigentlich Modelle von Betriebssystemen, als vielmehr Modelle von Computern. Es werden an dieser Stelle die beiden häufigsten vorgestellt, das Schalenund das Schichten-Modell.
Unter Einbezug der verschiedenen virtuellen Geräte, der wichtigsten Betriebssystem-Funktionen, der Schnittstellen, der Anwender-Programme und der Kommunikations-Protokollen des ISO/OSI-Modelles wird anschliessend ein generisches Modell eines Betriebssystems vorgestellt.
1.5.1 Modelle von Computern
Die Zuordnung der Betriebssysteme als Verbindung zwischen Hardware und Anwendersoftware kann grundsätzlich auf zwei unterschiedliche Arten geschehen. Einerseits wird das Schalenmodell verwendet und andererseits findet man häufig die Darstellung als Schichtenmodell. Die beiden Modelle werden in der Folge kurz dargestellt.
Dieses Modell stellt das Betriebssystem als eine die Hardware (HW) umschliessende Schale dar. Die Anwenderprogramme umschliessen wiederum das Betriebssystem und die Benutzerzugriffe erfolgen über eine alles umschliessende äusserste Schale.
Bild 7 zeigt das Schalenmodell, wie es in vielen Büchern und wissenschaftlichen Veröffentlichungen über Betriebssysteme anzutreffen ist.
Читать дальше