Share to: share facebook share twitter share wa share telegram print page

Das U-Boot

Das U-Boot
Developer(s)DENX Software Engineering
Initial releaseOctober 15, 1999; 24 years ago (1999-10-15)
Stable release
v2024.04 / April 2, 2024; 2 months ago (2024-04-02)[1]
Repository
Written inC, Assembly
Available inEnglish
TypeBoot loader
LicenseGPL-2.0-or-later[2]
Websitedocs.u-boot.org/en/latest/ Edit this on Wikidata

Das U-Boot (subtitled "the Universal Boot Loader" and often shortened to U-Boot; see History for more about the name) is an open-source boot loader used in embedded devices to perform various low-level hardware initialization tasks and boot the device's operating system kernel. It is available for a number of computer architectures, including M68000, ARM, Blackfin, MicroBlaze, IBM S360, My66, MOS 6502, ARM64, MIPS, Nios, SuperH, PPC, RISC-V and x86.

Functionality

U-Boot is both a first-stage and second-stage bootloader. It is loaded by the system's ROM (e.g. on-chip ROM of an ARM CPU) from a supported boot device, such as an SD card, SATA drive, NOR flash (e.g. using SPI or I²C), or NAND flash. If there are size constraints, U-Boot may be split into two stages: the platform would load a small SPL (Secondary Program Loader), which is a stripped-down version of U-Boot, and the SPL would do some initial hardware configuration (e.g. DRAM initialization using CPU cache as RAM) and load the larger, fully featured version of U-Boot.[3][4][5] Regardless of whether the SPL is used, U-Boot performs both first-stage (e.g., configuring memory controllers and SDRAM) and second-stage booting (performing multiple steps to load a modern operating system from a variety of devices that must be configured, presenting a menu for users to interact with and control the boot process, etc.).

U-Boot implements a subset of the UEFI specification as defined in the Embedded Base Boot Requirements (EBBR) specification.[6] UEFI binaries like GRUB or the Linux kernel can be booted via the boot manager or from the command-line interface.

U-Boot runs a command-line interface on a console or a serial port. Using the CLI, users can load and boot a kernel, possibly changing parameters from the default. There are also commands to read device information, read and write flash memory, download files (kernels, boot images, etc.) from the serial port or network, manipulate device trees, and work with environment variables (which can be written to persistent storage, and are used to control U-Boot behavior such as the default boot command and timeout before auto-booting, as well as hardware data such as the Ethernet MAC address).

Unlike PC bootloaders which obscure or automatically choose the memory locations of the kernel and other boot data, U-Boot requires its boot commands to explicitly specify the physical memory addresses as destinations for copying data (kernel, ramdisk, device tree, etc.) and for jumping to the kernel and as arguments for the kernel. Because U-Boot's commands are fairly low-level, it takes several steps to boot a kernel, but this also makes U-Boot more flexible than other bootloaders, since the same commands can be used for more general tasks. It's even possible to upgrade U-Boot using U-Boot, simply by reading the new bootloader from somewhere (local storage, or from the serial port or network) into memory, and writing that data to persistent storage where the bootloader belongs.

U-Boot has support for USB, so it can use a USB keyboard to operate the console (in addition to input from the serial port), and it can access and boot from USB Mass Storage devices such as SD card readers.

Data storage and boot sources

U-Boot boots an operating system by reading the kernel and any other required data (e.g. device tree or ramdisk image) into memory, and then executing the kernel with the appropriate arguments.

U-Boot's commands are actually generalized commands which can be used to read or write any arbitrary data. Using these commands, data can be read from or written to any storage system that U-Boot supports, which include:

