Date: Thu, 27 Apr 2000 15:13:08 +0100 (GMT/BST)
From: Digby Tarvin <[EMAIL PROTECTED]>
Subject: Re: 12 Gig drive: Phantom Hibernation Zone
>Date: Thu, 27 Apr 2000 08:16:53 -0400
>From: "Lawrence Young" <[EMAIL PROTECTED]>
>Subject: Re: 12 Gig drive: Phantom Hibernation Zone
>
>Unfortunately, it's a well known fact that Libretto's BIOS can only
>recognize up to 8 GB of HDD. So your experience does not apply here.
Ah, obviosly wasn't well known to me, having yet tried to install
a drive greater than 4Gb ....
My years of using SCSI based Suns and 68K machines has no doubt
given me unrealistic expectations for these clunky IBM-PC architecture
descendents :-/
All the ugly permutations required to get around various limitations
of FDISK partitions and BIOS limitations is an endless source of
confusion and complexity...
Such a BIOS limitation will, as you suggest, complicate matters
a little...
> Date: Thu, 27 Apr 2000 05:57:41 -0700 (PDT)
> From: Matt Cham <[EMAIL PROTECTED]>
> Subject: Re: 12 Gig drive: Phantom Hibernation Zone
>
> > You then
> > reboot using a unix (linux or BSD work fine) or
> > other more advanced
> > operating system, and it can tell you exactly what
> > part of the
> > disk was left for hibernation.
>
> I got lost in this section of the instructions.
> Please provide more detail regarding the linux
> install, and how it detects the hibernation area.
> ie, what version, what program, what commands,
> and what results do you expect?
I used the command 'disksetup -i' in BSD/OS, which builds
a disklabel containing drive geometry information. To do that,
you have the choice of using:
1. The size of the drive according to the BIOS
2. The size according to the CMOS
3. The size according to any existing FDISK partition
4. The size according to any existing BSD/OS disklabel
5. Probing the disk to determine the real size
When the options are displayed, you compare what is indicated by the
DOS created FDISK partitioning (or the BIOS, which should be the same)
to the real physical dimensions of the drive determined by probing it.
The difference is what what the BIOS has reserved for the hibernation
stuff.
> Also, won't the hibernation area also depend
> on how much RAM was in use at the moment prior
> to hibernation? ie, if I have 32 MB total RAM
> and 10 MB was still free prior to hibernation,
> wouldn't the hibernation zone only occupy
> around 22 MB?
No, it has to allocate enough space to deal with a worst case
scenario. And the BIOS can't tell how much memory your OS has
allocated. It can't be expected to understand internal data structures
of every possible OS, and the operating system may not even have existed
at the time the BIOS was designed.
Also, you don't want to have to re-format the disk just
because you have added more ram, so if reserves space for the maximum
amount of ram your machine can take. For the 100CT, it comes with
32Mb and can expand to 64Mb, so a minimum of 64Mb is reserved.
> > It is all
> > done by having the Libretto bios lie about the real
> > drive
> > capacity, so if you don't have a libretto install
> > disk, any dos
> > boot floppy should do.
>
> If I use IBM Disk Manager to detect
> the whole 12 Gig instead of the problematic
> 8 Gig limit, I dont think the Libretto BIOS
> will be "lying" about anything at that point.
> If anything, the BIOS will not know where
> to hibernate if I dont leave it with the
> correct location and correct size.
I don't know anything about IBM Disk Manager, but if it can create
partitions based on true disk geometry rather than what the BIOS
reports, then it probably will have the same effect as partitioning
on a desktop. That is, no space will be left, so hibernate will
not work. (or will overwrite your data, if the BIOS is really dumb).
> > You should only need to worry about it if you plan
> > to do the rest of
> > the install external to the libretto. If you do the
> > install entirely
> > in the libretto, is should all be transparent.
>
> I'm not sure that the process will
> be "transparent" if IBM Disk
> Manager uses up 100% drive capacity
> and you format the whole thing.
> Regardless of whether you do an internal
> or external (outside the libretto) install
> disk setup and program installation.
>
> Again, any meaningful and logical
> discussion is welcome and much
> appreciated. Thanks.
Yep, quite right. It would only be transparent if you fdisk using
the BIOS, and the BIOS limitation which I was not aware of means
you can't do that without cutting back to 8Gb.
Given that the BIOS must handle hibernation without any knowledge
of the OS you are running, the only information it would have to
hand would be its own idea of drive capacity (8GB) and whatever
the FDISK partition indicates.
Either it looks at the FDISK information, and assumes there is
enough space after the last partition, or it compares the BIOS
capacity with the amount of space used by the partitions.
The former strategy would mean you could use a third party formatter
to create partitions up to the full capacity of the disk, minus the
required 64Mb (as determined by seeing how much space was left on
your old drive using on of the Unix tools or maybe a third party
Windows app). But it would also mean the BIOS ends up doing ugly
things when you havn't left that space free.
If the BIOS uses the second strategy, I would expect it to decide
not to try hibernating if it sees the last partition extend beyond
its idea of the end of the disk.
Another possibility is that it doesn't use the FDISK partition information
at all, and just assumes the last 64MB's are free. I would hope that it
doesn't do this, because this is the method that would resuld in data in
the middle of your disk getting overwritten.
There are some operating systems, like Plan 9 from Bell Labs, which let
you install them *after* the four FDISK partitions. This technique would
let you make use of extra capacity invisible to Windows or the BIOS,
and free of FDISK partition limitations.
Other than that, some experimenting is required to see what the BIOS
does. I'll let you know whan I get a drive and work it out, if someone
else hasn't done it first. It will be quite easy to do under Unix.
The 8GB limit has reduced my expectation that it is going to
be somthing sensible :-/
Regards,
DigbyT
--
Digby R. S. Tarvin [EMAIL PROTECTED]
http://www.cthulhu.dircon.co.uk
**************************************************************
http://libretto.basiclink.com - Libretto mailing list
http://libretto.basiclink.com/archive - Archives
http://www.picante.com/~gtaylor/portable/faq.html - FAQ
-------UNSUBSCRIBE-------
mailto:[EMAIL PROTECTED]?subject=cmd:unsubscribe
--------UNSUBSCRIBE DIGEST------
Use above but add DIGEST to the subject line...
**************************************************************