Firmware

Return to Glossary

Firmware is a type of software that is etched directly into a piece of hardware. It operates without going through APIs, the operating system, or device drivers—providing the needed instructions and guidance for the device to communicate with other devices or perform a set of basic tasks and functions as intended.

Without Firmware, the most basic of devices would not function. That is why it is often stored on a Read-Only Memory (ROM) chip, ensuring it does not get erased by accident, all while remaining as close as possible to the metal of the device.

Firmware comes in various complexities and can be found in simple devices, like keyboards and hard drives, to more complex ones, like graphics cards and Basic Input/Output System (BIOS).

In Android operating systems, the Firmware is different depending on the manufacture, that is, it is the operating software is device-specific.

When a device is powered on, Firmware is the first part to run and starts sending instructions to the device's processor to execute. If the device is as simple as a keyboard, the Firmware does not stop working as there is no software to replace it. However, in more complex devices, such as PCs, laptops, and tablets, there are often multiple Firmware sets that interact to achieve a common goal; load the operating system.

Regardless of the type of device, Firmware can only work with a basic or low level, binary language known as machine language. While the Firmware'a code could be written in a high level language for ease and versatility, it needs to be translated into a low level language before getting etched into the device.

The same Firmware cannot run on processors it was not designed for, as different processors can only identify certain instructions. If a device’s firmware were to get corrupted—during an update, for example—it cannot be fixed, as there is no way to communicate with the machine to install a replacement.

Source: https://www.techopedia.com/definition/2137/firmware