It was not composed of CPU machine instructions, but of lower-level microcode involved in the implementation of machine instructions.It existed on the boundary between hardware and software; thus the name "firmware".
In some respects, the various firmware components are as important as the operating system in a working computer.Originally, it meant the contents of a writable control store (a small specialized high speed memory), containing microcode that defined and implemented the computer's instruction set, and that could be reloaded to specialize or modify the instructions that the central processing unit (CPU) could execute.As originally used, firmware contrasted with hardware (the CPU itself) and software (normal instructions executing on a CPU).A remote control is a very simple example of an engineered product that contains firmware.The firmware monitors the buttons, controls the LEDs, and processes the button presses in order to send data in a format the receiving device (a TV set, for example) can understand and process.Sometimes, third parties create an unofficial new or modified ("aftermarket") version of firmware in order to provide new features or to unlock hidden functionality; this is referred to as custom firmware (also "Custom Firmware" in the video game console community).
An example is Rockbox as a firmware replacement for portable media players.
Some, however, must resort to exploits in order to run, because the manufacturer has attempted to lock the hardware to stop it from running unlicensed code. The Moscow-based Kaspersky Lab discovered that a group of developers it refers to as the "Equation Group" has developed hard disk drive firmware modifications for various drive models, containing a trojan horse that allows data to be stored on the drive in locations that will not be erased even if the drive is formatted or wiped.
Although the Kaspersky Lab report did not explicitly claim that this group is part of the United States National Security Agency (NSA), evidence obtained from the code of various Equation Group software suggests that they are part of the NSA.
In contrast, firmware in storage devices (harddisks, DVD drives, flash storage) rarely gets updated, even when flash (rather than ROM) storage is used for the firmware; there are no standardized mechanisms for detecting or updating firmware versions.
Most computer peripherals are themselves special-purpose computers.
Common reasons for updating firmware include fixing bugs or adding features to the device.