网卡驱动程序汇总十篇

时间:2023-03-03 15:45:07

序论:好文章的创作是一个不断探索和完善的过程,我们为您推荐十篇网卡驱动程序范例,希望它们能助您一臂之力,提升您的阅读品质,带来更深刻的阅读感受。

网卡驱动程序

篇(1)

§1.1.1 windows nt网络体系结构

windows nt的网络体系结构是基于国际标准化(iso)制定的标准模型──开放式系统互连(open system interconnection:osi)参考模型分层建立的,这种方式有利于随时扩展其它功能和服务。

windows nt网络模型开始于mac子层,网卡驱动程序就驻留在其中。它通过相关的网卡把windows nt与网络连接起来,图中的多个网卡表明在一台运行windows nt的计算机上能使用多种网卡。

这一网络体系结构包括两个重要接口──ndis接口与传输驱动

程序接口(tdi)。这两个接口把两个层隔离开来,办法是相邻的部件只允许按单一的标准来写,不允许多重标准。例如一个网卡驱动程序(在ndis接口的下面)就不需要特地按每个传输协议来写它的代码块,恰恰相反,该驱动程序是写给ndis接口的,它通过符合ndis的相应传输协议来请求服务。这些接口包含在windows nt的网络体系结构中,以容纳可移植、可互换的模块。

在两个接口之间,是传输协议。它在网络中起着组织者的作用。一个传输协议规定了数据以何种方式呈递给下一个接收层,以及如何对数据相应地进行打包。它通过ndis把数据传给网卡驱动程序,并通过tdi把数据传给转发程序(redirector)

tdi之上是转发程序,它把本地的网络资源申请转送给网络。

为了能和其他厂商的网络互连,windows nt允许有多个转发程序。对于每一个转发程序windows nt计算机必须也有一个相应的供应者(provider)(由网络厂商提供)。多供应者路由选择程序决定适当的供应者,然后借助于供应者,对应用请求到相应的转发程序做出选择。windows nt支持两种类型的网络驱动程序

传输驱动程序

实现数据链路层中的逻辑链路控制子层协议和传输层协议。向 下与ndis接口,向上与tdi接口。

网卡驱动程序

实现对物理层的管理和数据链路层中介质访问控制子层协议,通过ndis向下管理物理网卡,向上与传输驱动程序通信。

§1.1.3 windows nt网卡驱动程序

windows nt环境下的网卡驱动程序也分为两种:

miniport网卡驱动程序:miniport驱动程序只须实现与网络硬件相关的操作(包括发送和接收)。而所有底层网卡驱动程序的通用操作(如同步),一般由ndis接口程序来实现。

full网卡驱动程序:full网卡驱动程序必须实现所有硬件相关和同步、排队等操作。例如full网卡驱动程序为了响应数据接收,需要保持本身的捆绑信息,而miniport就可以由ndis接口库来实现。

在windows nt的早期版本中,full网卡驱动程序要求开发者实现许多底层操作,来处理多处理器的核心问题以及处理器、线程的同步,这样不同的开发者在大量重复着许多相同的工作。

而miniport网卡驱动程序允许开发者仅仅写一些与网络硬件相关的代码即可,而那些通用的函数由ndis接口库来实现,这样开发出来的驱动程序减少了不必要的工作。

第二节miniport驱动程序的结构

ndis接口规范了网卡驱动程序的实现,同时也对tdi驱动程序的实现提出了一定的要求,在nt中,ndis约束下的网卡驱动程序、tdi驱动程序和系统的关系如下图所示:

图2.0 ndis约束下的网卡驱动程序、tdi驱动程序和系统的关系

miniport驱动程序包括驱动程序对象、驱动程序源代码和ndis接口库代码。windows nt ddk提供ndis.h作为miniport驱动程序的主要头文件,定义了miniport驱动程序的入口点、ndis接口库函数和通用数据结构。

上边缘函数的作用是网卡驱动与ndis接口库进行通信,而下边缘函数是tdi协议驱动程序与ndis通信的手段。ndis用一个叫做逻辑网卡的软件对象来描述系统中的每块网卡,而逻辑网卡与windows nt设备对象的通信由i/o子系统来管理,描述网卡的设备对象包括相关的网络信息如名字、网络地址和网卡内存基地址等,它还包含与硬件相关的驱动程序状态数据(捆绑数目,捆绑句柄,包过滤数据库等)。ndis分配一个句柄到miniportinitialize这个上边缘函数的一个结构中,然后miniport网卡驱动程序将在以后提供这个句柄来给ndis调用,这个结构一直被ndis保持,并且对miniport驱动程序不透明。 当miniport网卡驱动程序初始化一块网卡时,它创立自己的内部数据结构来描述网卡,记录需要它管理的与设备相关的状态信息。当miniport网卡驱动程序调用ndismsetatttibutes或ndismsetattributesex两ndis库函数时,它传递一个句柄给这数据结构。这样,当调用miniport驱动程序入口点时,它就传递这个句柄来验证驱动程序所对应的网卡的正确性。这个数据结构为miniport网卡驱动程序所拥有并维护。miniport nic驱动程序还需要维护一组对象,这些对象是系统定义的对象标识符(object idetifier:oid)来标识,以描述驱动程序的性能和当前状态信息。为查询这些信息,上层驱动程序调用ndisrequest向ndis接口库指示oid。oid表示了调用所需的信息类型,如miniport驱动程序所支持的lookahead缓冲区大小等。ndis接到上层驱动程序的查询请求,将oid传递给上边缘函数miniportqueryinformation实现对oid的查询,如果上层驱动程序请求改变状态信息则调用miniportsetinformation实现对oid的设置。典型的miniport nic驱动程序必须有一些函数来通过ndis接口实现上层驱动程序与硬件的通信。这些函数称为上边缘服务函数。

这些上边缘服务函数由驱动程序的开发者根据驱动程序面向的特定低层网络类型和硬件以及相应环境,可以有选择地实现,但必须保证驱动程序最基本的功能,这些基本功能包括初始化、发送、中断处理、重置、参数查询与设置和报文接收。

miniportinitialize:操作系统根据系统配置信息,检测出网卡已安装时,由ndis接口在初始化时调用,主要完成低层网络类型确定,对应于物理网卡的逻辑网卡初始化,中断信息注册,网卡与主机通讯方式的确认。i/o端口的申请与注册,内存映像,mib的初始化,物理网卡的验证与初始化等。

miniportreconfigure:支持网卡参数动态变化,和miniportinitilize一样由ndis接口以初始化级别调度执行(不能屏蔽中断,必须由驱动程序承认并清除在此期间产生的中断),支持即插即用和软配置的网卡在动态改变参数时,必须提供此函数。

miniportqueryinformation:查询网卡的状态以及网卡驱动程序的操作或统计参数,如是否支持组通讯、网卡的物理速率是否支持回环、是否支持直接拷贝等,这些参数以oid方式统一管理。

miniportsetinformation:ndis接口或协议驱动程序通过调用此接口改变驱动程序维护的oid库,一些操作参数的改变也将同时改变驱动程序状态,例如组地址的设置。

miniportreset:包括网卡硬件重置和驱动程序软件重置,软件重置包括驱动程序状态重置,以及一些相关的参数重置,还需考虑有些参数的恢复,重置时不必完成所有正在活跃的外部请求,但必须释放已占用的外部资源。

miniporthalt:挂起网卡并释放该网卡驱动程序占用的所有资源,在此期间不屏蔽中断。

miniportisr:高优先级的中断处理程序,进行的工作包括初始中断处理类型,决定是否进行中断转交,对卡上中断进行处理 等,该服务类型只在以下情况被调用:

ndis接口调用miniportinitialize和miniporthalt两函数时。

.中断处理类型设为每此中断处理过程都调用时。

为使系统能及时响应所有硬件中断,高优先级的硬件中断处理程序应尽可能的减少运行时间,防止长时间的屏蔽低优先级中断,避免造程中断丢失。

miniporthandleinterrupt:由中断延时处理程序在中断延时处理时进行调用。ndis排队所有的延时处理,该服务主要处理发送完成、报文接收、描述符用尽、溢出、网卡异常等中断。

miniportsend:ndis收到上层发送请求时经过若干协议处理再向下调用此服务过程,发送的packet已含有llc和mac头,该服务过程进行边界对齐、packet约束重整、描述符映射和报文发送、以及发送资源和packet缓冲队列管理。

miniporttransferdata:多个已和网卡捆绑的协议驱动程序在接收到报文到达指示后,向网卡驱动程序发出传送请求以拷贝各自所需的报文数据部分,网卡驱动程序根据各协议驱动程序对单个packet是否进行多次拷贝,以决定是否暂存只允许单次拷贝的packet等。

miniportcheckhandle:ndis每秒调用此服务函数一次,驱动程序发现网卡异常时报告给ndis由ndis调用miniportreset进行硬件重恢复。

miniportenableintrrupt:中断使能。

miniportdisableinterrupt:中断屏蔽。

另外,每个网卡驱动程序必须有一个初始化入口点,由driver entry函数实现,它和系统相关,由操作系统在装入驱动程序时调用,主要完成初始化ndis wrapper,再由wrapper初始生成驱动程序管理块并完成相应各种初始化工作,登录网卡驱动程序所有上边缘服务入口点,同时写入ndis版本信息。ndis接口库包括在ndis.sys中,它是一个核态函数库,有一套抽象的函数,无论协议驱动程序还是nic驱动程序都连接到这个库中,以实现上下层之间的操作。

第二章fddi网卡驱动程序的加载和运行

第一节 网卡驱动程序的安装

windows nt网卡驱动程序安装的目的是实现网卡相应硬件信息和驱动程序在windows nt注册库中的注册,使windows nt能够正确识别网卡,了解所必需的软硬件信息并能在windows nt启动时加载相应驱动程序。

网卡驱动程序安装时,首先在主群组的控制面板中选择“网络”,然后添加网卡,指定相应信息文件──oemsetup.inf的路径,以完成以下两个必要的操作:

复制驱动程序到相应的系统目录(windows nt根目录system32drivers)中;

在windows nt注册库中存入相应软硬件信息。

下面主要以fddi网卡为例介绍安装驱动程序所必需的工作:

§2.1.1网卡一般硬件参数

对于fddi网卡,必须在编写其oemsetup.inf文件时确定以下硬件参数:

总线类型:pci(5)……括号中的数字5表示pci总线在ndis中的总线类型代码;

厂商代号:0x5588……系统加载时确定网卡的标记,也是编程时确定pci槽号的标识;

cfid: 0x01;

介质类型:光纤(3) ……括号中的数字表示光纤在ndis中的介质类型代码;

是否支持全双工:支持。

对于其它的硬件信息在此inf配置信息文件中可有可无,如若配置,则可在驱动程序的编写时利用这些信息,方便编程,同时有利于其它应用对其参数的确定和使用。网卡驱动程序的安装通常将创建登录表中的四个不同子键:

software registrion键,对应于驱动程序,存在于hkey_local_machinesoftwarecompany productnameversion中。我们的fddi网卡驱动程序所对应的是hkey_local_machinesoftwarenet612yhfddiyhfddi1.0;

网卡的软件登录键,存在于hkey_local_machinesoftwaremicrosoft windows ntnt3.51networkcardsyhfddi1;

驱动程序的服务登录键,存在于hkey_local_machinesystemcurrentcontrolsetservices

网卡的服务登录键,存在于hkey_local_machinesystemcurrentcontrolsetservices

