Disk Size Limit - 1024 Cylinders: This limit is imposed by the INT13 call traditionally used to read and write hard and floppy disks. INT13 allocated only 10 bits for the Cylinder address. That worked fine until about 1993 when disks with more than 1024 physical cylinders came into widespread use. Prior to that time, it had become common practice to set up disks in PC BIOSes as "User Defined" using the manufacturer's specified layout. Many BIOSes in use at that time would allow disks to be specified with as many as 16536 cylinders, but obviously had no way to support access beyond cylinder 1023 via INT13. That's not entirely senseless as even then some OSes provided their own disk drivers, but depended on the BIOS to provide basic disk layout information.

The difficulty that was encountered initially was that disks defined with more than 1024 cylinders could be formatted and used by MSDOS software, but would overwrite cylinder 0 if attempts were made to write to Cylinder 1024. Since lower numbered cylinders are typically allocated first, these disks would be put into service, work for months or years, then -- as they approached being full, the data would self destruct. This problem resolved itself in a year or so when disks with capacities greater than 504 MB started to appear. Those required CHS translation (with or without Logical Block Addressing -- LBA). A side affect of CHS translation was that users quit attempting to configure disks as having more than 1024 cylinders since CHS translation required 1024 or fewer cylinders. Heads or sectors per track were simply adjusted upwards to compensate for the reduced cylinders.

A second, more lasting, problem came about because to this day, the BIOS uses basic INT13 based logic to boot almost all hard drives including SCSI drives. That means that even with CHS, LBA and Extended INT13 allowing very large hard drives to be used, the partition booted by the BIOS must have its boot record on cylinders 0-1023. This is almost never an issue with single OS disks. It is usually overcome on multiple OS boot disks by using boot manager software or by using relatively small partitions to boot from. Logical mounting of the rest of the storage is deferred until the OS is booted.

Return To Index Copyright 1994-2002 by Donald Kenney.