解决/dev/fb0无法打开的问题
(2008-07-09 15:39:03)
转载▼
标签:
杂谈
分类:
Linux学习文档
最近要在Linux做基于frame Buffer的图形显示,不论我在独立分区的Linux
FC6系统中,还是在装有Red
hat9的VPC中,都无法打开/dev/fb0。从网上找了很多资料,都没能解决。经过几天的的郁闷
之后,终于解决了这个问题。先记录如下:
1、首先确认对Frame
Buffer的支持是否编译到Linux的内核中。在安装的Linux中,默认都会把这个支持打开编译
到内核中。但是如果自己重新编译了内核,或者升级内核,得确认把Frame
Buffer的支持编入内核,并且还要把Console display driver
support编译到内核中,还要把Logo configuration编译到内核中。这些选项都在Device
drivers下的graphics support选项下。
2、在启动项中打开对Frame Buffer的支持。由于虽然把对Frame
Buffer的支持编译到内核中了,但是默认下是没有打开的。故要修改/boot/grub/menu.lst文件
。在该文件的kernel那一行后面加上vga=0xXXX,0xXXX表示的是屏幕的分辨率和色彩数。
其中vga=0x后面的数值可以从下表中查出。
色彩数
640 X 480
800X600
1024X768
1280X1024
256
0x301
0x303
0x305
0x307
32k
0x310
0x313
0x316
0x319
64k
0x311
0x314
0x317
0x31A
16M
0x312
0x315
0x318
0x31B
我原先的/boot/grub/menu.lst文件如下:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/hda3
# initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Linux (2.6.18)
root (hd0,0)
kernel /vmlinuz-2.6.18 ro root=LABEL=/
initrd /initrd-2.6.18.img
title Red Hat Linux (2.4.20-8)
评论0