<<< disk drive geometry | Index | practical problems related to disk drive geometry >>> |
Disk drive geometry details:
There are many limitations to how the CHS values may be used. The normal CHS mode limits are 1024, 16, and 63, respectively. This calculation yields a drive capacity of 504 MB.
The actual CHS value limits are based upon the size of the fields; C is 10-bit value limited to 1024, H is an 8-bit value limited to 256, and S is a 6-bit value limited to 63 (because the first sector is 1, not 0). These restrictions limit a drive to 8 GB. However, drives larger than 504 MB do not actually advertise the true physical geometry; as drives got larger, the number of true cylinders was divided by 2 and the true number of heads was multiplied by 2 until either the C value fell below 1024 or the S value hits 256. The "translation" here is that the BIOS understands that it is looking at the logical layout of the drive rather than the true physical layout. This is also known as extended CHS.
To handle drives greater than 8 GB, an entirely new approach is used called logical block addressing (LBA). In traditional CHS geometries, the number of sectors per track was constant, and reported in the S value. As disk drives grew in capacity, bit density increased; i.e., the "size" of a bit on the drive got smaller and more bits could be written to a track. At some point, it seemed obvious that more bits could be written to the tracks further from the center of the drive than could be written to the tracks near the center because the circumference was larger; at that point, engineers introduced the concept of a variable number of sectors per track (this is called zone bit recording or ZBR). At that point, the CHS values became meaningless in terms of truly representing the disk's layout and LBA numbering was introduced. In LBA numbering, sectors are merely assigned addresses starting at 0 and continuing to the final sector number, so that track 0, head 0, sector 1 (0/0/1) is called Sector 0, 0/0/2 is Sector 1, etc. In this context, translation refers to the conversion between LBA numbering and CHS values that the BIOS must have. Because of ZBR's use of variable number of sectors/track, the CHS values reported to the BIOS may have absolutely no relationship to the true physical geometry.
<<< disk drive geometry | Index | practical problems related to disk drive geometry >>> |