在console模式(也就上文本顯示,也是text模式),說(shuō)直接一點(diǎn),就是全屏是黑色的,象DOS那樣的界面的,在桌面環(huán)境下,按CTRL+ALT+F2 或者F3 等,就進(jìn)入console模式了。就是完全文本命令操作的那種非圖形桌面環(huán)境。
用 framebuffer 驅動(dòng)及配置,主要是能讓text模式下找到更適合的觀(guān)感。
一、讓console 模式下分辨率起作用的主要配置文件是 lilo.conf 或者 grub.conf , lilo.conf 是lilo系統引導管理器的配置文件,如果您用這個(gè)來(lái)引導系統,就要配置 lilo.conf文件;grub.conf 是另一個(gè)系統引導管理器grub的配置文件。這兩個(gè)系統引導管理器,其作用是一樣的,只是實(shí)現的方法不太一樣。這兩個(gè)管理器不能同時(shí)使用。
二、framebuffer console的參數如下,主要是分辨率;
# Colours 640x480 800x600 1024x768 1280x1024 1600x1200
# --------+---------------------------------------------
# 256 | 769 771 773 775 796
# 32,768 | 784 787 790 793 797
# 65,536 | 785 788 791 794 798
# 16.8M | 786 789 792 795 799
如果看不懂上面的這個(gè),就看下面的這個(gè),對照著(zhù)看吧
# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
三、配置[對于大多數Linux發(fā)行版,如果您是用系統自帶的內核,內核是支持 framebuffer 驅動(dòng)的。您可以用直接用下面的方法來(lái)做]
1.對于grub系統引導管理器的配置方法;
如果您用 grub來(lái)引導,要修改 /etc/grub.conf 或者 /boot/grub/menu.lst ,其實(shí)這兩個(gè)文件都是一樣的,因為 grub.conf 是 menu.lst的鏈接。
比如我沒(méi)有修改過(guò)的grub.conf 是這樣的:
說(shuō)明一下:我的機器目前安裝了三個(gè)操作系統,一個(gè)是xp 另一個(gè)是Fedora core 4.0 ,還有一個(gè)是 Slackware 10.1
代碼:
default=1
timeout=5
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
#hiddenmenu
title Fedora Core (2.6.11-1.1369_FC4)
root (hd0,7)
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet
initrd /boot/initrd-2.6.11-1.1369_FC4.img
title Slack
root (hd0,8)
kernel /boot/vmlinuz ro root=/dev/hda9
title WinXp
rootnoverify (hd0,0)
chainloader +1
我們要參照上面的參數表,對照看著(zhù)在您要改變的 Linux 的 console分辨率的那個(gè) kernel 一行的后面加上 vga=xxx ,這里的 xxx,就是通過(guò)上面的參數表中查出來(lái)的。
比如我是 15寸的液晶顯示器,我看看一下 1024x768x256是不是適合,所以我就在 kernel 那行的后面打一個(gè)空格后,加上了 vga=773
代碼:
default=1
timeout=5
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
#hiddenmenu
title Fedora Core (2.6.11-1.1369_FC4)
root (hd0,7)
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet vga=773
initrd /boot/initrd-2.6.11-1.1369_FC4.img
title Slack
root (hd0,8)
kernel /boot/vmlinuz ro root=/dev/hda9 vga=773
title WinXp
rootnoverify (hd0,0)
chainloader +1
這樣改過(guò)保存后,重啟系統,進(jìn)入相應的 Linux ,就知道是不是起作用了。比如發(fā)現 vga=773對我來(lái)說(shuō)有點(diǎn)不適合??梢栽僬疑厦娴膮祦?lái)改一下就行了。
2.對于 lilo引導管理器的配置方法;
我們要改 /etc/lilo.conf這個(gè)文件;lilo的配置比較簡(jiǎn)單,因為vga=xxx是獨立的一行。并且lilo.conf中有詳細的配置參數,也就是我上面列出的那些,就是來(lái)自 lilo.conf的。想打開(kāi)哪個(gè)參數,就把vga=xxx前面的#號去掉就行,當然不能同時(shí)打開(kāi)多個(gè)。
注意的是:如果改了lilo.conf后,得執行 lilo -v
四、對于自編譯內核的,需要注意以下幾點(diǎn)。
1.在編內核時(shí),要選中如下的選項;以加入 framebuffer 驅動(dòng)的支持;
[*] VGA text console[*] Video mode selection support[*] Support for frame buffer devices (EXPERIMENTAL)[*] VESA VGA graphics console[*] Advanced low level driver options
<*> 8 bpp packed pixels support
<*> 16 bpp packed pixels support
<*> 24 bpp packed pixels support
<*> 32 bpp packed pixels support
<*> VGA characters/attributes support[*] Select compiled-in fonts[*] VGA 8x8 font[*] VGA 8x16 font
2,我們還要知道自己所用的顯示卡,也有 framebuffer的驅動(dòng),所以也要一并選中,比如
<*> nVidia Framebuffer Support
<*> ATI Radeon display support
在查看內核選項是,用 shift鍵+?號的組合鍵,就能看到詳細情況;
后記:我對 framebuffer原理不明白,以我的水平也根本懂不了;我寫(xiě)的東西可能在句法中不通或者說(shuō)是一點(diǎn)也不對。我只能以我應用的來(lái)說(shuō)明,僅此而已;一切都是為了應用;
請弟兄們補充和訂正,謝謝~
參考資料:
lilo說(shuō)明文檔,內核說(shuō)明文檔;grub說(shuō)明文檔等;
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。