Subject: re: Swap beginning with cylinder 0
To: None <tech-kern@NetBSD.ORG>
From: der Mouse <mouse@Collatz.McRCIM.McGill.EDU>
List: tech-kern
Date: 05/24/1996 08:36:05
>>> This does use up a partition, which brings up something I've been
>>> wondering about awhile: why do we have a limit of only 8
>>> partitions? And how much grief would it be to expand this to, say,
>>> 16?
>> It would be completely impossible for boot disks on ports that are
>> stuck with compatability disklabels for their boot disks...like my
>> favorites, the sparc and sun3 ports, where the boot disk's label has
>> to be acceptable to the ROMs.
>> Also, at least the sparc and sun3 compatability labels force you to
>> begin partitions on cylinder boundaries.
> How about for systems that don't need to be compatible with anything?
Well, they're fine. But observing that an easy solution exists for a
part of the problem doesn't do anything about the rest.
The distinct partition way does strike me as a good way, except for
compatability problems. There certainly is plenty of conceptual
ugliness in tucking the boot area in a "hidden" 8K space before the
superblock in a filesystem, and kludging up the swap code to also hide
that 8K space. But compatability needs thought.
Returning again to the sparc and sun3 ports, a boot disk _must_ have a
Sun-compatible disk label in sector zero. However, this label does not
have to describe anything except the boot partition, and even that does
not have to be described accurately if you're using bootblocks that
understand the NetBSD disklabel...I think. (The bootblock can use the
Sun label's c partition for all I/O if necessary.)
If there is no NetBSD label, then of course you have to do the best you
can with the SunOS one...but there's no reason you couldn't synthesize
label and boot partitions when generating the fake label. They'll
overlap the a and c partitions, but there's nothing wrong with that.
der Mouse
mouse@collatz.mcrcim.mcgill.edu