Does anyone have any tricks for reducing boot times by modifying BIOS/UEFI? My current one is to delete all PCI Option ROMs that are not used(LAN, RAID, VBIOS) as well as images(OEM logos and such). I noticed that one of my laptops had a UEFI BIOS(can be opened with MMTool Aptio) but it does not support Fast nor Secure Boot. I also found a UEFI BIOS for a friend's computer(also can be opened with MMTool) that does support Fast Boot. Anyone know of a way that this feature can be backported? Or any other tricks in general.
Deleting option ROMS to improve the boot time. I never thought about it this way, hehe. Would be interesting to know. Wouldnt you need to add a lot of "free space" then, so that the BIOS will keep the same size as the original one ? p.s. Would Windows be influenced by the deletion of Option Roms, for example LAN ? Or would this only affect the boot event itself ?
I use tools like MMTool and CBROM to remove the PCI Option ROMs. After looking at the resulting files, it seems that the tools write 0xFF bytes in their place. Windows is not influenced from what I've seen. Just the BIOS time. I wonder if adjusting the place of the various modules within the BIOS can make a difference. eg. putting all of the 0xFF bytes at the end of the .bin file and the useful stuff at the front.
It might be risky to fiddle with the module's positions, some have fixed 'entry' points and will crash when moved. At the moment when the BIOS is decompressed, verified and mapped (practically already before the 'beep') the position of the modules (if at all) does not affect anymore the bootime. This process is very fast already, one loses bootime when the BIOS operates already, means code that initializes the hardware takes its time. To disable unused on board devices saves most of boottime. Fast boot skips code that checks even more hardware and / or prints on screen. To set the device that mostly should boot first to boot priority 1 might also gain a few milliseconds. To implement a feature into BIOS that is not there already (but hidden) is almost impossible and needs a lot of detailed and board specific knowledge.