当前位置:文档之家› 设备驱动程序

设备驱动程序

设备驱动程序
设备驱动程序

驱动程序

驱动程序一般指的是设备驱动程序(Device Driver),是一种可以使计算机和设备通信的特殊程序。相当于硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。

因此,驱动程序被比作“硬件的灵魂”、“硬件的主宰”、和“硬件和系统之间的桥梁”等。

中文名

驱动程序

外文名

Device Driver

全称

设备驱动程序

性质

可使计算机和设备通信的特殊程序

目录

1定义

2作用

3界定

?正式版

?认证版

?第三方

?修改版

?测试版

4驱动程序的开发

?微软平台

? Unix平台

5安装顺序

6inf文件

1定义

驱动程序(Device Driver)全称为“设备驱动程序”,是一种可以使计算机和设备通信的特殊程序,可以说相当于硬件的接口,操作系统只能通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。

惠普显卡驱动安装

正因为这个原因,驱动程序在系统中的所占的地位十分重要,一般当操作系统安装完毕后,首要的便是安装硬件设备的驱动程序。不过,大多数情况下,我们并不需要安装所有硬件设备的驱动程序,例如硬盘、显示器、光驱等就不需要安装驱动程序,而显卡、声卡、扫描仪、摄像头、Modem等就需要安装驱动程序。另外,不同版本的操作系统对硬件设备的支持也是不同的,一般情况下版本越高所支持的硬件设备也越多,例如笔者使用了Windows XP,装好系统后一个驱动程序也不用安装。

设备驱动程序用来将硬件本身的功能告诉操作系统,完成硬件设备电子信号与操作系统及软件的高级编程语言之间的互相翻译。当操作系统需要使用某个硬件时,比如:让声卡播放音乐,它会先发送相应指令到声卡驱动程序,声卡驱动程序接收到后,马上将其翻译成声卡才能听懂的电子信号命令,从而让声卡播放音乐。

所以简单的说,驱动程序提供了硬件到操作系统的一个接口以及协调二者之间的关系,而因为驱动程序有如此重要的作用,所以人们都称“驱动程序是硬件的灵魂”、“硬件的主宰”,同时驱动程序也被形象的称为“硬件和系统之间的桥梁”。

戴尔电脑驱动盘

驱动程序即添加到操作系统中的一小块代码,其中包含有关硬件设备的信息。有了此信息,计算机就可以与设备进行通信。驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。操作系统不同,硬件的驱动程序也不同,各个硬件厂商为了保证硬件的兼容性及增强硬件的功能会不断地升级驱动程序。如:Nvidia显卡芯片公司平均每个月会升级显卡驱动程序2-3次。驱动程序是硬件的一部分,当你安装新硬件时,驱动程序是一项不可或缺的重要元件。凡是安装一个原本不属于你电脑中的硬件设备时,系统就会要求你安装驱动程序,将新的硬件与电脑系统连接起来。驱动程序扮演沟通的角色,把硬件的功能告诉电脑系统,并且也将系统的指令传达给硬件,

让它开始工作。

当你在安装新硬件时总会被要求放入“这种硬件的驱动程序”,很多人这时就开始头痛。

不是找不到驱动程序的盘片,就是找不到文件的位置,或是根本不知道什么是驱动程序。

比如安装打印机这类的硬件外设,并不是把连接线接上就算完成,如果你这时候开始使用,系统会告诉你,找不到驱动程序。怎么办呢?参照说明书也未必就能顺利安装。其实在安装方面还是有一定的惯例与通则可寻的,这些都可以帮你做到无障碍安装。

在Windows系统中,需要安装主板、光驱、显卡、声卡等一套完整的驱动程序。如果你需要外接别的硬件设备,则还要安装相应的驱动程序,如:外接游戏硬件要安装手柄、方向盘、摇杆、跳舞毯等的驱动程序,外接打印机要安装打印机驱动程序,上网或接入局域网要安装网卡、Modem甚至ISDN、ADSL的驱动程序。说了这么多的驱动程序,你是否有一点头痛了。下面就介绍Windows系统中各种的不同硬件设备的驱动程序,希望能让你拨云见日。

在Windows 9x下,驱动程序按照其提供的硬件支持可以分为:声卡驱动程序、显卡驱动程序、鼠标驱动程序、主板驱动程序、网络设备驱动程序、打印机驱动程序、扫描仪驱动程序等等。为什么没有CPU、内存驱动程序呢?因为CPU和内存无需驱动程序便可使用,不仅如此,绝大多数键盘、鼠标、硬盘、软驱、显示器和主板上的标准设备都可以用Windows自带的标准驱动程序来驱动,当然其它特定功能除外。如果你需要在Windows 系统中的DOS模式下使用光驱,那么还需要在DOS模式下安装光驱驱动程序。多数显卡、声卡、网卡等内置扩展卡和打印机、扫描仪、外置Modem等外设都需要安装与设备型号相符的驱动程序,否则无法发挥其部分或全部功能。驱动程序一般可通过三种途径得到,一是购买的硬件附带有驱动程序;二是Windows系统自带有大量驱动程序;三是从Internet 下载驱动程序。最后一种途径往往能够得到最新的驱动程序。

供Windows 9x使用的驱动程序包通常由一些。vxd(或.386)、.drv、.sys、.dll或.exe 等文件组成,在安装过程中,大部分文件都会被拷贝到“Windows\ System”目录下。

在软件测试中:在自底向上测试中,要编写称为测试驱动的模块调用正在测试的模块。

测试驱动模块以被测试模块同样的方式挂接,向处于测试的模块发送测试用例数据,接受返回结果,验证结果是否正确,所以程序都要驱动程序。不然,像打印机、音响,电脑都无法识别。每台电脑购买时都有驱动程序。

2作用

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

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

从理论上讲,所有的硬件设备都需要安装相应的驱动程序才能正常工作。但像CPU、内存、主板、软驱、键盘、显示器等设备却并不需要安装驱动程序也可以正常工作,而显

卡、声卡、网卡等却一定要安装驱动程序,否则便无法正常工作。这是为什么呢?

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

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

3界定

驱动程序可以界定为官方正式版、微软WHQL认证版、第三方驱动、发烧友修改版、Beta测试版。

正式版

官方正式版驱动是指按照芯片厂商的设计研发出来的,经过反复测试、修正,最终通过官方渠道发布出来的正式版驱动程序,又名公版驱动。通常官方正式版的发布方式包括官方网站发布及硬件产品附带光盘这两种方式。稳定性、兼容性好是官方正式版驱动最大的亮点,同时也是区别于发烧友修改版与测试版的显著特征。因此推荐普通用户使用官方正式版,而喜欢尝鲜、体现个性的玩家则推荐使用发烧友修改版及Beta测试版。

认证版

