# Das U-Boot

Das U-Boot (Universal Bootloader, abbreviazione di "Das Unterseeboot", dal tedesco "sottomarino") è un boot loader che gira su diverse piattaforme hardware, tra cui PPC, ARM, AVR32, MIPS, x86, 68k, Nios e MicroBlaze. È software libero poiché distribuito con licenza GNU GPL.
Di solito, quando utilizzato per piattaforme diverse dalla x86 viene compilato su di un PC tramite un cross-compilatore. Tale cross-compilatore può essere ottenuto grazie a sistemi come crosstool. o già pronto all'interno di kit di sviluppo software come Embedded Linux Development Kit (archiviato dall'url originale l'11 maggio 2019). (ELDK) o OSELAS.Toolchain (archiviato dall'url originale il 25 gennaio 2008)..

## Storia

Il progetto è nato sotto il nome di 8xxROM ad opera di Magnus Damm allo scopo di creare un bootloader per PowerPC 8xx. Nell'ottobre 1999, Wolfgang Denk, spostò il progetto su SourceForge.net rinominandolo in PPCBoot. La ridenominazione è attribuibile alla politica di SourceForge.net che non consentiva ai nomi progetto di iniziare con una cifra. Il 19 luglio 2000 è uscita la versione 0.4.1.
Nel 2002 venne creato un fork del progetto chiamato ARMBoot, che si basava su una versione precedente del codice sorgente. Il fork ebbe vita breve in quanto a distanza di poco tempo venne reintegrato all'interno del progetto PPCBoot. Il 31 ottobre 2002 è uscita la versione 2.0.0, l'ultima versione sotto il nome PPCBoot, in quanto il progetto venne rinominato per riflettere la sua capacità di lavorare anche su architetture differenti oltre a PPC ISA.
Nel novembre 2002, a seguito del cambio nome, PPCBoot−2.0.0 diventò U−Boot−0.1.0 e offriva supporto ai processori x86. Nei mesi successivi venne implementato il supporto per diverse architetture: MIPS32 nel marzo 2003, MIPS64 ad aprile, Nios II a ottobre, ColdFire a dicembre e MicroBlaze nell'aprile 2004. A maggio 2004, la versione 1.1.2 di U-Boot-1.1.2 funzionava su 216 schede di differenti produttori e di differenti architetture.
L'attuale nome Das U-Boot prevede l'aggiunta dell'articolo determinativo tedesco per creare un gioco di parole che richiama il film tedesco Das Boot (il sottomarino) del 1981, ambientato su un sottomarino tedesco della seconda guerra mondiale.
L'importanza di Das U-Boot nei sistemi Linux embedded è evidenziata anche nel libro Building Embedded Linux Systems, di Karim Yaghmour, all'interno del quale troviamo una descrizione su U-Boot che inizia con: "Sebbene ci siano parecchi altri bootloader, 'Das U-Boot', il bootloader universale, è senza dubbio il bootloader open source più ricco, flessibile e sviluppato più attivamente disponibile."

## Impiego

* U-Boot è impiegato sui Chromebook basati su ARM. Nei Chromebook basati su Celeron e i5 viene utilizzato per caricare coreboot.
* La serie di AmigaOne basati su PowerPC e che eseguono AmigaOS utilizzano U-Boot, in particolare Sam440ep e Sam460ex di ACube Systems Srl, e AmigaOne X5000 di A-Eon, il successore dell'AmigaOne X1000.
* I dispositivi Ubiquiti Networks utilizzano U-Boot.
* I dispositivi Amazon Kindle e Kobo e Reader utilizzano U-Boot come bootloader.
* I router TP-Link e molti altri router wireless basati su MIPS e compatibili con OpenWRT/LEDE utilizzano U-Boot.
* Falcon e Dragon di SpaceX utilizzano entrambi U-Boot
* Asahi Linux lo utilizza come payload per m1n1 per avviare Linux su Apple Silicon Mac.