在console模式(也就上文本顯示,也是text模式),說直接一點,就是全屏是黑色的,象DOS那樣的界面的,在桌面環(huán)境下,按CTRL+ALT+F2 或者F3 等,就進入console模式了。就是完全文本命令操作的那種非圖形桌面環(huán)境。
用 framebuffer 驅(qū)動及配置,主要是能讓text模式下找到更適合的觀感。
一、讓console 模式下分辨率起作用的主要配置文件是 lilo.conf 或者 grub.conf , lilo.conf 是lilo系統(tǒng)引導(dǎo)管理器的配置文件,如果您用這個來引導(dǎo)系統(tǒng),就要配置 lilo.conf文件;grub.conf 是另一個系統(tǒng)引導(dǎo)管理器grub的配置文件。這兩個系統(tǒng)引導(dǎo)管理器,其作用是一樣的,只是實現(xiàn)的方法不太一樣。這兩個管理器不能同時使用。
二、framebuffer console的參數(shù)如下,主要是分辨率;
# 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
如果看不懂上面的這個,就看下面的這個,對照著看吧
# 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
三、配置[對于大多數(shù)Linux發(fā)行版,如果您是用系統(tǒng)自帶的內(nèi)核,內(nèi)核是支持 framebuffer 驅(qū)動的。您可以用直接用下面的方法來做]
1.對于grub系統(tǒng)引導(dǎo)管理器的配置方法;
如果您用 grub來引導(dǎo),要修改 /etc/grub.conf 或者 /boot/grub/menu.lst ,其實這兩個文件都是一樣的,因為 grub.conf 是 menu.lst的鏈接。
比如我沒有修改過的grub.conf 是這樣的:
說明一下:我的機器目前安裝了三個操作系統(tǒng),一個是xp 另一個是Fedora core 4.0 ,還有一個是 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
我們要參照上面的參數(shù)表,對照看著在您要改變的 Linux 的 console分辨率的那個 kernel 一行的后面加上 vga=xxx ,這里的 xxx,就是通過上面的參數(shù)表中查出來的。
比如我是 15寸的液晶顯示器,我看看一下 1024x768x256是不是適合,所以我就在 kernel 那行的后面打一個空格后,加上了 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
這樣改過保存后,重啟系統(tǒng),進入相應(yīng)的 Linux ,就知道是不是起作用了。比如發(fā)現(xiàn) vga=773對我來說有點不適合??梢栽僬疑厦娴膮?shù)來改一下就行了。
2.對于 lilo引導(dǎo)管理器的配置方法;
我們要改 /etc/lilo.conf這個文件;lilo的配置比較簡單,因為vga=xxx是獨立的一行。并且lilo.conf中有詳細的配置參數(shù),也就是我上面列出的那些,就是來自 lilo.conf的。想打開哪個參數(shù),就把vga=xxx前面的#號去掉就行,當(dāng)然不能同時打開多個。
注意的是:如果改了lilo.conf后,得執(zhí)行 lilo -v
四、對于自編譯內(nèi)核的,需要注意以下幾點。
1.在編內(nèi)核時,要選中如下的選項;以加入 framebuffer 驅(qū)動的支持;
[*] 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的驅(qū)動,所以也要一并選中,比如
<*> nVidia Framebuffer Support
<*> ATI Radeon display support
在查看內(nèi)核選項是,用 shift鍵+?號的組合鍵,就能看到詳細情況;
后記:我對 framebuffer原理不明白,以我的水平也根本懂不了;我寫的東西可能在句法中不通或者說是一點也不對。我只能以我應(yīng)用的來說明,僅此而已;一切都是為了應(yīng)用;
請弟兄們補充和訂正,謝謝~
參考資料:
lilo說明文檔,內(nèi)核說明文檔;grub說明文檔等;
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。