Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 06 Dec 2001 15:36:16 -0800
From:      Peter Wemm <peter@wemm.org>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        "Thomas P. Holmes [ Systems ]" <tholmes@thebiz.net>, Wilko Bulte <wkb@freebie.xs4all.nl>, freebsd-alpha@FreeBSD.ORG
Subject:   Re: disk slices 
Message-ID:  <20011206233616.67D09380D@overcee.netplex.com.au>
In-Reply-To: <15374.34369.492419.52249@grasshopper.cs.duke.edu> 

next in thread | previous in thread | raw e-mail | index | archive | help
Andrew Gallatin wrote:
> 
> Thomas P. Holmes [ Systems ] writes:
>  > Yes my box boots and I was able to recompile the kernel.
>  > 
>  > The df through me when I saw
>  > 
>  > da0a
>  > da0e 
>  > 
>  > and not
>  > 
>  > da0s1a
>  > da0s1e
>  > 
>  > 
> 
> The alpha port doesn't use slices (fdisk partitions) because the SRM
> console doesn't understand them & it cannot boot from them.  The alpha
> port has never used slices.
> 
> Drew

SRM doesn't understand disklabel partitions either.  All that SRM cares about
is the bootblock checksum, and that is it.

We really could implement fdisk partitions, but it would be in a fashion that
is not compatable with i386.

fdisk style partitions have block 0 being the fdisk / mbr sector, and the
rest of the first track empty.  The first partition starts at the next
track boundary (cylinder 0, head 1).  On FreeBSD we have block 0 used
for boot1, block1 used for the disk label, and block 2 through 15 for
boot2.  partition a (root) starts at block 16.

Alpha has a magic signature in the tail end of block 0.  Bytes 480-487
contain the (long) size of boot code, bytes 488-495 = starting sector,
and 496-503 = flags, and 504-511 = checksum of block 0.  block 1 - 15
contain the "boot1" image, and the disklabel cohabitates block 0.
(i386 has it in block 1 to make room for the boot code).

We cant just fit a mbr into block 0, because the fdisk table is *also* at
the end of the first block, and it would overlap with the boot info and
checksum.  We could read sliced disks on alpha, but not boot from them
unless we arranged to move the fdisk sector to block 1 instead.  It
probably wouldn't be worth it though.

The only real reason for doing it might be to get extra partitions beyond
[a-h].  But we can just as easily have a machine dependent raised limit
on the number of partitions in the disklabel.  We can easily fit double that
in i386 but I'm not sure how much room is left on the alpha with the 64 bit
longs there.

Cheers,
-Peter
--
Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au
"All of this is for nothing if we don't go to the stars" - JMS/B5


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011206233616.67D09380D>