CN102662884A - 一种基于网络的设备驱动程序配置方法 - Google Patents
一种基于网络的设备驱动程序配置方法 Download PDFInfo
- Publication number
- CN102662884A CN102662884A CN2012101099335A CN201210109933A CN102662884A CN 102662884 A CN102662884 A CN 102662884A CN 2012101099335 A CN2012101099335 A CN 2012101099335A CN 201210109933 A CN201210109933 A CN 201210109933A CN 102662884 A CN102662884 A CN 102662884A
- Authority
- CN
- China
- Prior art keywords
- client
- service end
- corresponding equipment
- hard disk
- mirror image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于网络的设备驱动程序配置方法。本发明可在客户端操作系统尚未加载或尚未完全加载时,通过枚举客户端PCI总线上的硬件设备取得对应设备的PCI配置空间信息,并且基于该信息中的设备参数生成可供服务端进行检索的设备识别ID。客户端发送该设备识别ID到服务端,取决于客户端操作系统的加载模式,如果为本机硬盘模式,服务端返回对应的设备驱动程序配置信息,客户端保存该配置信息到本机硬盘;如果为虚拟盘模式,服务端直接在虚拟盘镜像上设置对应的设备驱动程序配置信息。应用本发明,可集中维护客户端的设备驱动程序配置,提高管理效率。
Description
技术领域
本发明涉及设备驱动程序配置技术,特别涉及一种基于网络的设备驱动程序配置方法。
背景技术
在学校机房或网吧等公共场所,数量庞大的客户端的设备驱动程序配置越来越受管理者所关注。按常规方法,设备驱动程序的安装升级等配置维护工作,通常需要在操作系统启动完毕后由用户介入处理,并且在配置完毕后往往还需要重启计算机才能生效。
现有技术中,一般会采用母盘复刻或部署无盘客户端来实现驱动程序配置,但这些方案在实际使用中也存在着不足。
一方面,母盘复刻需要耗费较长的时间和较多的人力,甚至有可能比逐台手工配置还要耗时耗力;
另一方面,即使采用无盘客户端,其设备驱动程序的维护也难以通过单点集中配置就能实现全场可用,并且往往需要繁琐的操作流程。
可见,对于维护大量电脑的机构或营业场所来说,上述问题都会明显增加系统的管理成本。
发明内容
有鉴于此,本发明提供了一种基于网络的设备驱动程序配置方法。通过该方法,可在客户端操作系统加载前完成设备驱动程序的配置,并且配置过程无需用户介入、配置结果在操作系统加载完毕后即时生效。该设备驱动程序配置方法至少包括以下步骤:
a、确定客户端PCI总线上所连接的硬件设备,并生成设备识别ID;
b、判断客户端操作系统的加载模式;若为本机硬盘模式,则顺序执行步骤c和步骤d;若为虚拟盘模式则执行步骤e;
c、发送设备识别ID到服务端,请求服务端返回对应的设备驱动程序配置信息;
d、在接收到服务端返回的对应的设备驱动程序配置信息后,在客户端的本机硬盘设置对应的设备驱动程序配置信息;
e、发送设备识别ID到服务端,请求服务端在配置于服务端的虚拟盘镜像上设置对应的设备驱动程序配置信息、并等待服务端在虚拟盘镜像设置对应的设备驱动程序配置信息。
优选地,上述方法还包括:在客户端的启动阶段载入能执行步骤a至步骤e的系统。
优选地,所述启动阶段为:客户端操作系统尚未加载或尚未完全加载。
优选地,所述步骤a包括:枚举客户端PCI总线上所连接的硬件设备,并依据枚举得到的PCI配置空间信息中的设备参数生成可供服务端进行检索的设备识别ID。
优选地,所述步骤d中在客户端的本机硬盘设置对应的设备驱动程序配置信息包括:解析客户端的本机硬盘的文件系统,并以该本机硬盘安装操作系统的约定路径和格式,在该本机硬盘的文件系统中设置和保存对应的设备驱动程序配置信息。
优选地,所述步骤e中服务端在虚拟盘镜像设置对应的设备驱动程序配置信息包括:服务端解析虚拟盘镜像的文件系统,并以该虚拟盘镜像安装操作系统的约定路径和格式,在该虚拟盘镜像的文件系统中设置和保存对应的设备驱动程序配置信息。
优选地,所述步骤d之后进一步包括:步骤f、将控制客户端运行的控制权转移到客户端的本机硬盘安装的操作系统。
优选地,所述步骤e之后进一步包括:步骤g、将控制客户端运行的控制权转移到服务端的虚拟盘镜像安装的操作系统。
由上述技术方案可见,本发明可在客户端操作系统尚未加载或尚未完全加载时,通过枚举客户端PCI总线上的硬件设备取得对应设备的PCI配置空间信息,并且基于该信息中的设备参数生成可供服务端进行检索的设备识别ID。客户端发送该设备识别ID到服务端,取决于客户端操作系统的加载模式,如果为本机硬盘模式,服务端返回对应的设备驱动程序配置信息,客户端保存该配置信息到本机硬盘;如果为虚拟盘模式,服务端直接在虚拟盘镜像上设置对应的设备驱动程序配置信息。
通过本发明,可在客户端操作系统加载前完成设备驱动程序的配置,并且配置过程无需用户介入、配置结果在操作系统加载完毕后即时生效。相比于现有技术中的母盘复刻方式,本发明能避免逐台施工的不便,客户端系统只需启动一次即可完成本机设备驱动程序的配置;相比于现有技术中的无盘客户端方式,本发明能避免繁琐的操作流程,通过服务端集中配置就能实现全场可用。
附图说明
图1为本发明实施例中基于网络的设备驱动程序配置方法的一示例性交互流程图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
尽管本发明不限于此,但作为本发明的一个具体的实施例,可以是结合如下的应用环境来实现的。
在客户端:
a1、有一块RTL8169网卡,该网卡具有支持PXE(Preboot ExecutionEnvironment,预启动执行环境)规范的BOOTROM芯片;
a2、主板的BIOS设置为优先从RTL8169网卡的支持PXE规范的BOOTROM芯片引导启动;
a3、有一块硬盘,该硬盘安装了Windows XP操作系统;其中,该硬盘可以仅有一个分区、且该分区的文件系统类型为NTFS,但实际应用中并不限于此。
在服务端:
b1、配置有能够支持DHCP和TFTP服务的服务端程序DeviceConfigServer.exe,可响应客户端通过RTL8169网卡的BOOTROM从网络引导启动的请求;
b2、存放有一份可供客户端通过TFTP下载的客户端程序DeviceConfigClient.bin、并且该客户端程序自身携带有客户端操作系统加载模式的设置信息,即选择本机硬盘加载模式还是虚拟盘加载模式;
b3、存放有一份适用于Windows XP的RTL8169网卡驱动程序配置信息;
b4、存放有一份安装了Windows XP的虚拟盘镜像。
图1为本发明实施例中基于网络的设备驱动程序配置方法的一示例性交互流程图。如图1所示的交互流程基于如前所述的应用环境来实现的。
首先,客户端可预先通过RTL8169网卡,将服务端存放的客户端程序DeviceConfigClient.bin通过TFTP下载至客户端主内存,通常情况下该下载存放的内存起始地址为0:7C00h。
接着,客户端程序DeviceConfigClient.bin将自动从上述内存地址开始执行,即获得客户端系统控制权。
然后,如图1所示,即可由在客户端运行的客户端程序DeviceConfigClient.bin、以及在服务端运行的服务端程序DeviceConfigServer.exe执行如下步骤:
步骤100,客户端程序DeviceConfigClient.bin截获客户端启动阶段的系统控制权。
本步骤是基于将客户端主板的BIOS设置为优先从RTL8169网卡引导系而实现的。
并且在本步骤中,所述的启动阶段通常为客户端的支持PXE规范的BOOTROM已经就绪、并且Windows XP尚未加载时。
步骤101,客户端程序DeviceConfigClient.bin枚举客户端的PCI总线上的硬件设备,生成设备识别ID。
本步骤中,客户端程序DeviceConfigClient.bin通过访问客户端专用于枚举PCI总线设备的I/O端口CF8h和CFCh,枚举本机PCI总线上的硬件设备,取得对应设备的PCI配置空间信息,并且基于该PCI配置空间信息中的设备参数生成一个可供服务端程序DeviceConfigServer.exe进行检索的设备识别ID。
在本实施例中,由于RTL8169网卡连接在PCI总线上,因此,客户端可取得本机RTL8169网卡的设备参数,并生成一个形式为VEN_10EC&DEV_8169的设备识别ID。
步骤102,客户端程序DeviceConfigClient.bin即将发送上述设备识别ID到服务端,但如何发送取决于客户端操作系统的加载模式,因此,客户端程序DeviceConfigClient.bin根据其自身携带的设置来判断客户端操作系统的加载模式:
如果为本机硬盘模式,客户端需要请求服务端返回对应的设备驱动程序配置信息,即选择执行步骤103至步骤105;
如果为虚拟盘模式,客户端需要请求服务端直接在虚拟盘镜像上设置对应的设备驱动程序配置信息,即选择执行步骤106至步骤107。
步骤103,客户端程序DeviceConfigClient.bin将设备识别ID发送到服务端,请求其返回对应的设备驱动程序配置信息。
本步骤中,客户端通过本机PXE网络访问接口发送形式为VEN_10EC&DEV_8169的设备识别ID到服务端,请求其返回RTL8169网卡的设备驱动程序配置信息。
步骤104,服务端程序DeviceConfigServer.exe响应上述请求,并依据来自客户端的设备识别ID返回对应的设备驱动程序配置信息。
本步骤中,服务端使用来自客户端的设备识别ID检索对应的设备驱动程序配置信息,然后将检索到的RTL8169网卡的设备驱动程序配置信息通过网络发送回客户端。
步骤105,客户端程序DeviceConfigClient.bin在通过本机PXE网络访问接口接收到从服务端返回的设备驱动程序配置信息后,在本机硬盘设置对应的设备驱动程序配置信息,然后结束本流程。
本步骤中,客户端解析本机硬盘上的文件系统,将设备驱动程序配置信息中的驱动文件保存到C:\Windows\System32\Drivers\目录下,将设备驱动程序配置信息中的注册表参数合并到C:\Windows\System32\Config\System文件中。
完成本步骤后,客户端程序DeviceConfigClient.bin将系统的控制权转移到本机硬盘安装的操作系统,即从本机硬盘开始引导Windows XP。
步骤106,客户端程序DeviceConfigClient.bin将设备识别ID发送到服务端,请求其在服务端虚拟盘镜像上设置对应的设备驱动程序配置信息。
本步骤中,客户端通过本机PXE网络访问接口发送形式为VEN_10EC&DEV_8169的设备识别ID到服务端,请求其在服务端虚拟盘镜像上设置RTL8169网卡的设备驱动程序配置信息。
步骤107,服务端DeviceConfigServer.exe响应上述请求,在虚拟盘镜像上设置对应的设备驱动程序配置信息,然后结束本流程。
本步骤中,服务端使用客户端提交的设备识别ID检索对应的设备驱动程序配置信息,得到RTL8169网卡的设备驱动程序配置信息,然后解析虚拟盘镜像上的文件系统,将设备驱动程序配置信息中的驱动文件保存到镜像的C:\Windows\System32\Drivers\目录下,将设备驱动程序配置信息中的注册表参数合并到镜像的C:\Windows\System32\Config\System文件中。
完成本步骤后,客户端程序DeviceConfigClient.bin将系统的控制权转移到服务端虚拟盘镜像安装的操作系统,即从网络虚拟盘开始引导WindowsXP。
至此,上述流程结束。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于网络的设备驱动程序配置方法,其特征在于,该方法至少包括以下步骤:
a、确定客户端PCI总线上所连接的硬件设备,并生成设备识别ID;
b、判断客户端操作系统的加载模式;若为本机硬盘模式,则顺序执行步骤c和步骤d;若为虚拟盘模式则执行步骤e;
c、发送设备识别ID到服务端,请求服务端返回对应的设备驱动程序配置信息;
d、在接收到服务端返回的对应的设备驱动程序配置信息后,在客户端的本机硬盘设置对应的设备驱动程序配置信息;
e、发送设备识别ID到服务端,请求服务端在配置于服务端的虚拟盘镜像上设置对应的设备驱动程序配置信息、并等待服务端在虚拟盘镜像设置对应的设备驱动程序配置信息。
2.如权利要求1所述的方法,其特征在于还包括:在客户端的启动阶段载入能执行步骤a至步骤e的系统。
3.如权利要求2所述的方法,其特征在于,所述启动阶段为:客户端操作系统尚未加载或尚未完全加载。
4.如权利要求1所述的方法,其特征在于,所述步骤a包括:枚举客户端PCI总线上所连接的硬件设备,并依据枚举得到的PCI配置空间信息中的设备参数生成可供服务端进行检索的设备识别ID。
5.如权利要求1所述的方法,其特征在于,所述步骤d中在客户端的本机硬盘设置对应的设备驱动程序配置信息包括:解析客户端的本机硬盘的文件系统,并以该本机硬盘安装操作系统的约定路径和格式,在该本机硬盘的文件系统中设置和保存对应的设备驱动程序配置信息。
6.如权利要求1所述的方法,其特征在于,所述步骤e中服务端在虚拟盘镜像设置对应的设备驱动程序配置信息包括:服务端解析虚拟盘镜像的文件系统,并以该虚拟盘镜像安装操作系统的约定路径和格式,在该虚拟盘镜像的文件系统中设置和保存对应的设备驱动程序配置信息。
7.如权利要求1至3中任意一项所述的方法,其特征在于,所述步骤d之后进一步包括:步骤f、将控制客户端运行的控制权转移到客户端的本机硬盘安装的操作系统。
8.如权利要求1至3中任意一项所述的方法,其特征在于,所述步骤e之后进一步包括:步骤g、将控制客户端运行的控制权转移到服务端的虚拟盘镜像安装的操作系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210109933.5A CN102662884B (zh) | 2012-04-16 | 2012-04-16 | 一种基于网络的设备驱动程序配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210109933.5A CN102662884B (zh) | 2012-04-16 | 2012-04-16 | 一种基于网络的设备驱动程序配置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102662884A true CN102662884A (zh) | 2012-09-12 |
CN102662884B CN102662884B (zh) | 2015-02-11 |
Family
ID=46772380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210109933.5A Active CN102662884B (zh) | 2012-04-16 | 2012-04-16 | 一种基于网络的设备驱动程序配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102662884B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104843031A (zh) * | 2015-04-20 | 2015-08-19 | 上海自仪泰雷兹交通自动化系统有限公司 | 一种轨旁以及车载无线单元的配置方法 |
CN105591825A (zh) * | 2016-01-21 | 2016-05-18 | 烽火通信科技股份有限公司 | 在家庭网关升级时修改配置的方法 |
CN107665131A (zh) * | 2017-09-21 | 2018-02-06 | 成都领沃网络技术有限公司 | 一种无盘环境下客户端硬件驱动自动快速预装方法及客户端 |
CN109254800A (zh) * | 2018-09-30 | 2019-01-22 | 联想(北京)有限公司 | 一种设备信息处理方法、电子设备及服务器 |
CN110048875A (zh) * | 2018-01-17 | 2019-07-23 | 华为技术有限公司 | 一种升级驱动的方法及设备 |
CN110618822A (zh) * | 2019-08-26 | 2019-12-27 | 杭州顺网科技股份有限公司 | 无盘工作站启动阶段预安装网卡驱动的方法 |
CN111221542A (zh) * | 2019-12-27 | 2020-06-02 | 福建升腾资讯有限公司 | 一种系统镜像的生成安装方法、装置、系统、设备和介质 |
CN113904930A (zh) * | 2021-09-27 | 2022-01-07 | 深信服科技股份有限公司 | 一种网口排序方法、装置、设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1670698A (zh) * | 2005-04-06 | 2005-09-21 | 清华大学 | 基于透明计算的计算设备和方法 |
CN1758228A (zh) * | 2004-10-10 | 2006-04-12 | 深圳市三道科技有限公司 | 虚拟结构式网络计算机支撑平台系统及构造方法 |
US20070288937A1 (en) * | 2006-05-08 | 2007-12-13 | Microsoft Corporation | Virtual Device Driver |
CN101860853A (zh) * | 2010-06-09 | 2010-10-13 | 中兴通讯股份有限公司 | 软件升级方法和装置 |
-
2012
- 2012-04-16 CN CN201210109933.5A patent/CN102662884B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758228A (zh) * | 2004-10-10 | 2006-04-12 | 深圳市三道科技有限公司 | 虚拟结构式网络计算机支撑平台系统及构造方法 |
CN1670698A (zh) * | 2005-04-06 | 2005-09-21 | 清华大学 | 基于透明计算的计算设备和方法 |
US20070288937A1 (en) * | 2006-05-08 | 2007-12-13 | Microsoft Corporation | Virtual Device Driver |
CN101860853A (zh) * | 2010-06-09 | 2010-10-13 | 中兴通讯股份有限公司 | 软件升级方法和装置 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104843031A (zh) * | 2015-04-20 | 2015-08-19 | 上海自仪泰雷兹交通自动化系统有限公司 | 一种轨旁以及车载无线单元的配置方法 |
CN105591825A (zh) * | 2016-01-21 | 2016-05-18 | 烽火通信科技股份有限公司 | 在家庭网关升级时修改配置的方法 |
CN105591825B (zh) * | 2016-01-21 | 2018-08-31 | 烽火通信科技股份有限公司 | 在家庭网关升级时修改配置的方法 |
CN107665131B (zh) * | 2017-09-21 | 2021-02-12 | 成都领沃网络技术有限公司 | 一种无盘环境下客户端硬件驱动自动快速预装方法及客户端 |
CN107665131A (zh) * | 2017-09-21 | 2018-02-06 | 成都领沃网络技术有限公司 | 一种无盘环境下客户端硬件驱动自动快速预装方法及客户端 |
US11411821B2 (en) | 2018-01-17 | 2022-08-09 | Huawei Technologies Co., Ltd. | Driver upgrade method and device |
CN110048875A (zh) * | 2018-01-17 | 2019-07-23 | 华为技术有限公司 | 一种升级驱动的方法及设备 |
CN109254800B (zh) * | 2018-09-30 | 2021-11-16 | 联想(北京)有限公司 | 一种设备信息处理方法、电子设备及服务器 |
CN109254800A (zh) * | 2018-09-30 | 2019-01-22 | 联想(北京)有限公司 | 一种设备信息处理方法、电子设备及服务器 |
CN110618822A (zh) * | 2019-08-26 | 2019-12-27 | 杭州顺网科技股份有限公司 | 无盘工作站启动阶段预安装网卡驱动的方法 |
CN110618822B (zh) * | 2019-08-26 | 2023-02-07 | 杭州顺网科技股份有限公司 | 无盘工作站启动阶段预安装网卡驱动的方法 |
CN111221542A (zh) * | 2019-12-27 | 2020-06-02 | 福建升腾资讯有限公司 | 一种系统镜像的生成安装方法、装置、系统、设备和介质 |
CN111221542B (zh) * | 2019-12-27 | 2023-10-20 | 福建升腾资讯有限公司 | 一种系统镜像的生成安装方法、装置、系统、设备和介质 |
CN113904930A (zh) * | 2021-09-27 | 2022-01-07 | 深信服科技股份有限公司 | 一种网口排序方法、装置、设备和存储介质 |
CN113904930B (zh) * | 2021-09-27 | 2024-04-09 | 深信服科技股份有限公司 | 一种网口排序方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102662884B (zh) | 2015-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102662884B (zh) | 一种基于网络的设备驱动程序配置方法 | |
US11693680B2 (en) | Virtual computing systems and methods | |
CN106537338B (zh) | 自扩展云 | |
CN101453367B (zh) | 软件部署方法和系统及软件部署服务器和用户服务器 | |
US8245022B2 (en) | Method and system to support ISCSI boot through management controllers | |
US9465625B2 (en) | Provisioning of operating environments on a server in a networked environment | |
CN105159704B (zh) | 一种批量部署操作系统的方法及装置 | |
CN104572372A (zh) | 一种服务器性能测试环境搭建系统及方法 | |
CN106911729B (zh) | 一种适用于国产处理器的操作系统远程安装方法 | |
CN109144607A (zh) | 一种大规模服务器自动部署和配置方法 | |
US20050235280A1 (en) | Automatic firmware upgrade for thin clients using multiple FTP servers and locally-stored FTP addresses | |
US20090077551A1 (en) | Virtual machine image builder for automated installation of fully-virtualized operating system | |
US9846586B2 (en) | Creating a virtual machine and cloud server | |
US10922445B2 (en) | Computing systems and methods | |
CN101546270A (zh) | 一种Linux操作系统的自动安装方法、装置及系统 | |
CN110908753B (zh) | 一种智能融合的云桌面服务器、客户端及系统 | |
CN107066287A (zh) | Esxi虚拟机自动部署安装系统的方法及系统 | |
CN106126273A (zh) | 一种升级bios的方法 | |
CN113741914B (zh) | 操作系统安装机制 | |
CN101170423A (zh) | 一种面向服务的机群部署方法 | |
CN105278999A (zh) | 一种安全高效虚拟机软件部署的方法 | |
CN104113430A (zh) | 一种云计算数据中心自动化部署软件架构设计 | |
CN105183529A (zh) | 刷新服务器固件的方法、目标服务器、源服务器及系统 | |
CN103677962B (zh) | 基于虚拟化技术的桌面交付设备的实现系统及方法 | |
CN107220095A (zh) | 一种无人值守安装Vmware操作系统的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |