LINUX.ORG.RU

Показать splash image пока грузится большого размера initrd

 , , , ,


0

1

Ситуация: есть live Linux дистрибутив, при этом все модули и ПО должны быть в initrd image, а ядро содержит как можно меньше buil-in модулей. Итак, начинается загрузка:..., bootloader (например, grub или isolinux) грузит ядро, которое потом загрузит и разархивирует нам initrd в память RAM. Когда происходит процесс разархивации (20-30сек на старых машинах), на экране ничего не отображается. Вопрос такой: можно ли показать splash screen в процессе разархивирования initrd? Можно ли и как вставить статическую картинку в ядро (в framebuffer)? Или можно сделать то же самое, но хакнув видео драйвер?


Можно ли и как вставить статическую картинку в ядро (в framebuffer)?

~linux/Documentation/fb/framebuffer.txt

Можно:

struct pixel {
       unsigned red;
       unsigned green;
       unsigned blue;
       unsigned alpha; //этого может и не быть
};

...
int i;
struct pixel *pxl = (struct pixel *)video_mem;
for (i=0; i<xres*yres*bits_per_pixel/8; i++, pxl++) {
           pxl->red = 0xff;
}
Окрасит экран в красный цвет.

В общем, нет времени всё тут писать.

Dennis7
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.