Das U-Boot

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Das U-Boot
Логотип программы Das U-Boot
Скриншот программы Das U-Boot
Тип свободное и открытое программное обеспечение и загрузчик операционной системы
Разработчик DENX Software Engineering
Написана на Си и язык ассемблера
Первый выпуск 15 октября 1999; 24 года назад (1999-10-15)
Последняя версия
Репозиторий source.denx.de/u-boot/u-…
Лицензия GNU GPL 2[2]
Сайт docs.u-boot.org/en/lates…

Das U-Boot (англ. Universal bootloader — универсальный загрузчик, от нем. Das U-Boot — подводная лодка) — компьютерный загрузчик операционной системы, ориентированный на встроенные устройства архитектур MIPS, PowerPC, ARM и другие. Может быть установлен в загрузочную ПЗУ. Разработка ориентирована на Linux. Распространяется под лицензией GNU GPL.

История[править | править код]

Началом проекта является 8xx загрузчик PowerPC, называемый 8xxROM, написанный Магнусом Даммом. В октябре 1999 года Вольфганг Денка переместил проект на SourceForge.net и переименовал его в PPCBoot, потому что SF.net не позволял называть проект именами, начинающимися с цифр. Версия 0.4.1 PPCBoot впервые была публично выпущена 19 июля 2000.

В 2002 году предыдущая версия исходного кода была на короткое время раздвоена в продукте под названием ARMBoot, но вскоре после этого была обратно объединена в проект PPCBoot.

В ноябре 2002 — был выпущен PPCBoot 2.0.0. Это был последний выпуск под названием PPCBoot, так как он был переименован, чтобы отразить поддержку ARM-архитектуры в дополнение к PPC ISA.

PPCBoot-2.0.0 стал U-Boot-0.1.0 в ноябре 2002 г. с добавлением поддержки архитектуры x86. Дополнительная поддержка архитектуры была добавлена в последующие месяцы: MIPS32 — в марте 2003 года, MIPS64 — в апреле, Altera NIOS-32 — в октябре, Coldfire — в декабре, а Microblaze — в апреле 2004 года. В мае 2004 года выпуска U-Boot-1.1.2 включена поддержка 216 различных производителей плат с различными архитектурами.

В нынешнее название «Das U-Boot» добавлен немецкий определенный артикль, чтобы создать двуязычный каламбур с немецким словом «подводная лодка».

Это свободное программное обеспечение, распространяемое по условиям лицензии GNU GPL. Оно может применяться на любой поддерживаемой архитектуре с использованием кросс-разработки GNU-инструментария, например, crosstool, Embedded Linux Development Kit (ELDK) или OSELAS.Toolchain.

Важность Das U-Boot в Embedded Linux систем достаточно лаконично изложена в книге Embedded Linux системы, Карим Ягмур. Текст о U-Boot начинается словами:

Хотя существует довольно много других загрузчиков, Das U-Boot, универсальный загрузчик, возможно, является самым богатым, самым гибким и наиболее активно развивающимся из загрузчиков с открытым исходным кодом.

Поддерживаемые файловые системы[править | править код]

[3]

Используется[править | править код]

Используется в некоторых моделях устройств от компании «ZTE».

Сетевое оборудование компании Ubiquiti все использует U-Boot, как линейка EgdeXxx, так и линейка Unifi.

Также U-Boot используется в роутерах TP-Link бытового сегмента.

Особенности[править | править код]

Das U-Boot значительно отличается от загрузчиков, знакомых пользователям x86 PC. Он берет на себя большую часть задач, за которые на PC отвечает firmware системной платы, а потому требует портирования на каждое конкретное устройство для сборки работоспособного на этом устройстве образа, содержащего информацию про оборудование и драйверы. В коммерческих устройствах в firmware обычно определен фиксированный механизм загрузки со встроенного накопителя предоставленного производителем образа u-boot, в котором, в свою очередь, определен фиксированный механизм загрузки ядра ОС.

Таким образом, в подобных устройствах U-Boot по сути является частью firmware — в случае его стирания восстановление работоспособности устройства нетривиально, а загрузка со съёмных накопителей принятым на PC способом невозможна.

См. также[править | править код]

Примечания[править | править код]

Ссылки[править | править код]