Interleave
Interleave (zu deutsch Verzahnung) gibt die physische
Anordnung der Sektoren auf einer Spur an
und dient zur Reduzierung der Zugriffszeit.
Wenn die Sektoren aufsteigend angeordnet sind, passiert beim
sequenziellen Lesen von mehreren Sektoren folgendes:
Wenn der erste Sektor gelesen wurde,
muss evtl. der Floppy Disk Controller zum Lesen des zweiten Sektors
neu programmiert werden.
Vielleicht muss auch noch etwas mit den gelesenen Daten getan werden.
Während dieser Zeit kann der Anfang des zweiten Sektors
schon am Lesekopf vorbei sein,
so dass nun fast eine ganze Diskettenumdrehung gewartet werden muss,
bis der zweite Sektor wieder gelesen werden kann.
Wenn nun aber zwischen zwei nacheinander zu lesenden Sektoren
noch andere Sektoren plaziert wären, ergäbe das eine Zeit,
in der der Floppy Disk Controller umprogrammiert werden kann.
In der Folge würde der nächste Sektor noch in der gleichen
Diskettenumdrehung gelesen werden können.
Und genau das wird mit Interleave erreicht.
Interleave gibt an, nach wieviel physischen Sektoren der Sektor
mit der nächst höheren logischen Sektornummer kommt.
Bei einem Interleave von 1:1 sind die Sektoren aufsteigend angeordnet,
d.h., sie sind nicht miteinander verzahnt.
Es liegt also kein Interleave vor.
Bei 2:1 liegt jeweils ein Sektor dazwischen, bei 3:1 sind es zwei usw.
Die Tabelle zeigt die physische Sektoranordnung bei 5 und 9 Sektoren
pro Spur:
Interleave |
Sektoranordnung bei 5 Sektoren pro Spur |
Sektoranordnung bei 9 Sektoren pro Spur |
1:1 |
1 2 3 4 5 |
1 2 3 4 5 6 7 8 9 |
2:1 |
1 4 2 5 3 |
1 6 2 7 3 8 4 9 5 |
3:1 |
1 3 5 2 4 |
1 4 7 2 5 8 3 6 9 ¹
|
4:1 |
1 5 4 3 2 |
1 8 6 4 2 9 7 5 3 |
5:1 |
nicht relevant |
1 3 5 7 9 2 4 6 8 |
6:1 |
nicht relevant |
1 4 7 3 6 9 2 5 8 ¹
|
7:1 |
nicht relevant |
1 5 9 4 8 3 7 2 6 |
8:1 |
nicht relevant |
1 9 8 7 6 5 4 3 2 |
¹) In diesen Fällen ist ein exakt gleicher physischer Abstand
zwischen zwei logisch zusammenhängenden Sektoren nicht
vollständig möglich.
Das Interleave-Verhältnis gibt implizit auch an,
wieviel Diskettenumdrehungen zum sequenziellen Lesen aller Sektoren
einer Spur notwendig sind.
Bei einem Interleave von 1:1 reicht theoretisch eine Diskettenumdrehung aus,
bei 2:1 sind zwei und bei 3:1 drei Diskettenumdrehungen notwendig.
Je kleiner das Interleave, desto kürzer ist die Zugriffszeit.
Wenn aber das Interleave zu klein gewählt wird,
hat es gar keine Wirkung, denn dann muss pro Sektor jeweils eine ganze
Diskettenumdrehung gewartet werden.
Je größer das Interleave, desto geringer ist zwar die Wirkung,
aber desto sicherer ist, das es überhaupt eine Wirkung hat.
Das optimale Interleave-Verhältnis hängt
von verschiedenen Faktoren ab wie z.B. der Geschwindigkeit des Rechners
und der konkreten Implementierung der Lese- und Schreib-Routinen.
Aus diesem Grund erzeugen die jeweiligen Formatierprogramme
auch bei sonst gleichen Diskettenformaten unterschiedliche
Interleave-Verhältnisse.
Im JKCEMU können Sie ein Interleave beim manuellen
Erstellen einer Diskettenabbilddatei
angeben.
Die physische Sektoranordnung sehen Sie im
Diskettenabbilddatei-Inspektor.
Eine Auswirkung auf die Zugriffszeiten hat es aber im Emulator nicht.