I am very new to Hackintosh and now I am studying the boot process.
As far as I know:
- efi binary is a "byte-code" that UEFI firmware runs
- kexts is the kernel mode device driver that is complied in machine specific code, loaded by the kernel, running in kernel mode with the kernel
- kexts injection is like the dynamic loading of library but in kernel mode
My question is, why there is some relationship with the bootloader like chameleon/clover and the kexts? The kexts should be loaded by the kernel but not the bootloader, right?
I see thing here. http://cloverboot.weebly.com/kexts.html?bcsi_scan_50b5cc4d2c82cc03=bG/X91Fwptz2CvnL0WdFPvjdTdWsAAAAioMalg==&bcsi_scan_filename=kexts.html
Say Hackintosh needs FakeSMC.kext. But it is not the business of the bootloader. What bootloader needs to do is to put the init code of Mac OS kernel in memory and passes the control to it. And it should be that Mac OS kernel loads that FakeSMC.kext.
Isn't it?