Diit.cz - Novinky a informace o hardware, software a internetu

FreeBSD dostane podporu UEFI i Secure Bootu

Linux FreeBSD
Jsou věci, ve kterých má FreeBSD nemalý skluz za Linuxem a UEFI a Secure Boot jsou zářnými příklady. To se ale doufejme v dohledné době změní, FreeBSD Foundation totiž udělila grant jednomu z vývojářů...

Benno Rice tak bude primárně pracovat na podpoře UEFI ve FreeBSD. Zavaděč by měl být schopen běhat s UEFI na platformě amd64, tedy být schopen běhu jakožto EFI aplikace. Plus budou odstraněny zastaralé závislosti na BIOS kódu a celkově bootloader pročištěn a aktualizován. Práce na tomto projektu by měly být dokončeny ještě v průběhu tohoto měsíce.

Stav podpory UEFI:

64-bit UEFI loader
Make libstand build natively as 64-bit on amd64. Complete
Adjust non-EFI boot code to use /usr/lib32/libstand.a. Complete
Add bits to build 64-bit loader.efi. Complete
Make sure that loader.efi can actually load a kernel and hand off to it. Complete
Pass ACPI table information to kernel via hints. Complete
Clean up loader.efi to propery exit UEFI. Complete
Clean up loader.efi to allocate memory properly. Complete
Test that the other boot code still actually works. Not started
Boot amd64 kernel
Work out how to pass the memory map from EFI to the kernel. Complete
Work out why syscons isn't working. Complete
Write an EFI framebuffer driver. Complete
Work out why kernel hand-off doesn't work work on systems with >1GB of RAM. Complete
UEFI-compatible install media
Work out how exactly CD/DVD boot under UEFI works. Complete
Create a UEFI boot image and attach it to an ISO image. Complete
Allow loader to see CD filesystem once booted from CD. Complete
Glue UEFI boot logic into the distribution build. In progress

Další dobrou zprávou je to, že Benno pracuje i na podpoře Secure Bootu. Ta je zatím v plánovacím stádiu, jedná se o komplexnější problém. FreeBSD Wiki konstatuje, že loader shim od Matthewa Garretta (bývalého zaměstnance Red Hatu) je licenčně kompatibilní s BSD licencí, takže jej FreeBSD může jako first-stage loader pro načítání svého vlastního loaderu použít. Do FreeBSD ale ještě musí být dodělána infrastruktura pro podepisovaný kód a schopnost ověřovat signatury loaderu a také modulu uvnitř kernelu. To bude vyžadovat i modifikaci či odstranění některých rozhraní ve strukturách jako /dev/mem.

Stav podpory Secure Boot:

Secure boot, unrestricted runtime
Acquire FreeBSD signing key Not started
Port shim loader Not started
Add mechanism to sign loader.efi Not started
Work out to what extend loader.efi needs to be locked down, including forth code Not started
Add documentation on creating and enrolling custom keys Not started
Add tools for signing loader.efi and shim Not started
Secure boot, restricted runtime
Add tools for signing kernel and modules Not started
Add code to loader.efi for kernel and module signature verification Not started
Add code to kernel for module signature verification Not started
Add code to kernel for prevention of user-initiated DMA Not started

 

Zdroje: 

David "David Ježek" Ježek

Bývalý zdejší redaktor (2005-2017), nyní diskusní rejpal.

více článků, blogů a informací o autorovi

Diskuse ke článku FreeBSD dostane podporu UEFI i Secure Bootu

Žádné komentáře.