WHQL是Windows Hardware Quality Labs的缩写,中文解释为:Windows硬件质量实验室,缩写分类:电子电工。是微软对各硬件厂商驱动的一个认证,是为了测试驱动程序与操作系统的相容性及稳定性而制定的。也就是说通过了WHQL认证的驱动程序与Windows系统基本上不存在兼容性的问题。

第三方

第三方驱动一般是指硬件产品OEM厂商发布的基于官方驱动优化而成的驱动程序。

第三方驱动拥有稳定性、兼容性好,基于官方正式版驱动优化并比官方正式版拥有更加完善的功能和更加强劲的整体性能的特性。因此,对于品牌机用户来说,笔者推荐用户的首选驱动是第三方驱动,第二选才是官方正式版驱动;对于组装机用户来说,第三方驱动的选择可能相对复杂一点,因此官方正式版驱动仍是首选。

修改版

发烧友令笔者首先就联想到了显卡,这是为什么呢?因为一直以来,发烧友通常都被用来形容游戏爱好者。笔者的这个想法也正好和发烧友修改版的诞生典故相符的,因为发烧友修改版的驱动最先就是出现在显卡驱动上的,由于众多发烧友对游戏的狂热,对于显卡性能的期望也就是比较高的,这时候厂商所发布的显卡驱动就往往都不能满足游戏爱好

者的需求了,因此经修改过的以满足游戏爱好者更多的功能性要求的显卡驱动也就应运而生了。如今,发烧友修改版驱动又名改版驱动,是指经修改过的驱动程序,而又不专指经修改过的驱动程序。

测试版

测试版驱动是指处于测试阶段,还没有正式发布的驱动程序。这样的驱动往往具有稳定性不够、与系统的兼容性不够等bug。尝鲜和风险总是同时存在的,所以对于使用Beta 测试版驱动的用户要做好出现故障的心理准备。

4驱动程序的开发

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

驱动开发的原理与步骤:1,明白你手头的硬件工作原理,包括处理器架构的知识,还有外设控制器的datasheet 为必读之物;2,假如你们要开发的整个系统是裸机程序,那你要开发的驱动程序就是一套和硬件打交道的函数库;但是假如你们计划在产品中使用一个操作系统,那开发驱动之前就需要熟悉这个操作系统的相关内部操作原理,因为你写的是驱动程序需要很好的“镶嵌”到这个操作系统的环境中去。

微软平台

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

Unix平台

Linux作为UNIX的一个变种,继承了UNIX的设备管理方法,将所有的设备是具体的文件,通过文件系统层对设备进行访问。这种设备管理方法可以很好地做到“设备无关性”,可以根据硬件外设的更新进行方便的扩展。

Linux中的设备大致可以分为三类:字符设备,块设备,网络设备。

字符设备没有缓冲区,以字节为单位顺序处理数据,不支持随机读写。常见的字符设备如普通打印机、系统的串口、终端显示器、嵌入式设备中的简单按键、手写板等。

块设备是指在输入输出时数据处理以块为单位的设备,一般都采用缓冲技术,支持数据的随机读写。典型的块设备有硬盘、光驱等。

字符设备和块设备面向的上一层是文件系统层。对用户来说,块设备和字符设备的访

问接口都是一组基于文件的系统调用,如read, write等。

网络设备与块设备和字符设备不同,网络设备面向的上一层是网络协议层。设备文件是一个唯一的名字(如eth0),在文件系统中不存在对应的节点项。内核和网络驱动程序之间的通信使用的是一套和数据包传输相关的函数,而不是read, write等。

每一个设备都有一对主设备号、次设备号的参数作为唯一的标识。主设备号标识设备对应的驱动程序;次设备号用来区分具体驱动程序的实例。主设备号的获取可以通过动态分配或指定的方式。在嵌入式系统中外设较少,一般采用指定的方式。

5安装顺序

