Framebuffer в консоли

фреймбуфер

Framebuffer — это такая классная штука, которая позволяет нам в текстовом режиме увидеть больше символов чем 80x25, да еще посмотреть картинки и фильмы поверх текста. В дословном переводе означает «кадровый буфер». Когда мы включаем свой компьютер, мы в большинстве своем видим при загрузке как lilo обращается через BIOS к нашей видюхе, а затем и ядро (уже напрямую) выдает на консоль все в том же режиме 80х25. Возникает вопрос — почему же мы владельцы наикрутейших видеокарт с поддержкой vesa 2.0 (с s3tri64v2) и vesa 3.0 (начиная вроде с ривы) должны пользоваться этим наследием доисторических времен, когда компьютеры были большими а программы — маленькими?

Framebuffer — это такая классная штука, которая позволяет нам в текстовом режиме увидеть больше символов чем 80x25, да еще посмотреть картинки и фильмы поверх текста. В дословном переводе означает «кадровый буфер». Когда мы включаем свой компьютер, мы в большинстве своем видим при загрузке как lilo обращается через BIOS к нашей видюхе, а затем и ядро (уже напрямую) выдает на консоль все в том же режиме 80х25. Возникает вопрос — почему же мы владельцы наикрутейших видеокарт с поддержкой vesa 2.0 (с s3tri64v2) и vesa 3.0 (начиная вроде с ривы) должны пользоваться этим наследием доисторических времен, когда компьютеры были большими а программы — маленькими?

Дальше смотрим в /usr/src/linux/Documentation/fb/vesafb.txt ( /usr/src/kernel/`uname -r/Documentation/fb/vesafb.txt` в asplinux) И что же мы видим?
640x480 800x600 1024x768 1280x1024 
 256   0x301   0x303    0x305   0x307 
 32k   0x310   0x313    0x316   0x319 
 64k   0x311   0x314    0x317   0x31A 
 16M   0x312   0x315    0x318   0x31B
Это список нужных нам режимов. Т.к. vesa 2.0 не поддерживает смену частоты развертки все режимы на частоте 60Hz… В следующей версии этой статьи будет как этот досадный факт исправить. Открываем /etc/lilo.conf (если у вас в качестве загрузщика lilo) и добавляем(!!!) вместе с новым ядром строчку типа vga=… вы думаете это число из таблицы? А нифига — берите калькулятор и пересчитывайте все в десятичную систему счисления. для ленивых: табличка в десятичном варианте.

       640x480 800x600 1024x768 1280x1024 
 256     769     771      773      775 
 32k     784     787      790      793 
 64k     785     788      791      794 
 16M     786     789      792      795
Именно добавляем а не исправляем. Не спрашивайте почему.
image = /boot/vmlinuz 
root = /dev/hda2 
label = Linux-fb 
read-only 
vga=[режим] 
p.s. для груба это выглядит приблизительно так: grub писал(а):
title Linux 
root (hd0,2) 
kernel /vmlinuz ro root=/dev/vol1/fc7_root rhgb quiet vga=[режим] 
initrd /initrd
  • 27 января 2011, 13:38
  • Oden

Комментарии (0) Вконтакте (0) facebook ()

Комментарии (0)

RSS свернуть / развернуть

комментировать

Ваше имя
Ваш e-mail (будет скрыто и используется только для отправки ответов на ваш комментарий)
Вы — гость, и вам запрещено использовать HTML-теги.
 
Введите цифры и буквы: