Загрузочный экран Fedora показывает логотип Fedora и логотип Lenovo. Почему и как?

28

У меня установлен старый Lenovo IdeaPad 110-15ISK с установленной Fedora 30 (и SSD-диск с шифрованием LUKS в качестве хранилища).

Когда я загружаю эту машину:

  1. Кратко отображается логотип «Lenovo» (на самом деле просто текст).
  2. Экран менеджера загрузки отображается с выбираемыми ядрами
  3. Я выбираю ядро.
  4. Кратко отображается логотип «Lenovo».
  5. Виджет для ввода текста пароля отображается с логотипом «fedora (∫)» в нижней части экрана.
  6. Я ввожу пароль для расшифровки LUKS-ifid SSD.
  7. Процесс загрузки продолжается, пока отображается следующее:
    1. Логотип "Lenovo" в центре экрана и
    2. Логотип «fedora (∫)» внизу экрана.
  8. Наконец, экран входа в KDE вступает во владение.

Почему (7) происходит? Как можно создать «гибридный логотип», если в Fedora нет специального набора логотипов производителей для отображения? Потому что в этот момент именно systemd отвечает за монитор (возможно, через кадровый буфер ). Это довольно загадочно.

Дэвид Тонхофер
источник
6
Windows 8 и более поздние версии делают то же самое. Это не специфично для Fedora, и это было давно.
Майкл Хэмптон

Ответы:

46

Это результат работы Ханса де Гуде по загрузке без мерцания в Fedora. Ганс разработал новую тему Plymouth, которая берет загрузочную прошивку и добавляет к ней логотип Fedora, пока загрузка не среда рабочего стола не вступит во владение.

Это работает, потому что логотипы начальной загрузки теперь выставляются как ресурс ACPI, который вы можете увидеть в /sys/firmware/acpi/bgrtсистемах, которые поддерживают это.

Смотрите также FAQ без мерцания . (Это также объясняет, как изменить тему Плимута так, чтобы логотип все еще отображался вместе с запросом пароля для расшифровки диска.)

Стивен Китт
источник
2

На очень низком уровне видеопамять не очищается автоматически при записи. Если процесс загрузки Fedora явно не очистит экран или не изменит режим видео, все, что он выводит на экран, будет отображаться «поверх» того, что уже есть.

Дмитрий Григорьев
источник
6
Я думал об этом, но я не помню, чтобы на экране появлялось «пиксельное дерьмо» с 90-х годов, за исключением четверти секунды или около того. Обнуление независимо от того, какой буфер находится в данный момент, - это то, что делается (особенно в процессе эстетически патрулируемой загрузки)
Дэвид Тонхофер,