TIP: Click on subject to list as thread! ANSI
echo: os2
to: MIKE RUSKAI
from: MIKE FRITZ
date: 1998-05-13 18:47:00
subject: 6.4 gig EIDE

MR> If you change translation, you will have to repartition the drive.
MR>  But  translation is standard - you just keep doubling the number of
MR> heads until  the cylinder value is low enough (up to 256 heads). 
MR> The BIOS will let you  choose how many times to do that, so you can
MR> keep your data as is.
Do you mean a later BIOS?  My current BIOS doesn't have any of this,
probably because it's an older BIOS.
MR> Since you seem to be in the dark a bit about translation, I'll
MR> give you  some general info.
MR> 
MR> There are several things which determine how much space a hard
MR> drive has.   Starting from the bottom up, it's bytes per sector,
MR> sectors per track,  cylinders (same as track), and heads.
MR> 
MR> All IDE drives made today (and all SCSI drives I know of) use 512
MR> byte  sectors.  The IDE drives seem to all have 63 sectors per track
MR> these days,  and 16 heads.  What differs is the number of cylinders
MR> (which varies due to  track spacing and the number of platters). As
MR> an example, we'll use the  drives that used to be king of the hill 5
MR> years ago - 515MB drives, sold as  540MB by the drive makers (they
MR> define MB as one million bytes, while  everyone else in computers
MR> defines it as 20 bytes).
MR> 
MR> When you multiply all these values together, you arrive at the
MR> number of  bytes.
MR> 
MR> So, for the 515MB drive, we have:
MR> 
MR> 512 bytes per sector
MR> 63 sectors per track
MR> 16 heads
MR> 1048 cylinders
MR> 
MR> 512*63*16*1048 = 540,868,608 bytes = 528,192 kilobytes = 515.8
MR> megabytes
I always did heads*cyliders*sectors/2=megabytes.
I think of heads/cylinders/sectors as a 3 dimensional location, and
dividing all that removes 2 of the dimansions, to come up with the 1
dimesnions we call megs.  :)
MR> The problem is that the PC's BIOS only maintains 10 bits to
MR> address the  cylinder when seeking the sector in question.  That
MR> leaves room for only  1024 cylinders.  To change this would
MR> invalidate every operating system for  the PC that uses the BIOS for
MR> disk I/O.
MR> 
MR> IDE also has a limitation of 16 heads.  Then WD came out with EIDE
MR> (known  by various other names as well), which supported more heads,
MR> to allow  translation.
MR> 
MR> In the case of the 515MB drive, doubling the heads to 32 allows
MR> you to  halve the cylinders to 524, which the BIOS can address.  The
MR> translating  BIOS fudges the calls that the BIOS makes, converting
MR> the fake  head/cylinder combination into the actual head/cylinder
MR> combination.  
MR> 
MR> Without any translation, the maximum BIOS-addressable space is
MR> 504MB.
MR> 
MR> Now, let's consider a 1.5GB drive (sold as 1.6GB), which has 3148
MR> cylinders  (everything else is the same).
MR> 
MR> Doubling the heads and halving the cylinders still leaves 1574
MR> cylinders.   Since their are 32 artificial heads, however, we can
MR> create a  BIOS-addressable partition of 1GB.  To make the whole
MR> driver  BIOS-addressable, we have to double the heads again to 64,
MR> which leaves the  cylinders at 787.
MR> 
MR> Now, the reason I speculated that you had two-level translation is
MR> because  when you double the heads twice to 64, you have a maximum
MR> BIOS-addressable  disk size of
MR> 512(bytes/sector)*63(sec/track)*64(heads)*1024(cyl), which  comes
MR> out to a bit less than 2GB.
MR> 
MR> So, if you couldn't boot on a partition 2GB or larger, the most
MR> likely  reason is that you had two-level translation.  
MR> 
MR> See, if you do two-level translation on a 6GB drive (sold as
MR> 6.4GB), you  end up with over 3000 virtual cylinders (out of
MR> somewhere around 12,500).
MR> 
MR> The meaning of 782 on your bootup screen depends on which column
MR> it's in.   If I recall correctly, it shows all possible modes that
MR> the drive can have,  as well as the one it is in.
MR> 
MR> Even if you did have maximum translation on (four levels, all the
MR> way to  256 heads), any FAT partitions would be restricted to 2GB in
MR> size,  regardless of placement.
MR> 
MR> I don't know how 12GB+ drives function.  There must be either an
MR> additional  translation parameter, or mandatory multiple partitions
MR> (OS/2 can work  without any translation on any drive, provided it
MR> has a boot partition  within 1024 cylinders).
I had to save all this info so I can slowly read over it to
understand.  I had always thought LBA was LBA, nothing more, nothing
less.  I didn't know there were different levels of LBA.  my OS/2
driver shows 4 columns of info when I boot.  But I can't read all of it
because it goes by too fast, there's a clear screen command somwhere in
the program.  I've tried to put some false command in so it will pause,
it it pauses BEFORE the drive, even after it's put AFTER the driver.
I do understand DOS is limited to 2 gigs, that's not a cylinder
limitation, just a meg limitation, kind of like the old 32meg
limitation.  Thanks for your info.  So if I use the same level of LBA
as now, I shouldn't have a problem when I get a new motherboard, right?
Also, I knew about how manufacturers rate drive space, I just think it
will be a problem in the future when drives get even BIGGER!  :) 
Thanks again! 		Mike Fritz
---
 * KWQ/2 1.2e NR * I said MAYBE and that's final!
---------------
* Origin: FidoNet International Coordinator Emeritus, for life (1:202/746)

SOURCE: echomail via exec-pc

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.