驱动程序安装的一般顺序:主板芯片组(Chipset)→显卡(VGA)→声卡(Audio)→网卡(LAN)→无线网卡(Wireless LAN)→红外线(IR)→触控板(Touchpad)→PCMCIA 控制器(PCMCIA)→读卡器(Flash Media 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的意义并不仅是在显示部分了。当然,有兼容性问题

时另当别论。

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

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

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

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

6inf文件

Windows怎样知道安装的是什么设备,以及要拷贝哪些文件呢?答案在于——张inf 文件。

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

在安装驱动程序时,Windows一般要把.inf文件拷贝一份到“Windows\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不可能自动识别出所有设备,因此在安装很多设备时都需要人工干预。

设备驱动程序

驱动程序 驱动程序一般指的是设备驱动程序(Device Driver),是一种可以使计算机和设备通信的特殊程序。相当于硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。 因此,驱动程序被比作“硬件的灵魂”、“硬件的主宰”、和“硬件和系统之间的桥梁”等。 中文名 驱动程序 外文名 Device Driver 全称 设备驱动程序 性质 可使计算机和设备通信的特殊程序 目录 1定义 2作用 3界定 ?正式版 ?认证版 ?第三方 ?修改版 ?测试版 4驱动程序的开发 ?微软平台 ?Unix平台 5安装顺序 6inf文件 1定义 驱动程序(Device Driver)全称为“设备驱动程序”,是一种可以使计算机和设备通信的特殊程序,可以说相当于硬件的接口,操作系统只能通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。 惠普显卡驱动安装 正因为这个原因,驱动程序在系统中的所占的地位十分重要,一般当操作系统安装完毕后,首要的便是安装硬件设备的驱动程序。不过,大多数情况下,我们并不需要安装所有硬件设备的驱动程序,例如硬盘、显示器、光驱等就不需要安装驱动程序,而显卡、声卡、扫描仪、摄像头、Modem等就需要安装驱动程序。另外,不同版本的操作系统对硬件设

备的支持也是不同的,一般情况下版本越高所支持的硬件设备也越多,例如笔者使用了Windows XP,装好系统后一个驱动程序也不用安装。 设备驱动程序用来将硬件本身的功能告诉操作系统,完成硬件设备电子信号与操作系统及软件的高级编程语言之间的互相翻译。当操作系统需要使用某个硬件时,比如:让声卡播放音乐,它会先发送相应指令到声卡驱动程序,声卡驱动程序接收到后,马上将其翻译成声卡才能听懂的电子信号命令,从而让声卡播放音乐。 所以简单的说,驱动程序提供了硬件到操作系统的一个接口以及协调二者之间的关系,而因为驱动程序有如此重要的作用,所以人们都称“驱动程序是硬件的灵魂”、“硬件的主宰”,同时驱动程序也被形象的称为“硬件和系统之间的桥梁”。 戴尔电脑驱动盘 驱动程序即添加到操作系统中的一小块代码,其中包含有关硬件设备的信息。有了此信息,计算机就可以与设备进行通信。驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。操作系统不同,硬件的驱动程序也不同,各个硬件厂商为了保证硬件的兼容性及增强硬件的功能会不断地升级驱动程序。如:Nvidia显卡芯片公司平均每个月会升级显卡驱动程序2-3次。驱动程序是硬件的一部分,当你安装新硬件时,驱动程序是一项不可或缺的重要元件。凡是安装一个原本不属于你电脑中的硬件设备时,系统就会要求你安装驱动程序,将新的硬件与电脑系统连接起来。驱动程序扮演沟通的角色,把硬件的功能告诉电脑系统,并且也将系统的指令传达给硬件,让它开始工作。 当你在安装新硬件时总会被要求放入“这种硬件的驱动程序”,很多人这时就开始头痛。不是找不到驱动程序的盘片,就是找不到文件的位置,或是根本不知道什么是驱动程序。比如安装打印机这类的硬件外设,并不是把连接线接上就算完成,如果你这时候开始使用,系统会告诉你,找不到驱动程序。怎么办呢参照说明书也未必就能顺利安装。其实在安装方面还是有一定的惯例与通则可寻的,这些都可以帮你做到无障碍安装。 在Windows系统中,需要安装主板、光驱、显卡、声卡等一套完整的驱动程序。如果你需要外接别的硬件设备,则还要安装相应的驱动程序,如:外接游戏硬件要安装手柄、方向盘、摇杆、跳舞毯等的驱动程序,外接打印机要安装打印机驱动程序,上网或接入局域网要安装网卡、Modem甚至ISDN、ADSL的驱动程序。说了这么多的驱动程序,你是否有一点头痛了。下面就介绍Windows系统中各种的不同硬件设备的驱动程序,希望能让你拨云见日。 在Windows 9x下,驱动程序按照其提供的硬件支持可以分为:声卡驱动程序、显卡驱动程序、鼠标驱动程序、主板驱动程序、网络设备驱动程序、打印机驱动程序、扫描仪驱动程序等等。为什么没有CPU、内存驱动程序呢因为CPU和内存无需驱动程序便可使用,不仅如此,绝大多数键盘、鼠标、硬盘、软驱、显示器和主板上的标准设备都可以用Windows 自带的标准驱动程序来驱动,当然其它特定功能除外。如果你需要在Windows系统中的DOS 模式下使用光驱,那么还需要在DOS模式下安装光驱驱动程序。多数显卡、声卡、网卡等内置扩展卡和打印机、扫描仪、外置Modem等外设都需要安装与设备型号相符的驱动程序,否则无法发挥其部分或全部功能。驱动程序一般可通过三种途径得到,一是购买的硬件附

字符设备驱动程序课程设计报告

中南大学 字符设备驱动程序 课程设计报告 姓名:王学彬 专业班级:信安1002班 学号:0909103108 课程:操作系统安全课程设计 指导老师:张士庚 一、课程设计目的 1.了解Linux字符设备驱动程序的结构; 2.掌握Linux字符设备驱动程序常用结构体和操作函数的使用方法; 3.初步掌握Linux字符设备驱动程序的编写方法及过程; 4.掌握Linux字符设备驱动程序的加载方法及测试方法。 二、课程设计内容 5.设计Windows XP或者Linux操作系统下的设备驱动程序; 6.掌握虚拟字符设备的设计方法和测试方法;

7.编写测试应用程序,测试对该设备的读写等操作。 三、需求分析 3.1驱动程序介绍 驱动程序负责将应用程序如读、写等操作正确无误的传递给相关的硬件,并使硬件能够做出正确反应的代码。驱动程序像一个黑盒子,它隐藏了硬件的工作细节,应用程序只需要通过一组标准化的接口实现对硬件的操作。 3.2 Linux设备驱动程序分类 Linux设备驱动程序在Linux的内核源代码中占有很大的比例,源代码的长度日益增加,主要是驱动程序的增加。虽然Linux内核的不断升级,但驱动程序的结构还是相对稳定。 Linux系统的设备分为字符设备(char device),块设备(block device)和网络设备(network device)三种。字符设备是指在存取时没有缓存的设备,而块设备的读写都有缓存来支持,并且块设备必须能够随机存取(random access)。典型的字符设备包括鼠标,键盘,串行口等。块设备主要包括硬盘软盘设备,CD-ROM等。 网络设备在Linux里做专门的处理。Linux的网络系统主要是基于BSD unix的socket 机制。在系统和驱动程序之间定义有专门的数据结构(sk_buff)进行数据传递。系统有支持对发送数据和接收数据的缓存,提供流量控制机制,提供对多协议的支持。 3.3驱动程序的结构 驱动程序的结构如图3.1所示,应用程序经过系统调用,进入核心层,内核要控制硬件需要通过驱动程序实现,驱动程序相当于内核与硬件之间的“系统调用”。

虚拟声卡驱动程序VirtualAudioCable使用方法

一:安装软件 点击 选择是(Y) 选择I accept 选择Install 安装成功,点击“确定”按钮即完成安装。 二、软件的设置 点击桌面开始按钮所有程序---Virtual Audio Cable —Control panel 进入软件初始化 设置。 在Cables 中选择1(即首次设置一个虚拟通道),点击旁边的Set 按钮生成通道Cable1. 在参数设置区将Line 、Mic (可选可不选)、S/PDIF (可选可不选)三个选项后面的方框打钩,选中之后点击参数设置区内的设置按钮Set ,即完成了,对虚拟声卡通道1 的设置。 鼠标右键点击桌面右下角的喇叭------ 调整音频属性---- < 或者点击开始—控制面板--- 声音、 语音和音频设备--- 声音和音频设备>弹出: 选择语音 此时语音部分的设置为原系统默认的设备,保持不变。 选择音频: 改变声音播放、录音的选项内容:

如上图将声音播放、录音的默认设备全部改为Virtual Cable 1 。点击应用--- 确定即可。 三、打开录音机录音--- 录制电脑里播放出来的音频(不包含麦克风 里的声音) - 即“内录” 开始--- 所有程序—附件--- 娱乐--- 录音机 点击确定即可开始录音(注:此时可在电脑中打开相应的音频文件,开始录音) 此时音频波段显示有声音输入,但是电脑的耳机听不到正在播放的音频文件(属正常现象)。若想同时听到音频文件的内容点击桌面开始按钮所有程序---Virtual Audio Cable —Audio Repeater 。 修改为 点击Start 即可听到正在录制的音频文件。此时的录音即是通过虚拟声卡通道录制电脑里的声音的。 四、同时录电脑里播放的声音和麦克风收集的外部声音----- 即混录 <通过这种方法解决现有笔记本无“立体声混音”或“波形音”选项的问题> 在《三打开录音机录音--- 录制电脑里播放出来的音频(不包含麦克风里的声音)------------ 即“内录”》的同时,在打开一个irtual Audio Cable —Audio Repeater 窗口将其设置为: 即将外部麦克风收集的声音转移到虚拟声卡通道Cable1 中,同电脑里播放的声音一起被录音软件收录为音频文件。

未能成功安装设备驱动程序MTPUSB设备安装失败的解决办法

未能成功安装设备驱动程序M T P U S B设备安装失败的解决办法 文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)

