Zum Inhalt springen

CHS-Adressierung

aus Wikipedia, der freien Enzyklopädie

Die CHS-Adressierung ist eine historische Adressierungsmethode für Massenspeicher wie Festplatten, die bis in die frühen 2000er-Jahre bei Computern und Betriebssystemen relevant war. Die Abkürzung CHS steht für englisch cylinder/​head/​sector, manchmal auch mit Zylinder/​Kopf/​Sektor übersetzt, und findet sich u. a. bei frühen IBM-PC-kompatiblen Computern mit BIOS, wo der physische Aufbau einer Festplatte in Form der Festplattengeometrie mit diesen drei Werten manuell eingestellt werden musste: Anzahl der Zylinder (cylinders), Anzahl der Köpfe (heads) und Anzahl der Sektoren (sectors; im Sinne von Datenblöcken pro Spur).

Festplattengeometrie, schematische Darstellung des Grundprinzips
Zylinder, Kopf, Sektor und Spur in Bezug auf die Datenscheiben einer Festplatte

Die drei CHS-Werte sind eine Art Koordinatenangabe, die sich aus dem physischen Aufbau von Festplatten und Disketten(-laufwerken) ergeben hat, denn diese bestehen aus einer oder mehreren rotierenden Scheiben (Platter oder engl. Disks), die im Allgemeinen auf beiden Seiten mit je einem Lese-/Schreib-Kopf abgetastet werden. Die Sektoren werden ab eins gezählt, während bei den Zylindern und Köpfen die Zählung bei Null beginnt. Bei Disketten und einigen frühen Festplatten wurde nur eine Scheibe verwendet, darum wird manchmal der Begriff Seite als Synonym für Kopf verwendet, denn es gibt dann nur jeweils den Kopf auf der Ober- und der Unterseite. Ist diese Scheibe (Disk) dazu noch einseitig, so entspricht der Zylinder der Spur (englisch Track).[1]

Für den Zugriff auf die einzelnen Datenblöcke wurde dieses Schema bei vielen Computern übernommen. So nutzt das BIOS IBM-PC-kompatibler Computer sowie viele (ältere) PC-Betriebssysteme die CHS-Adressierung, allen voran PC-kompatibles DOS wie MS-DOS oder PC DOS, aber auch z. B. OS/2 und Windows. Linux hingegen nutzte von Anfang an Logical Block Addressing (LBA), bei dem die Datenblöcke einfach durchnummeriert sind und die Zählung bei Null beginnt.

Für den Zugriff auf die einzelnen Datenblöcke muss die Angabe der Festplattengeometrie (in Form von Zylinder/Kopf/Sektor bzw. C/H/S) sowohl in der Firmware (beim PC das BIOS) und im Betriebssystem als auch auf den Partitionen und Dateisystemen auf dem Datenspeicher selbst korrekt bzw. identisch sein.

Über die CHS-Adressierung lässt sich jeder Datenblock, bei Disketten und Festplatten Sektor (von Kreissektor) bezeichnet, wie eine Art Koordinate ansprechen bzw. adressieren.

Werden der Adressierung falsche Angaben zur Festplattengeometrie zugrunde gelegt, so sind etwaige zuvor verwendete (richtige) Adressierungsangaben, mittels derer bereits Daten auf dem Datenspeicher hinterlegt wurden, falsch; die Adressierung verweist dann auf einen anderen Datenblock, der nicht die referenzierten Daten enthält – es besteht dadurch eine reale Gefahr für Datenverlust – oder einen Verweis auf eine nicht vorhandene Adresse – was zu E/A-Fehlern beim Datenzugriff führt. Seit den 1980er Jahren werden Festplatten gebaut, deren Controller die tatsächliche Festplattengeometrie von der Adressierung entkoppeln, so dass die Speicheradresse in Form des Tripel Zylinder, Kopf, Sektor nicht mehr der physischen Realität entspricht, denn der zwischengeschaltete Controller überführt jede logische CHS-Adresse in eine physische Speicheradresse, die nur der Controller der Festplatte selbst kennt. So funktionierten Festplatten meist selbst bei falschen Angaben (z. B. im BIOS) korrekt, solange die sich aus den CHS-Angaben ergebende Größe nicht die tatsächlich vorhandene Speicherkapazität überstieg. Spätere BIOS-Versionen seit den frühen 1990er Jahren konnten die CHS-Angaben von Festplatten normalerweise automatisch ermitteln.

Bei der Aufteilung des Speichers in Partitionen finden sich bei der CHS-Adressierung die jeweiligen Start- und End-Sektoren in der Partitionstabelle, bei IBM-PC-kompatiblen Computern ab dem IBM PC XT von 1983 ist das der Master Boot Record (MBR). Bei späteren Varianten wurde Logical Block Addressing (LBA) als Adressierungsmethode verwendet und die CHS-Werte, soweit möglich, umgerechnet, sodass beide Werte, CHS und LBA, auf dem Speichermedium (z. B. im MBR) gespeichert wurden. Später wurden die CHS-Werte dann komplett weggelassen.[2]

Speicherkapazitätsgrenzen

[Bearbeiten | Quelltext bearbeiten]

Mit Fortschreiten der Entwicklung und immer höheren Speicherkapazitäten bei Festplatten ergaben sich in der Realität mehrere Kapazitätsgrenzen, die sich aufgrund unterschiedlicher Design-Entscheidungen ergaben. So waren die CHS-Werte z. B. in der Firmware und im Speichercontroller unterschiedlich abgespeichert.

ATA/ATAPI, ursprünglich als IDE (für Integrated Drive Electronics) bekannt und später auch als Parallel-ATA (kurz PATA) bezeichnet, sieht 28 Bits für die CHS-Adressierung vor:[3][4]

  • 16 Bits für die Anzahl der Zylinder, 216 = max. 65.536 (0–65.535) Zylinder
  • 4 Bits für die Anzahl der Köpfe, 24 = max. 16 (0–15) Köpfe (pro Zylinder)
  • 8 Bits für die Sektoren pro Spur, 28−1 = 255 (1–255) Sektoren pro Spur

Im PC-BIOS werden dafür aber nur 24 Bits bereitgestellt:[4]

  • 10 Bits für die Anzahl der Zylinder, 210 = max. 1.024 (0–1.023) Zylinder
  • 8 Bits für die Anzahl der Köpfe, 28 = max. 256 (0–255) Köpfe (pro Zylinder)
  • 6 Bits für die Sektoren pro Spur, 26−1 = 63 (1–63) Sektoren pro Spur
[5] BIOS ATA → Limit
Sektorgröße in Bytes 512 512 512
Zylinder 1.024 65.536 1.024
Köpfe 256 16 16
Sektoren/Spur 63 255 63
Speicherkapazitäts-
grenze
8,5 GB
7,8 GiB
136,9 GB
127,5 GiB
528 MB
504 MiB

Bis zur 504-MiB-Grenze können bei Festplatten die realen Geometriedaten in Form der CHS-Werte eingegeben werden, der Datenzugriff erfolgt damit vielfach auch real an jener Stelle, die als C/H/S-Wertepaar angegeben ist.

Da bei der Speichergrenze der jeweils maximale Wert bei C/H/S, jeweils vom BIOS und vom Speichercontroller, den Ausschlag gibt, können ältere Versionen eines BIOS nur 1.024 (210) Zylinder, 16 (24) Köpfe und 63 (26 − 1) Sektoren ansteuern. Das ergab bei der Sektorgröße von 512 Bytes (29) maximal 504 MiB (229 Bytes).

