Technicky je Firmware pouze podmnožinou softwaru, protože druhý termín zahrnuje všechny užitečné části kódu. V praxi však termín software označuje velmi odlišnou třídu programů.
Obecně řečeno, firmware je název pro nízkoúrovňový kód, který se přímo propojuje s hardwarem. Všechny programy, které pracují na této vrstvě, tvoří software. Zmatený? Zde je hlubší pohled.
Obsah
Mnoho typů softwaru
Problém s pojmem software je, že je příliš široký. Jakýkoli soubor instrukcí, který může ovládat počítač – nebo jakékoli jiné elektronické zařízení – lze považovat za software.
To nebyl problém v počátcích výpočetní techniky, kdy byly všechny programy psány v assembleru a přímo propojeny s hardwarem, aby mohly provádět jakýkoli úkol. Ale v dnešní době běží výpočetní zařízení na vrstvách po vrstvách kódu, přičemž uživatel je vystaven pouze programům nahoře.
Tato kategorie uživatelsky přívětivých programů, nazývaná aplikační software, zahrnuje všechny aplikace a nástroje, které používáte na svém počítači, jako je webový prohlížeč nebo textový editor. Pod tím se nachází operační systém, který se zabývá nízkoúrovňovými detaily, jako je vykreslování vizuálů na obrazovku a zpracování vstupů.
Většina lidí si myslí, že tím to končí, ale operační systém jen zřídka komunikuje přímo s hardwarem. Pod operačním systémem je další vrstva, která umožňuje systémovému softwaru snadný přístup k hardwarovým funkcím. A to je Firmware.
Firmware: Základní vrstva softwaru
Ve většině programovacích jazyků na vysoké úrovni je provádění věcí, jako je zobrazení obrázku na obrazovce, jednoduchý příkaz. Přesto někde v počítači existuje část kódu zodpovědná za převod tohoto příkazu do skutečných instrukcí procesoru.
Firmware je spojením mezi hardwarem a softwarem, které umožňuje vývojářům využívat možnosti zařízení prostřednictvím zjednodušeného programovacího rozhraní namísto instrukcí specifických pro CPU. Pro počítač je tento firmware známý Basic Input Output System (BIOS), dostupný i bez OS.
U jednodušších elektronických zařízení, jako je dálkový ovladač televizoru nebo router, se firmware zdvojnásobuje také jako operační systém. Takové stroje nejsou určeny pro instalaci aplikačního softwaru třetích stran, jako je PC, a spoléhají na firmware, aby provedl všechny potřebné úkoly.
Jak se firmware instaluje do zařízení?
Žádné elektronické zařízení není použitelné bez firmwaru. To je důvod, proč jsou všechny elektronické komponenty dodávány s firmwarem předinstalovaným výrobcem.
I na počítačích je tento program uložen na specializovaném flash čipu na základní desce, nikoli na pevném disku. To umožňuje spustit počítač a konfigurovat nastavení hardwaru bez nainstalovaného operačního systému.
Aktualizace firmwaru není na většině zařízení jednoduchá ani nutná. Jako základní řídicí kód pro stroj může jeho zpackání učinit hardware nepoužitelným. Výjimkou jsou počítače, které umožňují instalaci upgradu systému BIOS uživatelem flashováním čipu.
Firmware versus software: Stručný přehled
Jak se firmware liší od softwaru?
Hardware a software se běžně nazývají dvě součásti elektronického zařízení, ale to není úplný obrázek. Operační systémy a aplikace nemohou komunikovat s hardwarem přímo, což vyžaduje vrstvu specializovaného kódu k překlenutí mezery.
A tím spojovacím prvkem je Firmware. Skládá se z instrukcí specifických pro architekturu, které přímo řídí hardware a v jednoduché elektronice fungují také jako základní OS. V jiných zařízeních firmware poskytuje abstraktní rozhraní k softwaru, což umožňuje OS používat hardware, aniž by se staral o základní architekturu.
Pro svou základní povahu je firmware předinstalovaný na flash čipu na samotné základní desce, nezávisle na jakémkoli softwaru zapsaném na disk. Na rozdíl od jednoduché instalace softwarových balíčků jej lze aktualizovat (tj. „flashovat“) pouze pomocí specializovaných procesů.
Všechna elektronická zařízení a periferní komponenty jsou dodávány s vlastním firmwarem. Digitální fotoaparáty, chytré telefony, disky SSD a dokonce i disky USB – pokud má hardware, který je třeba ovládat, je na jeho desce zabudovaný firmware, který jej zvládne.