[devel-distro] full.cz или initrd.img

Leonid Krivoshein klark.devel at gmail.com
Mon Feb 14 21:53:51 MSK 2022


14.02.2022 5:52, Антон Мидюков пишет:
> [...]
> 2. Унифицируется сборка initrd.img с propagator и bootchain Используется одинаковый алгоритм добавления модулей ядра.
> [...]
> В связи с этим, мне кажется, стоит выкинуть из mkimage mki-build-propagator, а вместо него добавить mki-make-initrd,

Дело хорошее, но надо учесть, что full.cz собираемый 
make-initrd-propagator, состоит из трёх кусков (чанок), выравненных по 
границе в 4Кб, а initrd.img -- из одного или двух кусков. Первый кусок, 
обычно, это микрокод процессора для ucode. Второй кусок -- основной 
образ initrd. Третий кусок -- отдельный слой корневой ramfs с модулями 
ядра и firmware. Часть из них местами попадает во второй кусок. В 
initrd.img с bootchain второй и третий кусок сейчас объединены в один.

Полагаю, изначальное разделение на три куска было сделано неслучайно. 
Микрокод процессора иначе не загрузится. Код ядра обычно сжат, он 
грузится загрузчиком отдельно. Образ initrd (второй слой) тоже есть 
смысл сжимать, загрузчик его распаковывает при загрузке. Слой с модулями 
ядра нет смысла сжимать в большинстве случаев, так как каждый модуль уже 
сжат отдельно и ядро само умеет загружать модули в таком виде. Насчёт 
файлов firmware я не анализировал, возможно ей место во втором куске.


-- 
Best regards,
Leonid Krivoshein.



More information about the devel-distro mailing list