Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

UEFI provides an interface to register code that runs in SMM, true.

SMM being a requirement is a side effect of x86 history and platform design, not UEFI (which doesn't actually require SMM).



UEFI Secure Boot requires SMM (because it secures access to the key vault). Non-x86 architectures use something else, for example they could use EL3 on ARM. Either way it's a "super-supervisor mode" of sorts.


Well, it does not have to be SMM that does it - it's just that SMM is what we have already available so unless you have certain rare hw it's what vendors will use :(


I don't think SMM requires UEFI, either, actually... I believe there have been BIOSes that initialized SMM also.


Indeed. SMM exists because it was unfeasible to require the OS to provide necessary power management features at a time when running DOS and unmodified Win2.x and Win3.x were crucial features.

Thus 386SL was born, with SMM mode so that the firmware could hijack DOS without being stopped by accidental modification of interrupt table.

A bunch of stuff was later loaded into SMM for various reasons, both more and less benign. Turion X2 CPUs used SMM resident handler to synchronise cpus when going into deeper sleep levels (iirc C3 required the SMM handler, C1 and C2 were doable without, but C1E required it as well)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: