Chief among these was the cylinder-head-sector (CHS) scheme, where blocks were addressed by means of a tuple which defined the cylinder, head, and sector at which they appeared on the hard disk.
In redundant array of independent disks (RAID) devices and storage area networks (SANs) and where logical drives (logical unit numbers, LUNs) are composed via LUN virtualization and aggregation, LBA addressing of individual disk should be translated by a software layer to provide uniform LBA addressing for the entire storage device.
[2] This INT 13h implementation had pre-dated the ATA standard, as it was introduced when the IBM PC had only floppy disk storage, and when hard disk drives were introduced on the IBM PC/XT, INT 13h interface could not be practically redesigned due to backward compatibility issues.
In order for the BIOS to overcome this limit and successfully work with larger hard drives, a CHS translation scheme had to be implemented[when?]
This software could also enable LBA and INT 13h Extensions support for older computers with non LBA-compliant BIOSes.
The number of cylinders, heads, and sectors in the translated geometry depends on the total size of the disk, as shown in the following table.
[3] The current 48-bit LBA scheme was introduced in 2002 with the ATA-6 standard,[4] raising the addressing limit to 248 × 512 bytes, which is exactly 128 PiB or approximately 144 PB.
Current PC-compatible computers support INT 13h Extensions, which use 64-bit structures for LBA addressing and should encompass any future extension of LBA addressing, though modern operating systems implement direct disk access and do not use the BIOS subsystems, except at boot load time.
CHS tuples can be mapped to LBA address with the following formula:[6][7] where LBA addresses can be mapped to CHS tuples with the following formula ("mod" is the modulo operation, i.e. the remainder, and "÷" is integer division, i.e. the quotient of the division where any fractional part is discarded): According to the ATA specifications, "If the content of words (61:60) is greater than or equal to 16,514,064, then the content of word 1 [the number of logical cylinders] shall be equal to 16,383.
"[1]: 20 Therefore, for LBA 16450559, an ATA drive may actually respond with the CHS tuple (16319, 15, 63), and the number of cylinders in this scheme must be much larger than 1024 allowed by INT 13h.