Von Clustern und Tracks

E-Books


MS-DOS Kurs


1. Über den Aufbau von Datenträgern

Als externe Speichermedien für MS-DOS (auch Massenspeicher genannt) finden vorwiegend Disketten mit einer Kantenlänge von 5¼ oder 3½ Zoll sowie verschiedene Festplatten Verwendung. Dabei ist die Ablösung der großen (5¼-Zoll-) Scheiben durch die Kleineren im vollen Gange; IBM liefert seine PS/2-Serie ausschließlich mit 3½ Zoll-Laufwerken aus. Während die verschiedenen Festplattenformate erfahrungsgemäß wenig Probleme bereiten (wenn sie erst einmal fromatiert und eingerichtet sind), wird dem Nutzer bei Verwendung mehrerer Diskettenformate schon etwas Sachkenntnis abverlangt. Oftmals ist als einzige Angabe die Gesamtkapazität bekannt. Die gebräuchlichen 5¼ Zoll-Disketten enthalten 360 KByte, 720 KByte oder 1,2 MByte, die 3½ Zoll-Disketten 720 Kbyte oder 1,44 MByte (siehe Tafel 1). Um zu verstehen, wie diese Formate zutande kommen, muß ein Blick auf die interne Organisation dieser Datenträger durch MS-DOS geworfen werden.
Tafel 1 Die gebräuchlichsten Diskettenformate für MS-DOS
Typ Seiten Spuren Sektoren Sektoren Kapazität
5¼ Zoll 2 40 9 720 350 KByte
5¼ und 3½ Zoll 2 80 9 1440 720 KByte
5¼ oll 2 80 15 2400 1,2 MByte
3½ Zoll 2 80 18 2880 1,44 MByte
Die Informationen sind auf konzentrischen (im Gegensatz zur Schallplatte also geschlossenen) Spuren abgelegt, die wiederum in Sektoren unterteilt sind. Der Schreib-/Lesekopf wird durch einen Schrittmotor über die Diskette bewegt und so auf die einzelne Spur positioniert. Alle neueren Laufwerke arbeiten doppelseitig, besitzen also je einen Schreib-/Lesekopf für die obere und die untere Diskettenseite. Die Gesamtkapazität kann durch die Anzahl von Sektoren pro Spur beeinflußt werden - und in der Tat kommen so die verschiedenen Formate zustande. Wieviele Informationen nun maximal auf einer Diskette untergebracht werden, hängt sowohl vom Laufwerk als auch von der Diskette ab. Da die Datenträger eine homogene Beschichtung besitzen, ist keine Einteilung in Spuren und Sektoren vorgegeben, sie wird erst beim Formatieren (weshalb man auch von Softsektorierung spricht). Allerdings kann die Diskettenqualität hier Grenzen setzen. Eine doppelseitige Aufzeichnung einmal vorausgesetzt, werden Disketten für eine einfache Aufzeichnungsdichte (englisch: single density, SD), eine doppelte Aufzeichnungsdichte (double density, DD) und eine hohe Aufzeichnungsdichte (high density oder quad density, HD oder QD) angeboten. Das Datenträger für einfache Dichte in aller Regel den Ansprüchen der Speicherung mit doppelter Dichte genügen, spricht für deren Qualität und hilft, einiges Geld zu sparen. Für High-density-Formate sind aber in jedem Falle entsprechende Disketten zu verwenden. Bei 3½ Zoll-Disketten, deren Entwicklung später erfolgte, fehlt das einfache Format ganz.
Welche Formate mit Ihrem PC nun wirklich verarbeitet werden können, hängt entscheidend von den Laufwerken ab. Beim IBM-PC waren es noch 360 KByte-Laufwerke, Kompatible verarbeiten häufig schon 720 KByte. Zu einem AT gehört in der Regel ein High-density-Laufwerk. Grundsätzlich können alle Formate geringerer Kapazität ebenfalls bearbeitet werden, nur werden sie nicht notwendigerweise auch automatisch erkannt. So unterstützen viele ATs nur das alte IBM-Hausformat (360 KByte) und ihr eigenes (1,2 MByte). Welche Formate automatisch erkannt werden, hängt vom ROM-BIOS des Rechners ab. Um das international nicht sehr gebräuchliche 720 KByte-Format zu nutzen, muß man sich zumeist selbst helfen. DOS kann an dieser Stelle seine Herkunft (Quick and Dirty) nicht leugnen. Neben der Tatsache, daß es verschiedene Möglichkeiten gibt, die Standardformate zu ändern, sind Probleme mit hardwarenahen Programmen (z.B. Format) festzustellen.
Ab DOS-Version 3.20 steht das Konfigurationskommande DRIVPARM zur Verfühgung, um die Parametereinstellungen von Laufwerken zu ändern. Als Parameter sind die Laufwerksnummer (0 für A:, 1 für B:, usw.) und der Laufwerkstyp (360 KByte, 720 KByte oder 1,2 MByte) anzugeben. Weiterhin kann das neue Format festgelegt werden. Da es dafür keine vordefinierten Formate gibt, sind die Anzahl der Schreib-/Leseköpfe, der Spuren und Sektoren einzutragen. Sie sehen also, wozu die Kenntnisse über den Diskettenaufbau nötig sind.
Rüsten Sie zum Beispiel Ihren XT von einem 40-Spur-Laufwerk auf ein 80-Spur-Laufwerk um, so können Sie zwar 720 KByte lesen und schreiben, der Format-Befehl wird aber weiterhin Disketten mit 360 KByte formatieren. In diesem Falle hilft die folgende Eintragung
drivparm=/d:0/f:2
Werden die Parameter von Ihrem System verweigert, so versuchen Sie es einmal mit einer binären Null vor dem ersten Parameter (was von internen Übergabekonventionen bei DOS 2.x herrührt). Ihnen wird auffallen, daß /f:2 eigentlich für 3½ Zoll-Disketten vorgesehen ist.
Da die Formate aber identisch sind, kann es hier zur Anwendung kommen. Versprechen Sie sich jedoch nicht zu viel vom DRIVPARM-Befehl. Da er stark vom konkret eingesetzten Betriebssystem abhängt (die Behandlung findet in Bio.com statt), werden Einstellungen manchmal nicht korrekt ausgeführt. Im bekannten TECH Help von Flambeaux Software ist er als undokumentiert ausgewiesen, anderswo ist zu lesen, er werde bei den meisten DOS-Derivaten (auch beim PC-DOS von IBM) ab der Version 3.3 ignoriert. Sie werden also experimentieren müssen.
Zu beachten ist ferner, daß nur die Formate eingestellt werden können, die das Laufwerk unterstützt, daß heißt, es muß über entsprechend viele Schreib-/Leseköpfe verfügen und die geforderte Spurdichte schreiben können.
Eine andere Möglichkeit, nicht automatisch unterstützte Formate zugänglich zu machen, besteht im Anlegen eines weiteren logischen Laufwerkes mit Hilfe des Treibers DRIVER.SYS, deren eigentliche Bestimmung die Einbindung externer Laufwerke ist. Die Installation erfolgt in der Datei CONFIG.SYS mit der folgenden Zeile:
device=driver.sys
Die Parameter sind weitgehend identisch mit denen des DRIVPARM-Befehls. Allerdings wird das neue Format jetzt unter dem nächsten freien Laufwerksbuchstaben angesprochen (eventuell müssen Sie dazu den Parameter für Lastdrive erhöhen), und die alten Formate bleiben unter ihrem ursprünglichen Laufwerksbuchstaben erhalten. In den Handbüchern wird DRIVER.SYS ausdrücklich als Unterstützung zum Formatieren von Fremdformaten ausgewiesen. Für 720 KByte auf einem High-desity-Laufwerk ist für das Laufwerk A folgendes einzutragen:
device=driver.sys/d:0
Alle anderen Parameter sind Standard. Jede Einbindung von DRIVER.SYS belegt rund 200 Byte im Hauptspeicher. Durch mehrfache Anwendung mit anderen Parametern können für ein pysikalisches Laufwerk auch mehrere logische Laufwerke mit verschiedenen Formaten eingerichtet werden.
Neben den beiden beschriebenen Befehlen aus dem Lieferumfang von DOS gibt es noch das sehr populäre Programm Supercopy, das Dutzende, zum Teil auch recht exotische Formate unterstützt.
Gerade zur Nutzung des 720 KByte Formates auf einem HD-Laufwerk wird es sehr häufig eingesetzt, da es nicht so versionsabhängig ist, wie DRIVPARM und DRIVER.SYS. Supercopy arbeitet menügeführt (Aufruf: Sinstall) und man sollte die Option IBM PC/AT und Kompatible für ein HD-Laufwerk auswählen. Damit wird in der Datei CONFIG.SYS automatisch folgender Eintrag erzeugt:
device=\scopy\mdrive.sys -rah -u0
Nach einem Neustart des Systems steht ein logisches 720 KByte Laufwerk mit dem nächsten freien Laufwerksbuchstaben für das physikalische Laufwerk A zur Verfühgung. Der Eintrag in CONFIG.SYS kann auch von Hand vorgenommen werden. Sollen Disketten für 720 KByte formatiert werden, so geschieht das am besten mit Msform.
Schwieriger sieht es mit der Nutzung von CP/M-Formaten aus. Hier muß zusätzlich zum Eintrag
device=\scopy\cdrive.sys -rah-u0-g
in die Datei CONFIG.SYS noch das konkrete Format ausgewählt werden - entweder beim Installieren, oder im nachhinein mit SELECT. Um aus den Dutzenden angebotenen Formaten das Richtige auszuwählen, bedarf es schon einiger Sachkenntnis, oder aber Zeit zum Probieren. Die Supercopy-Treiber belegen einige KByte im Hauptspeicher, und man sollte sie bei Problemen mit dem Speicherplatz in der CONFIG.SYS als Kommentar kennzeichnen, wenn sie nicht permanent benötigt werden. Beachten Sie dabei, daß stets neu gebootet werden muß, damit diese Änderungen zum Tragen kommen.
Selfmade-Programmierer mit etwas Erfahrung können aber auch den Formattyp direkt mit einem Debugger in die von DOS verwalteten Tabellen eintragen, oder sich ein entsprechendes Assembler- oder Hochsprachenprogramm schreiben. Wollen Sie sich dieser Mühe nicht unterziehen, können Sie auch das Turbo-Pascal-Programm AT720 nutzen, das in BITS-NEWS Heft 1 erschienen ist.
Beim AT steht im BIOS-Variablenbereich auf Adresse 40H:90H der sogenannte Mediastatus für Laufwerk A (für B auf 40H:91H). Durch Eintragung einer 54H kann das 720-KByte-Format festgelegt werden. Da auf einem AT dieses Problem häufig besteht, hier nun ein kleines Assemblerprogramm, das diese Eintragung einmal vornimmt.
Bild 1 zeigt die nötigen Befehle, aus denen Sie sich mit
debug<720k.txt
eine COM-Datei fertigen können. Lesen Sie dazu eventuell noch einmal zum Thema Eingabeumleitung nach. Nachteilig macht sich allerdings bemerkbar, daß bei jedem öffnen der Laufwerksklappe das Format zurückgestellt wird - das ROM-BIOS trägt einfach wieder 61H als Standard ein.
Vielleicht schreiben Sie sich eine kleine Batch-Datei, die Sie A.BAT nennen, in der nur die beidem Zeilen
a:
720k

