ATA Specification for IDE Disks - The 137 GB limit
The old ATA specification does not allow access to a disk that is larger than 137 GB. Actually, it uses only 28 bits to specify a sector number. However, ATA-6 defines an extension with 48-bit sector number.
The limit of the disk size was generated with the combination of at most 65536 cylinders counting from 0 to 65535, 16 heads counting from 0 to15 and 255 sectors per track counting from 1 to 255, the maximum total capacity of disk,
= 65535 * 16 * 255 Sectors
= 267386880 Sectors
= 136902082560 Bytes (Sector of 512 Bytes Each)
~ 137 GB
Two and Four Disk BIOS IDE Support
Today Most of the modern BIOS programs support hard disk auto detection, which allows the BIOS to interrogate each hard disk to determine its logical geometry, supported transfer modes and other information. This can be done either at setup time or dynamically each time the machine is booted, depending on the BIOS.
The system BIOS provides native support for IDE/ATA hard disks therefore there may be a number of parameters that can be set to tell the BIOS what hard disks are in the system and how to control them. Each hard disk in the system will have its own settings so there is one set for the primary master and one for the primary slave and so on. However SCSI hard disks are configured through their host adapter and built-in SCSI BIOS.
Since the hard disk drives over 8 GB in size cannot be described using traditional IDE/ATA BIOS geometry parameters therefore the dynamic auto detection is the standard way of setting up modern drives, especially in case of older computer systems however user may still set some drive parameters manually.
Following are the settings normally found in the BIOS setup program for configuring IDE/ATA hard disks. Although on modern systems some of the oldest compatibility settings may not even be present any more:
- Disk Type: it was originally used to allow the user to pick his hard disk from a predefined list but now this is used to control automatic or manual parameter setup for the drive.
- Size: Size of the Hard Disk drive in decimal megabytes. It is calculated from the other parameters like Cylinders, Heads and Sectors etc.
- Cylinders: The number of logical cylinders on the disk.
- Heads: The number of logical heads on the disk.
- Sectors: The number of logical sectors each of 512 bytes, in each logical track on the disk. Usually modern hard disk drives have 63 sectors on a single track.
- Write Precompensation: it is a compatibility setting that specifies at which cylinder number write adjustments should be made for very much older drives.
- Landing Zone (Parking Heads): Landing Zone is the cylinder where the heads are parked by the BIOS to avoid the data loss or creation of Bad Sectors, when the drive is shut off. As the modern hard disk drives automatically park their heads it is rarely needed today.
- Translation Mode: The BIOS translation mode used to support the hard disks over 504 MB.
- Block Mode: To Control the BIOS's ability to perform disk transfers in blocks.
- Programmed I/O (DMA) Mode: The programmed I/O mode or DMA mode used to perform transfers to and from the hard disk.
- 32-Bit Transfer Mode: Controls the use of higher-performance 32-bit data transfers.