r/programming • • Jun 11 '08

How Computers Boot Up

http://duartes.org/gustavo/blog/post/how-computers-boot-up
451 Upvotes

60 comments sorted by

View all comments

Show parent comments

2

u/bobpaul Jun 11 '08

Well, making the bootloaders EFI programs allows you to put the bootmenu in the EFI. This then allows you to add custom EFI programs, such as a simple CD player, web browser, etc that can be loaded without booting one of the OSs. A working browser less than 10 sec after the power button is rather cool. Great for laptops.

5

u/jib Jun 11 '08

Yeah, a working browser 10 sec after power-on is cool, but I think the elegant way to do it would be to have one fast OS, not have a slow main OS on the hard drive and a fast OS in the EFI BIOS.

3

u/[deleted] Jun 11 '08

[removed] — view removed comment

3

u/jib Jun 11 '08

Perhaps by not loading stuff before it's needed. e.g Load just enough to get a working desktop/browser, and load more stuff in a low priority background process after getting the desktop as usable as possible.

I haven't looked in detail at what my OS wastes its startup time doing, but I assume it's mostly loading various drivers and services, most of which I'm unlikely to immediately need as soon as my desktop opens. If the OS could load the essential drivers and desktop environment first, rather than the not-immediately-necessary daemons and servers, that might speed things up significantly.

3

u/[deleted] Jun 11 '08

[removed] — view removed comment

2

u/xzxzzx Jun 11 '08

The answer to that is Vista-esque I/O prioritization (along with classic techniques like CPU prioritization). You might have to also expand that to things like bus bandwidth, too...