换一批

驱动程序

驱动程序,英文名为“Device Driver”,全称为“设备驱动程序”, 是一种可以使计算机和设备通信的特殊程序,可以说相当于硬件的接口。

经验文章 概述
驱动程序,英文名为“Device Driver”,全称为“设备驱动程序”, 是一种可以使计算机和设备通信的特殊程序,可以 说相当于硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。 因此,驱动程序被誉为“ 硬件的灵魂”、“硬件的主宰”、和“硬件和系统之间的桥梁”等。

基本信息

中文名称

驱动程序

外文名称

Device Driver

作用

硬件和系统之间的桥梁

拼音

qū dòng chéng xù

基本简介

设备驱动程序(英语:device driver),简称驱动程序(driver),是一个允许高级(High level)电脑软件(computer software)与硬件(hardware)交互的程序,这种程序创建了一个硬件与硬件,或硬件与软件沟通的接口,经由主板上的总线(bus)或其它沟通子系统(subsystem)与硬件形成连接的机制,这样的机制使得硬件设备(device)上的数据交换成为可能。

依据不同的电脑架构与操作系统差异平台,驱动程序可以是8位(8-bit)、16位(16-bit)、32位(32-bit),甚至是最新的64位(64-bit),这是为了调和操作系统与驱动程序之间的依存关系,例如在Windows 3.11的16位操作系统时代,大部份的驱动程序都是16位,到了32位的Windows XP则大部份是使用32位驱动程序(微软提供了Windows Driver Model可实现driver),至于64位的Linux或是Windows Vista平台上,就必须使用64位的驱动程序(WDM与WDF皆可实现64位驱动程序)。

作用

随着电子技术的飞速发展,电脑硬件的性能越来越强大。驱动程序是直接工作在各种硬件设备上的软件,其“驱动”这个名称也十分形象的指明了它的功能。正是通过驱动程序,各种硬件设备才能正常运行,达到既定的工作效果。

硬件如果缺少了驱动程序的“驱动”,那么本来性能非常强大的硬件就无法根据软件发出的指令进行工作,硬件就是空有一身本领都无从发挥,毫无用武之地。这时候,电脑就正如古人所说的“万事俱备,只欠东风”,这“东风”的角色就落在了驱动程序身上。如此看来,驱动程序在电脑使用上还真起着举足轻重的作用。

从理论上讲,所有的硬件设备都需要安装相应的驱动程序才能正常工作。但像CPU、内存、主板、软驱、键盘、显示器等设备却并不需要安装驱动程序也可以正常工作,而显卡、声卡、网卡等却一定要安装驱动程序,否则便无法正常工作。这是为什么呢?

这主要是由于这些硬件对于一台个人电脑来说是必需的,所以早期的设计人员将这些硬件列为BIOS能直接支持的硬件。换句话说,上述硬件安装后就可以被BIOS和操作系统直接支持,不再需要安装驱动程序。从这个角度来说,BIOS也是一种驱动程序。但是对于其他的硬件,例如:网卡,声卡,显卡等等 却必须要安装驱动程序,不然这些硬件就无法正常工作。

当然,也并非所有驱动程序都是对实际的硬件进行操作的,有的驱动程序只是辅助系统的运行,如android中的有些驱动程序提供辅助操作系统的功能,这些驱动不是linux系统的标准驱动,如ashmen,binder等。

开发

驱动程序的开发工作是很具挑战性的,因为必须配合著硬件与软件上相当明确与高级的平台技术。由于大多数的驱动程序(device drivers)运行在核心模式(kernel mode),软件的错误经常造成系统严重的不稳定,例如蓝屏(blue screen),这跟过去的用户模式(user mode)下的程序设计(例如Delphi、VB、Java)有明显的差异性。

Windows平台

为了大量减轻驱动程序开发人员的负担,微软不断的改进驱动程序的开发软件与架构,从早期复杂深晦的VxD,到Windows XP上的Windows Driver Model(以下简称WDM)开发架构,如今Windows Driver Foundation(以下简称WDF)已成为新一代的Windows平台驱动程序发展架构,这个架构大量简化了驱动程序的开发流程,更符合面向对象的精神,此架构包含了User Mode Driver Framework 与 Kernel Mode Driver Framework两种开发模式。在开发Windows平台上的驱动程序之前,必须先安装DDK包,目前DDK最新版本为5600,同时支持WDM与WDF两种架构。