Mitte der 1990er Jahre wurde in vielen BIOS-Implementierungen eine einfache Umrechnungslogik mit bitweiser Verschiebung bzw. englisch bit-shifting translation eingeführt, die die von einer Festplatte gemeldeten Werte (ob real oder nicht) „übersetzen“ kann. So kann z. B. eine Festplatte mit den „physischen“ CHS-Werten 4092/16/63, was einer Kapazität von 2014 MiB (oder 1,97 GiB) bzw. 2,1 GB entspricht, vom BIOS in die „logischen“ CHS-Werte 1023/64/63 transferiert werden, was nun innerhalb des BIOS-Limits des Interrupt 13h liegt. Im BIOS-Setup wird die „Translation“ bei der automatischen Erkennung – oft „HDD autodetect“ oder ähnlich bezeichnet – meist als „ECHS“ (für Extended CHS), „Large disk support“ oder einfach nur als „Large“ angeführt.

Durch Logical CHS, die logische Umformung der Anzahl der Zylinder, Köpfe und Sektoren, sind innerhalb des ursprünglichen BIOS-Limits theoretisch ohne weitere Änderungen Festplattenkapazitäten von bis zu 8.064 MiB – rund 7,8 GiB (≈ 233 Bytes) bzw. 8,5 GB – möglich (8,5-GB-Grenze), was als „Extended CHS“ bezeichnet wird.

Praktisch gab es jedoch auch zwischen der 504-MiB- und der 8,5-GB-Grenze immer wieder Inkompatibilitäten, die zu realen Grenzen führen. Beispielsweise ergibt sich bei der ursprünglichen Umrechnungsmethode von Logical CHS bei Festplatten mit 16 Köpfen und mehr als 8192 Zylindern – 4032 MiB (oder 3,94 GiB bzw. 4,2 GB) und größer – nach der Übersetzung ein logischer CHS-Wert des BIOS mit 256 Köpfen, was bei DOS und Windows zur 4-GB-Grenze führt.

Grenze der 32-Bit-Architektur

[Bearbeiten | Quelltext bearbeiten]

Eine weitere auf die 32-Bit-Architektur zurückzuführende Grenze, die zwar nicht direkt mit der CHS-Adressierung zu tun hat, ist historisch bedingt jedoch ebenfalls auf Systemen, die diese nutzen, zu finden. Das Limit beruht auf der Anzahl an Bytes, die in den 32-Bit-Integer-Wert passen: 4.294.967.295 bei unsigned und 2.147.483.647 signed.

Sie findet sich u. a. beim Amiga als 2-GB-Grenze bzw. 4-GB-Grenze und ergibt sich einerseits durch die Verwendung des 32-Bit-Dateisystem FFS, andererseits können aber auch viele Programme mit Daten über 32-Bit nicht arbeiten – in beide Richtungen. Neben dem Treiber für den Festplattenzugriff in Kickstart, scsi.device, können auch Teile von AmigaOS selbst nicht auf Daten über 4096 MB zugreifen – Programme wie HDToolkit oder die Formatierungsfunktion der Workbench greifen direkt auf den Rigid Disk Block zu, alle Zugriffe (auf Partitionen) werden also vom Bootsektor aus in Bytes berechnet. In AmigaOS ab Version 3.5 konnte dieses Limit in vielen (aber nicht allen) Teilen behoben werden. Aber auch Anwendungsprogramme sind vom selben Problem betroffen: ist beispielsweise der freie Speicherplatz auf einem Volume größer als 2 bzw. 4 GiB, so brechen ältere Installationsprogramme mit einer Fehlermeldung ab, weil wegen eines Ganzzahlüberlauf (englisch wrapping) bei der Nutzung von nur 32 Bits vermeintlich zu wenig Speicherplatz frei ist. Dadurch kann die 2-GB- bzw. die 4-GB-Grenze auch auf modernen Systemen oder in Amiga-Emulatoren weiterhin ein Problem darstellen.[6]

Auch das Dateigrößenlimit von u. a. FAT16 von 2 bzw. 4 GiB ist auf diesen maximalen 32-Bit-Integer-Wert zurückzuführen. Bei der Adressierung von Partitionen (Partitionsgrößen, Adressierung von Blöcken auf einer Partition) nützen die meisten Systeme Blocknummern von 512 Bytes Größe, sodass hier der 32-Bit-Interegerwert ein theoretisches Limit von 2 TiB ergibt.

Im April 1996 wurden die ersten IDE-Festplatten mit > 2 GB verfügbar. Darauf wurde in einigen BIOS-Implementierungen ein Fehler offenkundig, der die korrekte Konfiguration dieser Festplatten verhinderte: Selbst nach einer korrekten automatischen Erkennung der Festplattengeometrie durch das BIOS waren im CMOS-RAM nur 12 Bits zum Speichern der Anzahl der Zylinder vorgesehen, was ein Maximum von 4095 Zylinder erlaubt.[7]

4.095 Zylinder × 16 Köpfe × 63 Sektoren/Spur = 4.127.760 Sektoren × 512 Bytes/Sektor = 2.113.413.120 Bytes (rund 2,1 GB oder ~1,96 GiB)

Einige Festplatten dieser Zeit haben einen eigenen Jumper, der die gemeldete Geometrie auf diesen Wert einstellt, da das BIOS sonst u. U. nach dem Erkennen der Festplatte hängen bleibt. Andere BIOS-Implementierungen ermitteln stattdessen einen viel zu niedrigen Wert, sodass der BIOS-Festplatten-Typ auto z. B. statt 2,5 GiB eine Festplattenkapazität von nur 429 MB ergibt. Als Abhilfe müssen die Daten (4095/16/63) manuell im BIOS-Setup eingetragen werden (Typ user), womit dann allerdings nur die rund 1,96 GiB nutzbar sind, die sich aus diesen maximalen Werten ergeben. Wenn das verwendete Betriebssystem die vom BIOS gemeldeten Werte oder die BIOS-Funktionen zum Zugriff auf die Festplatte nutzt (wie es z. B. DOS und Windows der 1990er Jahre tun), muss ein Disk Manager verwendet werden, damit dieses Limit nicht mehr besteht.

Anfang 1997 waren die ersten IDE-Festplatten mit über 4 GB Speicherkapazität verfügbar. Weil die einfache Logik der bitweisen Verschiebung zur Übersetzung in logische CHS-Werte durch das BIOS – „Extended CHS“ – bei mehr als 8191 Zylindern und 16 Köpfen, das sind Festplatten größer als 4,2 GB (3,9 GiB), immer 256 Köpfe ergibt, gibt es nun ein Problem mit den Betriebssystemen MS-DOS und Windows 95/98, die nur 255 Köpfe verarbeiten können – bei 256 Köpfen kommt es zu einem Ganzzahlüberlauf auf Null (0 Köpfe). Zur Lösung dieses speziellen Problems müssen die durch die automatische Festplattenerkennung des BIOS („HDD autodetect“ bzw. Festplatten-Typ „auto“) ermittelten (logischen) CHS-Werte bei betroffenen BIOS-Implementierungen manuell korrigiert werden.

Dabei muss die Anzahl der Köpfe von 16 auf 15 herabgesetzt werden, und die Anzahl der Zylinder durch 15 dividiert und mit 16 multipliziert werden, und anschließend abgerundet.

Beispiel: Die IDE-Festplatte Maxtor 85120A hat eine Speicherkapazität von 4,7 GiB und folgende CHS-Werte: 9924/16/63. Die korrigierten ins BIOS einzutragenden Werte sind somit 10585/15/63, da 9924 Zylinger × 16 ÷ 15 Köpfe genau 10585,5 ergibt, abgerundet also 10585 Zylinder. Jedes BIOS, das die eingetragenen CHS-Werte einer Festplatte nun per bit-shifting translation in logische CHS-Werte übersetzt, wird auf ein Ergebnis mit 240 Köpfen kommen, was somit in das für DOS und Windows der 1990er Jahre bestehende Limit von maximal 255 Köpfen passt.[8]

