Something I’ve wanted to do for sometime was to boot FreeBSD on my MacBook via EFI. EFI is a firmware standard for BIOS and OS writers to deal with. Basically, it replaces the good old MBR booting scheme and is capable of much more, namely, all the real mode restrictions are gone, TCP support in the firmware and, if you write a driver, you can have UFS, ZFS, whateverFS support on the firmware itself
Apparently, I couldn’t make it work for last years’s Summer of Code, but now something works.
I was able to boot loader.efi on my MacBook and see a “FreeBSD/i386″ boot message. Yay! Unfortunately, there seems to be a bug in (probably) the FORTH library and it sometimes hangs or, if it doesn’t hang, it displays a lot of garbage.
So, you have a MacBook and want to try this out? Great! Here’s the procedure:
- Grab loader.efi from http://people.freebsd.org/~rpaulo/.
- Install rEFIt.
- Copy loader.efi to, for example, /efi/freebsd/loader.efi.
- Reboot and select loader.efi from the rEFIt boot menu.
Don’t expect nothing fancy though.
UPDATE: the bug is not in the FORTH library as I originally though.
This is interesting work. Is your loader.efi built from the stock FreeBSD tree or did you apply any modifications? If so, can you post patches?
The development is happening in the FreeBSD perforce tree at //depot/projects/efi.
I’ll post patches after fixing some bugs.
Thanks.
Pingback: User links about "bios" on iLinkShare