Linux平台

Linux下的设备有三种基本类型:字符设备,块设备和网络接口。

应用

因为常见的硬件和操作系统的差异性,驱动程序存在着不同的方式。用于:打印机、显卡、网卡、声卡、不同种类的总线、不同种类的低带宽的输入/输出总线(如定点设备:鼠标、键盘、USB等等。)、硬盘驱动器总线(ATA,SCSI)、实现对不同的文件系统的支持、实现对扫描仪、数码相机的支持。驱动程序的抽象化共同层级(Common levels of abstraction):

硬件方面

直接连接(Interfacing directly)使用一些较高层次的接口(如:视频BIOS)使用另一低级别的驱动程序(如文件系统驱动程序使用磁盘驱动程序)模拟硬件工作

软件方面

允许操作系统直接访问硬件资源仅实现其原始样式(primitives)实现对非驱动程序的软件的界面(如TWAIN)实现一个更高层级的语言,例如PostScript

虚拟程序

有一种特殊的驱动程序名为虚拟设备驱动程序(virtual device drivers),可用于虚拟化的环境(virtualization environments),例如DOS程序要运行于Windows平台上,就必须要利用这种虚拟设备驱动程序,像是VMware就是一种“虚拟PC”的软件,可以在一台机器上同时运行两个或两个以上的Windows、DOS、LINUX 系统,VMWare是真正实现了“同时”运行,多个操作系统在主系统的平台上,就像标准Windows应用程序那样切换一样容易。

​API

Advanced Linux Sound Architecture(ALSA) - 标准新式Linux声卡驱动程序接口(sound driver interface)

I/O Kit - 一种苹果电脑(Apple)上的开放式接口适用于发展麦金塔操作系统(Mac OS X)的设备驱动程序Installable File System (IFS) - 一种IBM OS/2 与 Microsoft Windows NT的文件系统APINetwork Driver Interface Specification (NDIS) - 一种标准网卡(network card)驱动程序APIOpen Data-Link Interface (ODI) - 一种类似NDIS的网卡APIScanner Access Now Easy (SANE) - a public domain interface to raster image scanner hardwareUniform Driver Interface (UDI) - 跨平台(cross platform)驱动程序的接口规范Windows Display Driver Model (WDDM) - Vista平台上新式的图形显示(graphic display)驱动程序架构Windows Driver Foundation (WDF)Windows Driver Model (WDM)

安装方法

驱动程序安装的一般顺序:主板芯片组(Chipset)→显卡(VGA)→声卡(Audio)→网卡(LAN)→无线网卡(Wireless LAN)→红外线(IR)→触控板(Touchpad)→PCMCIA控制器(PCMCIA)→读卡器(FlashMedia Reader)→调制解调器(Modem)→其它(如电视卡、CDMA上网适配器等等)。不按顺序安装很有可能导致某些软件安装失败。

第一步,安装操作系统后,首先应该装上操作系统的Service Pack(SP)补丁。我们知道驱动程序直接面对的是操作系统与硬件,所以首先应该用SP补丁解决了操作系统的兼容性问题,这样才能尽量确保操

驱动安装过程作系统和驱动程序的无缝结合。

第二步,安装主板驱动。主板驱动主要用来开启主板芯片组内置功能及特性,主板驱动里一般是主板识别和管理硬盘的IDE驱动程序或补丁,比如Intel芯片组的INF驱动和VIA的4in1补丁等。如果还包含有AGP补丁的话,一定要先安装完IDE驱动再安装AGP补丁,这一步很重要,也是很多造成系统不稳定的直接原因。

