Firmware is a program that is built into a piece of hardware such as a keyboard, hard drive, BIOS, or video card. Firmware is designed to give permanent instructions that allow it to communicate with other devices in a system and perform functions such as basic input/output tasks.
What is it for?
Firmware has the function, but differs in the way it is stored on the hardware device itself while drivers are installed within the operating system. Also, the firmware can boot on its own and do what it is programmed or designed to do while the drivers must be executed by the operating system.
The first thing that comes to life after turning on the computer is the BIOS. It can interact with hardware and check for unknown errors. It then points to another program called a bootloader that does the job of waking up the operating system on the hard drive and putting it into random access memory. Therefore, BIOS is primarily responsible for managing your computer’s hardware components and ensuring that they function properly. Although good, low-level software has remained almost unchanged for the last two decades, and because of this, it is now becoming outdated and unsupported by modern technologies. For example, the BIOS still uses 16-bit code, while most laptops and PCs run 32-bit and 64-bit code.
EFI, short for Extensible Firmware Interface, is a specification for a new generation of system firmware that provides the first instructions used by the CPU to the boot hardware and passes control to the boot loader. EFI, sometimes also known as Unified Extensible Firmware Interface (UEFI) has certain advantages over BIOS. For example, it helps ensure that your PC boots using only software trusted by the PC manufacturer, i.e. it supports a feature called “Secure Boot” to enhance security.
Knowing your computer’s BIOS version can help you find out if you have the latest firmware version. On Windows computers, you can get the firmware version information using the command prompt. Alternatively, you can use an update wizard for your device.
A computer may also contain other types of Firmware (in addition to BIOS and EFI). Network cards, video cards, raid controllers, hard drives, flash drives, SSDs, and sound cards (just to name a few) can have embedded firmware.