对于每一个网络部件,一个名为netrules的特殊子键在邻近的驱动程序或网卡登录子键里创建,netrules标识网络部件为网络整体的一部分。

fddi网卡驱动程序对应的标准软件登录表项将出现在以下路径:

hkey_local_machinesoftwarenet612yhfddiyhfddi1.0;

驱动程序对应的标准项的值为:

description =yhfddi/pci adapter controller

install date =……

……

refcount =0x01

servicename =yhfddi

softwaretype =driver

title =yhfddi/pci adapter controller

而且在yhfddi驱动程序相关的netrules子键下,这些值项为:

bindable =yhfddi driver yhfddi adapter non exclusiver

bindform =“yhfddisys”yes no container

class = reg_multi_sz “yhfddi driver basic”

infname =oemnad1.inf

type =yhfddisys ndisdriver yhfddidriver

use =driver

yhfddi网卡在如下路径的networkcards子键里介绍:

hkey_local_machinesoftwaremicrosoft

windows ntnt3.51networkcardsyhfddi1;

网卡的标准项包括以下这些值:

description =yhfddi/pci adapter controller

install date =……

manufacturer =net612

productname =yhfddi

servicename =yhfddi01

title =[01]yhfddi/pci adapter controller

§2.1.3编写inf信息配置文件

gui inf描述语言被windows nt用以书写系统所有部件的配置文件,当然也可以用以书写网络系统各部件的配置文件,该配置文件描述了网络部件安装、配置、删除的执行过程。当网络部件进行初始安装或二次安装(通常通过ncpa进行)时,安装程序读取部件对应的配置文件,进行解释执行。gui inf描述语言由节、命令、逻辑操作、变量规范、流程控制以及一套调用dll或外部程序的机制组成,其中,节是配置文件的主体,节可分为install节(类似于函数),shell节(也类似于函数,但可调用insall和shell节),detect节(不包含命令),一个配置文件一般由若干不同类型的节组成。驱动程序的开发者根据需要可以在配置文件中编写相应代码,使得用户和系统之间能进行交互,并且由用户决定一些配置参数。

nt网卡配置文件有其一套规范,驱动程序开发者必须按规范编写配置文件,一般来说,一个配置文件至少应该提供下面三个节:

安装入口点:[identify]shell节。该节主要功能是给出安装部件的类型名,系统通过它识别该部件属于哪一大类(display,mouse,scsi,network等)中的哪一类(网络adapter,driver,transport,service,network和netprovidor),同时,还需要给出映像文件和配置文件所在的源介质及标识。

[returnoption]shell节。系统执行安装identify节后,执行该节。它主要功能是检查所需安装的部件是否支持的硬件平台和语言,并给出网卡名(有些配置文件支持多类网卡,此时必须让用户进行选择,并获得选择结果)。

[installoption]shell节。该节是配置文件得主体,也是上次安装完后再次进行配置、删除、更新的入口点。主要功能是拷贝映像文件和配置文件,生成配置的各种选项,创建该部件在注册库中对应的各种登录子树并更新重写。

第二节 驱动程序的加载过程

篇(2)

1、单击右键,点开管理中的设备管理窗口;2、再点击网络适配器,显示的是当前电脑所有的网络适配器;3、然后单击右键,出现属性框,即可查看网卡驱动。

网卡驱动是CPU控制和使用网卡的程序。驱动程序全称为“设备驱动程序”,是一种可以使计算机中央处理器控制和使用设备的特殊程序,相当于硬件的接口,操作系统通过这个接口,控制硬件设备的工作。网卡驱动程序就是中央处理器控制和使用网卡的程序。

(来源:文章屋网 )

篇(3)

步骤2 由于这个Windows PE专做下载之用,因此还要为它安装上本本的网卡驱动。对此可运行“智能光盘驱动2008”,单击“驱动备份”,按提示选择上网卡驱动,点击“下一步”将网卡驱动提取到“D:\本机驱动程序备份\WinXp”文件夹中(如图11)。完成后使用winRAR打开提取出的网卡驱动,将其中的NET目录解压到D盘下备用。

步骤3 现在运行“xcab.exe”系统封包程序,在打开窗口中,定位到“待压缩”栏,并输入要添加的网卡驱动所在文件夹,这里为“d:\net”。在“保存为”输入栏内,键入SD卡上Windows PE系统“外置程序”目录的位置,这里为“e:\外置程序\PE_OUTERPART\DRlVERS_NET01.CAB”(如图12)。完成后点击“压缩”按钮,即可将当前网卡驱动重新压缩为CAB文件,并放置在Windows PE的“外置程序”目录下。这样当进入Windows PE系统后。便可自动安装好本本的网卡驱动。

步骤4 现在重启Windows XP系统,进入本本BIOS设置窗口,将SD卡设置为第一启动设备。保存退出后,本本即可由SD卡启动到Windows PE系统,双击桌面上的“启动网络支持”图标。Windows PE便会自动加载网络服务和本本的网卡驱动。当成功加载后,可看到网络配置窗口(如图13)。

小提示

如果Windows PE提示无法安装网卡时,可手动为其安装网卡驱动。方法是右击点击“我的电脑’选择“管理”命令,在打开窗口中切换到“设备管理器”标签,单击菜单栏上的“查看””显示隐藏设备”,之后转到右侧窗格中,依次展开“others device”“以太网控制器”,在其上右击选择“更新驱动程序”,在弹出窗口中选择“在这些位置搜索最佳的驱动程序”,然后勾选上“在搜索时包含这个位置”,并在输入栏内键入“c:\windows\lnf”路径,这样即可自动搜索硬盘上Windows XP的网卡驱动,接着按提示指定驱动文件位置“c:\Wlndowsksystem32\drivers”,就可成功安装网卡。注意在安装完成后,系统提示是否需要重启时,一定要选择“否”。

