50

Could anyone elaborate on the differences between BIOS and firmware please?

3
  • 27
    BIOS is firmware. There are other firmware besides BIOS.
    – Ramhound
    Feb 19, 2015 at 12:02
  • 1
    @FlakDiNenno - We will never know since the author asked short questions within a comment.
    – Ramhound
    Jan 11, 2019 at 3:37
  • @Ramhound yeah, I realized after the fact that this was quite a while ago. I appreciated your attempts and trying to understand what he was saying... and I thought it might just be a slight language barrier. cheers Jan 15, 2019 at 18:26

12 Answers 12

50

As others already stated, BIOS is the specific name for the (motherboard) firmware in older PCs. New computers these days have a technically somewhat different kind of firmware which is called either EFI or UEFI.

Please note that any computer will contain, besides the BIOS (or EFI or UEFI), also other firmware. Network cards, video cards, RAID controllers, hard drives, flash drives, SSDs, sound cards, just to name a few examples, can all have firmware embedded inside the device.

Weirdly enough, the firmware of a video card is often called the video BIOS. This is technically incorrect. BIOS is appropriate only for the startup firmware of the motherboard itself.

6
  • 19
    "BIOS is only appropriate for the startup-firmware of the motherboard itself." -- That's modern usage. On the original IBM PC running MS-DOS or CP/M-86, the BIOS provided the device drivers, as its name indicates, for he basic peripherals. And the video-BIOS provided the driver for the frame buffer. The name was not "technically incorrect" as you assert.
    – sawdust
    Feb 20, 2015 at 2:42
  • 3
    "Weirdly enough the firmware of a video-card is often called the video-BIOS. This is technically incorrect. " --> In my opinion, a graphic card is basically a second computer. It has it's processor, it's inputs, outputs, power source (most of the time), it's own RAM memory and even has it's own firmware,'operating system' and (yes!) BIOS. Some card even do POST to check it's memory and if it is functioning properly! With this information, it is technically correct to say 'video-BIOS'. Feb 20, 2015 at 9:57
  • 1
    The "video BIOS" is code that is executed by the main CPU (x86), not by the video processor. By the way: Simple on-board graphics still does not contain any processor executing code. Feb 20, 2015 at 14:49
  • "Thats modern usage" - Modern Linux distributions still call BIOS functions when there is no Linux driver for the graphics card available! So calling the BIOS when the OS is running is still done in some cases in modern operating systems. Feb 20, 2015 at 14:51
  • 1
    I think video BIOS would comply as correct since the video cards today do have (faster) RAM and (more powerful) PUs (than a MB). So the video card is actually a specialized MB.
    – Overmind
    Feb 25, 2015 at 11:59
36

So, BIOS is firmware for computers.

As you continue to read about computers, you will get the picture of BIOS, UEFI, EFI and so on.

The BIOS an acronym for Basic Input/Output System and also known as the System BIOS, ROM BIOS or PC BIOS) is a type of firmware used during the booting process (power-on startup) on IBM PC compatible computers.The BIOS firmware is built into PCs, and it is the first software they run when powered on. The name itself originates from the Basic Input/Output System used in the CP/M operating system in 1975.

Firmware is the combination of persistent memory and program code and data stored in it.Typical examples of devices containing firmware are embedded systems (such as traffic lights, consumer appliances, and digital watches), computers, computer peripherals, mobile phones, and digital cameras. The firmware contained in these devices provides the control program for the device.

3
  • 15
    In other words, BIOS is a firmware the same way the square is a rectangle. Kind of the same, but more specialized. Anyway, It would be a good Idea to drop using word BIOS in any case except for pre-UEFI PCs. But we'll see. Language is a very unpredictable beast...
    – AcePL
    Feb 19, 2015 at 12:06
  • 1
    BIOS is the bootstrap firmware that allows the computer to start up, find all those other interface firmwares, the OS storage (not necessarily a drive) and load the OS. From "pull yourself up by your bootstraps". Feb 19, 2015 at 23:10
  • Actually, while this answer isn't technically incorrect, it would be even more correct to say that the BIOS forms one layer in the CP/M model: BIOS below BDOS below CCP. The IBM PC and SCP's 86-DOS were most likely heavily influenced by the existing systems at the time, including CP/M (a design goal of 86-DOS was CP/M source compatibility after automatic source code translation for 8080 to 8086), and thus both the IBM PC and the prominent DOS for it (86-DOS became PC-DOS, later MS-DOS) adopted a similar architecture.
    – user
    Feb 20, 2015 at 12:43
11

Firmware is a generic name for all the software that is embedded on non-volatile memory. BIOS is stored in ROM, so it is firmware.

7
  • What else is firmware for example? Feb 19, 2015 at 20:17
  • 3
    Any non-volatile memory stored program routines used by any microprocessor or fpga in any motherboard subsystem or peripheral. Feb 19, 2015 at 23:12
  • 3
    The OS of a home router or a Blu-Ray Player are good examples of firmware, Even nowadays your TV has firmware.
    – jcbermu
    Feb 20, 2015 at 8:21
  • 1
    Note that nowadays some firmware is located on a hard disk drive, typically in consumer products such as HDD recorders or home network storage. Feb 21, 2015 at 22:34
  • @FiascoLabs what about Atari/Nintendo/Sega cartridges, programs on non-volatile storage; do they qualify as firmware?
    – SAFX
    Feb 22, 2015 at 0:09
3

