Termínfirmware byl původně vytvořen za účelem kontrastu k vysokoúrovňovému softwaru, který může být vyměněn bez nahrazeníhardwarového komponentu. Firmware je typicky spjat se základními nízkoúrovňovými operacemi, bez kterých by zařízení nebylo funkční. Firmware je také relativní pojem, protože většina vestavěných zařízení obsahuje firmware na více než jedné úrovni. Napříkladoperační systém promobilní telefon je označován jako firmware (např.Android,Windows Phone,iOS), ale samotný mobilní telefon obsahuje firmware pro komunikační čip mobilní telefonní sítě (tzv.radio),[1] firmware pro řízeníbezdrátového Wi-Fi čipu,GPS čipu a podobně.
Pojemfirmware zavedl Ascher Opler v roce 1967 v článkuDatamation.[2] Původně to znamenalomikrokód umístěný ve speciální rychlé paměti, který realizovalinstrukční sadu použitéhoprocesoru. V původním významu tedy firmware sloužil k odlišeníhardware (mikroprocesor),software (běžné programy v počítači) a firmware (kód řídící samotný mikroprocesor). Firmware nevyužíval klasickéstrojové instrukce, ale speciální mikroinstrukce použitelné jen na provádění firmware. Pojemfirmware měl naznačit, že se vyskytuje na pomezí mezi hardware a software.
Později bylo označení „firmware“ rozšířeno na vše, co se ukládalo do pamětiROM, například kódBIOSu,bootstrap loadery nebo jiné specializované aplikace.
Až do poloviny 90. let bylaaktualizace firmwaru realizována nahrazenímpaměťového média obsahujícího firmware (např. výměnaROM paměti). Později začala být využívánaflash paměť, takže aktualizace byla realizována spuštěním speciálního programu, který novější verzi firmware zapsal do nevolatilní paměti (paměti, která svůj obsah zachová i po odpojení napájení).
Vosobních počítačích je firmware často používán. Základním firmwarem v počítači jeBIOS, který dnes zajišťuje zejménastart počítače. BIOS je možné aktualizovat speciálním programem. Aktualizace umožňuje (kromě oprav chyb) například použití novějšího modeluprocesoru.
V roce 2010 většinapřenosných hudebních přehrávačů podporuje upgrade firmwaru. Některé firmy používají aktualizace firmwaru pro vložení nových přehrávatelných souborových formátů (enkódování); tento způsob použila například jihokorejská společnostiriver pro soubory spadající podVorbis. Další funkce které se mohou změnit spolu s aktualizacemi firmwaru jsou GUI či dokonce životnost baterie. Většinamobilních telefonů máFirmware Over The Air upgradovací schopnost pro stejné důvody. Některé mohou být dokonce upgradovány pro zvýšení recepce či kvality zvuku, což jen podtrhuje fakt, že firmware je používán v souboru produktů na více než jen jednom levelu (v tomto případěmikrokontroler podobný CPU vs.digitální procesor).
Od roku 1996 používá většinaautomobilů speciální počítač (tzv.řídící jednotka) a různé senzory nejen pro řízení chodu motoru, ale i pro detekování závad (například pokles tlaku v pneumatice, chybaairbagu a podobně). V roce 2010 jsou používány řídící jednotky i pro doplňující systémy, jako jeABS, palubní deska, vyhřívání sedadel atd. Aktualizaci firmware provádějí certifikované servisy speciálními přístroji, které se připojují na servisní konektory.
"Kombinace hardwarového zařízení a počítačových instrukcí a dat, které jsou v zařízení umístěny jako software jen pro čtení.
Poznámky: (1) Tento termín je někdy používán s odkazem pouze na hardwarové zařízení, nebo pouze na počítačové instrukce nebo data, avšak tyto významy jsou zastaralé. (2) Nejasnosti kolem tohoto termínu vedly některé lidi k návrhu, že je třeba se tomu vyhnout úplně. "
Flashování je proces přepsání současného firmwaru nebo dat na jiná data či firmware skrz EEPROM modul umístěný v elektornickém zařízení.[3] Tato operace může být provedena za účelem vylepšení (upgradu) zařízení[4] nebo pro změnu poskytovatele služeb souvisejících se službami a funkcí zařízení, jako je změna od jednohomobilního operátora k jinému nebo instalace novéhooperačního systému. Pokud je firmware upgradovatelný, je tento úkon často proveditelný přes flashovací program výrobce, kde je často povoleno ozálohovat starý firmware před samotnou instalací, a tak v případě, že se proces nahrávání nezdaří může být původní firmware obnoven zpět. Z bezpečnostních důvodů a z vůle výrobců však stále častěji není možné provést ponížení firmwaru (tzv.downgrade) za účelem využití bezpečnostních chyb pro ovládnutí softwaru (např. přepnutí doprivilegovaného režimu).
Někdy třetí strany vytvoří neoficiální novou nebo upravenou ("postprodukční") verzi firmwaru za účelem poskytnutí nových funkcí nebo pro zpřístupnění výrobcem skrytých funkcionalit produktu. Příklady zahrnují:
Spoustyhomebrew projektů pro herní konzole. Ty často otevírají všeobecné možnosti počítačových funkcí v předtím limitovaných zařízeních (například spuštění hryDoom naiPodech).
Většina upravených firmwarů je šířenazdarma a je zároveňopen source softwarem.
Tyto úpravy většinou využívají pro spuštění a instalaci možností upgradu firmwaru na zařízeních samotných. Některé se však musí uchýlit kexploitům, aby se spustily, protože výrobci se snaží uzamknout hardware před spuštěním nepodepsaného kódu.
↑Opler, Ascher. Fourth-Generation Software.Datamation. January 1967, s. 22–24.Je zde použita šablona{{Cite journal}} označená jako k „pouze dočasnému použití“.