步骤5 一切就绪,只要双击桌面上的“宽带连接”图标,按提示输入ADSL帐号密码就可以联机上网了。现在再来试试是否能够进行下载操作,点击“开始”“程序”“聊天下载工具”“迅雷5.0”(如图14),之后在网上找到要下载的电影和软件。点击下载链接后便可使用迅雷开始下载了。注意在选择下载文件保存路径时,要将其保存到SD卡上,这样才不会对硬盘进行读写操作。

篇(4)

同Windows 7系统一样,Windows 8系统内部集成了许多网卡芯片的驱动,将无线网卡插到电脑上后,系统会发现硬件并自动安装驱动,稍等片刻后,右键点击桌面上的“计算机”并选择“管理”。 点击设备管理器,即可看到网卡已经被正常识别(如图1)。

在Windows 8 Metro界面下,我们可以直接用鼠标左键点击桌面右下角的无线网络连接图标,即可打开无线信号列表。选择对应自己无线路由器的无线信号并点击连接按钮,输入无线信号的密码后点击下一步,稍等片刻,就可以通过无线方式上网了(如图2)。

手动安装驱动

而当遇到Windows 8系统不能直接识别无线网卡的时候(如图3),的确有部分网卡并未直接推出Windows 8系统驱动,这就需要用户手动为USB网卡安装驱动了。

遇到这样的情况可尝试手动安装该网卡,对应Windows 7系统的驱动看是否可以正常使用。登录USB网卡官方网站,下载Windows 7系统的驱动程序,解压缩后放在桌面备用。接下来在设备管理器的黄色标识的设备上点击右键,选择“更新驱动程序软件”。选择“浏览计算机以查找驱动程序软件”,再点击“浏览”,找到驱动程序所在的文件夹后,点击“确定” (如图4)。

篇(5)

1、原因:win10系统下,未安装网卡驱动程序。

2、解决方法:进入MAC系统或者其它可以上网的电脑下载网卡驱动,返回安装即可。操作如下:首先在MAC系统中,或者其它可以联网的电脑上下载“驱动精灵网卡版”;然后将下载的驱动精灵网卡版通过U盘复制到当前WIN10系统下,打开软件,点击“一键体检”;然后软件就会提示“电脑未安装网卡驱动”,点击弹出的网卡驱动进行安装;等待安装完成即可;安装完成之后,即可正常上网。

(来源:文章屋网 )

篇(6)

3、然后在设备管理器下面找到“网络适配器”。

4、在下面的网卡驱动中发现有黄色感叹号和黄色问号。

5、在有问号、感叹号的程序上面单击右键选择“更新驱动程序软件”。

篇(7)

步骤2 由于这个Windows PE专做下载之用,因此还要为它安装上本本的网卡驱动。对此可运行“智能光盘驱动2008”,单击“驱动备份”,按提示选择上网卡驱动,点击“下一步”将网卡驱动提取到“D:\本机驱动程序备份\WinXp”文件夹中(如图11)。完成后使用winRAR打开提取出的网卡驱动,将其中的NET目录解压到D盘下备用。

步骤3 现在运行“xcab.exe”系统封包程序,在打开窗口中,定位到“待压缩”栏,并输入要添加的网卡驱动所在文件夹,这里为“d:\net”。在“保存为”输入栏内,键入SD卡上Windows PE系统“外置程序”目录的位置,这里为“e:\外置程序\PE_OUTERPART\DRlVERS_NET01.CAB”(如图12)。完成后点击“压缩”按钮,即可将当前网卡驱动重新压缩为CAB文件,并放置在Windows PE的“外置程序”目录下。这样当进入Windows PE系统后。便可自动安装好本本的网卡驱动。

步骤4 现在重启Windows XP系统,进入本本BIOS设置窗口,将SD卡设置为第一启动设备。保存退出后,本本即可由SD卡启动到Windows PE系统,双击桌面上的“启动网络支持”图标。Windows PE便会自动加载网络服务和本本的网卡驱动。当成功加载后,可看到网络配置窗口(如图13)。

小提示

如果Windows PE提示无法安装网卡时,可手动为其安装网卡驱动。方法是右击点击“我的电脑’选择“管理”命令,在打开窗口中切换到“设备管理器”标签,单击菜单栏上的“查看””显示隐藏设备”,之后转到右侧窗格中,依次展开“others device”“以太网控制器”,在其上右击选择“更新驱动程序”,在弹出窗口中选择“在这些位置搜索最佳的驱动程序”,然后勾选上“在搜索时包含这个位置”,并在输入栏内键入“c:\windows\lnf”路径,这样即可自动搜索硬盘上Windows XP的网卡驱动,接着按提示指定驱动文件位置“c:\Wlndowsksystem32\drivers”,就可成功安装网卡。注意在安装完成后,系统提示是否需要重启时,一定要选择“否”。

步骤5 一切就绪,只要双击桌面上的“宽带连接”图标,按提示输入ADSL帐号密码就可以联机上网了。现在再来试试是否能够进行下载操作,点击“开始”“程序”“聊天下载工具”“迅雷5.0”(如图14),之后在网上找到要下载的电影和软件。点击下载链接后便可使用迅雷开始下载了。注意在选择下载文件保存路径时,要将其保存到SD卡上,这样才不会对硬盘进行读写操作。

步骤6 考虑到要整夜下载软件,所以尽管此时本本上的硬盘已不在有读写操作,但为更好保护本本硬盘,达到节能、降温、减噪的效果,此时不妨将硬盘关闭。对此,如果是采用SATA接口硬盘的本本,可在Windows PE系统托盘中,点击“安 全删除硬件”图标,在弹出的提示条中选择硬盘即可将其关闭。

小提示

