Warum entspricht die Gesamtzahl der in fdisk angezeigten Festplattensektoren nicht der theoretischen Berechnung?

9

Wenn wir eine Festplatte mit fdisk überprüfen, wird Folgendes angezeigt:

Disk /dev/sda/: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors

Wenn wir jedoch 255 x 63 x 2610 multiplizieren, ist die Zahl 41929650, etwas weniger als die Gesamtzahl. der oben gezeigten Sektoren. Warum?

GreenPenguin
quelle
3
Definitiv verwandt: Interpretation der Anzahl der von fdisk auf Super User zurückgegebenen Köpfe . Vollständige Offenlegung: Die akzeptierte Antwort ist meine eigene.
ein CVn

Antworten:

14

Die Kopf-, Zylinder- und Sektornummern werden nur zu historischen Zwecken und zur Verwendung durch eine wirklich alte Software angezeigt. Die logische Blockadressierung wird heute zur Adressierung von Festplatten verwendet. Die Geometrie moderner Platten weist typischerweise eine variable Anzahl von Sektoren auf, äußere Spuren haben mehr Sektoren als innere Spuren.

Verschiedene Schnittstellen haben Maximalwerte von 255 Köpfen, 63 Sektoren / Spur. Um die CHS-Werte für eine große Platte ausdrücken zu können, werden diese auf ihre jeweiligen Maximalwerte gesetzt und die Anzahl der Zylinder auf den nächsten ganzzahligen Wert abgerundet Ein ungefährer Wert für die Anzahl der Gesamtsektoren auf der Festplatte. Wie Sie gesehen haben, ist die tatsächliche Anzahl der Sektoren normalerweise unterschiedlich. Die tatsächliche Geometrie der Platte liegt nicht einmal in der Nähe der CHS-Werte. Wahrscheinlich hat keine jemals hergestellte Platte 255 Köpfe.

Johan Myréen
quelle
6
"Logische Blockadressierung wird heute zur Adressierung von Festplatten verwendet" - Nur um einen Überblick über den Zeitrahmen zu geben: 22-Bit-LBA wurde 1986 eingeführt, 28-Bit-LBA 1994, 48-Bit-LBA 2003. Ab 1996 unterstützen alle Laufwerke LBA . Ohne LBA beträgt die maximal adressierbare Laufwerksgröße ~ 7,8 GiByte im Vergleich zu 128 PiByte mit LBA48.
Jörg W Mittag