The Int13h Interface

When the operating system or an application wants to access the hard disk, it traditionally employs BIOS services to do this. The primary interface to the BIOS has been the software interrupt known as Int13h, where “Int” stands of course for interrupt and “13h” is the number 19 in hexadecimal notation.

The Int13h interface supports many different commands that can be given to the BIOS, which then passes them on to the hard disk. These include most anything that you would normally want to do with a disk–reading, writing, formatting, and so on. Int13h has been the standard for many years because it has been used by DOS for ages. It is only in recent years that the limitations of this old interface have caused it to be abandoned in favor of a new way of addressing hard disks, as described below.

Using Int13h requires the invoking program to know the specific parameters of the hard disk, and provide exact head, cylinder and sector addressing to the routines to allow disk access. The BIOS uses the geometry for the hard disk as it is set up in the BIOS setup program. The Int13h interface allocates 24 bits for the specification of the drive’s geometry, broken up as follows:

* 10 bits for the cylinder number, or a total of 1,024 cylinders.
* 8 bits for the head number, or a total of 256 heads.
* 6 bits for the sector number, or a total of 63 sectors (by convention, sectors are numbered starting with one instead of zero, so there are only 63).

This means that the Int13h interface can support disks containing up to approximately 16.5 million sectors, which at 512 bytes per sector yields a maximum of 8.46 GB (or 7.88 GiB). Of course, twenty years ago when this methodology was developed, an 8 GB hard disk was Buck Rogers fantasyland material; a 10 MB hard disk was a luxury. Today, for many PC users, an 8 GB hard disk is “a bit on the small side”. As a result, the Int13h interface has finally come to the end of its usefulness in modern systems, and has been replaced with a newer interface called Int13h extensions. Int13h still may be used by DOS and some other older operating systems, and for other compatibility purposes.

Int13h Extensions

As discussed above on the standard Int13h BIOS interface, that older standard has an important limitation that has become a serious issue for PC upgraders over the last few years: it uses 24 bits of addressing information, and as such can only handle drives that contain up to approximately 16.5 million sectors, which at 512 bytes per sector yields a maximum capacity of 8.46 GB (or 7.88 GiB). As modern drives approached 8 GB in size, hardware and operating system makers all realized that they had a problem here: something had to be done to allow access to the larger hard disks of the future.

When a bridge is too narrow to handle increased traffic, the usual solution is to widen it, and that’s exactly what was needed here: to widen the access path from 24 bits to something larger. Unfortunately, it was not possible to expand the existing Int13h BIOS interface. The reason is that if this were done, a lot of older hardware and software would stop working. Making changes that cause millions of older hardware and software products to stop working is not how you win friends in the PC world.

Instead, a new interface was developed to replace Int13h: these routines are called Int13h extensions. This new interface uses 64 bits instead of 24 bits for addressing, allowing a maximum hard drive size of 9.4 * 10^21 bytes. That’s 9.4 trillion gigabytes! I’m sure that when the original Int13h interface was developed, nobody ever expected us to hit 8 GB drives as fast as we did. Still, even with the rapid pace of technological advancement, I’d say we’re pretty safe with 9.4 trillion gigabytes as a limit. If not, I’ll be pleased as punch to move to a still newer interface in exchange for a hard drive that big.

There’s a catch to these Int13h extensions of course: they are different from the old way of doing things, and therefore support for them must be incorporated into several key areas of the system. This includes the system BIOS and the operating system.

Data recovery Salon welcomes your comments and share with us your ideas, suggestions and experience. Data recovery salon is dedicated in sharing the most useful data recovery information with our users and only if you are good at data recovery or related knowledge, please kindly drop us an email and we will publish your article here. We need to make data recovery Salon to be the most professional and free data recovery E-book online.