Bios - a specific type of firmware which is responsible for coordinating how your other devices (and firmware) talks to your OS. Bios can also be wielded by the user to dictate what sort of startup options (and the 'behaviour' of certain components, like RAM, CPU, GPU, etc) are run when you turn on the computer's power. Bios starts up first, before anything else, when you power on the computer.

Firmware - this is a more general term referring to the pieces of code that talk to your devices and tell the Operating System how is supposed to function with said devices.

Hopefully this is a decent broad level breakdown for those who are very new to the scene. ;)

3

The BIOS came about in the early days of LSI (Large Scale Integrated) Chips. It was really a mini operating system and had hooks for system programmers to use. For example outputting a character to some device. Firmware is a generic term for embedded software (and its included data) to run something. System controllers in large computer systems that control power up etc have a mini operating system (typically a mini linux) that's referred to as firmware. These terms are somewhat interchangeable but the firmware downloaded to a computer motherboard is referred as BIOS. Firmware downloaded to a video card can be referenced as BIOS as well.

Hope this helps.

2

Firmware is held in non-volatile memory devices such as ROM, EPROM, or flash memory. Non-volatile memory chips were / are used to ensure the information stored persists even when power is removed. The information stored could be data containing settings used to operate / identify a device, or software that executes functions in the device hardware.

BIOS is the main firmware required by PCs primarily to identify the components connected to the motherboard. An example of such a component is the primary internal hard drive.

Early PCs used ROM (read-only memory) chips for BIOS which could not be altered without replacing the ROM chip. ROM memory chips were later replaced by EPROMs (erasable programmable ROMs), and currently BIOS is stored in flash memory chips, both EPROMs and flash memory can be flashed and upgraded.

Firmware in non-PC devices may be upgradeable depending on the complexity of the device and decisions made by the manufacturer. More and more pieces of hardware have upgradeable firmware these days than in the distant past.

1

Maybe a BIOS is to firmware as a square is to a rectangle, but the first question should be what is a firmware to software?

I think firmware used to exist as something very specific. Some chip, for example, that was programmed once, and stayed in that original configuration forever. Just being, unchanging, firmly.

But what's like that these days? Are BIOSes still deployed on ROM chips? Do the things we think of as firmware have firmware-like qualities which distinguish them from software? Do firmware updates require professional servicing?

So I think the answer to the first question is that firmware is to software, as software. So BIOSes are also software, firmware or not.

BIOSese were once firmware. The other answers offer more about the BIOS and shed light on why that would be, but I just wanted to highlight the firmware misnomer.

10
  • "I think firmware used to exist as something very specific" -- The origin of "firmware" is because it existed between the hardware and software. It has nothing to do with its "Just being, unchanging, firmly". See superuser.com/questions/299442/…
    – sawdust
    Feb 20, 2015 at 2:36
  • @sawdust I should have said unmodifiable. Feb 20, 2015 at 2:48
  • That's wrong too.
    – sawdust
    Feb 20, 2015 at 2:51
  • @sawdust Yes, it is if the original meaning was the middle ground between hard physical logic and software. Thanks for pointing that out, I like it. I really just wanted to point out the fuzzy meaning in the current usage Feb 20, 2015 at 2:57
  • 1
    @KorayTugay: I meant what I said. "Firmware" is a sub-category of "software". Feb 20, 2015 at 9:17
1

The "soft" in software came about in the early days when Computer programming was written via flexible material such as punch cards, floppy discs and reams of paper. The programs were in a soft, changeable state.

When a program got coded into a solid state hardware the program was in a "firm" or fixed state. Changing the program at this point required replacing physical piece of hardware.

1
  • 2
    Please read the question again carefully. Your answer does not answer the original question -- which asks about the difference between BIOS and Firmware.
    – DavidPostill
    Feb 25, 2015 at 12:37
1

(FIRM softWARE) Software instructions residing in non-volatile memory chips that hold their content without power. Firmware is found on computer motherboards to hold hardware settings and booting data (BIOS) and on myriad consumer electronics devices to hold the operating system or control program.

On devices with no hard drive, such as smartphones, MP3 players and tablets, flash memory chips also hold the applications and user data; however, in this case, they are called "memory" or "storage" and not firmware.

reference

-3

Well! There is no difference between BIOS & Firmware both execute set of commands to check,test and calibrate the internal&external attached hardware to the machine or computer.If it found any hardware not function to the desired value,it stop the machine or Pc and display the error code to fix hardware first.Inshort,BIOS (mostly use in PC) & Firmware (mostly use in all electronics controlled devices&equipment) and it make sure the optimum functionality of attached hardware and gives ideal working hardware platform to the operating system.Infact BIOS & Firmware play a role of interface between hardware and Operating system. I hope my logical answer will help you to understand the concept of BIOS & Firmware. Thank's

-3

There's no difference between BIOS and Firmware. BIOS is a classic example of a Firmware which is connected to the Motherboard. The Firmware is sort of an instructor or more like a controller. It controls the functions of the Basic Input/Output System(BIOS) such as communicating with the Monitor the Display.

2
  • But BIOS is software whereas Firmware is hardware? Feb 25, 2015 at 9:20
  • This seems to be incorrect. BIOS is a kind of firmware but most firmware is not referred to as BIOS. Feb 25, 2015 at 10:16
-3

Firmware is a code that makes a hardware inteface working and responding to system software and is placed below that interface but BIOS is code that configures and operates the hardware that is below itself and responds to higher system software.

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .