Die Festplattenversion von NEWDOS80 (Version 2.5) bietet vielfältige Möglichkeiten eine Festplatte zu partitionieren. Das ist zwar ganz interessant, aber damit einher geht allerdings auch eine gewisse Komplexität. Diese Komplexität gehört zum generellen Erscheinungsbild von NEWDOS und vor allem seiner Funktion PDRIVE (Parameterübergabe für Festplatten & Floppy-Disks). Dies hat schon immer viele Nutzer irritiert und überfordert, bietet aber andererseits für den erfahrenen Nutzer einiges an Möglichkeiten zur individuellen Optimierung.
Zum besseren allgemeinen Verständnis hier der eingedeutschte Text des obigen Beitrags #3 (Auszug aus dem NEWDOS 2.5 Manual) mit zusätzlichen Anmerkungen von mir.
Regeln und Limits des HDS-PDRIVE im Betrieb mit originalen Tandy-Festplatten und modernen Festplatten-Emulatoren (z.B. FreHD):
NEWDOS80 v2.5 unterstützt Festplatten mit einem Maximum von 8 Köpfen und 1024 Zylindern.
Bezeichnung der Parameter:
HDS=(hddn1,tps1,sfs1,ssc1,spt1,tsr1,vfs1,vsc1,spg1,gpl1,ddsl1,ddsa)
Beispiel:
PDRIVE,0,1,HDS=(0,615,0,4,32,0,5760,2880,5,8,0,32), wobei die numerischen Parameter folgende Bedeutung haben:
0, hddn1, (0..3), (Festplatte Laufwerksnummer), die physikalische (nicht die logische) Laufwerksnummer
615, tps1, (0..65536), (Spuren pro Platten-Oberfläche), Anzahl der Zylinder
0, sfs1, (0..RSC-1), (*1), (Bereich der ersten Platten-Oberfläche), erster Schreib-Lese-Kopf dieser Partition
4, ssc1, (1..RSC), (*2), (Bereich Platten-Oberflächen-Anzahl), Anzahl der Schreib-Lese-Köpfe dieser Partition
32, spt1, (1..255), (Sektoren pro Spur), Anzahl der Sektoren pro Spur
0, tsr1, (0..255), (Spurwechselzeit), Spurwechselzeit der Schreib-Lese-Köpfe (ohne Einheit)
5760, vfs1, (0..16777215), (Partition erster Sektor), Nummer des ersten Sektors dieser Partition
2880, vsc1, (0..65535), (*3),(*5), (Partition Sektoren-Anzahl), Anzahl der Sektoren dieser Partition
5, spg1, (1..255), (*6) (Sektoren pro Granule), Anzahl der Sektoren pro Granule
8, gpl1, (2..8), (Granules pro Lump), Anzahl der Granules pro Lump
0, ddsl1, (1..191), (*4), (Inhaltsverzeichnis erster Lump), gibt den örtlichen Beginn des Inhaltsverzeichnis an
32, ddsa, (10..33), (Inhaltsverzeichnis Anzahl Sektoren), Größe des Inhaltsverzeichnis in Sektoren
(*1) RSC=Recording Surface Count = Anzahl der nutzbaren Festplatten-Oberflächen und damit die Anzahl der Festplattenköpfe
(*2) Summe von ssc1 + sfs1 (<=RSC)
(*3) Summe von vsc1 + vfs1 (<=tps1*ssc1*spt1)
(*4) eine 0 (Null) an dieser Stelle überlässt die Berechnung des örtlichen Beginns des Inhaltsverzeichnis dem Betriebssystem NEWDOS und wird dann vom Betriebssystem in die Nähe der Mitte der Partition platziert. Der von NEWDOS gewählte Wert ist dann maximal 80, weil das Betriebssystem davon ausgeht, dass sich Dateien vermehrt eher gegen Anfang einer Partition befinden, als am Ende einer Partition.
(*5) ein * (Stern) anstelle einer Zahl wird dieser Partition alle noch verbleibenden und nicht bereits zugewiesenen Sektoren zuweisen
(*6) eine 0 (Null) überlässt PDRIVE die Berechnung dieses Parameters. Es wird der kleinste mögliche Wert für spg1 (>4) berechnet, der in Verbindung mit den Parametern gpl1 und vsc1 möglich ist.
Nach einer Änderung oder Neueingabe der PDRIVE-Parameter muss die Partition neu formatiert werden.
Für ausführlichere Beschreibungen der einzelnen Parameter siehe auch hier: NEWDOS/80 V2.5 - Appendix C (Betrieb mit Festplatten)
Anmerkung zur optimalen Zugriffszeit bei einer modernen Festplattenemulation mit einem Halbleiterspeicher (SD-Karte):
Der Parameter ddsl1 wirkt sich auf die Wartezeit des Betriebssystems (letztendlich dann auch des Nutzers) in Bezug auf die Zugriffszeit der Festplatte aus. Das Konzept dieses Parameters sieht vor, dass sich die meisten Zugriffe auf Dateien eher am Anfang einer Partition abspielen, als am Ende einer Partion. Falls die Partition nicht bis zu ihrem Ende mit Dateien belegt ist, ergibt es ja einen gewissen Sinn auch das Inhaltsverzeichnis in den Anfangsbereich der Partition zu legen, damit die Köpfe möglichst keinen unnötigen Weg (und damit Zeit) beim wechselnden Zugriff auf Dateien und das Inhaltsverzeichnis zurücklegen müssen. Für Floppy-Disk-Laufwerke hat NEWDOS übrigens im PDRIVE dafür den Parameter DDSL eingerichtet. Siehe dazu hier: NEWDOS/80 v2.0 und die PDRIVE-Parameter
Theoretisch könnte auch bei einer Festplattenemulation mit Halbleiterspeicher die Spurwechselzeitvorgabe (tsr1) des Betriebssystems in Verbindung mit dem örtlichen Beginn des Inhaltsverzeichnis (ddsl1) schon messbare Auswirkungen auf die Zugriffszeiten haben. Eine Optimierung dieser Werte kann also auch beim Betrieb mit z.B. einer FreHD nicht schaden.