Coreboot

firmware libero per computer

Coreboot (noto in precedenza come LinuxBIOS)[1] ,è un progetto che mira a sostituire il firmware proprietario (BIOS o UEFI), presente nella maggior parte dei computer, con un firmware leggero e progettato per eseguire solo lo stretto necessario per caricare ed eseguire un moderno sistema operativo a 32 o 64 bit.

Coreboot
software
Logo
Logo
Schermata di esempio
Schermata di esempio
GenereBIOS
SviluppatoreRonald G. Minnich, Eric Biederman, Olli Lo, Stefan Reinauer e la comunità coreboot
Data prima versione1999
Ultima versione24.08 (2 settembre 2024)
Sistema operativonessuno
LinguaggioC
linguaggio assembly
LicenzaGNU GPL v2
(licenza libera)
Sito webwww.coreboot.org

E' un progetto supportato dalla Free Software Foundation.[2] Esiste una variante completamente libera da blob binari chiamata Libreboot.

Il progetto LinuxBIOS è nato nel 1999 nell'Advanced Computing Laboratory del Los Alamos National Laboratory (LANL). L'obiettivo principale era quello di creare un BIOS che si avviasse rapidamente e gestisse gli errori in modo intelligente.[3] Attualmente, coreboot, è distribuito sotto licenza GNU General Public License versione 2 (GPLv2).

Al progetto contribuiscono realtà quali LANL, SiS, AMD, Coresystems e Linux Networx, Inc. Al loro fianco si trovano produttori di schede madri come MSI, Gigabyte e Tyan, che offrono coreboot insieme al loro BIOS standard o forniscono specifiche delle interfacce hardware per alcune delle loro schede madri.

Dal 2006 Google è diventato sponsor coreboot [4] e dal 2009 si è aggiunto CME Group (un gruppo di scambi di futures).[5]

Coreboot è molto diffuso in ambito Chromebook: eccetto i primi tre modelli, tutti lo adottano ed eseguono.[6] Il codice di Das U-Boot è stato integrato in coreboot per offrire supporto ai processori ARM.[7]

Caratteristiche

modifica

All'avvio del computer, Coreboot, ne prende il controllo e inizializza l'hardware di base, come la CPU, la memoria e le periferiche. Una volta completata questa fase carica un "payload", ovvero un programma che può essere un boot loader tradizionale (come GRUB) o direttamente un sistema operativo.

Coreboot esegue l'inizializzazione dell'hardware e quindi passa il controllo al sistema operativo. Di conseguenza, una volta che il sistema operativo ha preso il controllo della macchina, non viene eseguito alcun codice coreboot. Una peculiarità di coreboot è che la sua versione x86 funziona in modalità a 32 bit dopo aver eseguito solo dieci istruzioni [8] (la maggior parte degli altri BIOS x86 funzionano esclusivamente in modalità a 16 bit). Questo lo rende molto simile a UEFI utilizzato sull'hardware dei PC più recenti.

Coreboot è scritto prevalentemente in C e, in piccola parte, in linguaggio assembly. La scelta di un linguaggio di programmazione come C consente un controllo del codice più semplice rispetto a quanto avviene nei BIOS generalmente scritti in assembly [9] che si traduce in una maggiore sicurezza.

Per aumentare ulteriormente il livello di sicurezza, viene offerto il supporto di build e runtime per scrivere parti di coreboot in Ada[10] ma, allo stato attuale, questa opzione è utilizzata solo sporadicamente.

Varianti

modifica

Esistono numerose varianti di Coreboot, ciascuna con obiettivi leggermente diversi:.

  • Libreboot - Una variante con l'obiettivo principale di rimuovere alcuni blob binari.[11]
  • osboot - Una variante simile a Libreboot con politiche differenti rispetto all'eliminazione di alcuni blob binari e nata per aumentare il supporto e la stabilità dell'hardware.[12] Il progetto, nel novembre 2022 è confluito in Libreboot.[13]
  • MrChromebox - Una versione modificata di coreboot per dispositivi basati su ChromeOS.[14]
  • GNU Boot - Una variante nata con l'obiettivo principale di rimuovere tutti i blob binari.[15]
  • Canoeboot - Progetto più sperimentale e meno conservativo rispetto a Coreboot che potrebbe includere funzionalità più recenti o sperimentali.[16]
  • Dasharo - Una distribuzione basata su coreboot sviluppata da 3mdeb.[17] Mirano a rendere più semplice per i produttori la spedizione di prodotti con coreboot.[18][19]
  • Skulls- Una variante che punta alla facilità di installazione.[20]
  • Heads - Una variante attenta alla sicurezza fisica e all'utilizzo di software libero, consigliata per l'uso con QubesOS.[21][22]

