The 1,024 Cylinder (504 MiB / 528 MB) Barrier
If you have arrived here through a search engine, and there’s no menu to the left click here!
The first of the hard disk barriers was the 504 MiB limitation for standard IDE/ATA hard disks, which began showing up in systems some time in 1994. Due to this barrier, a hard disk over 504 MiB will normally appears as having 504 MiB under some circumstances. This problem is a result of combining the geometry-specification limitations of the IDE/ATA standard and the BIOS Interrupt 13h standard. This barrier is alternatively referred to as the 504 MB or the 528 MB barrier, depending on whether you are looking at binary or decimal megabyte values.
Note: Computer measurements are expressed in both binary and decimal terms, often using the same notation. Due to a mathematical coincidence, the fact that 2^10 (1024) is almost the same number as 10^3 (1000), they appear similar but yet they are different ways to express a megabyte or a gigabyte.
The difficulties with binary and decimal values are more noticeable in the area of hard disk capacity than anywhere else. Hard disk manufacturers have always used decimal values to describe their drive capacities. As an example, a 40 GB hard disk has about 40,000,000,000 bytes of storage. However, hard disk makers also use binary numbers where they are normally used, for example, they describe buffer capacities in binary kilobytes or megabytes, and the same notation “kB” or “MB” is used as for decimal figures. Hard disks are large, and larger numbers cause the discrepancy between decimal and binary values to become exaggerated. As an example, a 40 GB hard disk, expressed in binary terms, is “only” 38.9 GB. Since most software uses binary terms, this difference in numbers is the source of frequent confusion as to where the rest of the gigabytes went. Truthfully, they haven’t gone anywhere, it’s just a different way of expressing the same value.
Now that you have had the technical terms, we’ll try explaining it in non-technical terms. Every hard disk has its own geometry, which tells the BIOS how many cylinders, heads and sectors the disk uses. This is the manner in which the hard disk is addressed, when a sector needs to be read or written. The geometry that a modern hard disk uses for the BIOS is normally referred to as its logical geometry, and not the physical geometry actually inside the hard disk itself.
When your BIOS performs a drive parameter auto-detection, or you look up the values for your new IDE/ATA hard disk in its manual you are seeing the logical geometry values that the hard disk manufacturer has specified for the drive. Since today’s drives use zoned bit recording, and therefore have ten or more values for sectors per track depending on which region of the disk is being examined, it is not possible to set up the disk in the BIOS using the physical geometry. This is usually referred to as User Defined Settings. Keep in mind that the BIOS has a limit of 63 sectors per track, and all newer hard disks average more than 100 sectors per track, so even without zoned bit recording, there would be a problem.
Various software structures reserve a certain amount of space for specifying each of the three parameters that make up the hard disk geometry. The amount of space reserved is dictated by standards that control how IDE/ATA hard disks are supposed to work, and also how the BIOS sees hard disks through its Interrupt 13h software interface. Due to poor coordination, the standards are not the same, with each reserving different numbers of bits for the geometry. In order to use an IDE/ATA hard disk with the standard BIOS disk routines, the limitations of both standards must be observed, which means that only the smaller of each geometry number can be used.
This is how the two standards allocate bits for the geometry:
Standard |
Bits For Cylinder Number |
Bits for Head Number |
Bits for Sector Number |
Total Bits for Geometry |
IDE/ATA |
16 |
4 |
8 |
28 |
BIOS Int 13h |
10 |
8 |
6 |
24 |
Combination (Smaller of Each) |
10 |
4 |
6 |
20 |
Miami Dolphins WinCraft Chrome Clock,Men’s Dallas Cowboys Mitchell & Ness Navy Big Star Long Sleeve T-Shirt,Men’s Cleveland Browns New Era Black/Gray Gray Collection 39THIRTY Flex Hat Cheap Buffalo Bills Custom Football Jersey.Mens New England Patriots ’47 Brand Natural Cleanup Adjustable Hat,Men’s Cincinnati Bengals Majestic Black Critical Victory Long Sleeve T-Shirt,Youth Cleveland Browns Gray/Brown Classic Fade Short & Long Sleeve T-Shirt Combo Pack Choice Of The Buffalo Bills’ Jersey.New Orleans Saints Black Steering Wheel Cover,Women’s Pittsburgh Steelers New Era Black Double Over 9FORTY Adjustable Hat The Buffalo Bills As The Favourite Team.New England Patriots Bling Lanyard – Silver,Pittsburgh Steelers Infant Girls Scalloped Sleeve 3-Pack Creeper Set – Ash/Gold/Black,Women’s Baltimore Ravens New Era Gray/Pink Breast Cancer Awareness Knit Beanie.San Francisco 49ers The Northwest Company Juvy Hooded Towel,Men’s Dallas Cowboys Pro Line Gray Alta Quarter-Zip Pullover Sweatshirt http://www.buffalobillsnfljerseys.com.Men’s Buffalo Bills Royal 2015 On-Field 39THIRTY Flex Hat,Youth Seattle Seahawks College Navy Ripped Off T-Shirt,ProFootball ¨C Jerseys, Tickets, and Pro Football History – 20Yardline Cheap Buffalo Bills Jerseys NFL.New England Patriots Galaxy S6 Edge Dual Hybrid Case,Men’s Los Angeles Rams Nike Navy 2015 Sideline Crew Fleece Performance Sweatshirt,Riddell Cincinnati Bengals Revolution Speed Full-Size Authentic Football Helmet.New England Patriots 50-Pack Collectible Cards,Girls Youth Minnesota Vikings Teddy Bridgewater Purple Fade Route Name & Number T-Shirt
Since each geometry figure is a binary number with a number of bits as indicated above, this means that the maximum number supported for any parameter is 2^N, where N is the number in the above table. As an example, under IDE/ATA, 2^16 or 65,536 cylinders are supported. We can then multiply all the figures together to get a total number of sectors supported, and then multiply that by 512 bytes per sector to get the maximum supported capacity:
Standard |
Maximum Cylinders |
Maximum Heads |
Maximum Sectors |
Maximum Capacity |
IDE/ATA |
65,536 |
16 |
256 |
128 GiB |
BIOS Int 13h |
1,024 |
256 |
63 |
7.88 GiB |
Combination (Smaller of Each) |
1,024 |
16 |
63 |
504 MiB |
The BIOS Interrupt 13h limit for sectors is 63, and not 64, because by convention sectors are numbered starting at 1 and not 0.
As you can see, the 504 MiB figure is just 1,024 * 16 * 63 * 512, which equals 528,482,304 (528MB). The major problem is in the combination of the limitations of the two standards. Due to the 16-head limitation of IDE/ATA, no IDE hard disk is ever specified with more than 16 logical heads, instead they always have a large number of cylinders. The problem occurs when you put the disk in a machine with a standard, non-translating BIOS, as it can’t see more than 1,024 of the cylinders.
The normal solution to the 504 MiB problem is to use a system that supports BIOS translation. This will enable you to work around the problem by using a software trick, and it does work! Software drive overlays will also avoid the problem, but at a cost!
Notice: Windows® 95, Windows® 98, Windows® NT, Windows® 2000, Windows® XP and Microsoft® Office are registered trademarks or trademarks of the Microsoft Corporation.
All other trademarks are the property of their respective owners.