如果本本采用的是lDE接口硬盘,那么可在Windows PE系统中,右键点击“我的电脑”,选择“管理”,在打开窗口中依次展开“存储”“磁盘管理”链接,之后在右侧窗格的各个硬盘盘符上,逐个点击右键选择“更改驱动器号和路径”,并在弹出窗口中单击“删除”按钮,将所有硬盘盘符删除。这样即可在windowsPE中进行下载操作时避免数据的读写,从而使硬盘处于“停用”状态。

第四次亲密接触SD卡全面加速系统

使用过Windows Vista的朋友,可能知道其带有一个“ReadyBoost”功能,它能够利用高速闪存存储设备来加速系统。而由于本本内存槽有限,加到2GB内存后基本就占满了,这时把手中的高速SD卡拿出来用作加速,可是个额外提升性能的不错选择。

SD卡为Windows XP加速

由于Windows XP系统没有内置ReadyBoost功能,因此要想获得同等的效果,就要借助“eBoostr”这款软件。除此之外,用来做加速的SD卡必须是SDHC高速产品,本本上的读卡器也要工作在USB 2.0接口上。

步骤1 安装并运行“eBoostr”,完成后系统将会重新启动并自动打开程序设置窗口,此时可在“选择装置”栏中的下拉列表内,选取本本上的SD卡,并设置“选择快取大小”为一个较合适的范围。比如这里采用4GB的高速SD卡,就可选择1GB空间用于系统加速(如图15)。

步骤2 设置完成后,单击“确定”按钮,程序便开始设置加速参数并切换到控制台窗口,在这里将显示当前硬盘负载等参数。现在同时运行多个大型程序,看看运行速度是不是有了明显提升呢(如图16)。

SD卡启动ReadyBoost

如果使用了Windows Vista系统。那么其已内置了“ReadyBoost”加速功能,只要将其开启并应用在SD卡上即可。对此,可在本本上插入SD卡后,打开“我的电脑”,右键点击SD卡盘符选择“属性”,然后在打开的属性窗口中切换到“ReadyBoost'’标签,选择“使用这个设备”单选框,接着在“用于加快系统速度调节的保留空间”选项中,拖动滑块选择适当的存储空间用作加速即可(如图17)。

小提示

要在Windows Vista中激活“ReadyBoost”功能,所使用的SD卡要支持在4K随机读取时不低于2.5MB/s或512K随机写入时不低于1.75MB/s的传输率,并保证带有64MB到8 GB的空闲空间。

因为开启“ReadyBoost”功能需要SD卡具备一定条件。所以当某些兼容性较差的SD卡插入本本后,在windows Vista系统下可能会自动屏蔽“ReadyBoost”功能。如果确认SD卡为高速产品,这时可手动开启该功能。

步骤1 插入SD卡,并切换到“ReadyBoost”设置窗口后,如果系统提示该设备无法用于加速,那么可取消系统默认勾选的“插入设备时不要再测试此设备”复选框,并单击“确定”退出(如图18)。

篇(8)

1 背景

当今的物联网时代,移动终端设备的通信得到广泛的应用。各种设备相继接入无线网络,从而实现更灵活、更方便快速的网络通信。

无线网卡模块是实现无线网络通信的硬件条件,目前来看主要有两种形式(1)内置式无线网卡:即将网卡芯片与主板集成在一起,如手机、笔记本电脑等;(2)外置式无线网卡:利用USB接口外接USB无线网卡。这两种方式各有优势,本文主要研究外置式无线网卡的实际应用。

2 无线网卡驱动程序的配置与移植

2.1 无线网卡的选择

从技术角度看,无线网卡的选择要注意以下几点:

(1)支持802.11b/g/n无线传输协议。

(2)采用主流厂商的无线网卡芯片.

(3)具备外置增益天线。

根据以上要求,本论文中选用了磊科的NW335型号的无线网卡来进行测试操作。

2.2软硬件平台

硬件平台:S3c6410

软件平台:linux2.36.2

交叉编译工具:arm-linux-gcc 4.3.2

2.3 NW335驱动程序的移植

不同厂商,不同型号的无线网卡的驱动程序不尽相同。因此,对于无线网卡驱动程序的移植就必不可少了。下面开始介绍对该款网卡的驱动程序移植到嵌入式linux操作系统的过程:

(1)登录realtek官网:http://.tw/Default.aspx,获取驱动程序源代码,rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz

(2)将驱动程序以共享文件夹的方式移动到ubuntu虚拟机中,然后解压缩,运行: tar xzvf rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz

(3) 打开解压后的文件夹,如下图:

修改Makefile,运行gedit Makefie,打开文件,将原来的代码

CONFIG_PLATFORM_ANDROID_X86=y

CONFIG_PLATFORM_ARM_S3C6K4 =n

改为:

CONFIG_PLATFORM_ANDROID_X86=n

CONFIG_PLATFORM_ARM_S3C6K4 =y

执行make命令,会生成一个.ko文件,这里生成一个8188cu.ko文件。即是我们生成的linux下无线网卡的驱动程序。将该文件复制到开发板存储器中,执行:insmod /8188cu.ko 即可加载该网卡的驱动程序。

3 安全认证与加密

对于无线网络来说,由于信号不是在密闭的线路中传输,其安全性是必须要考虑的因素,数据传输过程中的协议与加密算法是非常重要的。目前主要的加密算法有两种(1) WEP安全加密方式(2) WPA安全加密方式,其中wpa加密方式是目前最安全的加密技术,其配置过程如下:

一、下载并解压缩源码

登录 http://hostap.epitest.fi/wpa_supplicant/,下载wpa_supplicant-0.7.3.tar.gz (openssl用到0.7.3提供的补丁),并进行解压缩:

#tar xvfz wpa_supplicant-0.7.3.tar.gz

下载/source/openssl-0.9.8e.tar.gz,并进行解压缩

#tar zxvf openssl-0.9.8e.tar.gz

