论坛: UNIX系统 标题: FreeBSD高分辨率控制台设置(转) 复制本贴地址    
作者: NetDemon [netdemon]    ADMIN   登录
by Xuyifeng 

    现在我们使用的显示卡基本上都支持高分辨率,支持1024x768是很常见的, 
同样显示器比17英寸还大也是很普通的事情,但是FreeBSD下的系统控制台 
依然工作在80x25的字符模式,显得有点浪费了我的设备,特别是在编写程序 
时总是希望系统一屏能多显示几行。 
    FreeBSD下有个程序vidcontrol可以设置控制台屏幕分辨率,这里不打算介绍vidcontrol这个程序如何使用。这里以800x600的屏幕模式为例,介绍如何让控制台工作在高分辩率。 
    FreeBSD主要通过VESA 2显示卡接口标准来实现让控制台工作在图形模式, 
VESA 2标准几乎每块现代的显示卡都支持,只有很老的显示卡不支持。除了要让 
内核支持VESA 2,还必须告诉内核是否要支持控制台图形模式。这都要在内核配置文件中加入选项才行。通常的字符大小是8x16(宽x高),对于800x600的图形模式,一屏可显示的字符是100x37。具体设置步骤如下: 

    1. 建立内核配置文件graph 
       cd /sys/i386/conf 
       cp GENERIC graph 
       编辑配置文件graph,在其中加入两行: 
       options   VESA 
       options   SC_PIXEL_MODE 
       第一行选项让�群酥С�VESA 2,第二行让内核支持控制台图形模式。 
        
   2.  编译并安装内核 
       config -r graph 
       cd ../../compile/graph 
       make depend 
       make 
       make install 
       重新启动: 
       reboot  
        
   3.  激活高分辨率模式 
       登录入系统后,在控制台下输入: 
       vidcontrol -g100x37 VESA_800x600 
       你应该能看到系统切换到高分辩率模式下面,如果显示器有点显示的歪斜,你可以调整显示器。 
        
如果想让系统每次启动时能自动切换到高分辨率模式,可以在文件/etc/rc.conf中加入如下一行: 
       allscreens_flags="-g100x37 VESA_800x600" 
再重新启动,这个配置就生效了。 

遗憾的是我不能在内核引导时就让系统切换到高分辨率模式,系统不支持我在 
/boot/loader.conf中设置分辨率,系统是在启动init进程再启动一些服务后才 
这样做的。 
    以上设置需准对FreeBSD 4.2以上版本进行。 


地主 发表时间: 06/28 05:47

论坛: UNIX系统

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号