Представлен вариант Linux-прошивки, загружающейся за 300 мс.

Компания Make Linux сообщила о создании одного из самых быстрозагружаемых окружений Linux. От начала загрузки до запуска рабочей командной оболочки на основе BusyBox тратится всего 300 мс.

Загрузка была продемонстрирована на плате Beagle Board, снабженной процессором 720 MHz ARM Cortex-A8, SoC OMAP3530 и NAND flash-памятью. Кроме подготовки базового Linux-окружения, обеспечивающего минимальное время загрузки на стандартных встраиваемых системах, также была поставлена задача подготовки программной платформы для создания более функциональных систем, построенных поверх быстрозагружаемой основы.

Процесс загрузки был сведен к следующим стадиям:
* 330 мс требуется на первичную инициализацию оборудования после включения питания. В случае горячего перезапуска (reset) на инициализацию уходит 70 мс. После этой фазы управление передается непосредственно загрузчику;
* 237 мс тратится на загрузку образа системы размером 1.5 Мб с NAND Flash. Скорость загрузки составляет примерно 6 Мб/сек;
* Запуск кода производится за 60 мс или 43 миллиона циклов CPU (для более быстрых процессоров время выполнения будет меньше, но число циклов является постоянной величиной);
* Как видно из лога загрузки, наибольшее время тратится на копирования прошивки из Flash в оперативную память.

Состав прошивки:
* Загрузчик: оптимизированный x-loader, без задействования u-boot (на выполнение U-Boot уходит более 400 мс);
* Linux-ядро версии 2.6.32 из пакета DVSDK 3.01. Ядро использовано в минимальной конфигурации, размер собранного ядра составляет примерно 900 Кб. (В процессе обсуждения высказано мнение, что подобное урезанное ядро мало подходит для выполнения реальных задач. Например, в представленной сборке отключен сетевой стек и другие важные функции, оставлен только самый минимум, необходимый для запуска командной оболочки. С другой стороны, ранее уже были представлены Linux-системы, на загрузки и запуск Qt-приложения в которых уходит примерно одна секунда, из которой 400 мс уходило на работу U-Boot);
* Пользовательское программное обеспечение: статически собранный BusyBox v1.16.2 c оболочкой hush. Размер примерно 600 Кб.
* Корневая файловая система была интегрирована в образ Linux-ядра;
* Размер ядра и вмонтированной в него файловой системы составил 1.5 Мб.

Читайте также:

10 інструментів, які допоможуть знайти та видалити найбільші файли на диску

Windows падає, а Linux росте: що відбувається на світовому ринку настільних операційних систем

Как open source ПО изменит будущее автоиндустрии

З Днем народження, Linux