(Note: These are boot sources from which U-Boot is capable of loading data (e.g. a kernel or ramdisk image) into memory. U-Boot itself must be booted by the platform, and that must be done from a device that the platform's ROM is capable of booting from, which naturally depends on the platform.)

  • Onboard or attached storage
    • SD card
    • SATA
    • SCSI
    • I²C (e.g. EEPROMs or NOR flash)
    • SPI (e.g. NOR or NAND flash)
    • ONFI (raw NAND flash)
    • eMMC (managed NOR or NAND flash)
    • eUFS (managed NAND flash)
    • NVMe
    • USB mass storage device
  • Serial port (file transfer)
  • Network boot (optionally using DHCP, BOOTP, or RARP)

On some embedded device implementations, the CPU or SoC will locate and load the bootloader (such as Das U-Boot) from the boot partition (such as ext4 or FAT filesystems) directly.

Compatible file systems

U-Boot does not need to be able to read a filesystem in order for the kernel to use it as a root filesystem or initial ramdisk; U-Boot simply provides an appropriate parameter to the kernel, and/or copies the data to memory without understanding its contents.

However, U-Boot can also read from (and in some cases, write to) filesystems. This way, rather than requiring the data that U-Boot will load to be stored at a fixed location on the storage device, U-Boot can read the filesystem to search for and load the kernel, device tree, etc., by pathname.

U-Boot includes support for these filesystems:

Device tree

Device tree is a data structure for describing hardware layout. Using Device tree, a vendor might be able to use a less modified mainline U-Boot on otherwise special purpose hardware. As also adopted by the Linux kernel, Device tree is intended to ameliorate the situation in the embedded industry, where a vast number of product specific forks (of U-Boot and Linux) exist. The ability to run mainline software practically gives customers indemnity against lack of vendor updates.

History

U-Boot on the Openmoko Freerunner
U-Boot on the XPedite5501

The project started as a 8xx PowerPC bootloader called 8xxROM written by Magnus Damm.[7] In October 1999 Wolfgang Denk moved the project to SourceForge.net and renamed it to PPCBoot, because SF.net did not allow project names starting with digits.[7] Version 0.4.1 of PPCBoot was first publicly released July 19, 2000.

In 2002 a previous version of the source code was briefly forked into a product called ARMBoot, but was merged back into the PPCBoot project shortly thereafter. On October 31, 2002 PPCBoot−2.0.0 was released. This marked the last release under the PPCBoot name, as it was renamed to reflect its ability to work on other architectures besides the PPC ISA.[8][9]

PPCBoot−2.0.0 became U−Boot−0.1.0 in November 2002, expanded to work on the x86 processor architecture. Additional architecture capabilities were added in the following months: MIPS32 in March 2003, MIPS64 in April, Nios II in October, ColdFire in December, and MicroBlaze in April 2004. The May 2004 release of U-Boot-1.1.2 worked on the products of 216 board manufacturers across the various architectures.[9]

The current name Das U-Boot adds a German definite article, to create a bilingual pun on the classic 1981 German submarine film Das Boot, which takes place on a World War II German U-boat. It is free software released under the terms of the GNU General Public License. It can be built on an x86 PC for any of its intended architectures using a cross development GNU toolchain, for example crosstool, the Embedded Linux Development Kit (ELDK) or OSELAS.Toolchain.

The importance of U-Boot in embedded Linux systems is quite succinctly stated in the book Building Embedded Linux Systems, by Karim Yaghmour, whose text about U-Boot begins, "Though there are quite a few other bootloaders, 'Das U-Boot', the universal bootloader, is arguably the richest, most flexible, and most actively developed open source bootloader available."[10]

Usages

See also

Notes

  1. ^ This is true NFS boot (U-Boot itself uses NFS to load the kernel), as opposed to loading a kernel from the network using TFTP and specifying that the kernel should use an NFS mount as its root filesystem.

References

  1. ^ Rini, Tom (2 April 2024). "U-Boot v2024.04 released". u-boot (Mailing list). Retrieved 2 April 2024.
  2. ^ "Das U-Boot's licence". git.denx.de. 2013. Retrieved 2018-10-13.
  3. ^ "Preparing a Uboot image for Altera's Cyclone V SoC FPGA".
  4. ^ "U-Boot on i.MX6". 18 June 2013.
  5. ^ "Bootloaders:u-boot:features [Analog Devices Open Source| Mixed-signal and Digital Signal Processing ICs]". Archived from the original on 2017-09-05. Retrieved 2016-06-15.
  6. ^ https://github.com/arm-software/ebbr, Embedded Base Boot Requirements (EBBR) specification, retrieved 2021-03-25
  7. ^ a b PPCBoot Homepage: Authors
  8. ^ "[PPCBoot-users] Halloween release of PPCBoot: 2.0.0 - the Final Release.", Wolfgang Denk, 31 October 2002
  9. ^ a b "U-Bootdoc History". Retrieved September 4, 2011.
  10. ^ Building Embedded Linux Systems by Kareem Yaghmour, Chapter 9
  11. ^ coreboot tutorial oscon 2013, p. 6
  12. ^ We are the SpaceX software team, ask us anything!, reply 4
  13. ^ "U Boot · AsahiLinux/docs Wiki". GitHub. Retrieved 2022-04-29.

External links

Baca informasi lainnya:

Kabinet Djumhana IIKabinet Pemerintahan Pasundan 2Dibentuk10 Januari 1949 (1949-01-10)Diselesaikan31 Januari 1949 (1949-01-31)Struktur pemerintahanKepala negaraWiranatakusumahKepala pemerintahanDjumhana WiriaatmadjaJumlah menteri7SejarahPendahuluAdilPenggantiDjumhana II Kabinet Djumhana I adalah kabinet kedua yang dibentuk oleh Negara Pasundan. Kabinet tersebut terdiri dari sembilan menteri dan satu pejabat. Masa jabatannya berlangsung dari 10 sampai 31 Januari 1949. Sejarah Pada Kabin…

Friedrich Albert LangeLahir28 September 1828Wald dekat SolingenMeninggal21 November 1875(1875-11-21) (umur 47)MarburgEraFilsafat abad ke-19KawasanFilsafat BaratAliranNeo-Kantianisme[1]Gagasan pentingKritik terhadap Materialisme Marxis Dipengaruhi Immanuel Kant, Hermann von Helmholtz[2] Memengaruhi Friedrich Nietzsche, Hermann Cohen, Eduard Bernstein Friedrich Albert Lange (Jerman: [ˈlaŋə]; 28 September 1828 – 21 November 1875) adalah seorang f…

Templat:Desa=mijil,gondang legi,sambo,cinde dan grumbulijo(goligo) Gondanglegi adalah desa di kecamatan Klego, Boyolali, Jawa Tengah, Indonesia. Pranala luar (Indonesia) Keputusan Menteri Dalam Negeri Nomor 050-145 Tahun 2022 tentang Pemberian dan Pemutakhiran Kode, Data Wilayah Administrasi Pemerintahan, dan Pulau tahun 2021 (Indonesia) Peraturan Menteri Dalam Negeri Nomor 72 Tahun 2019 tentang Perubahan atas Peraturan Menteri Dalam Negeri Nomor 137 Tahun 2017 tentang Kode dan Data Wilayah Admi…

باتريشيا غويغارو   معلومات شخصية الميلاد 17 مايو 1998 (26 سنة)  ميورقة  الطول 1.70 م (5 قدم 7 بوصة) مركز اللعب وسط الجنسية إسبانيا  معلومات النادي النادي الحالي برشلونة للسيدات الرقم 12 مسيرة الشباب سنوات فريق UD Collerense [الإنجليزية]‏ المسيرة الاحترافية1 سنوات فريق…

Pour les articles homonymes, voir Myerson. Roger Myerson Roger Myerson Données clés Naissance 29 mars 1951 (73 ans)Boston ( États-Unis) Nationalité américaine Données clés Domaines Économie Institutions Université de Chicago Diplôme Université Harvard Renommé pour Théorie des mécanismes d'incitation Distinctions Prix de la Banque de Suède en sciences économiques en mémoire d'Alfred Nobel(2007) modifier Roger Myerson (né le 29 mars 1951 à Boston) est un économiste améric…

1975 military event This article is about the historical event. For the aerobatic team, see Marche Verte. Green MarchMarches of 7 November (in green) and military action of 31 October (in red)Date6 November 1975LocationSpanish SaharaResult Madrid AgreementsTerritorialchanges Spain leaves the territory and Morocco and Mauritania partially occupy itBelligerents  Spain  MoroccoCommanders and leaders Prince Juan Carlos Carlos Arias Navarro Hassan II Ahmed OsmanUnits involved Units of Tropa…

Highest mountain in the Arabian Peninsula Jabal An-Nabī ShuʿaybJabal Hadhur[1][2][3] (جَبَل حَضُوْر)Jabal An-Nabi Shu'ayb, a peak in the Haraz Mountains, near Sanaa in YemenHighest pointElevation3,666 m (12,028 ft)[4]Prominence3,311 m (10,863 ft)[4] Ranked 62ndIsolation554 km (344 mi) ListingCountry high pointUltraCoordinates15°16′45″N 43°58′33″E / 15.27917°N 43.97583°E࿯…

Muara SipongiKecamatanPeta lokasi Kecamatan Muara SipongiNegara IndonesiaProvinsiSumatera UtaraKabupatenMandailing NatalPemerintahan • Camat-Populasi • Total- jiwaKode Kemendagri12.13.12 Kode BPS1202040 Luas- km²Desa/kelurahan15 Muara Sipongi adalah sebuah kecamatan di Kabupaten Mandailing Natal, Sumatera Utara, Indonesia. Juga merupakan sebuah kecamatan yang berbatasan langsung dengan provinsi Sumatera Barat. Batas Wilayah Wilayah Kecamatan Muara Sipongi berbatasan…

الفن والعمارة الميروفنجيةمعلومات عامةالثقافة فرنجة[1] البداية القرن 5 التأثيراتفرع من pre-Romanesque art (en) [2] — فن عصر الهجرات[3] تفرع عنها Merovingian architecture (en) — art of Merovingian illumination (en) تعديل - تعديل مصدري - تعديل ويكي بيانات كأس ذهبية من كنوز غوردون الفن الميروفنجي هو فن سلالة …

2015 American filmDanny SaysFilm posterDirected byBrendan TollerWritten byBrendan TollerProduced byPamela LubellRelease date March 18, 2015 (2015-03-18) (SXSW) Running time104 minutesCountryUnited StatesLanguageEnglish Danny Says is a 2015 documentary film on the life and times of Danny Fields. The film is directed by Brendan Toller and produced by Pamela Lubell.[1] Magnolia Pictures acquired the worldwide rights in January 2016.[2] In 2015, Danny Says was feat…

Изменение числа жителей Швеции с 1960 по 2016 г. С начала 2000-х годов происходит резкий рост населения, в основном вызванный, из-за старения населения, более либеральной иммиграционной политикой. Возрастно-половые пирамиды населения Швеции в 1860—2020 г. Возрастно-половые пир…

Синелобый амазон Научная классификация Домен:ЭукариотыЦарство:ЖивотныеПодцарство:ЭуметазоиБез ранга:Двусторонне-симметричныеБез ранга:ВторичноротыеТип:ХордовыеПодтип:ПозвоночныеИнфратип:ЧелюстноротыеНадкласс:ЧетвероногиеКлада:АмниотыКлада:ЗавропсидыКласс:Птиц…

Tawakkol Karman Premio Nobel per la pace 2011 Tawakkol Karman (in arabo توكل كرمان‎?, Tawakkol Karmān; Ta'izz, 7 febbraio 1979) è una politica e attivista yemenita, membro del partito Al-Islah (Congregazione Yemenita per la Riforma, la branca yemenita dei Fratelli Musulmani) e leader dal 2005 del movimento Ṣaḥafiyyāt bilā quyūd (in arabo صحفيات بلا قيود‎?, Giornaliste senza catene), gruppo umanitario da lei creato. Nel 2011 ha ricevuto ass…

Para otros usos de este término, véase Batman (desambiguación). Batman Personaje de DC Comics Primera aparición Detective Comics N.º 27 (30 de marzo de 1939)Creado por Bob Kane (concepto)Bill Finger (desarrollador)[1]​Interpretado por 13 actoresVersión televisiva:Lewis Wilson[2]​ (1943)Robert Lowery[3]​ (1949)Adam West (1966-1968)David Mazouz[4]​[5]​ (2014-2019)Iain Glen[6]​ (2019-2023)Versión cinematográfica:Adam West (1966)Michael Keaton (1989-1992, …

Pura Taman AyunPintu masuk bangunan ke pusatInformasi umumGaya arsitekturCandi HinduAlamatMengwi, Kabupaten Badung, BaliNegaraIndonesiaMulai dibangun1632Rampung1634Desain dan konstruksiArsitekTan Hu Cin Jin Situs Warisan Dunia UNESCONama resmiLanskap kultur Provinsi Bali: Sistem subak sebagai perwujudan dari filosofi Tri Hita KaranaJenisBudayaKriteriaii, iii, v, viDitetapkan2012 (sesi ke- 36)No. referensi1194NegaraIndonesiaKawasanAsia-Pasifik Pura Taman Ayun merupakan Pura Paibon/Pedarman R…

Spanish footballer In this Spanish name, the first or paternal surname is Palencia and the second or maternal family name is Hurtado. Sergi Palencia Palencia in 2012Personal informationFull name Sergi Palencia HurtadoDate of birth (1996-03-23) 23 March 1996 (age 28)Place of birth Badalona, SpainHeight 1.68 m (5 ft 6 in)[1]Position(s) Right-backTeam informationCurrent team Los Angeles FCNumber 14Youth career2004–2006 Badalona2006–2015 BarcelonaSenior career…

Farming approach that balances environmental, economic and social factors in the long term Shade-grown coffee, a form of polyculture (an example of sustainable agriculture) in imitation of natural ecosystems. Trees provide resources for the coffee plants such as shade, nutrients, and soil structure; the farmers harvest coffee and timber. Sustainable agriculture is farming in sustainable ways meeting society's present food and textile needs, without compromising the ability for current or future …

Pour les articles homonymes, voir Redfern (homonymie). RedfernHistoireFondation Entre 1847 et 1848CowesDissolution Janvier 1924CadreType Firme, maison de haute coutureDomaines d'activité Tailoring, dressmaking, industrie de l'habillementSiège CowesPays  Royaume-UniOrganisationFondateur John Redfern (d)Produits Tailleur, vêtement d'extérieur (en), jersey (en), veste, chemisier, amazone, costume d'enfant, Cravate (code vestimentaire) (en), lingerie, robe de cour, costumemodifier - modifie…

Taulant Xhaka CSKA Moscow versus Basel, 2017Informasi pribadiNama lengkap Taulant Ragip XhakaTanggal lahir 28 Maret 1991 (umur 33)Tempat lahir Basel, SwissTinggi 172 m (564 ft 4 in)Posisi bermain BekInformasi klubKlub saat ini BaselNomor 34Karier junior2000–2002 Concordia Basel2002–2009 BaselKarier senior*Tahun Tim Tampil (Gol)2008–2010 Basel U21 50 (6)2010– Basel 85 (3)2012–2013 → Grasshopper (pinjaman) 38 (0)Tim nasional‡2008–2009 Swiss U-17 14 (0)2009–201…

Liturgical vestment This article is about the liturgical garment. For the Roman military formation, see Maniple (military unit). A maniple The maniple is a liturgical vestment used primarily within the Latin Rite of the Catholic Church, and occasionally used by some Anglo-Catholic and Lutheran clergy. It is an embroidered band of silk or similar fabric that is hung over the left arm. It is only used within the context of the Mass, and it is of the same liturgical colour as the other Mass vestmen…

Kembali kehalaman sebelumnya