The PC architecture running the DOS operating system imposes a 528 MB barrier on hard disk drives. Because of multimedia, other graphics-intensive applications, and large databases, this barrier has become a major obstacle to storage needs. Three solutions to the barrier have emerged: the "hard-wired" approach, which is simple to implement but imposes capacity limitations; Logical Block Addressing (LBA), which requires major software retrofitting; and Extended Cylinder, Head, Sector (CHS) addressing, which represents a "middle-of-the-road" approach. *Quantum drives support both LBA addressing and Extended CHS addressing. But, because Extended CHS is the easier-to-implement solutions and imposes fewer engineering risks, the company believes this is the best current solution. Quantum has implemented Extended CHS addressing as a device driver that ships on a floppy disk and is loaded onto the hard disk during boot-up. The device driver is now being shipped with Quantum AT-IDE drives of 500 MB or above. Quick Look This Quantum Technical Information Paper (TIP) discusses the 528 MB barrier imposed on hard disk drives by PCs running DOS. The paper examines three solutions to the barrier, their advantages and disadvantages, and explains why Quantum chose a middle-road solution to the problem. In the computer industry, some problems lurk for years before they become obstacles. Such has been the case for the 528 MB barrier that the PC architecture running the DOS operating system imposes on hard disk drives. For most of the PC's existence, the limitation was only theoretical. Now it has become a significant obstacle. The reason: multimedia, other graphics-intensive applications, and large databases have raised the ante for storage capacity - fuelling growth in the market for increasingly higher capacitites. As a result, the computer industry has had to scramble for a solution to the 528 MB barrier. It is important to note that the 528 MB barrier is specifically a DOS problem because DOS relies on the BIOS to address the hard disk drive. This architecture was established in 1982 when DOS was first developed, and it still affects every DOS system, as well as the Microsoft Windows environment, which is layered on top of DOS. The 528 MB barrier is not encountered in newer 32-bit operating systems, such as Windows NT and OS/2, because they bypass the BIOS. Three solutions to the 528 MB barrier have emerged in recent months:
Why is there a barrier? The 528 MB barrier occurs on the data path that links the DOS operating system with the hard disk. When applications make use of the hard disk for either retrieving or writing information, they take advantage of a DOS function call, which is sent to the computer's BIOS (basic input/output system), which relays it, in turn, to the hard disk. This arrangement shields developers from having to know the specifics of each system architecture and hard disk subsystem. Ultimately, a request from the application must be translated into a specific cylinder, head, and sector on the hard disk. DOS issues cylinder, head, and sector (CHS) numbers to the BIOS, which relays them to the disk. The problem is that, along the way, these three numbers encounter two different, largely incompatible interfaces. One interface, ATA, links the hard drive with the BIOS. The other, INT13, links the BIOS and DOS. The problem occurs in the number of bits allocated to identify each cylinder, head, and sector. The ATA interface accommodates a cylinder number of 16 bits in length. But the INT13 interface uses just a 10-bit cylinder number. Similarly, the ATA interface uses a head number of just 4 bits, while INT13 uses 8 bits. These incompatibilities mean that only the lowest number - the least common denominator - can be used. So, while either of the interfaces working alone could provide sufficient addressing capability to far exceed 528 MB, when the two are combined and the least common denominator becomes the limiting factor, a 528 MB capacity maximum is the result. The "Hard-Wired" approach: simple but limited The simplest approach to breaking the 528 MB barrier is to treat a single 1 GB drive as if it were two physical drives, each with 528 MB of storage capacity. At the software level, the drive occupies the address space of the C and D drive. At the hardware level, a standard ATA cable that ordinarily supports two drives - drive 0 and drive 1 - now supports only one. This "hardwired" approach has the advantage of requiring no device driver or other software modifications. But it also imposes two capacity limitations: you can't add an additional drive nor can the single drive exceed 1 GB. LBA addressing: an approach for the future On the other end of the spectrum is LBA addressing. With this method, the standard addressing convention described above is completely replaced. The same registers are used to pass cylinder, head, and sector information, but the information itself is completely redefined as a logical block address, such as an address found in SCSI. This revolutionary approach is its own disadvantage. LBA requires changes to the operating system, the BIOS, and the disk drive. It is essentially an attempt to rewrite history and, while the resulting solution is clean, the amount of retrofitting required is prohibitively expensive. LBA addressing is arguably the best long-term solutions - when the operating system itself fully supports it. For example, when Windows 95 becomes available, it will implement LBA addressing at all levels of the software, thereby improving system performance. But under DOS, the advantages of LBA addressing are latent, representing a complex and impractical solution to the current problem. The Extended CHS Solution is the Middle Road By contrast to LBA addressing, Extended CHS addressing employs a simple address-conversion technique. Two unused bits are "borrowed" from the head number used in the INT13 interface and "loaned" to the cylinder number. So, instead of the operating system issuing a 10-bit cylinder number as it usually does, it can now send down a 12-bit cylinder, making up for the deficit with excess bits from the head number. A similar translation is accomplished in the other direction, giving two extra bits to the head number. Extended CHS addressing offers significant advantages because it maintains the existing INT13 interface between the operating system and the BIOS and the ATA interface between the BIOS and the drive. Unlike LBA addressing, it requires no modification of the operating system or disk drive, and only a minor substitution of the BIOS code. Unlike the hard-wired approach, it solves the problem for not only a single GB, but a theoretical 8 GB of capacity, while allowing two physical hard drives to be installed. Quantum's Extended CHS implementation Quantum has implemented Extended CHS addressing in a device driver that ships on a floppy disk and is loaded onto the hard disk. During boot-up, the device driver code replaces a small portion of the BIOS code located on the system's EPROM. When the operating system makes an INT13 call, the device driver intercepts it and performs the address conversion between the CHS geometry supported by the system and the CHS geometry supported by the drive. Quantum's support for Extended CHS addressing represents a solution that can be implemented today and will not become obsolete even after Windows 3.1 is replaced. While Microsoft intends to support LBA addressing in Windows 95, it has also promised to support Extended CHS. For its part, Quantum also supports both Extended CHS and LBA addressing methods. But the company believes that CHS is currently the easier-to-implement solution that imposes fewer engineering risks. Quantum's device driver is now being shipped with Quantum AT-IDE drives of 500 MB or above. In summary Extended CHS addressing is the best current method for solving the 528 MB DOS barrier because it is easy to implement and less risky than alternative solutions. Quantum's device driver, which implements CHS addressing, gives DOS and Windows users sufficient hard drive capacity to run today's storage-hungry applications. The solution will not become obsolete with Microsoft's future operating system. Reprinted from the April 1995 issue of PC Update, the magazine of Melbourne PC User Group, Australia |