GPT boot loader?

Ivan Voras ivoras at fer.hr
Tue May 22 07:57:54 UTC 2007


Hi!

I've had the opportunity to talk to Adam Martin, Marcel Moolenaar and
Peter Wemm about making GPT bootable, but not all of them at the same
time, so I'd like this thread to be the meeting point on the subject.

(Adam and Peter have offered to modify the boot loader chain, but
differently.)

Summary:

The idea is to replace bsdlabels with GPT. The problem is that GPT is
intended to be used with EFI and not to be bootable by regular BIOS
machines. For FreeBSD, there are two distinct cases:

1. the machine is GPT-only, there are no other MSDOS and bsdlabel partitions
2. the machine is dual-boot or has some other need to retain MSDOS
partitions.

The second case is more convoluted as it means the MBR will hold a
regular MSDOS partition table, and one of those partitions will hold a
GPT - which is trivially done with GEOM but completely non-standard.

The problems:

On EFI based machines this firmware deals with partition issues so
there's no problem, but BIOS machines will probably need some tweaking,
up to the point of using more-or-less nonstandard GPT format.

GPT details are available here:
http://technet2.microsoft.com/windowsserver/en/library/bdeda920-1f08-4683-9ffb-7b4b50df0b5a1033.mspx?mfr=true

and some useful tips are here:
http://developer.apple.com/technotes/tn2006/tn2166.html

Some of the breaking points are small "details" such as the requirement
that the protective MBR be marked non-bootable, that there's no
"bootable" flag among the official flags, and that the fields in the GPT
are supposed to be disk-absolute (which is not a problem on FreeBSD but
may be on other systems).

Full support for GPT will require modifying boot0..boot2 but also the
loader executable (since it parses UFS).

I'd like to hear more from Adam and Peter (and others!) about their ideas...

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 250 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20070522/253def58/signature.pgp


More information about the freebsd-hackers mailing list