European Coreboot Conference

modifica

La prima European Coreboot Conference è stata una conferenza organizzata nell'ottobre 2017 e durata tre giorni.

Storico conferenze

modifica
Evento e anno Date Città ospite Luogo Risorse Temi trattati
ECC2017 26.10. – 29.10 Bochum, Germania Centro convegni RUB https://ecc2017.com
  1. ^ [LinuxBIOS] Welcome to coreboot, su coreboot.org, 12 gennaio 2008.
  2. ^ Campagna per il BIOS libero, su fsf.org.
  3. ^ Anton Borisov, The Open Source BIOS is Ten. An interview with the coreboot developers, su The H, 2009 (archiviato dall'url originale il 16 settembre 2012).
  4. ^ Google Sponsors the LinuxBIOS project, su google-code-updates.blogspot.com. URL consultato il 29 settembre 2023 (archiviato dall'url originale il 6 febbraio 2012).
  5. ^ CME Group Dives Into Coreboot and Other Linux Open Source Projects, in Wall Street & Technology. URL consultato il 23 settembre 2015 (archiviato dall'url originale il 12 agosto 2010).
  6. ^ Chromebooks, su coreboot.org, coreboot, 16 gennaio 2014. URL consultato il 17 febbraio 2014 (archiviato dall'url originale l'8 maggio 2016).
  7. ^ GSoC2011(Week 1): Analysis of U-boot ARM boot code | coreboot developer blogs, su blogs.coreboot.org, 5 giugno 2011. URL consultato il 12 aprile 2014.
  8. ^ coreboot v3 early startup code, su lxr.linux.no. URL consultato il 17 agosto 2008 (archiviato dall'url originale il 10 luglio 2012).
  9. ^ Comparison of UEFI and legacy BIOS, su phoenixts.com. pronouncing that same advantage for UEFI
  10. ^ commit, su review.coreboot.org. adding that support
  11. ^ Binary Blob Reduction Policy, su libreboot.org, 1º novembre 2023. URL consultato il 1º novembre 2023 (archiviato dall'url originale il 1º novembre 2023).
  12. ^ osboot project, su osboot.org, 15 marzo 2021. URL consultato il 26 maggio 2023 (archiviato dall'url originale il 15 marzo 2021).
  13. ^ Libreboot – Osboot is now part of Libreboot, su libreboot.org, 19 dicembre 2022. URL consultato il 26 maggio 2023 (archiviato dall'url originale il 19 dicembre 2022).
  14. ^ (EN) How to install ChromeOS Flex on a Chromebook, su Android Police, 17 aprile 2022. URL consultato il 30 maggio 2023.
  15. ^ GNU Boot Summary, su savannah.gnu.org, 30 ottobre 2023. URL consultato il 30 ottobre 2023 (archiviato dall'url originale il 30 ottobre 2023).
  16. ^ Canoeboot project, su canoeboot.org, 16 novembre 2023. URL consultato il 16 novembre 2023 (archiviato dall'url originale il 16 novembre 2023).
  17. ^ 3mdeb Sp. z o.o. — Embedded Firmware development consultancy, su 3mdeb.com, 29 gennaio 2024. URL consultato il 16 febbraio 2024 (archiviato dall'url originale il 16 febbraio 2024).
  18. ^ Dasharo • GitHub, su github.com, 22 ottobre 2023. URL consultato il 16 febbraio 2024 (archiviato dall'url originale il 16 febbraio 2024).
  19. ^ About Dasharo - Dasharo Universe, su docs.dasharo.com, 9 febbraio 2024. URL consultato il 16 febbraio 2024 (archiviato dall'url originale il 16 febbraio 2024).
  20. ^ Martin Kepplinger-Novakovic, merge/skulls, 28 maggio 2024. URL consultato il 29 maggio 2024.
  21. ^ (EN) About Heads, su Heads. URL consultato il 29 maggio 2024.
  22. ^ linuxboot/heads, LinuxBoot, 28 maggio 2024. URL consultato il 29 maggio 2024.

Voci correlate

modifica

Altri progetti

modifica

Collegamenti esterni

modifica
  Portale Software libero: accedi alle voci di Wikipedia che trattano di software libero