Linux设备配置之显卡配置,NVIDIA显卡驱动FOR

随着3D图形显示芯片的激烈市场竞争,S3、3Dfx、Matrox
、Trident等一些老牌3D显示芯片生产厂商已经渐渐退出了市场。nVIDIA、ATi、Intel三家生产厂商占有95%以上的市场份额。在Linux安装3D显卡的驱动是有一定难度的。升级Linux驱动程序需要做一系列的决定,包括正确识别处理器配置状况,查明驱动程序工作在什么样的Linux内核当中。在Linux中使用的图形显示系统是X-Window,但是由于与常见的MS
Windows系统有很大的差异,所以在使用时,即使有时面对的是很小的问题,却不知才能如何解决,比如无法驱动显卡,显示器参数错误,花屏,图形界面无法启动等。这里首先向大家讲述,X-Window的概述,如何安装主流3D显卡的驱动程序,相关的配置文件,以及参数调整等内容。本文应用环境是RedHat
Linux 9.0。

Linux下设备的配置过程是指在检测到设备类型、设备当前工作参数等信息之后,使用这些信息来配置设备的驱动程序,工作方式等,设备的检测过程参见
《如何在Linux下实现硬件的自动检测》)。要完成这样的任务,需要做两方面的工作:

  一、X-Window和显卡配置文件的概述

其一是需要一个详尽的设备信息文件,这个文件描述了设备标识、与设备标识对应的设备驱动程序、设备配置参数设备选项)、设备设置的详细描述、设备配置方法描述、设备对应的别名、设备的主设备号等信息。

  XFree86是X
Window系统的一种开放源代码的实现。它提供了一种对鼠标、键盘、显卡和窗口图形环境的Client-Server接口。所以客户端程序可以运行在不同的主机上,由一台服务器提供X
Window的Server服务。X Client将希望显示的图形发送到X Server,X
Server将图形显示在显示器上,同时为X
Client提供鼠标键盘的输入服务。可以将X的Server和Client分别运行在两台计算机上,使用startx命令可以启动X-Window,在同一台计算机上同时运行的Server和Client,通常运行startx后,首先启动的是XFree86,它是Linux平台最常用的X的Server端,然后,又运行X的Client程序,如startkde(KDE的启动程序)或gnome-session(GNOME的启动程序),他们利用X协议连接本机的X
Server,将图形显示出来。X-Window的
C/S结构还拥有网络特性这是微软操作系统没有的,以将X的Server和Client分别运行在两台计算机上,甚至可以安装一些软件,让Windows作为X
Server,让Linux作为Client,将KDE或GNOME等桌面环境显示到Windows主机上来。图1是X-Window工作原理图。

其二是需要根据设备的类型,以及安装的linux系统版本不同的Linux发行版对于同一设备的配置脚本文件存在差异),设置设备对应的配置脚本文件。

图片 1

窗口系统XFree86)的配置过程

Linux的X
Server程序就是XFree86,它的任务是驱动显示卡、显示器、鼠标、键盘等设备,为X
Client提供显示服务、输入服务等。XFree86的主要文件是:

1. 显示卡的描述文件介绍CardDB)

/usr/X11R6                   XFree86文件所在的主要目录

CardDB是X配置程序使用的显示卡数据文件。在对XFree86进行配置时,配置程序一般都需要读取其上的内容完成显示卡的配置。它的内容与使用的XFree86的版本密切相关。一般而言,它保存的位置是在/usr/X11R6/lib/X11/目录下。现在我们就对XFree86
4.1.0的CardDB文件进行简单的介绍:

/usr/X11R6/bin                XFree86的可执行程序文件

NAME

/usr/X11R6/lib/modules/drivers         XFree86自带的驱动程序所在的目录

显示卡的描述名称

/etc/X11         X的配置文件及启动脚本所在目录

CHIPSET

/etc/X11/XF86Config 或 XF86Config-4   XFree86的启动配置文件

描述显示卡使用的芯片集

  XFree86自带了一些设备的驱动,具体位置在
/usr/X11R6/lib/modules/drivers,如果你的显示卡太新无法使用X-Window,你可以考虑升级XFree86。

SERVER

图片 2

为了和3.x版本的XFree86向下兼容,由此字段指定此显示卡在XFree86
3.x下的X服务器,例如VGA16,SVGA等。

DRIVER

描述在4.x版本的XFree86下显示卡的驱动程序模块。

LINE

设置显示卡特定的选项信息,这样的选项信息出现在XF86Config的Device节,对应设备的Option参数。

SEE

是指此显示卡的配置信息与SEE字段所制定的显示卡完全相同,例如

NAME Number Nine GXE64 with S3 Trio64

SEE S3 Trio64 (generic)

表示Number Nine GXE64的显示卡配置与S3 Trio64 (generic)的配置完全相同。

RAMDAC

RAM直接存取控制的控制芯片型号

DACSPEED

直接存取控制的速度

CLOCKCHIP

此显示卡的时钟芯片的

NOCLOCKCHIP

此显示卡无时钟芯片

UNSUPPORTED

此类型的显卡,此版本的XFree86不能提供支持

COMMENT

注释

例如,对于RIVA TNT显卡,XFree86 4.1.0中的信息如下:

NAME RIVA TNT

CHIPSET RIVATNT

SERVER SVGA

DRIVER nv

NOCLOCKPROBE

2. 显示器信息检测

显示器的信息在XFree86系统中时非常重要的,它对应XFree86配置文件的Monitor节。在这一节中包含监视器的水平扫描频率范围,垂直扫描频率范围,显示器支持的显示模式等信息。同样的,显示器的自动检测也就是通过程序自动读出显示器的上述信息。它的正确设置对于XFree86能否正常显示起到很重要的作用。

对于显示器的信息检测,要求它必须支持vbeVESA的BIOS级扩展)。在显示器支持此扩展时,通过系统实模式下的BIOS调用INT
10H,可以取得显示器的详细信息。

可能需要的BIOS子功能调用为:

AH = 0x4F00

获得关于监视器的VESA的BIOS级扩展信息

AH = 0x4F01

获得监视器支持的特定显示模式

AH = 0x4F02

设置当前的视频模式

AH = 0x4F03

获得当前的视频模式

AH = 0x4F04

保存/还原svga显示方式

发表评论

电子邮件地址不会被公开。 必填项已用*标注