Introducing
Your new presentation assistant.
Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.
Trending searches
bootsect.o
setup.o
{head,misc}.o
Encapsulated in Portable Executable file (PE)
Easy development possible thanks to gnu-efi
Sample application:
Since linux 3.3
gnu-efi is for noobs
hand-made PE headers
Three types of application:
Services implement protocols (drivers) and handles (devices)
Apps stored on EFI fat32 partition of type 0xEF
Boot manager using NvRAM:
Boot order defaults to:
Editable via `efibootmgr` and efivars or efivarfs modules
EFI_STATUS efi_main(EFI_HANDLE image_handle, EFI_SYSTEM_TABLE *systab)
{
SIMPLE_TEXT_OUTPUT_INTERFACE *conout;
InitializeLib(image_handle, systab);
conout = systab->ConOut;
uefi_call_wrapper(conout->OutputString, 2, conout, (CHAR16 *)L"Hello World!\n\r");
}
echo "CONFIG_EFI_STUB=y" >> .config
make -j8
mv arch/x86/boot/bzImage /boot/efi/EFI/bzImage.efi
cp /boot/initramfs-linux.img /boot/efi/EFI/initramfs.img
reboot
bzImage.efi root=/dev/sda2 initrd=EFI\initramfs.img