Eli5 – What is a BIOS in computers?

373 views

Basic Ingoing-Outgoing System (IIRC) but what does it really mean?

In: 32

9 Answers

Anonymous 0 Comments

The name is mostly historic – today it’s the legacy “boot rom” which contains code that makes the CPU initialize all parts of the hardware including making access to storage devices possible so you can boot your OS. Today uEFI has taken over but it’s often still called the BIOS even though well, it’s not even though some functionality is shared like getting the hardware initialized so a boot of an OS can be done.

Back in the really old days (1980ies) where we used chisels instead of keyboards, PCs were even more primitive. The “OS” like MS DOS didn’t really have all the code needed to access hardware, so the BIOS would be called by MSDOS to read from the drive, access the parallel/serial port for printers etc. – with the onset of OS/2 and Windows 3.x/Win95 that changed and where game-developers in the past would bypass the BIOS, the OS now did it all and the BIOS was only used to prepare the hardware for booting the OS.

The BIOS code was (is) extremely dumb/basic. Partly because there’s very little room in memory during POST so you cannot add a lot of advanced stuff – but hardware manufactures found a way by making the Bios an OS and making it load extensions into memory like your OS does – and presto you had pretty GUI ‘bios’ screens to configure everything, see fan speed, temperatures etc. However, getting to this point still requires the very small and dumb code. As a result virus creators found it to be an easy way to own your computer – destroying it and doing other nasty things with it. In those days it was very common to get a floppy or CD from “a friend” with some cool software on it, and if you happened to turn on the computer with that in the computer, it would try to boot on it, and the dumb BIOS would load anything that looked like a boot program. Including VIRUS “bios” code. UEFI was created to counter that – and was immediately abused by MS to ensure only microsoft branded OSes were allowed to boot on the hardware – today Microsoft is still signing all keys including those that allow Linux to boot – it good to be the first so you can control the market legally I guess. That’s to say, that unless the OS presents/matches an approved key it’s not allowed to boot with UEFI. A lot smarter than the BIOS ever was. Of course if you turn that off you’re back to the dumb “I don’t care what you load” method of the old BIOS.

You are viewing 1 out of 9 answers, click here to view all answers.