二、编译openssl库

将wpa_supplicant中的补丁拷贝到openssl中 ,修改配置文件,如下图所示:

三、编译wpa_supplicant ,修改配置文件后进行编译,如下图所示:

经过编译后的wpa_supplicant源程序可以看到两个主要的可执行工具:wpa_supplicant和wpa_cli。 wpa_supplicant是核心程序,它和wpa_cli的关系就是服务和客户端的关系:后台运行wpa_supplicant,使用wpa_cli 来搜索、设置、和连接网络。

四、配置wpa_supplicant工具

修改wpa_supplicant.conf配置文件,其内容如下:

wpa_supplicant -B -i wlan0 -c /mnt/disk/home/wireless/wpa_supplicant.conf

4 保证不断网的方案

因为各种各样的原因,网络有可能会连接不成功。如网络设备故障,断电,设备自身重启,软件硬件故障等。为了保证网络连接的稳定性,需要制定的联网策略,对断网情况进行修复处理。

1.启动时进行网络检测,若不能通过便重新启动,代码如下:

2.在运行期间每隔一段时间检测网络,若不成功便重新连接网络:

5 结论

通过对磊科NW335无线网卡的移植,可以实现带有USB接口的LINUX设备的联网,实用效果比较理想。在具备网络连接检测软件运行的情况下,设备可以实现不间断的网络通信。

参考文献

[1] 李俊.嵌入式Linux设备驱动开发详解[M].北京:人民邮电出版社,2008.126-167

[2] 宋宝华.Linux设备驱动开发详解[M].北京:人民邮电出版社,2008.477-528

[3] 刘淼.嵌入式系统接口设计与Linux驱动程序开发[M].北京:航空航天大学出版社,2006.205-234

篇(9)

中图分类号:TP319文献标识码:A文章编号:1009-3044(2011)24-5928-03

A Shell Extension of Ghost Software for Network Multicast Clone

LUO Hai-feng

(School of Politics and Public Administration, Shaoguan University, Shaoguan, 512005, China)

Abstract: This paper analyzes the start process and command-line format in the Ghost software cloning process, makes a shell extension of the Ghost software by using the C programming language. Through the application of software at boot stage, The Ghost setup and operating procedure is automatically set to simplify the Ghost software, make it possible to restore large numbers of computer system rapidly in a LAN (Local Area network). The article also introduce the client universal boot disk production, and the implementation process of the network multicast cloning.

Key words: Ghost; multicast; clone; system restore

Ghost是著名的硬盘复制备份工具,具有硬盘克隆、硬盘分区备份、系统安装等功能。Ghost一对多的克隆方式,可通过TCP/IP网络协议可同时从一台电脑上克隆多台电脑的硬盘数据,使Ghost具有网络安装功能。通常称为Ghost的网络多播克隆技术。

使用Ghost,管理员可以在数分钟之内把一个操作系统镜像或者应用程序部署或者恢复到另一台PC机器上。利用多播技术远程克隆多个计算机,可实现快速、安全、批量地恢复操作系统。

1 简介

同一个计算机实验室内的机器,可能硬件配置不一致,但软件环境要求都是相同的。面对这种应用环境,为了实现多播克隆,有两个关键步骤:一是“样机”的准备。先做好一个通用的系统“样板”,再针对不同硬件配置的计算机分别安装不同的设备驱动程序,每种样机需要备份出一个.gho文件;二是如何引导计算机进入准备克隆状态。计算机启动到准备克隆状态,需要运行一系列命令。每台机器需要执行的启动命令都不一样,因为网卡不同的机器需要不同的网卡驱动程序,同一批次克隆的每台机器也需要分别赋以不同的IP地址。这一系列命令如果使用手工输入,将会非常繁琐,工作效率低。经过试验,采用C语言编程实现引导命令的自动生成,制作出通用的引导光盘,使客户端进入准备克隆状态的过程尽量减少手工键盘输入,系统维护工作变得易行、快速、高效。

2 实现方法

多播克隆进行系统恢复的步骤是,首先在服务器运行多播服务器程序,选择要广播的.gho文件,执行一个会话(Session),等待客户机的连接。需要恢复软件系统的计算机(称为客户机)使用网络引导盘启动,连接到多播服务器,处于准备克隆状态,等待接受数据。所有客户机都连接好后,在多播服务器程序窗口选择“发送”(Send),即可将操作系统样板多播发送到每个客户机。克隆过程完成后,客户机重新启动,修改机器名和IP地址,软件系统的恢复宣告完成。

下面对引导客户机启动进入到准备克隆过程的实现方法进行论述。

2.1 客户机的引导过程

客户机可采用光盘启动、U盘启动、软盘启动或硬盘启动等多种方式。引导过程分成启动进入Windows 98命令行界面、运行网卡驱动程序、运行ghost程序三步。

以光盘启动为例,光盘根目录下的内容有Windows 98引导程序文件、网卡驱动程序和ghost程序。下面是Win98启动盘自动批处理文件(autoexec.bat)的实例:

@echo off

prompt $p$g

0x60 rem 运行网卡驱动程序

set ghostip=wintcp.cfg rem 该句句用来指定该计算机使用的配置文件

ghost.exe rem 运行ghost程序连接多播服务器进行克隆

其中是8139网卡的封包驱动程序。封包驱动程序是介于TCP程序与网卡之间的桥梁,以软件中断呼叫的方式提供一个标准的界面服务。网卡不同的机器需要不同的网卡驱动程序,该程序可在网卡的驱动程序软盘上找到。

配置文件wintcp.cfg用于设置ghost.exe程序的运行参数(IP地址、子网掩码、网关),典型内容如下:

IP = 192.168.0.10

NETMASK = 255.255.255.0

GATEWAY = 192.168.0.1

