What is firmware? It’s a class of computer software written in non-volatile memory that provides low-level control over the hardware. Examples of firmware include the BIOS or even whole embedded operating systems. To learn more about firmware, read this article, as here we delve into this topic in more detail.
Definitions of Firmware
We will begin our discussion by analyzing a few definitions of firmware to make up our own conclusion on what could be classified as it and what could not. Surprisingly, many anti-malware companies offer us such definitions, so let’s look at two of them first.
“Firmware is a type of software that provides machine instructions to a device’s hardware components, enabling it to function on a basic level. Because firmware is installed by the manufacturer and typically cannot be removed, it is sometimes referred to as embedded software.” (Buxton, 2023)
“Firmware is a type of software that is embedded into hardware devices to control their functionality. Unlike traditional software, firmware is not designed to be modified or updated frequently, and it is typically stored in non-volatile memory. It serves as a bridge between the hardware and software layers of a system, allowing the hardware to interact with the operating system and applications.” (Malwarebytes, n.d.)
Ben Lutkevich from TechTarget also has some insights and forms his own definition of Firmware:
“Firmware is software that provides basic machine instructions that allow the hardware to function and communicate with other software running on a device. Firmware provides low-level control for a device's hardware.” (n.d.)
Based on these three definitions, we may conclude what firmware is. It’s a type of simple software that is embedded into hardware and links it with other software. It is not designed to be modified or updated, as it performs only basic functions.
What Are the Types of Firmware
Simply understanding what firmware is at its core is not enough. There is much more to it. To fully comprehend the meaning of firmware in embedded systems, we need to explore the three different categories that firmware might fall into. Let’s take a look at them now.
- Low-level firmware – Stored in non-volatile, read-only chips like ROM, being uneditable, this type of firmware comes with just the essentials for hardware to run. Devices that use it operate on one-time programmable memory.
- High-level firmware – Stored on flash memory chips for easy updates, this type of firmware enables running more complex instructions.
- Subsystem firmware – This is the type of firmware most commonly found in embedded systems. It uses a microcode and is closer in similarity to a system, hence its name.
Firmware Examples
Having analyzed the definitions and different categories of firmware, we may now focus on its practical applications. For that, let’s see several examples of the most popular types of firmware that often help us on a daily basis.
- BIOS – Both bios and UEFI are a type of firmware most often used in general-purpose computers. Along with a bootloader, they are responsible for launching the operating system, protecting it from errors, and ensuring that it’s launched securely. (You can read more in our article: What Is a Bootloader? How Does It Work?)
- Computer peripherals – Graphic cards, video cards, and the like also contain a chip with firmware that makes it possible for them to work with one computer unit.
- Storage device drivers – Whether it’s a USB stick or a hard drive, every storage device is equipped with firmware: its drivers. It’s basic programming that makes it possible for these devices to work with a given PC.
- Embedded systems – Subsystem firmware might also be found in embedded systems – everyday devices and those used for industrial purposes. Unlike the previous examples, here, the most advanced firmware is used as it often serves a bigger purpose than in the previous examples.
What Is Embedded Firmware
When it comes to the embedded firmware, or simply the one used in embedded systems, it is more advanced for a reason. It is saved on a chip and serves the same purpose as ROM, though it might be updated for future interconnection with extra equipment.
Due to the simple nature of embedded systems, firmware often serves the function of the operating system, as it is capable of controlling the functions of a given device. This kind of firmware is the easiest to find, as it is installed in many everyday use embedded systems, like:
- dishwashers,
- washing machines,
- automobiles,
- remote controls,
- IoT devices,
- etc. (read more in our article: What Is an Embedded System?)
Firmware Security
Despite being “firm”, the security of firmware is of the utmost importance, especially in embedded systems like smart locks or intelligent roller blinds. There are several good practices used to ensure it – take a look at our examples of firmware security measures:
- Cryptographic signatures – Digital signatures (e.g., ECDSA) signing firmware during manufacturing and updates used to verify whether the firmware is original.
- Asymmetric cryptography – Implementing public-key cryptography for secure boot and download, where the firmware developer signs with a private key, and the device verifies with a public key.
- Hardware-based solutions – Utilizing secure authenticators like DS28C36, DS28C40, MAXQ1061, MAXQ1065, and DS28S60 for dedicated cryptographic functions, offloading main processors, and enhancing security.
The Takeaway
What does firmware mean? A type of programming (don’t mistake it for software!) that is basic and embedded into hardware. Its role is to connect the hardware with the software. Examples of firmware may be found everywhere, with BIOS being the most recognized one. But we mustn’t forget that firmware is all around us in embedded systems, where it often plays the role of the OS. And if you’re looking for help with your firmware, just check our firmware development services and contact us!
Did you like this article? You may also read: Use Cases of Linux in Embedded Systems.
References:
Buxton, O. (2023, July 14). Performance Tips: Understanding Firmware and Its Functionality. Download AVG Driver Updater: Free Trial. Retrieved from https://www.avg.com/en/signal/firmware
Lutkevich, B. (n.d.). Firmware? TechTarget. Retrieved from https://www.techtarget.com/whatis/definition/firmware
Malwarebytes. (n.d.). What is firmware? Malwarebytes Cybersecurity for Computer. Retrieved from https://www.malwarebytes.com/cybersecurity/computer/what-is-firmware