Das File-Verwaltungssystem FAT

Werbung
File/Dateiverwaltung
Die Fileverwaltung muß die Umsetzung von einer logischen Ebene, in der
die Dateien mit selbst gewählten Namen bezeichnet werden, zu einer
physikalischen Ebene, d. h. zu konkreten Arealen auf einem Datenträger
leisten.
dat1.txt
prog_6.pas
text6.doc
test.c
File/DateiVerwaltung
Adressen
bestehend aus
Seite, Spur und
Sektornummer
Es gibt verschiedene Verwaltungssysteme:
FAT - File Allocation Table z. B. DOS, Windows 3.11, 95
(Zur Zeit bei allen externen Flash-Speichern)
UNIX-File-System(Ext2FS,Ext3FS) bei allen UNIX-ähnlichen
Systemen.
HPFS - High Performance File System z. B. bei OS/2
NTFS - New Technologie File System bei Windows NT
Entwicklungsziele bei den Systemen:
Sicherer und schneller Zugriff zu den Dateien. Die Zugriffsgeschwindigkeit hängt wesentlich von de Zugriffsgeschwindigkeit des Datenträgers
ab. Die Maßzahl dafür ist die Mittlere Zugriffszeit. Sie beträgt bei
Festplatten ca. 10 ms, bei Disketten wegen der geringen Umdehungszahl
von 300 Umdrehungen pro Min. ca. 200 ms.
Die Verwaltungssysteme müssen die Dateien so anordnen, daß die Wege
des Schreib-/Lesekopfes so gering wie möglich sind.
Die Fileverwaltungssysteme benötigen eine Reihe von
Verzeichnisdateien, die ebenfalls auf dem Datenträger angeordnet sind.
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 1
Aufbau von Festplatten, Disketten
Spur 0
Spur 1
Sektoren
Seite 1
Plattenstapel
Seite 6
Die Datenträger sind in Spuren und Sektoren aufgeteilt. Bei Festplatten
können mehrere Platten übereinander liegen. Die Sektoren (in der Regel
512 Byte) bilden die adressierbare Einheit. Die Kapazität der Speicher
ergibt sich aus dem Produkt von
Spurenzahl * Sektoren/Spur * Seitenzahl * 512
Bei der Steigerung der Kapazität wird insbesondere die Zahl der Spuren
erhöht. Danach kommt die Zahl der Sektoren. Die Zahl der Platten ist
weitgehend konstant.
1999: max. Beschreibungsdichte ca. 30 Gbyte/Quadratzoll.
Aufgabe: Bestimmen Sie die Größe eines "Bitfeldes".
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 2
Aufbau der Datenträger bei FAT-orientierter Fileverwaltung
Dateien des Betriebssystems oder
User-Dateien
Root-Direktory
FAT Nr. n
(im allgemeinen nicht vorhanden)
FAT Nr. 2
FAT Nr. 1
Bootsektor
Mit einem einfachen Werkzeug wie PCTOOLS kann man den log. Aufbau
eines Datenträgers nachvollziehen.
Suchen Sie die einzelnen Teile auf einer Diskette.
Die Größe der FAT-Bereiche sind von der Kapazität des Datenträgers und
der Clustergröße abhängig. Aus Sicherheitsgründen sind sie doppelt
ausgeführt. Sie stellen die zentralen Tabellen des Systems dar.
Die Größe der Root-Direktory ist einstellbar. Im Boot-Sektor gibt es
dafür einen Parameter.
Der Bootsektor ist 512 Byte groß und enthält außer einem Ladeprogramm
eine Tabelle mit wesentlichen Parametern des Datenträgers wie
Sektorgröße (in der Regel 512 Byte) und Zahl der Sektoren. Weiter
Angaben zum FAT-System wie Zahl der FAT-Tabellen (in der Regel 2)
und Größe der Root-Direktory.
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 3
Aufbau eines Sektors
Beispiel : Diskettensektor Beschreibungsverfahren: MFM
Spurbeginn
GAP 4A: 80 Byte 4e
SYNC 12 Byte 00
IAM: 4 Byte c2 c2 c2 fc
Gap 1: 50 Byte 4e
Sektor
SYNC: 12 Byte 00
IDAM: 4 Byte a1 a1 a1 fe
ID: 4 Byte: tr hd sc sz*)
CRC: 2 Byte
GAP 2 22 Byte 4e
SYNC: 12 Byte 00
DAM: 4 Byte a1 a1 a1 fb
Daten: 512 Byte
CRC: 2 Byte
GAP 3 80 Byte 4e
.....
EOT
*) tr -Nummer der Spur(track); hd -Nummer des Kopfes (header)
sc - Nummer des Sektors ; sz - Größe des Sektors
Der CRC ist eine Prüfgröße, die der Diagnostik von Fehlern beim
Lesevorgang dient.
Aufbau eines Clusters
Für die Verwaltung werden 1 2 4 8 16 32 Sektoren zu einem Cluster
zusammengefaßt. Die Nummern der Cluster spielen bei der Gestaltung
der FAT die wichtigste Rolle. Eine Datei wird immer in ganzen
Vielfachen von Clustergrößen gespeichert. Bei kleinen Dateien und
großen Clustern gibt es großen Speicherverschnitt. Kleine Cluster
benötigen große FAT-Tabellen.
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 4
GAP 4B
EOT
GAP 3
Daten
CRC
DAM
SYNC
GAP 2
CRC
ID
IDAM
Sektor 1
SYNC
GAP 1
IAM
SYNC
GAP 4A
Spurbegin
n
Berechnung des CRC*), FCB*)
(Verkürztes Beispiel)
– Modulo – 2 – Division
Generatorpolynom: x7 + x4 + x3 + x + 1
1010001000001001  10011011 = 101111011 Rest 1101100
10011011
01110010
00000000
11100100
10011011
Gesicherte Bitkette:
11111110
10011011
1010001000001001/1101100
11001010
10011011
10100011
10011011
01110000
00000000
111000000
10011011
11110111
10011011
1101100
Rechenregel:
0 XOR 0 = 0
0 XOR 1 = 1
1 XOR 0 = 1
1 XOR 1 = 0
Erfolg bei der Fehlererkennung:
-
Einzelbitfehler:
Doppelbitfehler:
Fehler mit einer geraden Anzahl von Bit:
Bündelfehler kürzer oder gleich 16Bit:
Bündelfehler mit 17Bit:
alle anderen Bündelfehler:
100%
100%
100%
100%
99,9969%
99,9984%
Übliche Generator-Polynome:
CRC-CCITT:
G(x)= x16 + x12 + x5 + 1  10001000000100001
IBM-CRC:
G(x)= x16 + x15 + x2 + 1  11000000000000101
802.3-Frames: G(x)= x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1
*)CRC - Cyclic Redunduncy Check ;
FCB - File Control Block
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 5
Aufbau des Bootsektors
Beispiel: Bootsektor einer Diskette und einer Festplatte
00
01
02
03
04
05
06
07
08
09
0a
0b
0c
0d
0e
0f
10
11
12
13
14
15
16
17
18
19
1a
1b
1c
1d
1e
........
Sprung in das
Bootprogramm
jmp
2b
nop
jmp
36
nop
Bytes pro Sektor
200
200
Sektoren pro Cluster
Anzahl der Bootsektoren
2
1
16
1
Name der Betriebssystemsversion
oder des formatierenden
Programms
(fast ohne Bedeutung)
Anzahl der FAT´s
2
Anzahl der Einträge in der e0
Root
Anzahl der Sektoren
960
auf dem Datenträger
Kennung des Datenträgers F9
Sektoren pro FAT
7
2
200
Sektoren pro Spur
f
20
Seiten des Datenträgers
2
4
Sektoren für Partitionen
0
11
e77f
F8
40
Bootprogramm
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 6
FAT - Fileverwaltungsystem
Aufbau einer Directory
Der Pointer stellt eine Verbindung zu der FAT-Tabelle her.
Der Eintrag für eine Datei in der Directory ist 32 Byte lang. In diesem
Eintrag sind die Angaben zur Datei enthalten, die mit dem Kommando
DIR zur Verfügung gestellt werden.
0
1
2
3
4
5
6
7
Dateiname
reserviert
Zeit
8
9
A
B
Typ
Attr.
Datum
Pointer
C
D
E
F
resreviert
Dateigröße
Die Angaben zur Uhrzeit und Datum werden in Platz sparender Weise
gemacht. Aus der endlichen Zahl der bereit gestellten Bits ergibt sich ein
"Geburtstag und ein Sterbedatum" für DOS.
Als Beispiel soll die Darstellung des Datums angegeben werden.
19hex
18hex
j j j j j j j m m m m t t t t t
Jahr - 1980
Monat
Tag
Wie lange kann noch mit den FAT-Dateiverwaltungssystemen gearbeitet
werden?
Beispiel für die Belegung eines Attribut-Bytes
00000000
xxxxxxx1
xxxxxx1x
xxxxx1xx
00001000
00010000
xx1xxxxx
unbeschränkter Zugriff
Datei kann nur gelesen werden R/O Attibut
Verborgene Datei
Systemdatei
logischer Name des Mediums Vol-Name
Kennzeichen einer Sub-Direktory
Zeichen für die Archivierung, BACK-UP setzt 1 zurück
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 7
Das File-Verwaltungssystem FAT
Direktory-Eintrag
FAT
00
01
07
08
0a
0c
07
08
14
16
18
1a
1c
1e
File Allocation Table
Dateiname
Cluster-Index
0 FDFF
Dateityp
Reserviert
Uhrzeit
Datum
Erster Cluster
Dateigröße
z. B. 6
32 Bit
FFFF-Endemarkierung
1 FFFF
2 FFFF
3 0000
4 0000
5 0000
6 000E
7 0000
8 0000
9 0000
A FFFF
B 0000
C 0000
D 0000
E 0002
F 0000
10 0000
11 0000
12 0000
13 0000
14 ........
Durch diese Verwaltungsmethode können Dateien beliebig groß sein.
Begrenzende Größe ist der verfügbare Platz auf dem Datenträger. Die
Dateien brauchen nicht auf einem zusammenhängende Platz zu stehen.
Die Belegung des frei gewordenen Platzes von gelöschten Dateien ist bei
den einzelnen Systemen unterschiedlich. Die Verwaltungseinheit ist der
Cluster. Er ist 1, 2, 4, 8, 16, 32 ....Sektoren groß.
Aufgaben: Stellen sie eine Datei von einem Byte Größe her. Machen Sie
eine Aussage zum Platzbedarf auf dem Datenträger.
Wie ist der Zusammenhang zwischen FAT-Größe und
Cluster-Größe? Wann erfolgt der endgültige
Informationsverlust bei gelöschten Dateien?
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 8
Das hierarchische Dateisystem (FAT, UNIX-System)
root
lib
dev
etc
passwd
tmp
emil
usr
dat1
bin
otto
anni
d
auto
bmw
vw
tex1
audi
tex2
tex3
opel
Verzeichnisse
Dateien
In allen Betriebssystemen gibt es Directory-orientierte Kommados
sowie (zahlreiche) Kommados, die die Arbeit ermöglichen.
cd
mkdir
cat
tail
head
pwd
rmdir
sum
rm
od
ls
(ll)
mv
pack
unpack
du
dircmp
pcat
sort
join
chmod
du
Hinweis auf die Verzeichniseinträge . . und .
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 9
Dateitypen und Zugriffsrechte
Dateitypen:
d
b
c
= Dateiverzeichnis, Direktory, Katalog
= normale Datei
= Gerätedatei mit blockweisem Zugriff
= Gerätedatei mit zeichenweisem Zugriff
Zugriffsrechte: r ead Leserecht
w rite Schreibrecht/Löschrecht
x von execute Recht zur Programmausführung
Datei
Verzeichnis
- rw- rw- r- d rwx rwx r-x
Zugriffsrechte
des Eigentümers der
Datei
der Gruppe des
Besitzers
Aller andern UNIXTeilnehmer
Die Zugriffs-Rechte für die "gewöhnlichen" Dateien und die für Verzeichnisse
unterscheiden sich. Ermitteln Sie die Funktion der Rechte bei den
Verzeichnissen.
Mit dem Befehl chmod können die Rechte verändert werden. Mit umask können
sie voreingestellt werden. Bei chmod gibt es zwei Möglichkeiten der Stellung der
Rechte. Empfehlung: Merke: Executerecht=1, Schreibrecht=2 , Leserecht=4.
Addieren sie die Zahlen für die Rechte zu RZ und fügen Sie sie für die einzelnen
Nutzerklassen zu RZG zusammen.
chmod <RZG> <dateiname>
Beispiel: chmod 744 dat1
Alle Rechte für den Eigentümer, nur Leserechte für die Gruppe und die
Welt.
S. Adomssent, Betriebssysteme/Rechnernetze, Kap. 5
Seite 10
Herunterladen