Я прочитал этот популярный документ IBM (я часто упоминаю в Интернете), объясняющий функцию начального RAM-диска.
Я наткнулся на стену, осмысливая, как это работает.
В документе сказано
Загрузчик, такой как GRUB, идентифицирует ядро, которое должно быть загружено, и копирует этот образ ядра и любой связанный initrd в память
Я уже запутался: копирует ли оно все ядро в память или только его часть? Если все ядро находится в памяти, зачем нам вообще нужен начальный RAM-диск?
Я думал, что целью initrd было иметь возможность иметь небольшой обобщенный образ ядра, и initrd установит в него правильные модули перед загрузкой образа ядра. Но если все ядро уже находится в памяти, зачем нам нужен initrd?
Это также поднимает еще одну вещь, которая смущает меня - где находятся модули, которые загружаются в ядро? Все ли модули ядра хранятся в initrd?