Als 8-GB-Grenze werden diverse Grenzen rund um die Obergrenze von Extended CHS verstanden.

Betriebssysteme, die nicht auf die erweiterten Funktionen des Interrupt 13h angepasst wurden und noch mit CHS-Werten arbeiten, bleiben auf Extended CHS und somit rund 8 GB beschränkt, darunter Windows NT bis Version 3.51.[9] Theoretisch ebenfalls davon betroffen sind MS-DOS 5.0 und 6.x sowie Windows 3.x,[9] allerdings hat das von diesen Betriebssystemen genutzte Dateisystem FAT16 bereits ein Limit von 2 GiB. Dadurch lässt sich nur dann mehr Festplattenspeicher nutzen, wenn über eine erweiterte Partition mehrere logische Partitionen à max. 2 GiB eingerichtet werden. AmigaOS ist beim 32-Bit-Dateisystem FFS ebenfalls auf 2 bzw. 4 GB limitiert.[6]

In der Praxis geben Festplatten über 8 GB Kapazität einen künstlich beschränkten Wert zurück, wenn sie gem. ATA-Spezifikation abgefragt werden: 16383/16/63.[10][11] Für neuere Systeme ist dies ein Hinweis, die Festplatte stattdessen über die LBA-Spezifikation anzusprechen, während ältere Systeme, die per Extended CHS limitiert sind, ihrerseits keine Probleme bei der Abfrage machen. Aufgrund dieser Praxis ergibt sich jedoch ein reales CHS-Limit von ca. 7,87 GiB bzw. 8,4 GB.

16.383 Zylinder × 16 Köpfe × 63 Sektoren/Spur = 16.514.064 Sektoren, × 512 Bytes pro Spur = 8.455.200.768 Bytes

Dies trifft u. a. den Amiga, dessen Kickstart-Festplatten-Treiber scsi.device bis AmigaOS 3.1 nur CHS-Werte verarbeitet,[6] aber auch ältere Linux-Kernel-Versionen (vor 2.0.34 bzw. 2.1.90) hatten damit Probleme.[11]

255-Köpfe-Limit von DOS

[Bearbeiten | Quelltext bearbeiten]

Dem 255-Köpfe-Limit von MS-DOS geschuldet versuchen viele korrigierte PC-BIOS-Varianten 256 Köpfe zu vermeiden, was eine etwas verringerte maximal mögliche Kapazität als Extended CHS ergibt:

1.024 Zylinder × 255 Köpfe × 63 Sektoren/Spur = 16.450.560 Sektoren, × 512 Bytes pro Spur = 8.422.686.720 Bytes

Diese auch oft als 8,4-GB-Grenze bezeichnete Variante weist gegenüber Extended CHS 33.030.144 Bytes, also rund 31,5 MiB bzw. 33 MB, weniger auf als mit 256 Köpfen – gleichzeitig entspricht dies aber der maximal möglichen „Translation“ in einen logischen CHS-Wert, der mit den PC-Betriebssystemen DOS und Windows der 1990er Jahre möglich ist. Der BIOS-Hersteller Phoenix bezeichnete diese Translation als „Assisted LBA“, einige andere Hersteller nannten die korrigierte Methode schlicht „LBA“.[8]

Physischer Aufbau der Festplatte „Cheetah“ von Seagate: fünf Scheiben („Platter“),[12] somit 10 Köpfe.

Als „Extended CHS“ wird die im PC-BIOS maximal mögliche Festplattengeometrie bezeichnet. Um den zur Verfügung stehenden Speicherplatz von Festplatte höherer Kapazität nutzen zu können, bleibt aufgrund der zu niedrigen Limits bei den CHS-Werten nur die Möglichkeit, auf rein fiktive Werte auszuweichen. Da die reale Geometrie einer Festplatte im PC-BIOS ohnehin seit der Nutzung von Logical CHS eine untergeordnete Rolle spielt, wird dabei vor allem die Maximal-Anzahl der logischen Köpfe ausgenutzt, die real so nie physisch existierte:

