Annoyances.org
Home » Windows 98 Discussion Forum » Message 1057328074 Search | Help | Home
  
Tip: Run a free scan for common Windows errors ad

re: My old pentium can't detect my 15gb HDD
Friday, July 4, 2003 at 7:14 am
Windows 98 Annoyances Discussion Forum
Posted by Bob Harris (992 messages posted)


Over the years there have been many disk size "barriers", related to limitations 
of the BIOS and/or the operating system and/or the file system.  A couple of them 
are near 8 Gig.  You might need a BIOS update, or since that is not likely available 
for an older PC, you might want to try a PCI adapter card with an ATA/100 controller. 
 Here is some info I saved a while back on size barriers.  I had to remove the imbedded 
talbes, since they did not convert well to plain text.  Hyperlinks were also lost 
in this conversion.  The original link I followed to get this information is:

http://www.pcguide.com/ref/hdd/bios/sizeMB504-c.html

Hopefully it will help:

The 8,192 Cylinder (3.94 GiB / 4.22 GB) Barrier

After the discovery of the 504 MiB BIOS barrier, the normal way of getting around 
that problem was to make use of BIOS geometry translation. (This continued until 
hard drives exceeded about 8 GB in size and the whole IDE/ATA geometry scheme had 
to be abandoned altogether.) In a nutshell, this translation works by dividing the 
hard disk's number of cylinders by a binary number such as 2, 4, 8 or 16, and multiplying 
the number of heads by the same number. This lets the number of cylinders that the 
BIOS sees fall below the Int13h limit of 1,024. This translation however causes a 
problem in some systems when using a hard disk over about 4 GB in size.

Note: To understand how translation causes this particular new barrier to arise, 
you need to understand how BIOS translation works. See here for an explanation if 
you are not familiar with this.

When the number of cylinders on the drive is between 8,192 and 16,383, the number 
typically used for translation is 16. Here's an example of how this might work with 
a theoretical 6.4 GB hard disk if it used the normal way that IDE/ATA drives are 
specified, with 16 heads and 63 sectors per track:

This should actually work just fine; it overcomes the BIOS issues and results in 
geometry that falls within acceptable limits. However, there's an unfortunate gotcha 
that was discovered when drives first exceeded 8,192 cylinders in around 1997: MS-DOS 
and early versions of Windows choked when presented with a drive that had (apparently) 
256 heads! Thus, this is actually a barrier that is due to both the operating system 
and the system BIOS: the operating system should have been able to handle 256 heads, 
but the BIOS was creating the problem due to its translation.

It was decided that the easiest way to deal with this problem was to change the way 
the BIOS did translation. As a result, BIOSes stopped creating translated geometries 
that had 256 heads. One common way that this was done was to use 15 as the translation 
factor instead of 16, resulting in this sort of conversion:

Of course, if you have a BIOS that doesn't know about the 256 head problem, you will 
need to address this with either a hardware or software solution. To help avoid some 
of these problems, many hard disk manufacturers also changed their specified geometries 
to use only 15 heads instead of 16. So instead of the example drive above being specified 
with 12,496 cylinders, 16 heads and 63 sectors, it might have been 13,329 cylinders, 
15 heads and 63 sectors. With these parameters, even if the BIOS uses a translation 
factor of 16, the resulting number of heads will be only 240.

The 240 Head Int 13 Interface (7.38 GiB / 7.93 GB) Barrier
The Int13h interface limit normally restricts some systems to 7.88 GiB or 8.46 GiB 
as a result of the limits of the BIOS Int13h interface: 1,024 cylinders, 256 heads 
and 63 sectors of 512 bytes. (I discuss this very important size barrier in some 
detail here, and you may want to read that section before you read this one.) However, 
in some systems the Int13h interface restriction results in a smaller limit: only 
7.38 GiB (7.93 GB).

The reason why this occurs is related to a different size barrier problem (sigh, 
can't these engineers get their acts together? :^) ) As I described in the discussion 
of the 8,192 cylinder limit, DOS and some Windows versions cannot handle translated 
geometry that specifies 256 heads. To get around this, some BIOSes change their translation 
method so that only 240 heads are presented to the operating system. This fixes the 
"256 head problem" but shaves some capacity off the Int13h limit. The 1,024 cylinder 
and 63 sector restrictions remain, but with only 240 heads the maximum drive capacity 
becomes 1024 * 240 * 63 = 15,482,880 sectors of 512 bytes, or 7,927,234,560 bytes.

In practical terms, there isn't any difference in how this barrier is handled than 
the standard Int13h problem is tackled. You still need to use Int13h extensions; 
see the discussion of the Int13h interface barrier for more.

The Int 13 Interface (7.88 GiB / 8.46 GB) Barrier

This barrier, often just called the "8 GB barrier", is one of the most important 
in the hard disk world. Now that hard disk capacities have moved into the tens of 
gigabytes and beyond, it gets most of the attention that the old 504 MiB / 528 MB 
barrier used to get in the mid-to-late 1990s. Many people run into this particular 
barrier as they attempt to upgrade systems originally purchased in the late 1990s 
with hard disks of 1 GB to 8 GB or so in size.

Like most of the others, this barrier is also based on a BIOS limitation. It is a 
tougher nut to crack than most of the smaller-valued barriers, however. The reason 
for this is that with this particular barrier, we have actually come up against one 
of the traditional limits of how hard disks are used in the PC: the Int13h interface. 
That standard allocates 10 bits for the cylinder number (and thus a maximum of 1,024 
cylinders), 8 bits for the head number (maximum of 256) and 6 bits for the sector 
number (maximum of 63, since the number 0 is not used). Multiplying these together, 
and assuming the standard of 512 bytes per sector, you get a maximum of 8,455,716,864 
bytes. This is the largest hard disk size that can be addressed using the standard 
Int13h interface.

Unlike the old 504 MiB barrier, there is no translation that can get around this 
because it isn't the result of a combination of limitations like the 504 MiB barrier 
is. It is in fact the limit of how hard disks can be represented using the BIOS Int 
13h routines used by DOS and applications to access the hard disk. To get around 
this barrier, we must change the way hard disks are accessed entirely. This means 
leaving Int13h behind and using Int13h extensions.
Note: Int13h extensions require support from both the BIOS and the operating system. 
Some older operating systems do not support Int13h extensions, and there are no plans 
to provide it for them. In particular, all versions of straight non-Windows DOS (6.22 
and earlier), and Windows NT version 3.5 will not support Int13h extensions and cannot 
use hard disks over 8.4 GB in size.

Note: Some systems have a smaller Int13h capacity limit due to the use of modified 
translation to avoid presenting geometry with 256 heads to the operating system. 
See here for details.










On Thursday, July 3, 2003 at 6:30 pm, Jon wrote: >My old pentium(Pentium-S) can't detect my 15Gb HDD, i tried to partition it in that >PC and i only get a max of 8GB- what do i do to get/use the maximum 15Gb capacity? >pls. help...



Written in response to:
My old pentium can't detect my 15gb HDD (Jon: Thursday, July 3, 2003 at 6:30 pm)

Responses to this message:
*re: My old pentium can't detect my 15gb HDD (Jon: Saturday, July 5, 2003 at 6:02 pm)

All messages in this thread [show all]
-My old pentium can't detect my 15gb HDD (Jon: Thu, Jul 3, 2003, 6:30 pm)
-re: My old pentium can't detect my 15gb HDD (Ahmad: Thu, Jul 3, 2003, 6:39 pm)
*re: My old pentium can't detect my 15gb HDD (Jon: Sat, Jul 5, 2003, 6:05 pm)
*re: My old pentium can't detect my 15gb HDD (LarryB: Thu, Jul 3, 2003, 6:59 pm)
-re: My old pentium can't detect my 15gb HDD (Bob Harris: Fri, Jul 4, 2003, 7:14 am)
*re: My old pentium can't detect my 15gb HDD (Jon: Sat, Jul 5, 2003, 6:02 pm)
Return to the Windows 98 Discussion Forum


All content at Annoyances.org is Copyright © 1995-2009 Creative Elementtm All rights reserved.
Please do not plagiarize; redistributing these pages without permission is strictly prohibited.