Re: text console history size
On Tue, 25 Oct 2005 12:49:52 +0400 Max Dmitrichenko wrote:
MD> В сообщении от 25 Октябрь 2005 12:34 Mikolaj Golub написал(a):
>>
>> >> > Подскажите где можно(можно ли) выставить(увеличить) размер history,
>> >> > которая работает в консоли при нажатии клавиш Shift+PageUp/PageDown
>> >> На сколько я знаю для этого используется видеопамять, причем вся.
>> >> Поэтому вряд ли.
>>
>> PA> Думаешь, все 256Mb этой видеопамяти? ;)
MD> Будешь смеяться? А ты включи фрейм-буфер и попробуй поскроль :) Размер
MD> истории будет зависеть от след. параметров:
MD> - кол-во видеопамяти;
MD> - кол-во цветов;
MD> - разрешение.
MD> Теперь давай улыбнемся вместе :)
Смотрим с интересом в video/console/fbcon.c:
scrollback_phys_max = p->vrows - vc->vc_rows;
p->vrows = info->var.yres_virtual/fh;
Далее в video/vesafb.c:
vesafb_defined.yres_virtual = vesafb_fix.smem_len / vesafb_fix.line_length;
И наконец в vesafb_probe():
/* Allocate enough memory for double buffering */
vesafb_fix.smem_len = screen_info.lfb_width * screen_info.lfb_height * vesafb_defined.bits_per_pixel >> 2;
/* check that we don't remap more memory than old cards have */
if (vesafb_fix.smem_len > (screen_info.lfb_size * 65536))
vesafb_fix.smem_len = screen_info.lfb_size * 65536;
/* Set video size according to vram boot option */
if (vram)
vesafb_fix.smem_len = vram * 1024 * 1024;
vesafb_fix.visual = (vesafb_defined.bits_per_pixel == 8) ?
FB_VISUAL_PSEUDOCOLOR : FB_VISUAL_TRUECOLOR;
/* limit framebuffer size to 16 MB. Otherwise we'll eat tons of
* kernel address space for nothing if the gfx card has alot of
* memory (>= 128 MB isn't uncommon these days ...) */
if (vesafb_fix.smem_len > 16 * 1024 * 1024)
vesafb_fix.smem_len = 18 * 1024 * 1024;
Т.е. для vesafb не более 16MB. Кстати и педаль для размера скроллбуфера
обнаружилась -- загрузочный параметр vram.
--
to my, trociny
Reply to: