Browse Definitions :
Definition

firmware

What is firmware?

Firmware is programming that's written to a hardware device's non-volatile memory. Non-volatile memory is a form of static random access memory where the content is saved when a hardware device is turned off or loses its external power source.

Firmware is installed directly onto a piece of hardware during manufacturing. It is used to run user programs on the device and can be thought of as the software that enables hardware to run.

diagram of the software stack and where firmware fits
Firmware is the foundation of the software stack that computer hardware uses for basic operations and to run applications.

Hardware makers use embedded firmware to control the functions of various hardware devices and systems, much like a computer's operating system (OS) controls the function of software applications. Firmware may be written into read-only memory (ROM), erasable programmable read-only memory (EPROM) or flash memory.

American computer scientist Ascher Opler is said to have coined the phrase firmware in a 1967 issue of the publication Datamation. He used the term to describe a type of microprogram in between hardware and software.

Today, embedded firmware exists in everything from smartphones to internet of things (IoT) devices. It is often included in devices not traditionally thought of as having computer control.

Why are firmware updates important and how do they work?

Firmware updates are often issued to fix bugs, prevent firmware hacks, roll out new features, improve security or interact with new media. Firmware updates consist of code that tells the hardware how to behave in a new or modified way.

Some examples of firmware updates include the following:

  • A CD disc writer gains the ability to burn a new type of disk.
  • A router gets an update that improves its performance and stability.
  • A motherboard manufacturer releases a BIOS update that enables the motherboard to support new processors. BIOS is motherboard firmware.

Some internet-connected devices regularly check for new firmware and automatically download and install it. Other device manufacturers require the user to visit the manufacturer's website to download and install firmware updates manually. Manufacturers release updates on a regular basis.

The frequency of firmware updates will vary depending on the device. The firmware in a smart light bulb may not need frequent updates. However, the firmware on a smart thermostat may need to be updated periodically to remain compatible with smartphone OS updates. Smartphones commonly automate firmware upgrades alongside software updates so the phone remains functional and users don't have to manually update firmware versions to coincide with software updates. The process of remotely updating firmware by downloading upgrades from the service provider is sometimes referred to as firmware over the air.

diagram of how over-the-air updates for IoT
Over-the-air updates are a common way for IoT devices to upgrade their firmware.

Many electronic devices also require that the device remains powered on while updating firmware so that the update doesn't get corrupted. Corrupting a device's firmware can damage some devices or cause them to malfunction.

Types of firmware

There are many types of technology-specific firmware, but all firmware can generally be sorted into three categories based on the level of hardware integration.

  • Low-level firmware. Low-level firmware is considered an intrinsic part of a device's hardware. It is often stored on non-volatile, read-only chips like ROM and therefore cannot be rewritten or updated. Devices containing low-level firmware have one-time programmable memory.
  • High-level firmware. High level firmware does allow updates and is generally more complex than low-level firmware. In a computer, high-level firmware resides on flash memory chips.
  • Subsystem firmware. Subsystem firmware often comes as part of an embedded system. It is comparable to high-level firmware in that it can be updated and is more complex than low-level firmware. One example is a server's power subsystem, which is a piece of server hardware that functions semi-independently from the server.

Applications of firmware

Firmware is found in a range of computing equipment, including complex devices and those typically not considered computing devices. Some real-world applications of firmware include the following:

  • Personal computer. The firmware of a personal computer -- either BIOS or unified extensible firmware interface -- comes embedded on a small memory chip on the computer's motherboard. A computer's peripherals, such as graphics and video cards, also contain firmware.
  • Storage devices. USB drives, hard drives and other portable storage devices contain basic firmware that enable them to function with a computer.
  • Mobile devices. Mobile phones, tablets, laptops and other mobile devices all contain firmware that let the hardware work with various software.
  • Automotive. Automobiles contain many embedded systems, sensors and small computers that contain firmware that enables them to perform their designated tasks.
  • Home appliances. Dishwashers and washing machines are among the appliances that contain firmware. The firmware helps the machine communicate with the computer used to configure the machine's settings and control its operation.
  • Smart cards. Smart cards have instructions embedded in a chip that provides the card's basic functionality, as well as authentication and encryption.

The difference between firmware and software

Although some consider firmware a type of software, there is a distinction between the two technologies.

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. For this reason, it is sometimes called "software for hardware." Another distinguishing feature is that firmware is not generally designed to be user friendly.

Software

Software is designed for users to interact with to accomplish specific tasks. It sits above the firmware, abstracted from the hardware, and uses the firmware to communicate with the underlying hardware. Software is more complex and not as bound to the underlying hardware.

Examples of software include computer programs such as OSes. Applications for word processing, video conferencing and listening to music are also examples of software. A software program can usually be changed out without replacing a hardware component, whereas firmware often can't.

Firmware that is embedded in flash memory chips can be updated more easily than firmware written to ROM or EPROM. As flash memory plays a bigger role in the enterprise, admins must learn about the types of flash and their use cases.

This was last updated in June 2022

Continue Reading About firmware

Networking
  • subnet (subnetwork)

    A subnet, or subnetwork, is a segmented piece of a larger network. More specifically, subnets are a logical partition of an IP ...

  • secure access service edge (SASE)

    Secure access service edge (SASE), pronounced sassy, is a cloud architecture model that bundles together network and cloud-native...

  • Transmission Control Protocol (TCP)

    Transmission Control Protocol (TCP) is a standard protocol on the internet that ensures the reliable transmission of data between...

Security
  • cyber attack

    A cyber attack is any malicious attempt to gain unauthorized access to a computer, computing system or computer network with the ...

  • digital signature

    A digital signature is a mathematical technique used to validate the authenticity and integrity of a digital document, message or...

  • What is security information and event management (SIEM)?

    Security information and event management (SIEM) is an approach to security management that combines security information ...

CIO
  • product development (new product development)

    Product development -- also called new product management -- is a series of steps that includes the conceptualization, design, ...

  • innovation culture

    Innovation culture is the work environment that leaders cultivate to nurture unorthodox thinking and its application.

  • technology addiction

    Technology addiction is an impulse control disorder that involves the obsessive use of mobile devices, the internet or video ...

HRSoftware
  • organizational network analysis (ONA)

    Organizational network analysis (ONA) is a quantitative method for modeling and analyzing how communications, information, ...

  • HireVue

    HireVue is an enterprise video interviewing technology provider of a platform that lets recruiters and hiring managers screen ...

  • Human Resource Certification Institute (HRCI)

    Human Resource Certification Institute (HRCI) is a U.S.-based credentialing organization offering certifications to HR ...

Customer Experience
  • contact center agent (call center agent)

    A contact center agent is a person who handles incoming or outgoing customer communications for an organization.

  • contact center management

    Contact center management is the process of overseeing contact center operations with the goal of providing an outstanding ...

  • digital marketing

    Digital marketing is the promotion and marketing of goods and services to consumers through digital channels and electronic ...

Close