Co je coreboot?

Jak je popsáno na stránce Wikipedie:

coreboot, dříve známý jako LinuxBIOS, je softwarový projekt, jehož cílem je nahradit proprietární firmware (BIOS nebo UEFI), který se nachází ve většině počítačů, odlehčeným firmwarem navrženým tak, aby prováděl pouze minimální počet úloh nezbytných pro načtení a spuštění moderního 32bitového nebo 64bitového operačního systému.

V podstatě se jedná o iniciativu zaměřenou na „otevření“ a zjednodušení úrovně firmwaru moderních počítačů. Věřím, že co největší část z něj je svobodný software; nicméně pro jeho fungování na některých hardwarových zařízeních jsou vyžadovány binární bloby. Libreboot je verze Corebootu, která je zcela zbavena blobů, a je tedy 100% svobodným softwarem. Z tohoto důvodu však bude Libreboot fungovat pouze na omezenější podmnožině hardwaru.

Proč by někdo chtěl používat Coreboot? Napadá mě několik důvodů:

Pokud má zájem zapojit se do vývoje firmwaru pro PC, pak by mohl chtít vyměnit svůj proprietární firmware za Coreboot, protože je Open Source. Tímto způsobem (podobně jako u GNU/Linuxu obecně) se mohou hrabat v kódu a snažit se zjistit, jak to funguje. Takže by to mohlo být dobré ze vzdělávacího hlediska.

Pokud někomu záleží na svobodném softwaru, mohl by z tohoto důvodu raději používat Coreboot nebo Libreboot. Pokud máte ve firmwaru binární bloby, nevíte, co obsahují – teoreticky mohou obsahovat kód, který by mohl ohrozit vaše soukromí/zabezpečení. Nadace pro svobodný software podporuje pouze systémy, které běží s firmwarem Libreboot.

Další věc, která mě napadá, je, že pokud někdo vyvíjí nové zařízení, může se mu portování Corebootu zdát jednodušší než psaní vlastního firmwaru od nuly nebo nutnost platit za proprietární firmware. Coreboot je velmi štíhlý, rychlý a efektivní, protože obsahuje jen minimum kódu potřebného ke zprovoznění systému. Stojí za zmínku, že systém Coreboot sám o sobě neposkytuje žádné služby systému BIOS nebo UEFI – pouze inicializuje hardware a poté předá řízení něčemu jinému. Pokud by tedy operační systém vyžadoval některou z těchto služeb, musel by je poskytovat užitečný náklad (zmíněný níže).

Má to vliv na možnost instalace jiných operačních systémů?

Předně, hlavní operační systém se na desku obvykle neinstaluje (pokud nemluvíte o vestavěném systému). Obvykle se instaluje na externí paměťové zařízení (tj. pevný disk). Pokud tedy Coreboot dokáže nastavit dostatečně základní prostředí, aby mohl přistupovat k úložnému zařízení a volat hlavní OS, myslím, že teoreticky neexistuje žádný důvod, proč by neměl být schopen zavést jakýkoli OS. Je pro něj k dispozici několik payloadů, které to pomáhají usnadnit. Payload je v podstatě zavaděč, který je zabudován do firmwaru, na rozdíl od toho, aby byl uložen na externím úložišti. Například GRUB může být zabudován do Corebootu jako payload, který je jistě schopen zavést Linux a Windows. Nejsem si jistý, jestli existuje možnost payloadu, který by dokázal zavést MacOS, ale nepřekvapilo by mě, kdyby existoval.

Leave a Reply