stehen und die Sie beim Anwählen des Laufwerks aufrufen.
Noch wesentlich vielfältiger und verwirrender als bei den Disketten ist das Angebot an Festplattenformaten (Tafel 2). Allerdings werden dem Nutzer normalerweise keine Kenntnisse darüber abverlangt, wenn die Platte erst einmal formatiert und eingerichtet ist.
Bild 1 Aus der Datei 720k.txt wird duch das Kommando debug<720k.txt das Programm 720k.com zum Patchen der Einstellung des 1,2 MByte-Laufwerkes eines ATs auf 720 KByte.
a
mov ax,40
mov ds,ax
mov bx,901
mov ah,54
mov [bx],ah
mov ax,4c00
int 21h
< An dieser Stelle bitte eine Leerzeile einfügen. >
n 720k.com
rcx
11
w
q
Tafel 2 Wichtige Festplattenformate
Typ
(Eintragung im CMOS RAM
Zylinder Köpfe Sektoren je Spur Kapazität
(in MByte)
1 306 4 17 10
2 615 4 17 21
3 615 5 17 32
4 940 8 17 65
5 490 6 17 49
6 615 4 17 21
7 462 8 17 32
8 733 5 17 31
9 900 15 17 117
10 820 3 17 21
11 820 5 17 37
12 855 7 17 52
13 306 8 17 21
14 733 7 17 44
16 612 4 17 21
Probleme können auftreten, wenn (z.Bsp durch eine schwache Batterie) die Eintragungen im CMOS-RAM fehlerhaft sind und im Setup-Programm der Typ der Festplatte angegeben werden muß, da sonst kein Zugriff darauf möglich ist. Für so einen Fall sollten Sie diese Nummer rechtzeitig aus dem Setup entnehmen, um vor bösen Überraschungen sicher zu sein. Das erspart stundenlanges Probieren.
Intern besteht das Laufwerk aus mehreren angeordneten Platten übereinander, die beidseitig genutzt werden und demzufolge über entsprechend viele Schreib-/Leseköpfe verfügen. Die geringeren Zugriffszeiten kommen so unter anderem auch dadurch zustande, daß mehrere Köpfe gleichzeitig an einer Datei arbeiten können. Daneben rotiert der Plattenstapel auch schneller, als das bei Disketten der Fall ist und die Daten sind dichter gespeichert. Ein neuer Begriff im Zusammenhang mit den Festplatten ist der des Zylinders. Damit sind jeweils die auf den einzelnen Platten übereinander liegenden Spuren gemeint. Anders gesagt: Alle Spuren mit der gleichen Nummer werden zu einem Zylinder zusammengefaßt. Zylinder mal Köpfe ergibt die Anzahl der Spuren - so kann sich jeder die Parameter seiner Festplatte selbst ausrechnen. Wie das Formatieren verläuft, wurde bereits angesprochen. (Einen Tip wie Sie sich mit wenig Aufwand vor einem versehentlichen Formatieren der Festplatte schützen können, zeigt ein weiterer Beitrag der Zeitung BITS-NEWS).

(c) Jürgen Richter