|
Dateien
Zur Erinnerung: Dateien speichern eine Menge von gleichartigen Objekten (z. B.
Bytes) unter einem Namen. Das BS stellt Operationen zum Bearbeiten von Dateien zur Verfügung: - Erzeugen und Löschen von Dateien
- Lesen aus und Schreiben in Dateien
Alle Betriebssysteme zielen auf Geräteunabhängigkeit ab, d. h. ein Programm muß sich nicht (oder zumindest nur wenig) darum kümmern, ob eine Datei sich auf Platte, Magnetband oder einem anderen Massenspeicher befindet. Weiterhin sollen Ein- und Ausgabe auf einem Peripheriegerät prinzipiell genauso erfolgen, wie
die Lese- und Schreiboperationen auf einer Datei. Auch Ressourcen auf einem Server
sollen zugreifbar sein wie lokale Ressourcen.
Bei vielen BS ist es möglich, auf einen beliebigen Datensatz innerhalb einer
Datei zuzugreifen (wahlfreier Zugriff). Bei anderen Systemen ist nur sequentielles
Lesen möglich.
Bei einigen BS wird zwischen verschiedenen Speichergeräten unterschieden (z.
B. MS-DOS), der Benutzer muß genau spezifizieren, auf welchem Gerät (Laufwerk)
sich die gewünschte Datei befindet. Bei anderen BS (z. B. UNIX) kann jedes
Gerät in das Dateisystem eingebunden werden, das sich um die, auf diesem Gerät
befindlichen, Dateien erweitert.
Ein Sektor ist auch die kleinste Informationsmenge, die von der Platte gelesen
oder darauf geschrieben werden kann. In der Regel nimmt eine Datei mehrere Sektoren
(typische Größen: 512 Byte - 8 KByte) in Anspruch. Das BS sorgt dabei:
- für die Zuordnung Spurnummer & Sektornummer --> Datei
- für die "Buchführung", in welcher Reihenfolge die Sektoren
innerhalb der Datei aufeinanderfolgen
- bei Erzeugen oder Erweitern einer Datei für die Allokierung freier Sektoren
auf der Platte
- beim Löschen einer Datei für die Freigabe der verwendeten Sektoren
Für die "Buchführung" über freie und belegte Sektoren gibt
es verschiedene Methoden. Am gebräuchlichsten sind:
- Führen einer Freiliste (file allocation table = FAT) über alle Sektoren.
- Verbinden der Sektoren in Form linerarer Listen. Dabei gibt es eine spezielle
Liste, in der sich alle freien Sektoren befinden.
Zusätzlich werden Informationen über die Datei selbst benötigt, z. B.:
- Dateiname
- Dateityp
- Zugriffsrechte
- Datum von Erstellung/letzer Änderung/letztem Lesezugriff
- Eigentümer
- Größe
- durch die Datei belegte Sektoren
- ...
|
|
|