Discussion UEFI? There's something above that! (CnC interview of Oxide CTO)

Jul 27, 2020
23,794
16,670
146
Interesting details of a system's bootup process revealed!


A big problem that we have with the BIOS, is that the BIOS has to boot the system in order to boot the system.

So one of the things the BIOS has to do... it needs to find like, how do I boot this thing? I need to actually do I/O, to pull a boot image off of somewhere. I/O, as we know, everything's complicated... you can't just like "do I/O", like, we actually have to bring up PCIE engines, you have to bring up all the CPUs... so you're doing all this work to boot the system, and then you find the image you want to boot, and now you have to be like, "okay, now we have to pretend like we were never here".

So it then tries to- we call it "setting the machine backward", where it makes the machine *look like* it has not been booted, when it executes that first operating system instruction. But in reality an *entire city* has been constructed, and ploughed under; and the operating system can actually see the artifacts of that over time. There's something called System Management Mode, SMM…
BRYAN: Speaking of the BMC, we also threw that into the sea!

I think the interview could've gone an hour more. That guy gets into the nitty gritty details!
 
Reactions: adamge

zir_blazer

Golden Member
Jun 6, 2013
1,215
507
136
On both Intel and AMD you have the ME and PSP that do some work before the actual Processor even begins to load and execute the earliest stages of the Motherboard Firmware. In Intel, if Boot Guard is enabled (In server board and notebooks it generally is), the ME checks if the Firmware image is signed as part of a Hardware Root of Trust. In AMD, the PSP initializes the Memory Controller so Processor has access to RAM inmediately, which is something new on x86 since you had to rely on other techniques like Cache-as-RAM to have some scratch memory (Besides the x86 General Purpose Registers) for the Processor to initialize the Memory Controller. And nothing of what I said includes if you have a BMC for out-the-band management (If it is a Server boards, it HAS a BMC), since it can actually be used for Root of Trust purposes and check the Motherboard Firmware before the Processor gets initialized.

UEFI is best seen as a kind of API. You have PCIe cards with Option ROMs that has UEFI complian Firmware Drivers for it to make use of, along with a kind of Boot Loader specification, like which parameters and system status UEFI is passing it. If you don't need full UEFI (Or BIOS for that matter, since it is also a kind of API and Hardware Abstraction Layer), you can have Firmware do minimal Hardware initialization so you can load an OS then let the OS itself to finish it, which is exactly what LinuxBIOS (The original one, not the current one) intended to do with Linux before it became Coreboot and compatible with BIOS and UEFI payloads. You can still use it like that, but average end user needs a drop-in UEFI replacement, not something that has a very specific niche usage (Justificable if you have hundreds of identical systems, of course).
 
Reactions: igor_kavinski
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |