Discussion Does firmware drivers get completely replaced by OS drivers after boot in OS X and Windows?

Status
Not open for further replies.

Rodion15

Distinguished
Sep 11, 2011
760
7
19,015
To my knowledge, when an OS such as Windows 8.1 is booted, all firmware/bios drivers are replaced by more appropriate OS drivers. I learnt this happens for the latest versions of Windows. Am I right? Do all bios drivers get replaced? Does this happen with the latest versions of OS X as well?
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360
@rodion15: You forgot about (U)EFI. One should also note that there's a difference between BIOS and (U)EFI. Firmware runs very, very low-level, whilst drivers provide an interface for the OS. They may seem similar, but I can assure you that they're not one and the same. As you posted in the OS X section, I assume you have a Mac at your disposal; provided this is the case, you can get a fairly good idea of what's going on at startup by using the verbose option (Command-V).
 

McHenryB

Admirable
Even when booted via EFI an OS will supply it's own drivers. Apart from anything else it means that the OS can improve the drivers via software updates. Changing the firmware (BIOS or EFI) can be a more involved procedure, as an error can brick the computer, and is probably best left to the hardware manufacturer rather than the OS developer.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360
(1) An OS does not always supply its own drivers. In fact, in the good ol' days it was quite a pain to get certain devices to work properly.

(2) The OS is not primarily responsible for the automated management of driver updates and/or distribution. This is because driver development is not necessarily the obligation of the OS developer. It is the "chief" developer's responsibility -- whomsoever it may be -- to make sure the drivers work with the OS, not the other way around.

(3) The OS tries its best to use the most appropriate driver for a device, but this doesn't mean it will always be the best one. For example, in the early 00's, some of the older drivers for Nvidia GPUs provided better performance than the "current" ones available at the time for slightly older hardware models. The OS developer doles out an automated manager (not always the case) which operates on assumptions made; and, not always do these assumptions lead to the optimal solution.

(4) Drivers aren't always loaded up at boot. I've written various Linux drivers and Kexts and loaded them without restarting the machine.

(5) I brought up (U)EFI because it wasn't stated in the original post of this thread, not because it's "special."

(6) Firmware is developed by the hardware manufacturer or is outsourced to some party to write it for them. OS developers can't do this because they aren't privy to the closed and proprietary knowledge concerning the insides of the device (unless otherwise spoken for). Sure, they could try, but doing so would invariably mean reverse engineering things, and not many companies would be very happy about such undertakings.
 

McHenryB

Admirable
The OP mentioned "firmware" as well as BIO. EFI is just that, firmware.

I can assure you that OS developers do write hardware drivers (OS development is my hobby). An OS isn't going to get far without drivers for standard hardware such as keyboard, basic video, data devices, USB devices, network cards, etc., which are very well documented. Accelerated graphics drivers are very much the exception.

No-one (except you) made any reference to all drivers being loaded at boot.

Back on topic, the answer to the OP's question (assuming he is not asking about obsolete OSs like MS-DOS) remains that the OS replaces the firmware or BIOS drivers with its own ones.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360
(1) Please carefully re-read the original post, notably the words "IS BOOTED, ALL" in the first sentence.

(2) Please re-read my posts and take notice of the words called "qualifiers." This means words/phrases, like, "always" and "not always."

(3) The OS doesn't replace the firmware with its own firmware. If this were the case, then devices would get bricked all the time. Firmware runs at a lower level than drivers, period.
 

McHenryB

Admirable
Whatever. Do yourself a favour and read up a little about how OSs work. "Mac OS X Internals" is a good starting point. Really, I'm not bothered if you understand or not, just as long as the OP has the answer to his question.
 

itmoba

Reputable
Aug 14, 2015
768
0
5,360
(1) If you'd actually read the book, you'd know, for example, that some of the content addressed is deprecated stuff. Oh well, I guess you never did read it.

(2) The OP uses the words "such as," meaning "for example." I've used words called qualifiers, which you've flagrantly ignored. Is english your native-tongue?

(3) What do you not understand about the difference between firmware and drivers? They're not the same.

(4) You just admitted in your prior post that GPU drivers, for example, don't fit the MO. Again, please place careful attention to qualifiers (as stated above).

(5) Your last post is an ad-hom, and I don't know why you're trying to turn this into some caustic fracas.
 
Status
Not open for further replies.