История изменений
Исправление Pinkbyte, (текущая версия) :
если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен
Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.
Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый, «настоящий» корень, указанный как root= в опциях ядра.
Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb, когда фрэймбуффер инициализируется еще в загрузчике(или даже еще раньше) и управлением им просто передается дальше
Копать в сторону grub gfx payload keep
Исправление Pinkbyte, :
если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен
Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.
Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый, «настоящий» корень, указанный как root= в опциях ядра.
Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb, когда фрэймбуффер инициализируется еще в загрузчике(или даже еще раньше) и управлением им просто передается дальше
Исправление Pinkbyte, :
если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен
Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.
Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый, «настоящий» корень, указанный как root= в опциях ядра.
Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb
Исходная версия Pinkbyte, :
если ядро не видит /sbin/v86d, initrd тут каким боком? ведь для работы инитрд тоже корень нужен
Фишка в том, что initrd и есть этот корень. Погугли как происходит загрузка ядра с initrd.
Загрузчик передает управление ядру -> ядро подгружает initrd как корневую ФС -> грузится v86d из initrd(тут экран в традиционных FB моргает), другие действия необходимые для поиска настоящего корня(lvm, рэйд, внешние драйвера для ФС - например zfs) -> switch_root/pivot_root в новый корень.
Чтобы экран вообще не моргал, нужно чтобы поддержка фрэймбуффера была сквозной в загрузчике и ядре. Такое достигается, например с помощью efi fb