Firmware

BadUSBflashingflashautomobile firmwarebad USBembedded programsfirmware imagesfirmware upgradefirmware-specificflashable
In computing, firmware is a specific class of computer software that provides the low-level control for the device's specific hardware.wikipedia
740 Related Articles

Read-only memory

ROMRead Only MemoryROMs
Firmware is held in non-volatile memory devices such as ROM, EPROM, or flash memory.
Read-only memory is useful for storing software that is rarely changed during the life of the system, sometimes known as firmware.

Computer hardware

hardwarepersonal computer hardwaredevice
In computing, firmware is a specific class of computer software that provides the low-level control for the device's specific hardware.
Intermediate between software and hardware is "firmware", which is software that is strongly coupled to the particular hardware of a computer system and thus the most difficult to change but also among the most stable with respect to consistency of interface.

BIOS

ROM BIOSSystem BIOSBasic Input/Output System
Firmware such as the ROM BIOS of a personal computer may contain only elementary basic functions of a device and may only provide services to higher-level software. Over time, popular usage extended the word "firmware" to denote any computer program that is tightly linked to hardware, including processor machine instructions for BIOS, bootstrap loaders, or the control systems for simple electronic devices such as a microwave oven, remote control, or computer peripheral.
BIOS (an acronym for Basic Input/Output System and also known as the System BIOS, ROM BIOS or PC BIOS) is firmware used to perform hardware initialization during the booting process (power-on startup), and to provide runtime services for operating systems and programs.

Microcode

microprogrammicroprogrammingmicroprogrammed
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.
Some hardware vendors, especially IBM, use the term microcode as a synonym for firmware.

Flash memory

flashNANDFlash ROM
Firmware is held in non-volatile memory devices such as ROM, EPROM, or flash memory. Flashing involves the overwriting of existing firmware or data, contained in EEPROM or flash memory modules present in an electronic device, with new data.
This makes it a suitable replacement for older read-only memory (ROM) chips, which are used to store program code that rarely needs to be updated, such as a computer's BIOS or the firmware of set-top boxes.

Embedded system

embedded systemsembeddedembedded device
Typical examples of devices containing firmware are embedded systems, consumer appliances, computers, computer peripherals, and others.
The program instructions written for embedded systems are referred to as firmware, and are stored in read-only memory or flash memory chips.

Computing

computer technologycomputing technologyapplied computing
In computing, firmware is a specific class of computer software that provides the low-level control for the device's specific hardware.
System software includes operating systems, utility software, device drivers, window systems, and firmware.

Unified Extensible Firmware Interface

UEFIEFIExtensible Firmware Interface
The Unified Extensible Firmware Interface (UEFI) is a specification that defines a software interface between an operating system and platform firmware.

Open Firmware

OpenBootOpenFirmwareFCode
Open Firmware, or OpenBoot in Sun Microsystems parlance, is a standard defining the interfaces of a computer firmware system, formerly endorsed by the Institute of Electrical and Electronics Engineers (IEEE).

ARCS (computing)

ARCS
ARCS is a firmware bootloader (also known as a PROM console) used in most computers produced by SGI since the beginning of the 1990s.

Operating system

operating systemsOScomputer operating system
Firmware can either provide a standardized operating environment for the device's more complex software (allowing more hardware-independence), or, for less complex devices, act as the device's complete operating system, performing all control, monitoring and data manipulation functions.
With the aid of the firmware and device drivers, the kernel provides the most basic level of control over all of the computer's hardware devices.

Kickstart (Amiga)

KickstartKickstart ROMAmiga Kickstart
Kickstart is the bootstrap firmware of the Amiga computers developed by Commodore.

Power-on self-test

POSTPower-on self testbeep code
A power-on self-test (POST) is a process performed by firmware or software routines immediately after a computer or other digital electronic device is powered on.

Genesi

bplan GmbHGenesi USA, Inc.Genesi/bPlan
The main products of Genesi are ARM-based computers that were designed to be inexpensive, quiet and highly energy efficient, and a custom Open Firmware compliant firmware.

Common Firmware Environment

CFE
Common Firmware Environment (CFE), pronounced as 'cafe', is a firmware interface and bootloader developed by Broadcom for 32-bit and 64-bit system-on-a-chip systems.

Run-Time Abstraction Services

RTAS
Run-Time Abstraction Services (RTAS) is run-time firmware that provides abstraction to the operating systems running on IBM System i and IBM System p computers.

Linux-libre

GNU Linux-libre
Software components with no available source code are called binary blobs and, as such, are mostly used for proprietary firmware images in the Linux kernel.

Linux kernel

LinuxLinux kernel mainlinekernel
The Linux kernel is released under the GNU General Public License version 2 (GPLv2), with some firmware images released under various non-free licenses.

Custom firmware

custom made ROMs.custom ROMscustom-firmware
Sometimes, third parties create an unofficial new or modified ("aftermarket") version of firmware to provide new features or to unlock hidden functionality; this is referred to as custom firmware.
Custom firmware, also known as aftermarket firmware, is an unofficial new or modified version of firmware created by third parties on devices such as video game consoles and various embedded device types to provide new features or to unlock hidden functionality.

Rockbox

Rockbox ProjectRockbox kernelRockbox port
An example is Rockbox as a firmware replacement for portable media players.
Rockbox is a free and open-source software replacement for the OEM firmware in various forms of digital audio players (DAPs) with an original kernel.

Amiga

Commodore AmigaAmiga ComputerAmiga 500/600 (OCS/ECS)
Kickstart is the firmware upon which AmigaOS is bootstrapped.

EEPROM

electrically erasable programmable read-only memoryE2PROMEEPROM memory
Flashing involves the overwriting of existing firmware or data, contained in EEPROM or flash memory modules present in an electronic device, with new data.
Many microcontrollers include both: flash memory for the firmware, and a small EEPROM for parameters and history.

Flashrom

As an alternative to vendor tools, open source alternatives have been developed such as flashrom.
It can be used to flash firmware images such as BIOS or coreboot, or to backup an existing firmware.

Coreboot

coreboot, formerly known as LinuxBIOS, is a software project aimed at replacing proprietary firmware (BIOS or UEFI) found in most computers with a lightweight firmware designed to perform only the minimum number of tasks necessary to load and run a modern 32-bit or 64-bit operating system.

Booting

bootloaderboot loaderboot
Over time, popular usage extended the word "firmware" to denote any computer program that is tightly linked to hardware, including processor machine instructions for BIOS, bootstrap loaders, or the control systems for simple electronic devices such as a microwave oven, remote control, or computer peripheral.
This may be done by hardware or firmware in the CPU, or by a separate processor in the computer system.