1.024 Zylinder × 256 Köpfe × 63 Sektoren/Spur = 16.515.072 Sektoren, × 512 Bytes pro Spur = 8.455.716.864 Bytes[13]

Dieser maximal durch den BIOS-Interrupt 13h mögliche Wert entspricht umgerechnet 8.064 MiB bzw. rund 7,8 GiB in binärer Umwandung, bzw. rund 8,5 GB in der SI-Einheit (siehe Byte-Präfixe), weshalb teils auch von einer 8,5-GB-Grenze gesprochen wird.

Probleme mit der CHS-Adressierung

[Bearbeiten | Quelltext bearbeiten]

U. a. bei RAID spielten die genauen CHS-Angaben eine wichtige Rolle, weil bei einigen Formen der Datenspiegelung darauf geachtet werden muss, dass beide Festplatten identische Eigenschaften haben – nicht nur die gleiche Größe.

Die CHS-Adressierung wurde ab den spätere 1990er Jahren nach und nach durch eine auf fortlaufenden Blocknummern basierte Adressierung ersetzt, genannt Logical Block Addressing bzw. LBA, was einer deutlichen Vereinfachung entspricht. Der Fokus verlagert sich dadurch automatisch von der physischen Festplattengeometrie, die mit Logical CHS ohnehin nicht mehr genutzt wurde, hin zu einem rein abstrakten Konzept.

Damit bestehende Systeme weiterhin genutzt werden konnten, wurden in der Übergangsphase CHS- und LBA-Verfahren parallel genutzt. Für Systeme, die nur die CHS-Adressierung unterstützen, bleiben die Speicherkapazitätsgrenzen dabei allerdings erhalten.

Erweiterte Interrupt-13h-Funktionen

[Bearbeiten | Quelltext bearbeiten]

Eine von IBM und Microsoft entwickelte Erweiterung der BIOS-Routinen Interrupt 13h erlaubt direkten Zugriff auf Festplatten per LBA und die Konvertierung von LBA-Werten in eine CHS-Geometrie. Beim LBA-Verfahren werden die Blöcke mit Null beginnend durchgezählt. Die Konvertierung der CHS-Angaben in die Adresse des Blocks nach dem LBA-Verfahren erfolgt nach der Formel

mit

  • : Zylindernummer
  • : Zahl der Leseköpfe
  • : Lesekopfnummer
  • : Zahl der Sektoren (= Zahl der Blöcke je Zylinderkopfspur bzw. Track)
  • : Sektornummer.

Im Gegensatz zu den traditionellen Funktionen des Interrupt 13h, die auf den logischen CHS-Werten basieren, kann mit den erweiterten Routinen nun direkt LBA genutzt werden. Das war bei den Betriebssystemen der 1990er fundamental, denn obwohl z. B. Windows 95 im Protected Mode (32-Bit) bereits einen eigenen Treiber für den direkten Zugriff auf Festplatten unter Umgehung der BIOS-Routinen nutzt, muss Windows 9x noch von MS-DOS aus gestartet werden.[9]

Auf Computern, die die Extended Int 13 functions nicht unterstützen, kann ein Disk Manager verwendet werden, der diese in Software „nachrüstet“.[9]