第三步,安装DirectX驱动。这里一般推荐安装最新版本,目前DirectX的最新版本是DirectX 9.0C。可能有些用户会认为:“我的显卡并不支持DirectX 9,没有必要安装DirectX 9.0C”,其实这是个错误的认识,把DirectX等同为了Direct3D。DirectX是微软嵌在操作系统上的应用程序接口(API),DirectX由显示部分、声音部分、输入部分和网络部分四大部分组成,显示部分又分为Direct Draw(负责2D加速)和Direct 3D(负责3D加速),所以说Direct3D只是它其中的一小部分而已。而新版本的DirectX改善的不仅仅是显示部分,其声音部分(DirectSound)——带来更好的声效;输入部分(Direct Input)——支持更多的游戏输入设备,并对这些设备的识别与驱动上更加细致,充分发挥设备的最佳状态和全部功能;网络部分(DirectPlay)——增强计算机的网络连接,提供更多的连接方式。只不过是DirectX在显示部分的改进比较大,也更引人关注,才忽略了其他部分的功劳,所以安装新版本的DirectX的意义并不仅是在显示部分了。当然,有兼容性问题时另当别论。

第四步,这时再安装显卡、声卡、网卡、调制解调器等插在主板上的板卡类驱动。

第五步,最后就可以装打印机、扫描仪、读写机这些外设驱动。

这样的安装顺序就能使系统文件合理搭配,协同工作,充分发挥系统的整体性能。

另外,显示器、键盘和鼠标等设备也是有专门的驱动程序,特别是一些品牌比较好的产品。虽然不用安装它们也可以被系统正确识别并使用,但是安装上这些驱动程序后,能增加一些额外的功能并提高稳定性和性能。

安装推荐

电脑用户在装完电脑系统之后,需要为各种硬件设备寻找匹配的驱动程序,推荐金山重装高手:

1.金山装机精灵拥有最全面、完整的驱动数据。

2.智能检测未安装驱动的硬件设备,推荐安装经过验证的最稳定驱动程序。

3.自动检测因故障导致不能正常使用的驱动的硬件设备,提供解决方案;

4.优先推荐通过“微软WHQL徽标认证版”驱动程序,及时更新相应组件。

inf文件

设备找不到驱动程序  Windows怎样知道安装的是什么设备,以及要拷贝哪些文件呢?答案在于.inf文件。.inf是从Windows 95时代开始引入的一种描述设备安装信息的文件,它用特定语法的文字来说明要安装的设备类型、生产厂商、型号、要拷贝的文件、拷贝到的目标路径,以及要添加到注册表中的信息。通过读取和解释这些文字,Windows便知道应该如何安装驱动程序。目前几乎所有硬件厂商提供的用于Windows 9x下的驱动程序都带有安装信息文件。事实上,.inf文件不仅可用于安装驱动程序,还能用来安装与硬件并没有什么关系的软件,例如Windows 98支持“Windows更新”功能,更新时下载的系统部件就是利用.inf文件来说明如何安装该部件的。

在安装驱动程序时,Windows一般要把.inf文件拷贝一份到“Win-dows\Inf”或“Windows\Inf\Other”目录下,以备将来使用。Inf目录下除了有.inf文件外,还有两个特殊文件Drvdata.bin和Drvidx.bin,以及一些.pnf文件,它们都是Windows为了加快处理速度而自动生成的二进制文件。Drvdata.bin和Drvidx.bin记录了.inf文件描述的所有硬件设备,也许朋友们会有印象:当我们在安装某些设备时,经常会看到一个“创建驱动程序信息库”的窗口,此时Windows便正在生成这两个二进制文件。

Windows 9x专门提供有“添加新硬件向导”(以下简称硬件向导)来帮助使用者安装硬件驱动程序,使用者的工作就是在必要时告诉硬件向导在哪儿可以找到与硬件型号相匹配的.inf文件,剩下的绝大部分安装工作都将由硬件安装向导自己完成。

给硬件设备安装驱动程序对Windows 9x用户来说并不是一件陌生事,在安装或重装Windows时需要安装驱动程序,在购买了某些新硬件之后也需要安装驱动程序。如果驱动程序安装不正确,系统中某些硬件就可能无法正常使用。虽然Windows 9x支持即插即用,能够为用户减轻不少工作,但由于PC机的设备有非常多的品牌和型号,加上各种新产品不断问世,Windows不可能自动识别出所有设备,因此在安装很多设备时都需要人工干预。

相关文章

  • 标签:电脑
    网卡驱动程序不正常怎么办?如果我们的电脑网卡出现驱动不正常的情况的话,我们就不能上网,而我们现在基本上工作生活沟通都离不开网络,那我们学会在网卡驱动不正常时自己快速解决问题是很有必要的。[ 查看全文 ]
手机页面
收藏网站 回到头部