M T P U S B设备安装失败未能成功安装设备驱动程序 终极解决方法 环境介绍:电脑系统win7(32位)已安装摩托罗拉手机驱动版本(其他版本应该也行,不行的话去摩托罗拉官网下载最新驱动) 手机型号:摩托罗拉defy mb525(系统) 备注:其他电脑操作系统和不同型号手机可参考此方法,找到相应设置项即可。 问题简介: 1.当我们把手机连接至电脑,把模式调制成“摩托罗拉手机门户”时,出现下列情况 2.过一会之后便会弹出提示说:未能成功安装设备驱动程序

3.单击查看详情便弹出窗口如下图所示: 4.此时桌面右下角图标出现黄色三角号,如图所示: 5.于是我们就开始不淡定了,怎么看怎么别扭、抓狂、按耐不住。下面介绍问题解决方案 解决方法: 1.我的电脑——右键单击——管理——设别管理器,之后会看到如图所示:在便携设备下有黄色三角号提示,即是我们纠结的MTP USB设备安装不成功的展示。

MIUI手机操作系统为例,其他手机操作系统需将USB绑定服务开启即可)。选择设置——系统——共享手机网络——USB绑定,将该选项设置为“开”,这是你会发现如图所示变化,在设备管理器面板中没有了便携设备选项及黄色三角号提醒,如图所示:(但桌面右下角的黄色三角警示还在)

3.在完成以上步骤后,用手机打开WIFI并登录无线WLAN,手机打开网页检验连接是否正常,若正常则如下图所示,黄色三角号警示消失,问题解决;若以上步骤没有解决问题,请先连接WIFI并登录WLAN之后,再按步骤操作。 4.完成以上步骤并解决问题后,选择电脑桌面网络——右键单击——属性,如下图所示:此时不仅手机能上网,而且电脑也能正常连接网络,正常上网。(我的体验是连接数据不稳定,时不时的要手机重新登陆WIFI,才有数据传输,可能是高校WLAN的问题,在家网速快的可以尝试一下) 5.通过这个问题的解决,我才知道原来MTP USB设备安装失败,未能成 功安装设备驱动程序的原因是我们手机里面没有启用该设备服务。今天 才知道MTP USB设备是与手机里的共享手机网络中“USB绑定”服务相关 联的,是电脑用来使用手机WIFI网络连接进行上网的工具。

windows设备管理与驱动程序

计算机可以配置许多I/O设备,种类很多,而且随着技术的发展新设备也不断出现。I/O 设备既是人机交互的界面,也是计算机与计算机通信的枢纽,需要处理的信息其原始形态是光波、电波、声波、红外线等各种不同的物理信号,它们承载的信息可以是文本、图像、声音、视频等各种不同的载体。这方面导致了计算机应用的多样性和普遍性,另一方面也使得I/O设备的管理相当复杂。 此外,I/O设备的速度比CPU和内存的速度要慢得多,它们经常成为系统性能的瓶颈。多任务处理是提高系统性能的一个途径,但是在多任务处理中,怎么保证I/O设备安全可靠而且被多个任务共享使用,这也是操作系统需要解决的一项任务。 为此,操作系统中的设备管理程序负责对系统中的各种输入/输出设备进行统一的管理,处理用户或应用程序的输入输出请求,方便、有效、安全地完成输入输出操作。 ⑴方便性。用户(程序)总是希望方便地使用I/O设备,但I/O过程非常复杂,如果直接控制或使用I/O设备,必须了解许多与应用本身没有直接关系的具体细节,工作量大,效率低,设备型号和系统配置的变化将引起程序的修改,影响程序的独立性和适应性。而且让程序员直接操作物理设备,也不利于设备及其数据的保护。 解决这个问题的方法是采用设备驱动程序。设备驱动程序处于操作系统的底层,它将具体物体设备的性质和硬件操作的细节予以品屏蔽和抽象,只向操作系统的高层和应用程序提供统一的建斌啊医用的抽象设备和逻辑操作,操作系统高层和应用程序通过驱动程序访问外设,由驱动程序负责把抽象设备的操作转换成具体物理设备的操作。这样一来,不同规格和性能参数的外部设别(如各种不同的打印机)通过安装各自定制的设备驱动程序,就能使系统和应用程序不需要进行任何修改就了直接使用该设备。通常,外设的生产厂商在提供硬件设备的同时必须提供该设备的驱动程序。 ⑵有效性。为了确保I/O设备多个任务所共享,设备管理程序必须解决许多问题。例如:设备的命名、登记、分配、回收及调度等。对于可并发共享的设备(如磁盘、显示器等),为了使设备的利用率达到最优,设备管理程序将根据每个设备的特点来全局调度和安排设备的操作。例如,对硬盘的多个读写要求可以进行进行排序,使得每次读写操作的磁头移动距离都尽可能短。对于独占设备(如打印机、绘图仪等),可以采用假脱机技术,把每一个要打印或绘制的文档,按先来先服务的顺序将其存放在队列中,然后以后台方式依次进行打印或绘图,从而大大提高了慢速独占设备的利用率。 为了解决I/O设备速度过慢,效率不高的问题,设备管理中大多应用了缓冲技术,以减少I/O操作的等待时间。虽然有些I/O设备或控制器内部已有硬件缓冲(如打印机和磁盘控制器内部有缓存存储器),但操作系统仍然在内存中开设I/O缓冲区和文件系统缓冲区。 ⑶安全性。在多任务系统中,由于I/O设备的数量有限,并不是每个任务随时都可以使用这些设备的。为了使用某个设备,必须先向设备管理程序提出申请,然后由设备管理程序按一定算法进行分配。如果申请没有成功,它就必须排队等待,只有分配到该设备并完成I/O操作后相关的任务才能继续执行下去。Windows就采用了这种安全分配方式。 在windows操作系统中,设备管理程序还支持即插即用功能,并按ACPI标准进行电源管理(系统的能耗状态可设置为工作状态、等待状态或休眠状态等多种),它能检测设备的闲置时间,当发现超过预定值时,就把设备切换到低能耗状态。 Windows操作系统中有一个称为设备管理器的工具程序,它可以利用我的电脑快捷菜单中的属性命令或通过控制面板中的系统启动。启动后用户可以按类型或链接方式来寻找所关心的设备,查看该设备的信息和当前工作状态,也可以修改或重新配置设备的操作环境。

虚拟设备驱动程序的设计与实现