同一批次克隆的每台机器也需要分别赋以不同的IP地址。若服务器安装有DHCP服务,有可自动给每台机器分配IP地址,则配置文件wintcp.cfg的第一行可以略去。也可以采取程序交互方式,由用户手工指定IP地址。多播服务器同时也作为网关,按默认设置将该机的IP地址修改为192.168.0.1。

ghost.exe是客户机进行网络克隆的执行程序。由于程序运行过程中需要对配置文件wintcp.cfg进行写操作,在制作启动盘时要求设置成将以上所有程序和文件装载到内存虚拟盘中存放和执行,这样还能保证程序执行速度非常快,在程序启动后、ghost程序运行前还能将光盘(或U盘、软盘)取出放到其他机器上运行,这样一张引导盘能够同时引导多台机器。

2.2 Ghost的命令行参数

为了使克隆过程自动进行,减少人工干预,可在执行ghost程序时使用命令行参数。多播克隆时涉及的命令行参数如下:

1) -rb本次 Ghost 操作结束退出时自动重启。

2)Csure对所有要求确认的提示或警告一律回答“Yes”。

3) 这是实现 Ghost 无人备份/恢复的核心参数。使用语法为:

-clone,mode=(operation),src=(source),dst=(destination),[SZE(size),SZE(size)...]

此参数行较为复杂,且各参数之间不能含有空格。其中 operation意为操作类型,值可取:copy:磁盘到磁盘;load:文件到磁盘;dump:磁盘到文件;pcopy:分区到分区;pload:文件到分区;pdump:分区到文件。Source 意为操作源,值可取:驱动器号,从1开始;或者为文件名,需要写绝对路径。Destination 意为目标位置,值可取:驱动器号,从 1开始;或者为文件名,需要写绝对路径。

例如输入以下命令:

ghost Cclone,mode LOAD,src=@MCa,dst=1 Csure -rb

表示从网络会话a克隆系统到本机第1个硬盘,不询问,完成后重启系统。

2.3 引导程序的设计

在本设计中引导程序取名为go.exe,存放在启动盘根目录。该程序的任务是引导客户机进入到准备克隆状态。

引导程序分成三部分:

1) 选择并运行网卡封包驱动程序。为了将引导程序做成一个通用的程序,能引导实验室所有装有不同的网卡的机器,需要事先在网卡的驱动程序软盘上提取相应的程序。例如8139网卡的封包驱动程序名称为“”。

为了便于扩充,将网卡名称和对应的驱动命令成对存放在文本文件“netcard.txt”中,当增加新的网卡时,只需将新的驱动程序添加进指定目录,并修改网卡信息文件“netcard.txt”即可。如果用户愿意,甚至可将网卡命名为自己习惯的名字。网卡信息文件示例如下:

//网卡描述与驱动程序指引文件。由程序读入。

//Script=:网卡描述。Driver=:DOS下网卡驱动命令,必须跟在上一行Script之后。

Script=Realtek RTL8139(A) PCI fast Ethernet Adapter

Driver=RTSPKT 0x60

Script=Realtek RTL8139 Family PCI fast Ethernet NIC

Driver=RTSPKT2 0x60

Script=Macronix MX987x5 Family Fast Ethernet Adapter

Driver=MX32PD 0x60

Script=Accton En1207D Series PCI fast Ethernet Adapter

Driver=ACCPKT 0x60

Script=D-Link DFE-530TX fast Ethernet Adapter

Driver=DLKFET 0x60

2) 生成配置文件wintcp.cfg。如果局域网有DHCP服务器,则可以采用固定格式的配置文件,文件内容只有两行,“NETMASK = 255.255.255.0”和“GATEWAY = 192.168.0.1”,无需用户干预。对于手工设置IP地址的情形,只需键入一个1~255之间的数,生成形如“IP = 192.168.0.*”的字符串添加进配置文件wintcp.cfg中,作为IP地址的配置。其中“*”号代表输入的数字(通常是机器编号)。

3) 运行带命令行参数的Ghost程序命令。命令实例见上一小节。

引导程序采用TC 2.0进行了编程实现,代码并不复杂,主要用到了读写文本文件函数和调用外部命令函数system()。

2.4 客户端通用引导盘的制作

首先按常规方法制作出DOS启动盘,在自动批处理文件autoexec.bat的最后面添加一行“go”,调用上一小节编制出的go.exe程序。

再将引导程序go.exe,网卡信息文件netcard.txt,客户端克隆程序ghost.exe,各种网卡的封包驱动程序包括、、等复制到启动盘根目录。

通过以上两步,引导盘制作完毕,已经可以使用了。

实现过程中使用WinImage、WinISO、NERO等软件配合,将以上所列内容制作成引导光盘。需要注意的是,引导程序go.exe运行时会写配置文件wintcp.cfg,而光盘是只读的。解决办法是光盘启动初始阶段在计算机内存中建立一个虚拟盘。

由于提取了本实验室现有各种网卡的封包驱动程序,该引导盘能引导所有计算机通过网络连接到多播服务器,进入准备克隆状态。因此称之为“客户端通用引导盘”。

3 网络多播克隆的实施

准备好了克隆服务器、样板计算机的.gho映像文件,以及客户端引导盘,接下来就可以实施网络多播克隆了。

事先将服务器IP地址设置为“192.168.0.1”,然后启动多播克隆服务器程序GhostCast Server,在服务器程序界面的会话名“Session Name”框中,输入会话名称“a”(与引导程序中ghost的命令行参数相一致)。选中加载到客户的单选框“Load To Clients”。在映像文件“Image File”框中,给出映像文件所在的路径,如输入“d:\system\P 4 2.4G\win2k.gho”。选中“Disk”单选框。单击接受客户“Accept Clients”按钮,等待客户机的连接。

克隆服务器启动后,客户机就可以开始连接服务器了。用按第2节实现方法制作的启动光盘启动计算机,出现下面的交互式界面(图1)。