Oft ist es durch Limitierungen des BIOS nicht möglich, eine der genannten Grenzen zu überwinden. Da es nicht für alle PCs ein BIOS-Update gab, mit dem sich das Problem, das sich aus einem (oder mehreren) dieser Limits ergab, lösen ließ, wurden für DOS und Windows auch Software-Lösungen entwickelt, die den BIOS-Interrupt 13h überschreiben und so den Zugriff auf größere Festplatten ermöglichen. Die bekanntesten zwei dieser sogenannten „Disk Manager“ waren EZ-Drive, entwickelt von Micro House, und Disk Manager von Ontrack.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. Daniel B. Sedory: Understanding Disk Drive Terminology, Technology and Capacity Calculations. In: The Starman's Realm. 26. Mai 2017, abgerufen am 8. Juni 2021 (englisch, Abschnitt Terminology and Physical Description).
  2. Andries E. Brouwer, A. V. Le Blanc, Karel Zak, Davidlohr Bueso, u. a.: fdisk(8). (Manpage) In: Linux manual page. Februar 2016, abgerufen am 8. Juni 2021 (englisch): „CHS (Cylinder-Head-Sector) addressing is deprecated and not used by default.“
  3. Christian Vilsbeck: So funktioniert die Schnittstelle: IDE-Grundlagen. In: Computerwoche. 4. Dezember 1999, abgerufen am 18. September 2025: „Adressierungsverfahren … Das CHS-Verfahren basiert auf der physikalischen Adressierung einer Festplatte mit Zylindern, Köpfen und Sektoren. Nach dem ursprünglichen ATA-Standard stehen für die Adressierung insgesamt 16 Köpfe und 65.535 Spuren zur Verfügung. Jede Spur kann bis zu 256 Sektoren mit einer Speichertiefe von 512 Byte verwalten.“
  4. a b Georg Witzel: Betriebssysteme Kompakt: Grundlagen, Daten, Speicher, Dateien, Prozesse und Kommunikation. Springer-Verlag, 2020, ISBN 978-3-662-61411-2, S. 56 (eingeschränkte Vorschau in der Google-Buchsuche).
  5. James McPherson: Breaking the barriers of hard drive limitations. TechRepublic.com, 18. Juli 2002, abgerufen am 8. Juni 2021 (englisch).
  6. a b c fgh: CF / SD and large drives FAQ. (Internetforum) In: AmiBay Forum. XenForo Ltd., 14. September 2011, abgerufen am 18. September 2025 (englisch).
  7. https://web.archive.org/web/19990221160107/http://www.firmware.com/support/bios/over2gb.htm
  8. a b https://web.archive.org/web/19990221181656/http://www.firmware.com/support/bios/over4gb.htm
  9. a b c d http://www.steunebrink.info/bioslim.htm#Int13ext
  10. Andries Brouwer: 4. History of BIOS and IDE limits. In: Large Disk HOWTO v2.5. 1. November 2004, abgerufen am 18. September 2025 (englisch): „Hard drives over 8.4 GB are supposed to report their geometry as 16383/16/63. This in effect means that the ‘geometry’ is obsolete, and the total disk size can no longer be computed from the geometry, but is found in the LBA capacity field returned by the IDENTIFY command.“
  11. a b Andries Brouwer: 11. Clipped disks. In: Large Disk HOWTO v2.5. 1. November 2004, abgerufen am 18. September 2025 (englisch): „11.1 The Linux IDE 8 GiB limit; The Linux IDE driver gets the geometry and capacity of a disk (and lots of other stuff) by using an ATA IDENTIFY request. Linux kernels older than 2.0.34/2.1.90 would not believe the returned value of lba_capacity if it was more than 10% larger than the capacity computed by C*H*S. However, by industry agreement large IDE disks (with more than 16514064 sectors) return C=16383, H=16, S=63, for a total of 16514064 sectors (7.8 GB) independent of their actual size, but give their actual size in lba_capacity.“
  12. Lutz Labs: History: Die schnellste Festplatte der Welt wird 25 Jahre alt. In: Heise online. 23. Februar 2025. Abgerufen am 19. September 2025.; Zitat: „In der Platte rotierten damals fünf Scheiben mit jeweils 3,7 GByte;“.
  13. Robert Bruce Thompson, Barbara Fritchman Thompson: PC Hardware in a Nutshell: A Desktop Quick Reference. O’Reilly Verlag, 2003, ISBN 978-0-596-55234-3, S. 437 (englisch, eingeschränkte Vorschau in der Google-Buchsuche [abgerufen am 13. Januar 2022]).