虚拟设备驱动程序的设计与实现 由于Windows对系统底层操作采取了屏蔽的策略,因而对用户而言,系统变得 更为安全,但这却给众多的硬件或者系统软件开发人员带来了不小的困难,因为只要应用中涉及到底层的操作,开发人员就不得不深入到Windows的内核去编写属 于系统级的虚拟设备驱动程序。Win 98与Win 95设备驱动程序的机理不尽相同,Win 98不仅支持与Windows NT 5.0兼容的WDM(Win32 Driver Mode)模式驱动程序 ,而且还支持与Win 95兼容的虚拟设备驱动程序VxD(Virtual Device Driver)。下面介绍了基于Windows 9x平台的虚拟环境、虚拟设备驱动程序VxD的基本原理和 设计方法,并结合开发工具VToolsD给出了一个为可视电话音频卡配套的虚拟设备 驱动程序VxD的设计实例。 1.Windows 9x的虚拟环境 Windows 9x作为一个完整的32位多任务操作系统,它不像Window 3.x那样依 赖于MS-DOS,但为了保证软件的兼容性,Windows 9x除了支持Win16应用程序和 Win32应用程序之外,还得支持MS-DOS应用程序的运行。Windows 9x是通过虚拟机 VM(Virtual Machine)环境来确保其兼容和多任务特性的。 所谓Windows虚拟机(通常简称为Windows VM)就是指执行应用程序的虚拟环 境,它包括MS-DOS VM和System VM两种虚拟机环境。在每一个MS-DOS VM中都只运 行一个MS-DOS进程,而System VM能为所有的Windows应用程序和动态链接库DLL(Dynamic Link Libraries)提供运行环境。每个虚拟机都有独立的地址空间、寄存器状态、堆栈、局部描述符表、中断表状态和执行优先权。虽然Win16、Win32应用程序都运行在System VM环境下,但Win16应用程序共享同一地址空间, 而Win32应用程序却有自己独立的地址空间。 在编写应用程序时,编程人员经常忽略虚拟环境和实环境之间的差异,一般认为虚拟环境也就是实环境。但是,在编写虚拟设备驱动程序VxD时却不能这样做 ,因为VxD的工作是向应用程序代码提供一个与硬件接口的环境,为每一个客户虚 拟机管理虚设备的状态,透明地仲裁多个应用程序,同时对底层硬件进行访问。这就是所谓虚拟化的概念。 VxD在虚拟机管理器VMM(Virtual Machine Manager)的监控下运行,而VMM 实 际上是一个特殊的VxD。VMM执行与系统资源有关的工作,提供虚拟机环境(能产

编译hello设备驱动程序详细过程

编译hello world设备驱动程序详细过程 1、安装与你的开发板相同的内核版本的虚拟机,我的板子内核是2.6.8.1,虚拟机是2.6.9, 一般是虚拟机的内核只能比板子内核新,不能旧 #uanme –a [1](在任何目录下,输入此命令,查看虚拟机的内核版本,我的内核版本是2.6.9) 2、在虚拟机上设置共享目录,我的共享目录在linux下的/mnt/hgfs/share [2]share是自己命名的,我的物理机上,即Windows下的目录是G:/share, 3、在Windows下,把开发板的的交叉开发工具链[3],内核源码包[4],复制到物理机的共享目录下[5] 即Windows下的目录是G:/share, 4、#cp /mnt/hgfs/share/cross-3.3.2.tar.bz2 /usr/local/arm [6] 在Linux下,把交叉工具链,复制到/usr/local/arm目录下 5、#cd /usr/local/arm 6、#tar jxvf cross-3.3.2.tar.bz2 [7] 并在当前目录/usr/local/arm下解压它cross-2.95.3.tar.bz2和gec2410-linux-2.6.8.tar.bz2也是用同样的命令去解压 7、#export PATH=/usr/local/arm/3.3.2/bin:$PATH [8] 安装交叉工具链,在需要使用交叉编译时,只要在终端输入如下命令 #export PATH=/usr/local/arm/版本/bin:$PATH 即可,在需要更改不同版本的工具链时,重新启动一个终端,然后再一次输入上面的命令即可,使用哪个版本的交叉工具链,视你要编译的内核版本决定,编译2.4版本的内核,则用2.95.3版本的交叉工具链,而2.6版本内核的,则要用3.3.2版本的交叉工具链。 8、#cp gec2410-linux-2.6.8.tar.bz2 /root [9]把内核拷贝到/root目录下, 9、#cd /root 10、#tar gec2410-linux-2.6.8.tar.bz2 [10] 在/root解压开发板的内核源码压缩包gec2410-linux-2.6.8.tar.bz2,得到gec2410-linux-2.6.8.1文件夹 11、#cd /root/ gec2410-linux-2.6.8.1 12、#cp gec2410.cfg .config [11] gec2410.cfg文件是广嵌开发板提供的默认内核配置文件,在这里首先把内核配置成默认配置,然后在此基础上用make menuconfig进一步配置,但在这里,不进行进一步的配置,对于内核配置,还需要看更多的知识,在这里先存疑。 13、#make [12]在内核源代码的根目录gec2410-linux-2.6.8.1下用make命令编译内核,注意,先安装交叉工具链,再编译内核,因为这里编译的hello.ko驱动模块最终是下载到开发板上运行的,而不是在虚拟机的Linux系统运行的,如果是为了在虚拟机的Linux系统运行的,则不用安装交叉编译工具链arm-linux-gcc,而直接用gcc,用命令#arm-linux-gcc –v 可以查看当前已经安装的交叉编译工具链的版本。这里编译内核不是为了得到内核的映象文件zImage(虽然会得到内核的映象文件zImage),而是为了得到编译hello.o模块需要相关联,相依赖(depends on)的模块。 14、#cd /root 12、#mkdir hello [13]在/root目录下建立hello文件夹, 13、#cd hel 14 、#vi hello.c [12]编辑hello.c文件,内容是《Linux设备驱动程序》第三版22页的hello world程序。 15、#vi Makefile [13]在hello文件夹下编辑Makefile文件, 16、obj-m := module.o [14] 这是Makefile的内容,为obj-m := module.omodule.o视你编辑的.c文件而定,这里则要写成hello.o,写完后,保存退出。 17、cd /root/hello

虚拟设备驱动程序设计中的两个关键问题

虚拟设备驱动程序设计中的两个关键问题 在虚拟设备驱动程序(VxD)的设计中,两个尤为关键,且又令人困扰的问题是VxD 的虚拟化和VxD与应用程序间的通信机制。下面,对这两个问题作一详细的探讨。 一、VxD的虚拟化 由于Windows允许同时运行多个任务,所以出现多个进程试图同时访问同一物 理设备的情况时,如果多个应用程序通过同一个DLL驱动程序(注意和虚拟设备驱 动程序VxD的区别)访问设备,不需要对该设备虚拟化,驱动程序使之顺序访问;如果是多个Windows应用程序对相同设备同时访问,由于都运行于System VM(系统虚拟机),所以也不需要虚拟化,它们的访问将由一个驱动程序(Windows driver DLL)进行检测并使之串行化,而不是依靠VxD;如果多个VM试图访问同一 设备,由于DOS应用程序能够直接操纵硬件,所以必须对该设备进行虚拟化,一个 虚拟化设备的VxD负责可靠地检测多个VM试图访问同一设备的情况,并采取仲裁的 策略来解决这种冲突。这里可能有以下几种解决方案: 1、允许一个VM访问物理设备,同时忽略其它的VM。这是最简单的虚拟化 形式 。如VPD(Virtual Printer Device)。 2、允许一个VM访问物理设备,同时为其它的VM虚拟化设备。如VKD(Virtual Keyboard Device)分配给一个VM,并使之获得物理键盘的访问权(包括键盘中 断 在内),对其它的VM而言,VKD只向它们提供一个空的键盘缓冲区。 3、允许多个VM共享同一物理设备。尽管存在假象,但从VM的观点来看,这种 方法与独享访问一样。如VDD(Virtual Display Device),使每一个Windows环境 下的DOS VM认为是直接写入显存,其实只是被VDD映射到了一个窗口的缓冲区。 4、VxD独立访问物理设备的同时,允许一个VM访问虚拟设备,这是最复杂的 虚拟化形式。如VCD(Virtual Com Device),VCD缓冲区接收串行数据并通过映射中 断透明地传给相应的一个VM,VM在中断处理过程中读取串口数据寄存器,这些数 据的实质是VCD缓冲区已经接收的数据。 与物理设备一样,硬件中断很多时候也必须虚拟化,这种情况更为复杂。虚拟化中断实质上就是将硬件产生的中断映射到需要它的每一个VM(不管该VM是否 正在运行),替代VxD进行服务。在这里我们给出一个虚拟化中断的VxD实例的几 个重要回调过程,并采用最简单的仲裁策略来解决访问冲突(见程序1)。 typedef struct

Linux网络设备驱动

嵌入式培训专家
Linux网络设备驱动
主讲:宋宝华
https://www.doczj.com/doc/de17529081.html,

华清远见
今天的内容
vLinux网络设备驱动架构 vLinux网络设备驱动数据流程
? NON-NAPI模式数据接收流程 ? NAPI模式数据接收流程 ? 数据发送流程
vLinux网络协议栈的实现
? TCP/UDP/IP/MAC各层数据传递 ? 网络系统调用与socket

华清远见
Linux网络设备驱动架构

华清远见
net_device
struct net_device_ops { int (*ndo_open)(struct net_device *dev); int (*ndo_start_xmit) (struct sk_buff *skb, struct net_device *dev); int (*ndo_set_mac_address)(struct net_device *dev, void *addr); int (*ndo_do_ioctl)(struct net_device *dev, struct ifreq *ifr, int cmd); void (*ndo_tx_timeout) (struct net_device *dev); ... }
struct net_device { struct net_device_stats stats; const struct net_device_ops *netdev_ops; const struct ethtool_ops *ethtool_ops; ... }
struct ethtool_ops { int (*get_settings)(struct net_device *, struct ethtool_cmd *); int (*set_settings)(struct net_device *, struct ethtool_cmd *); void (*get_drvinfo)(struct net_device *, struct ethtool_drvinfo *); int (*get_regs_len)(struct net_device *); ... }

安装WIN7时提示缺少所需的CDDVD驱动器设备驱动程序的解决办法

安装WIN7时提示 “缺少所需的CD/DVD驱动器设备驱动程序” 的解决办法 问题描述:安装win7时提示:“缺少所需的CD/DVD驱动器设备驱动程序。…………”然后找遍整个硬盘/光盘也找不到合适的驱动,安装无法继续。 ————————————————————————————————————————————————————————————— 现在安装系统肯定用光驱的人不多,一般最简单的方法就是通过U盘来安装WINDOWS7这个操作系统,实际操作过程中我们用到最多的工具要数UltraISO这个软件了,现在的最新版本应该是9.5。通过插入U盘,之后在UltraISO的启动标签中,我们选择写入硬盘就可以制作我们想要的U盘WINDOWS7安装盘。 但实际操作过程中,我们会碰到一个比较麻烦的问题就是出现:缺少所需的CD/DVD驱动器设备驱动程序,这时我们的安装是没有办法继续的如下图:

其实从表面看,好像真像他提示的一样,可能是缺少驱动了,其实不然,这是微软的提示误导了我们,我们可以看一下下图 我们点击浏览按扭之后会出现如上的图片,在上图中我们可以清楚地看到硬盘的分区情况,那证明不是驱动的问题,但就是在这个窗口其实细心的朋友应该可以看出情况来,先买一个关子。这时我们没有办法继续安装,那怎么办呢?这时我们关掉上图中要我们找驱动的界面,我们回到开始安装界面,然后同时按下Shift+F10键,这时会弹出命令窗口,如下图: 在这个界面同时按下Shift+F10,出现如下窗口

我们用WINDODWS 7提供的硬盘分区命令:diskpart 来查看我们的驱动器情况,先在默认窗口中输入:diskpart 回车,提到下图 再输入:list disk 回车,图如下

简单的虚拟字符设备驱动的实现

简单的虚拟字符设备驱动的实现 Linux業已成为嵌入式系统的主流,而各种Linux驱动程序的类型中,字符设备无疑是应用最广泛的。本文实现了一个简单的虚拟字符设备的驱动程序,用以演示Linux字符设备驱动的基本原理。在嵌入式Linux的教学中具有重要的作用。 标签:Linux 驱动程序字符设备虚拟嵌入式 Linux作为一种开放源代码的操作系统,在嵌入式系统领域业已成为主流,而为嵌入式Linux系统开发设备驱动程序,也成为一项重要的工作。Linux系统中的驱动程序主要分为三种:字符设备驱动程序、块设备驱动程序和网络驱动程序。其中字符设备是一类只能顺序读写,没有缓存的驱动程序,其实现方法相对简单,而应用则最为广泛。在嵌入式Linux的教学中,字符设备驱动程序也是一项重要内容。为了让学生能够理解字符设备驱动程序的原理,需要一个简单的字符设备驱动的例子,用以进行演示。 一、基本原理 把设备当作文件处理,是Linux系统的重要思想,即“一切皆文件”。在用户空间中,应用程序对字符设备的操作跟读写普通文件没有什么区别,也是通过open()、close()、read()、write()等函数实现的。操作系统将这些用户空间中的函数分别映射到内核空间中由驱动程序提供的对应接口。因此,内核空间中的驱动程序就需要通过对对应接口函数的实现来实现对用户空间中应用程序的支持。 file_opreations是字符设备驱动中最重要的结构,它包含了字符设备各种可能的接口函数。通常在嵌入式编程中,我们不需要全部实现,只需要实现我们实际用到的接口就可以了,这样可以有效降低程序的大小。该结构被定义在头文件“linux/fs.h”中,使用时只需声明该结构的一个变量并进行填充即可。 二、环境准备 为了进行嵌入式Linux的开发,必须首先安装Linux系统。这里采用最常用的Windows系统+VMWare虚拟机的形式,系统版本为RedHat Enterprise Linux 6.4,其自带的内核版本为2.6.32-358.el6.i686。该版本比之前沿用的RedHat9更新,同时也是一个被验证过的非常稳定的系统。 交叉编译器采用网上下载的Arm-Linux-gcc 4.5.1版本,同样兼顾到版本更新和稳定性之间的平衡关系。 各软件的安装过程本文不再赘述。

USB设备驱动程序设计

USB设备驱动程序设计 引言 USB 总线是1995 年微软、IBM 等公司推出的一种新型通信标准总线, 特点是速度快、价格低、独立供电、支持热插拔等,其版本从早期的1.0、1.1 已经发展到目前的2.0 版本,2.0 版本的最高数据传输速度达到480Mbit/s,能 满足包括视频在内的多种高速外部设备的数据传输要求,由于其众多的优点,USB 总线越来越多的被应用到计算机与外设的接口中,芯片厂家也提供了多种USB 接口芯片供设计者使用,为了开发出功能强大的USB 设备,设计者往往 需要自己开发USB 设备驱动程序,驱动程序开发一直是Windows 开发中较难 的一个方面,但是通过使用专门的驱动程序开发包能减小开发的难度,提高工 作效率,本文使用Compuware Numega 公司的DriverStudio3.2 开发包,开发了基于NXP 公司USB2.0 控制芯片ISP1581 的USB 设备驱动程序。 USB 设备驱动程序的模型 USB 设备驱动程序是一种典型的WDM(Windows Driver Model)驱动程序,其程序模型如图1 所示。用户应用程序工作在Windows 操作系统的用户模式层,它不能直接访问USB 设备,当需要访问时,通过调用操作系统的 API(Application programming interface)函数生成I/O 请求信息包(IRP),IRP 被传输到工作于内核模式层的设备驱动程序,并通过驱动程序完成与UBS 外设通 信。设备驱动程序包括两层:函数驱动程序层和总线驱动程序层,函数驱动程 序一方面通过IRP 及API 函数与应用程序通信,另一方面调用相应的总线驱动 程序,总线驱动程序完成和外设硬件通信。USB 总线驱动程序已经由操作系统 提供,驱动程序开发的重点是函数驱动程序。 USB 设备驱动程序的设计

常用网络设备设备

物理层设备 1.调制解调器 调制解调器的英文名称为modem,来源于Modulator/Demodulator,即调制器/解调器。 ⑴工作原理 调制解调器是由调制器与解调器组合而成的,故称为调制解调器。调制器的基本职能就是把从终端设备和计算机送出的数字信号转变成适合在电话线、有线电视线等模拟信道上传输的模拟信号;解调器的基本职能是将从模拟信道上接收到的模拟信号恢复成数字信号,交给终端计算机处理。 ⑵调制与解调方式 调制,有模拟调制和数字调制之分。模拟调制是对载波信号的参量进行连续地估值;而数字调制使用载波信号的某些离散状态来表征所传送的信息,在接收端对载波信号的离散参量进行检测。调制是指利用载波信号的一个或几个参数的变化来表示数字信号的一种过程。 调制方式相应的有:调幅、调频和调相三种基本方式。 调幅:振幅调制其载波信号将随着调制信号的振幅而变化。 调频:载波信号的频率随着调制信号而改变。 调相:相位调制有两相调制、四相调制和八相调制几种方式。 ⑶调制解调器的分类 按安装位置:调解解调器可以分为内置式和外置式 按传输速率分类:低速调制解调器,其传输速率在9600bps以下;中速调制解调器,其传输速率在9.6~19.2kbps之间;高速调制解调器,传输速率达到19.2~56kbps。 ⑷调制解调器的功能 ?差错控制功能:差错控制为了克服线路传输中出现的数据差错,实现调制解调器至远端调制解调器的无差错数据传送。 ?数据压缩功能:数据压缩功能是为了提高线路传输中的数据吞吐率,使数据更快地传送至对方。 ⑸调制解调器的安装 调制解调器的安装由两部分组成,线路的连接和驱动程序的安装。 线路连接: ?将电话线引线的一端插头插入调制解调器后面LINE端口。

驱动程序安装方法

驱动程序安装方法 初识电脑的人,可能为安装驱动程序而头疼。因为对驱动程序了解得不多就会在安装过程中走不少弯路,下面就给大家介绍一下安装驱动程序的两种常用方法和一些实用技巧。 一、安装即插即用设备的驱动程序 安装前的准备工作很重要,一般我们拿到要安装的新硬件时,首先要查看外包装盒,了解产品的型号、盒内部件及产品对系统的最低要求等信息。紧接着就要打开包装盒,取出硬件产品、说明书和驱动盘(光盘或软盘),认真阅读说明书或驱动盘上的ReadMe 文件,一般说明书上写有安装方法和步骤,以及安装注意事项。除了阅读说明书外,还应记得硬件产品上印刷的各种信息以及板卡产品使用的主要芯片的型号。这些信息就是确定产品型号及厂家的重要依据,只有知道这些,才能在网上查找最新的驱动程序。最后按照说明书上介绍的方法来安装硬件。通常安装内置板卡、内置驱动器,使用串口或PS /2接口的设备都应关机断电后再操作,而安装USB设备、笔记本电脑的PC卡时可以带电热插拔。当然,如果是Win2000系统则均可热插拔。完成前面的准备工作之后,就可以启动Windows 来安装驱动程序了。通常情况下,Windows 能够自动检测到PCI 卡、AGP卡、ISA卡、USB设备以及多数打印机和扫描仪等外设,并提示用户插入安装盘。以YAMAHA724声卡为例,其在Win98下安装驱动程序的详细步骤如下。 1.Win98在启动过程中会自动检测即插即用设备,一旦发现了新设备,并且在INF目录下有该设备的.inf 文件,系统将自动安装驱动程序;如果这是一个新设备,INF目录下没有相应的.inf 文件,那么系统就会启动硬件向导。我们单击“下一步”让安装向导自动搜索设备驱动程序,然后再单击“下一步”。 2.在图3中只选中“指定位置”,插入驱动光盘,并单击“浏览”,根据说明书的介绍,选择简体中文版驱动程序所在的目录“E:\Lx_so u n d /Yamaha /Win9X”,点“确定”后单击“下一步”。需要注意的是:Win95的安装向导没有自动搜索功能,我们必须选择“从磁盘安装”,并指定驱动程序所在的位置。驱动程序所在的目录通常是驱动盘上的“Win95”、“Win9X”或“Windows98”目录。 3.硬件安装向导会在指定目录下查找与设备相符的.inf 文件,此例中,硬件向导将在指定目录下找到并向作户报告发现YAMAHA724声卡驱动程序,继续按“下一步”。 4.硬件安装向导显示Windows 准备安装的驱动程序的信息,单击“下一步”后,硬件向导便会根据.inf 文件的内容把指定的文件拷贝到相应的目录下,并在注册表中写入相应的信息,安装成功后显示出对话框。 5.对多数设备而言,到这里驱动程序就算安装完毕了。但如果你安装的是声卡那就还未结束,因为刚才的步骤只能装完声卡的主体部分。单击“完成”后,Windows 又会报告发现了两个新硬件,分别是声卡的DOS 仿真部件和声卡上的游戏控制端口。由于此时SBPCI9X.inf 文件已经被拷到“Windows /INF /Other”子目录下,所以Windows 能够自动安装好这两种设备的驱动程序。 6.驱动程序安装完毕后,我们需要检查设备能否正常工作。检查前还要进行额外的设置,例如使用网卡之前必须先安装和设置网络协议,用调制解调器上网之前要先“新建连接”等。此例中,在“控制面板”里打开“系统”→“设备管理器”→“声音、视频和游戏控制器”,可以看见下面多了三个设备,只要设备的小图标上没有黄色惊叹号,就表示驱动程序运行正常。 二、安装非即插即用设备的驱动程序

安装Windows7时电脑提示缺少所需的CDDVD驱动器设备驱动程序的原因

安装Windows7时电脑提示缺少所需的CD/DVD驱动器设备驱动程序的原因 以及解决方案 来源:互联网作者:佚名时间:09-03 15:16:35【大中小】问题描述:安装win7时提示:“缺少所需的CD/DVD驱动器设备驱动程序。…………”然后找遍整个硬盘/光盘也找不到合适的驱动,安装无法继续。 现在安装系统肯定用光驱的人不多,一般最简单的方法就是通过U盘来安装WINDOWS7这个操作系统,实际操作过程中我们用到最多的工具要数UltraISO这个软件了,现在的最新版本应该是9.5。通过插入U盘,之后在UltraISO的启动标签中,我们选择写入硬盘就可以制作我们想要的U盘WINDOWS7安装盘。 但实际操作过程中,我们会碰到一个比较麻烦的问题就是出现:缺少所需的CD/DVD驱动器设备驱动程序,这时我们的安装是没有办法继续的如下图:

其实从表面看,好像真像他提示的一样,可能是缺少驱动了,其实不然,这是微软的提示误导了我们,我们可以看一下下图 我们点击浏览按扭之后会出现如上的图片,在上图中我们可以清楚地看到硬盘的分区情况,那证明不是驱动的问题,但就是在这个窗口其实细心的朋友应该可以看出情况来,先买一个关子。这时我们没有办法继续安装,那怎么办呢?这时我们关掉上图中要我们找驱动的界面,我们回到开始安装界面,然后同时按下Shift+F10键,这时会弹出命令窗口,如下图:

在这个界面同时按下Shift+F10,出现如下窗口 我们用WINDODWS 7提供的硬盘分区命令:diskpart 来查看我们的驱动器情况,先在默认窗口中输入:diskpart 回车,提到下图

Windows 95下的虚拟设备驱动程序

Windows 95下的虚拟设备驱动程序 虚拟设备驱动程序(VxDs)在很大程度上支持了Windows 3.x和Windows 95。通 常,我们从两个级别的意义上来认识VxDs:从低级意义上来说,它们直接存取系统 的硬件;而从高级意义上来看,它们在最高优先级别上运行。 在Windows 95中,VxDs显得更加重要,Microsoft正是靠VxDs扩展了操作系统内 核的处理能力。Win 95中的VxDs可以处理涉及从文件系统到声卡以至网络系统的 各种事务。 可能您还未认识到:尽管VxDs本身是32位的,但它却诞生于16位的非线程、非 抢占性的操作系统。而现在人们期待甚至要求VxDs能运作于具有线程化、可抢占 性的操作系统,简单的变形是不能解决此问题的。 虚拟机假想 一台虚拟机(VM)只不过是人们的一个假想。而特别的,这个假想认为一个给定 的进程可对一台计算机的所有硬件设备进行独占性的存取,这些设备包括了内 存 、I/O口、中断和其它进程想要占用的部件。VxDs就是为了此假想产生的。 Windows 3.1中有两种虚拟机(VMs):DOS壳和Windows VM本身(后者称为" 系统 虚拟机"———所有的Windows应用程序运行于其中)。而虚拟机管理器(VMM),尽 管它本身不是一VM,但却充当着激活VMs和VxDs的主要管理员。例如,VMM要处理在 运行VMs时的抢占时间片工作。 另外,任何用来虚拟管理I/O设备的VxD都必须在VMM中登记。因此,如果一VxD 要占用一些特殊的I/O端口,就必须请求VMM挂起这个端口。这样,无论何时当一 Windows应用程序试图对此口进行存取操作时,VMM将把这个存取请求传给特定的 VxD。

安装驱动程序时,出现unknown device(未知设备)

故障现象 安装驱动程序时,将 USB 连接线连接至电脑后出现“unknown device(未知设备)”的提示信息。 故障原因 ?电脑主板无法正确识别 USB 2.0 模式。 ?USB 连接线出现问题。 解决方法 步骤一:停用 USB 2.0 控制器 1.根据不同的操作系统做以下操作: o在 Windows 2000 Pro 操作系统中,依次点击“开 始”→“控制面板”→“系统”。 o在 Windows XP/Server 2003 操作系统中,依次点击“开 始”→“控制面板”→“性能和维护”→“系统”。 o在 Windows Vista 操作系统中,依次点击“开始 ()”→“控制面板”→“性能和维护”→“系 统”→“设备管理器”。如图 1 设备管理器所示: 图 1: 设备管理器 o在 Windows 7 操作系统中,依次点击“开始 ()”→“控制面板”→“系统和安全”→“设备 管理器”。如图 2 设备管理器所示:

图 2: 设备管理器 注 :本文以 Windows XP 操作系统的操作方法为例,其他操作系统的操作方法可作参考。 2.在“系统属性”窗口中,从“硬件”选项卡中点击“设备管理 器”按钮。如图 3 系统属性所示: 图 3: 系统属性

3.在“设备管理器”窗口中,展开“通用串行总线控制器”主项, 点击“USB2 Enhanced”子项。如图 4 USB 2.0 子项所示: 图 4: USB 2.0 子项

注 :本文以 Intel (R) 82801 主板芯片组为例,其他厂商芯片组的操作方法可以作参考。 4.在“设备管理器”窗口中,依次点击“操作”→“停用”。如图 5 注 :如果您使用的是 USB 接口的键盘和鼠标,需要先改用 PS/2 接口的键盘和鼠标,以免停用 USB 2.0 控制器后无法正常使用这些设备。 6.

相关主题
文本预览
相关文档 最新文档