键入“1”选择第1种网卡,出现以下提示行(图2)。

键入客户机编号(比如“10”)并按下回车键,就会自动连接上克隆服务器,此时在服务器端的窗口中可看见客户机10的地址,表示客户机10已经登录,等待服务器开始克隆。再用引导盘启动其他客户机,操作方法同上。当所有的客户机都连结上服务器后,就可以在服务器端按发送“Send”按钮,开始网络多播克隆(如图3)。

4 应用效果

由于界面易于使用,技术门槛降低,即使是非技术人员也能协助进行系统维护工作。每台客户机在引导过程只需要输入1到2个数字即可进入到克隆预备状态,在进行大面积系统恢复时更体现出高效率。以一个配备百兆以太网络的计算机房为例,每批同时克隆30~40台机,一个小时内可将这些机器的软件系统全部恢复完毕。本文所述方案在高校实验室成功应用两年多,减轻了实验室工作人员的工作压力,加快了计算机系统快速恢复的过程,也提高了工作效率,取得了很好的应用效果,对学校计算机实验室建设和管理工作有着积极的促进作用。

参考文献:

[1] 李欣.机房管理中Ghost软件的应用[J].实验室研究与探索,2004(6):14-16.

[2] 瞿波,陈伟.如何用GHOST进行网络多播克隆[J].计算机应用与软件,2004(9):115-117.

[3] 苏航,王勇军,于淼.基于Ghost软件的快速数据恢复方法的研究[J].科技资讯,2008(28):20.

[4] 王月,郑浩,宫豪,等.用Ghost软件快速备份和恢复操作系统[J].吉林师范大学学报:自然科学版,2009(3):154-156.

[5] 杨海瑞.浅谈机房使用GHOST恢复系统的方法[J].河套大学学报,2009(4):69-71,82.

篇(10)

一、引言

随着互联网技术的不断发展,个人用户在网络中的活动不仅仅是浏览网页和查询信息,越来越多的用户开通网上支付功能进行网上购物和炒股等商业性活动。如何防备计算机病毒和黑客的威胁成为用户非常关注的问题,越来越多的用户选择安装个人防火墙来抵御黑客的攻击,保护自己信息的安全,因此,研究和实现高性能的个人防火墙,提高个人计算机的安全是一件非常重要的工作。

个人防火墙的核心技术是网络数据包截获技术,在Windows平台上网络数据包的拦截有多种方案,本文选取核心态的NDIS中间驱动程序与用户态的Winsock2 SPI技术相结合。

二、应用层过滤的实现

(一)Winsock2 SPI技术原理

Winsock是为上层应用程序提供的一种标准网络接口,它为应用程序提供透明服务。而 SPI是Winsock 2.0版本提供的一种允许用户编写服务提供者接口程序的新机制,利用该技术在Winsock的下方插入一层或几层处理程序,完成诸如传输质量控制、扩展TCP/IP协议栈、封包过滤及网络安全控制等功能。

Winsock2 SPI对网络的传输是通过传输服务提供者来完成的,传输服务提供者又分为分层服务提供者和基础提供者如图1。

(二)SPI的实现

SPI的实现就是编写一个动态链接库,并且将其安装到Winsock目录中的基础服务提供者上,让应用程序先调用用户编写的服务提供者函数,实现数据的过滤。再由用户编写的服务提供者再调用下层的提供者。在本文所编写的分层服务提供者主要是截获了Ws_32.dll对以下7个函数的调用:WSPSocket、WSPBind、WSPCloseSocket、WSPAccept、WSPConnect、WSPSendTo、WSPRecvFrom。

(三)LSP的安装与卸载

本文中的用户层过滤模块实际上就是一个分层服务提供者。编写好服务提供者后,再将它安装在Winsock目录中:

(1)安 装 新 的 分 层 服 务 提 供 者 即 向 Winsock 目 录 中 安 装 一 个WSAPROTOCAL_INFO 结构(协议的入口),使创建套接字的应用程序可以枚举到它。

(2)每一个安装的提供者都必须用一个 GUID 唯一标识它的入口。在卸载 LSP 时,首先根据分层协议的 GUID 找到其目录 ID 号,然后逐个移除各协议链,最后再调用系统函数移除分层协议的提供者。

三、核心层过滤的实现

(一)NDIS中间驱动程序原理

NDIS中间驱动程序拓扑结构如图2所示。利用NDIS中间驱动程序可以在网卡驱动程序和传输驱动程序之间插入一层自己的处理,从而用来截获网络封包并重新进行封包、加密、网络地址转换和过滤等操作。中间层驱动源于Windows NT中的分层设计,允许系统在协议层驱动和微端口驱动之间存在任意多个中间层驱动,以完成所需的工作。

(二)NDIS中间驱动程序的实现

Windows 2003 DDK中的PassThru提供了一个用户接口框架,本核心层过滤模块就是在这个框架基础上进行扩展的。扩展的流程如下:

(1)驱动初始化过程DriverEntry。所有的驱动程序在开始调用前都要进行程序的初始化操作。这个初始化过程和DLL的初始化操作过程相似。

(2)微端口的注册。中间层驱动程序在进行为端口程序的注册时,调用NdisIMRegisterLayeredMiniport的导出函数。

(3)注册中间层驱动协议。在中间层驱动程序中,通过调用NdisRegisterProtoco1向NDIS注册Protocolxxx函数。

声明方式如下:

VOID

NdisRegisterProtocol(

OUT PNDIS_STATUS Status,

OUT PNDIS_HANDLE NdisProtocolHandler,

IN NDIS_PROTOCOL_CHARACTERISTICS Protoco1Charaeter-

istics,

IN UINT CharaeteristicsLength);

上一篇: 银监局汇报材料 下一篇: 党员民主评议自我评价
相关精选