Showing posts from February, 2016

Starting with UEFI with CMake and VirtualBox

In the beginning there was the BIOS and every OS had to switch from real mode to protected mode. Basic services where provided via interrupts with an interface whose principles were grounded in the '80s and before. As a fact of the introduction of the Itanium platform there was an effort in defining a new boot level interface capable of supporting more functionalities and a solid interface: Unified Extensible Firmware Interface (UEFI). UEFI grew fast and now the last 2.7 account for 2700 pages.

Some time ago I played with boot procedure and the switch to 32-bit flat address protected mode (PitOS in 2002), and then I have been curious on testing the UEFI capabilities. In this post, and the associated github repository (uefiboot) I wanted to build a UEFI application using CMake and test it in both QEmu and VirtualBox.

In the conclusion I report the possibility of multiprocessing using UEFI.