红联Linux门户
Linux帮助

一个无解的问题----文本模式1440*900分辨率

发布时间:2011-10-06 23:31:12来源:红联作者:biergaizi
[i=s] 本帖最后由 biergaizi 于 2011-10-7 10:50 编辑 [/i]

我用的是Fedora 15,Nvidia显卡。
安装完系统后不能用Gnome3,在文本模式下顺利编译安装了Nvidia闭源驱动,顺利开启Gnome3.

但是这导致了文本模式的分辨率底下,以前我用标准显示器,只要背一个vga=792加到内核参数上就好了。但现在,我使用的是1440*900的宽屏显示器。
我在Wikipedia上看到了1440*900的数字:864\865\866\867\868,而且上面说,不兼容所有显卡。我试试,果然如此,内核告诉我没有这个模式,还告诉我支持的模式在1024*768以上的只有1280*1024、1600*1200。

看来是显卡BIOS没有这个模式了。

看来这个问题是无解了,但我仍然期待奇迹!
文章评论

共有 5 条评论

  1. gogo11 于 2011-10-09 11:03:16发表:

    [i=s] 本帖最后由 gogo11 于 2011-10-9 11:06 编辑 [/i]

    刚才看到了这么一篇,给你作参考:

    引用:
    fb设备提供了一个图形硬件的抽象层,代表某些视频硬件的帧缓冲,帧缓冲可以直接通过规范定义的接口供软件访问(/dev/fb*)。我们熟知的Xwindows有一个非加速X服务器,XF86_FBDev就是使用帧缓冲驱动,该驱动最早出现于XFree86 3.2版本中,现在已很成熟。
    帧缓冲在各种显卡硬件各有不同,如ATI Rage128提供了自己的帧缓冲,Cirrus Logic,Matrox,PowerVR 2,都有自己的帧缓冲,TGA,VESA,是两种帧缓冲设备标准,VESA由于被大多数现代显卡所具有,所以使用的较为广泛。不同的帧缓冲设备需要在内核编译时使用不同的驱动。所以欲使用帧缓冲必须要拥有具有帧缓冲能力的显示卡。并且不同显卡对帧缓冲的支持能力也不同,如可以使用的分辨率模式(1024*768或800*600)及其下的色深。

    fb在linux的出现目的最初是为了在linux内核启动开始后,显示linux的logo图标(小企鹅),才增加入内核(是不是觉得有点无聊),这种东西是通过在内核启动时在未进入保护模式之前在bios的帮助下将显卡工作模式置于FB模式下,当然以后我们也不可能再切换回来了,因为大家知道在80x86的保护模式中我们无法使用底层bios功能。
    后来当然就开始使用它为linux文本控制台提供更大的字体和显示分辨率(如1024*768 32位真彩色),并且可以使用很cool的字体,以区别于80x25列的令人枯燥的文本字体。例如你可以让linux的文本界面像黑客帝国里的尼奥的电脑。Linux2.0之后的内核,你都可以通过在内核启动参数(一般在grub或lilo的配置文件中内核镜像文件名之后)中加一条vga= 让linux在启动时进入帧缓冲控制台模式,linux内核模式号如下:
    linux内核模式号 = VESA模式号+ 0x200
    所以linux内核模式号如下表
    | 640x480 800x600 1024x768 1280x1024
    ----+-------------------------------------
    256 | 0x301 0x303 0x305 0x307
    32k | 0x310 0x313 0x316 0x319
    64k | 0x311 0x314 0x317 0x31A
    16M | 0x312 0x315 0x318 0x31B
    如果启动时出现问题,大多数情况下是显卡的问题。

    后来有人使用它为其它的国家语言提供语言平台,如我们的中文平台zhcon就是使用fb来显示中文字体。
    当然还有就是前面提到过的X Server:XF86_FBDev


    我感觉这一句最重要:通过在内核启动时在未进入保护模式之前在bios的帮助下将显卡工作模式置于FB模式下

    安装ATI显卡好像不用禁用什么,说不定可以~~~~~~

  2. eku123 于 2011-10-09 11:01:04发表:

    换显卡显示器

  3. crookoo 于 2011-10-07 15:59:45发表:

    随便看看

  4. biergaizi 于 2011-10-07 10:31:51发表:

    2# gogo11
    我已经禁用Nouveau了,其实众所周知,不禁用Nouveau连Nvidia闭源驱动都是装不进去的。
    关键的问题是我说的分辨率!

  5. gogo11 于 2011-10-07 08:11:24发表:

    禁用了Nvidia内核自带驱动,应该和这个有关!
    我用windows下的理解linux,linux内核不能使用neavou drivers,因为nvidia官方驱动加载的晚(因为安装的时候先要禁用neavou),所以设置分辨率时导致内核只能使用一个标准驱动,造成没有其他分辨率的情况。