CN113254035A - 一种驱动程序安装方法、计算设备及存储介质 - Google Patents
一种驱动程序安装方法、计算设备及存储介质 Download PDFInfo
- Publication number
- CN113254035A CN113254035A CN202110723155.8A CN202110723155A CN113254035A CN 113254035 A CN113254035 A CN 113254035A CN 202110723155 A CN202110723155 A CN 202110723155A CN 113254035 A CN113254035 A CN 113254035A
- Authority
- CN
- China
- Prior art keywords
- driver
- information
- installation
- module
- equipment
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种驱动程序安装方法,适于在计算设备中执行,计算设备中运行有操作系统,操作系统包括驱动安装模块和仓库配置模块,仓库配置模块中存储有多个驱动程序的安装包,方法包括步骤:通过驱动安装模块检测是否有硬件设备接入操作系统;若检测到有接入操作系统的硬件设备,则获取该硬件设备的设备信息;在仓库配置模块中,根据设备信息查找与硬件设备对应的驱动程序;若查找到对应的驱动程序,则根据所查找到的驱动程序的安装包安装驱动程序,以便正常使用硬件设备。本发明还一并公开了一种计算设备和计算机可读存储介质。
Description
技术领域
本发明涉及操作系统领域,特别涉及一种驱动程序安装方法、计算设备及存储介质。
背景技术
随着计算机技术的发展,与计算机相连接的硬件设备也越来越多的被开发出来,实现各种各样的功能,如:扫描仪、打印机、鼠标和键盘等。这些硬件设备连接到计算机上时,系统会对所连接的硬件设备进行识别。若之前计算机已经连接过该硬件设备,则使用已经安装的硬件驱动,以便使用该硬件设备。但如果计算机不能查找到与所连接的硬件设备相对应的驱动程序,则无法使用该计算设备。这种情况在windows系统中经常出现,而在linux系统中系统更是不能自行安装所有驱动程序。此时就需要用户手动安装驱动程序,为用户的使用过程带来了极大的不便。当用户不知道去哪里下载驱动或者不会安装对应驱动时,这些硬件设备就变的无法使用,大大限制了硬件设备的使用。
为此,需要一种新的驱动程序安装方法。
发明内容
为此,本发明提供一种驱动程序安装方法,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供一种驱动程序安装方法,适于在客户端中执行,客户端中运行有操作系统,操作系统包括驱动安装模块和仓库配置模块,仓库配置模块中存储有多个驱动程序的安装包,方法包括步骤:通过驱动安装模块检测是否有硬件设备接入操作系统;若检测到有接入操作系统的硬件设备,则获取该硬件设备的设备信息;在仓库配置模块中,根据设备信息查找与硬件设备对应的驱动程序;若查找到对应的驱动程序,则根据所查找到的驱动程序的安装包安装驱动程序,以便正常使用硬件设备。
可选地,在根据本发明的方法中,驱动安装模块包括查询接口,获取该硬件设备的设备信息包括:调用查询接口获取该硬件设备的设备信息;在操作系统中查询与设备信息所匹配的驱动程序;若在操作系统中已经安装了与设备信息相匹配的驱动程序,则根据该驱动程序使用硬件设备。
可选地,在根据本发明的方法中,驱动安装模块还包括与仓库配置模块进行通信的通信接口,方法还包括:若在操作系统中未安装硬件设备相应的驱动程序,则通过通信接口,将驱动安装模块获取的设备信息传输到仓库配置模块,便于在仓库配置模块根据设备信息查询相应的驱动程序。
可选地,在根据本发明的方法中,设备信息包括硬件设备的生产厂商和产品型号,仓库配置模块中还存储有多个驱动程序的标识ID,以及包括标识ID,生产厂商和产品型号的数据表,根据设备信息查找与硬件设备对应的驱动程序包括:根据生产厂商和产品型号在数据表中查找相对应的驱动程序;若数据表包含设备信息的生产厂商和产品型号,则根据对应的标识ID确定硬件设备相对应的驱动程序,并将该驱动程序的安装包的存储信息通过通信接口发送至驱动安装模块,以便安装驱动程序。
可选地,在根据本发明的方法中,还包括步骤:根据所查找到的驱动程序的安装包安装驱动程序包括:通过驱动安装模块的通信接口接收仓库配置模块发送的存储信息;根据存储信息获取驱动程序的安装包;加载安装包安装驱动程序。
可选地,在根据本发明的方法中,客户端还与服务器通信连接,方法还包括:若在仓库配置模块中未查找到对应的驱动程序,则根据设备信息生成上报信息;将上报信息传输到服务器,以便服务器对上报信息进行处理,生成设备信息对应的驱动程序。
可选地,在根据本发明的方法中,还包括:从服务器获取驱动程序的安装包,并在仓库配置模块中进行存储;在仓库配置模块生成驱动程序的安装包的配置文件,配置文件包括设备信息的生产厂商,产品编号和驱动程序的标识ID;根据配置文件在数据表中添加新的数据行,数据行中包括设备信息的生产厂商,产品编号和驱动程序的标识ID,以便根据所述数据表对驱动程序进行查找。
可选地,在根据本发明的方法中,还包括:仓库配置模块将从服务器获取到的驱动程序安装包的存储信息发送到驱动安装模块;驱动安装模块根据存储信息获取安装包,将驱动程序安装到操作系统中,以便使用硬件设备。
根据本发明的另一方面,提供了一种计算设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序包括用于执行根据本发明的一种驱动程序安装方法的任一方法的指令。
根据本发明的还有一个方面,提供了一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,该指令当由计算设备执行时,使得计算设备执行根据本发明的一种驱动程序安装方法中的任一方法。
本发明中的驱动程序安装方法适于在客户端中执行,客户端中运行有操作系统,操作系统包括驱动安装模块和仓库配置模块。仓库配置模块中存储有多个驱动程序安装包。驱动安装模块对是否有硬件设备接入操作系统进行检测,若检测到有接入操作系统的硬件设备,则获取该硬件设备的设备信息。仓库配置模块中存储于有多个驱动程序的安装包,因此首先根据设备信息在仓库配置模块中查找与硬件设备对应的驱动程序。若查找到对应的驱动程序,则根据查找到的驱动程序的安装包安装该驱动程序,以便正常使用该硬件设备。本发明通过在操作系统中设置驱动安装模块和仓库配置模块实现对硬件设备接入的检测,设备信息的获取,驱动程序的存储和对驱动程序的查找和安装,能够自动根据所接入的硬件设备,查找匹配的驱动程序并进行安装,方便了用户对硬件设备的使用。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个示范性实施例的客户端与服务器通信连接的示意图;
图2示出了根据本发明一个示范性实施例的计算设备200的结构框图;
图3示出了根据本发明一个示范性实施例的操作系统的示意图;
图4示出了根据本发明一个示范性实施例的驱动程序安装方法400的流程示意图;
图5示出了根据本发明一个示范性实施例的对扫描仪的驱动程序进行安装的流程示意图;以及
图6示出了根据本发明又一个示范性实施例的对扫描仪的驱动程序进行安装的流程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个示范性实施例的客户端与服务器通信连接的示意图。如图1所示,客户端111~113与服务端120通信连接。客户端111~113实现为用户使用和操作的机器,服务器120向客户端111~113提供相应的服务支持,开发人员通过服务端120对所提供的服务进行维护。
客户端111~113以及服务端120均可实现为一种计算设备。图2示出了根据本发明一个示范性实施例的计算设备200的结构框图。如图2所示,在基本的配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。
取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(µP)、微控制器(µC)、数字信息处理器(DSP)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。
取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器206可以包括操作系统220、一个或者多个程序222以及程序数据228。在一些实施方式中,程序222可以布置为在操作系统上由一个或者多个处理器204利用程序数据228执行根据本发明的方法300的指令223。
计算设备200还可以包括储存接口总线234。储存接口总线234实现了从储存设备232(例如,可移除储存器236和不可移除储存器238)经由总线/接口控制器230到基本配置202的通信。操作系统220、程序222以及数据224的至少一部分可以存储在可移除储存器236和/或不可移除储存器238上,并且在计算设备200上电或者要执行程序222时,经由储存接口总线234而加载到系统存储器206中,并由一个或者多个处理器204来执行。
计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图形处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个A/V端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外围接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个I/O端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为以便经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的计算设备200中,程序222包括驱动程序安装方法400的多条程序指令,这些程序指令可以指示处理器204执行本发明的计算设备200中运行的驱动程序安装方法400中的部分步骤,以便计算设备200中的各部分通过执行本发明的驱动程序安装方法400来实现对驱动程序进行安装。
计算设备200可以实现为服务器,例如文件服务器240、数据库250、服务器、应用程序服务器等,这些电子设备可以是诸如个人数字助理(PDA)、无线网络浏览设备、应用专用设备、或者可以包括上面任何功能的混合设备。可以实现为包括桌面计算机和笔记本计算机配置的个人计算机,也在一些实施例中,计算设备200被配置为驱动程序安装方法400。
图3示出了根据本发明一个示范性实施例的操作系统的示意图。操作系统被安装到客户端111~113上。下面以客户端111为操作系统及驱动程序安装方法400进行说明。如图3所示,操作系统320中包括驱动安装模块321和仓库配置模块322。操作系统320通过驱动安装模块321对是否接入有硬件设备进行检测。本发明对操作系统320检测硬件设备341~342的方式不作限制,例如可通过连接硬件设备的接口引脚的电信号对硬件设备341~342进行检测。
驱动安装模块321包括查询接口(图中未示出),当检测到接入有硬件设备341~342时,通过查询接口获取硬件设备341~342的设备信息。驱动安装模块321还包括与仓库配置模块322进行通讯的通讯接口,将获取到的设备信息通过通讯接口传输到仓库配置模块322,以便于在仓库配置模块322中根据设备信息查找与硬件设备341~342对应的驱动程序。设备信息包括硬件设备341~342的生产厂商和产品型号。
仓库配置模块322中存储有多个驱动程序的安装包以及对应有每个安装包的配置文件。驱动程序的安装包既包括已经在操作系统320中安装的驱动程序的安装包,还包括为在操作系统320中安装的驱动程序安装包。仓库配置模块322中具体存储哪些驱动程序的安装包由与客户端111相连接的服务器决定。服务器120对仓库配置模块322中所存储的驱动程序安装包的名录进行管理和维护,既可以对仓库配置模块322中添加新的驱动程序安装包,也可以修改或删除已有的驱动程序的安装包。
驱动程序的安装包对应的配置文件包括该驱动程序所适用的硬件设备341-342的生产厂商,产品型号以及该驱动程序的标识ID。仓库配置模块322中还包括数据库,本发明对数据库的具体类型不做限制。数据库中包括以配置文件为基础的数据表,数据表包括三列数据,分别为驱动程序的标识ID,以及该驱动程序所适用的硬件设备的生产厂商和产品型号。数据表中的每一行数据均包括上述三种数据,每一行数据均为一条关于驱动程序及设备信息的数据库记录,将驱动程序和设备信息进行成对关联,构建其中的映射关系。便于根据设备信息从数据表中对驱动程序进行检索。
仓库配置模块322在检索到与该硬件设备341~342对应的驱动程序后,将该驱动程序安装包的存储信息通过通信接口传输到驱动安装模块321。存储信息即为该驱动程序的安装包在物理磁盘中的存储位置。驱动安装模块321根据存储信息获取驱动程序的安装包,根据安装包对驱动程序进行安装以便正常使用该硬件设备341~342。
操作系统320上还运行有应用层310,应用层110对应于操作系统320中的用户态或用户空间,其中包括运行在用户态下的多个应用程序111~113,本发明对应用层110中所运行的应用程序的数量不作限制。在操作系统320安装与硬件设备341~342对应的驱动程序后,应用程序111~113即可正常调用硬件设备341~342,完成相应的操作。例如,应用程序311实现为文档程序时,当硬件设备341为扫描仪,应用程序311既可以调用硬件设备341对文件进行扫描。
图4示出了根据本发明的一个示范性实施例的驱动程序安装方法400的流程示意图。方法400适于在计算设备200中执行。如图4所示,驱动程序安装方法400始于步骤S410,通过驱动安装模块321检测是否有硬件设备341~342接入操作系统320。本发明对检测硬件设备341~342的方式不作限制,例如可通过连接硬件设备341~342的接口引脚的电信号对硬件设备341~342进行检测。并且检测是否有硬件设备341~342接入操作系统320时,也可以分情况讨论进行全局检测和增量检测。当计算设备从关机状态切换到运行状态,或从待机状态中唤醒切换到运行状态时,可以对接入的硬件设备进行全局检测,检测操作系统320所接入的所有硬件设备341~342,并进而判断操作系统320对应于这些硬件设备341~342是否已经安装有对应的驱动程序,若已经安装并且可以进行正常使用,则不进行处理。若未安装则依据本发明的驱动安装方法400安装相应的驱动程序。
以硬件设备341为例,若计算设备正在运行,驱动安装模块321以后台服务的形式保持工作,检测操作系统320所接入的硬件设备341的情况,若检测到新接入了硬件设备341,则执行步骤S420,若检测到有接入操作系统320的硬件设备341,则获取该硬件设备341的设备信息。设备信息包括硬件设备341的生产厂商和产品型号。驱动安装模块321包括查询接口,获取该硬件设备341的设备信息时,调用查询接口获取该硬件设备341的设备信息,首先在操作系统320中查询与设备信息所匹配的驱动程序,优先判断以前是否接入过相同设备型号的硬件设备341。若在操作系统320中已经安装了与设备信息相匹配的驱动程序,则根据该驱动程序使用硬件设备341,不需要重复安装对应的驱动程序。
驱动安装模块321还包括与仓库配置模块322惊醒通信的通信接口,若在操作系统320中未安装硬件设备341相应的驱动程序,则通过通信接口,将驱动安装模块321获取的设备信息传输到仓库配置模块322,便于在仓库配置模块322根据设备信息查询相应的驱动程序。
随后,执行步骤S430,在仓库配置模块322中,根据设备信息查找与硬件设备341对应的驱动程序。仓库配置模块322中存储有多个驱动程序的安装包以及对应有每个安装包的配置文件。驱动程序的安装包对应的配置文件包括该驱动程序所适用的硬件设备341的生产厂商,产品型号以及该驱动程序的标识ID。仓库配置模块322中还包括数据库,本发明对数据库的具体类型不做限制。数据库中包括以配置文件为基础的数据表,数据表包括三列数据,分别为驱动程序的标识ID,以及该驱动程序所适用的硬件设备341的生产厂商和产品型号。数据表中的每一行数据均包括上述三种数据,每一行数据均为一条关于驱动程序及设备信息的数据库记录,将驱动程序和设备信息进行成对关联,构建其中的映射关系。便于根据设备信息从数据表中对驱动程序进行检索。
根据设备信息查找与硬件设备341对应的驱动程序时,根据生产厂商和产品型号在数据表中查找相对应的驱动程序,对硬件设备341相对应的驱动程序进行精确匹配。若数据表包含设备信息的生产厂商和产品型号,则根据对应的标识ID确定硬件设备341相对应的驱动程序,并将该驱动程序的安装包的存储信息通过通信接口发送至驱动安装模块321,以便安装驱动程序。
随后执行步骤S340,若查找到对应的驱动程序,则根据所查找到的驱动程序的安装包安装驱动程序,以便正常使用硬件设备341。根据所查找到的驱动程序的安装包安装驱动程序时,通过驱动安装模块321的通信接口接收仓库配置模块322发送的存储信息,存储信息即为该驱动程序的安装包在物理磁盘中的存储位置。驱动安装模块321根据存储信息获取驱动程序的安装包,加载安装包安装驱动程序。
根据本发明的一个实施例,当硬件设备341实现为扫描仪时,执行本发明的方法400的上述步骤对扫描仪的驱动程序进行安装。图5示出了根据本发明一个示范性实施例的对扫描仪的驱动程序进行安装的流程示意图。如图5所示,当驱动安装模块321检测到扫描仪连接到操作系统320后,通过查询接口获取扫描仪的设备信息,即扫描仪的生产厂商和产品型号。随后根据设备信息在操作系统320中查询与设备信息所匹配的驱动程序,即判断系统中是否有此型号扫描仪的设备驱动。若判断系统中有此型号的设备驱动,则即可正常使用该扫描仪。
若系统中未安装有此型号的设备驱动,则下载对应的驱动程序,即扫描驱动。首先驱动安装模块321将设备信息传输到仓库配置模块322,便于仓库配置模块322根据配置文件精确匹配与扫描仪对应的驱动程序。若仓库配置模块322匹配到与扫描仪对应的驱动程序,则将驱动程序安装包的存储信息发送至驱动安装模块321。驱动安装模块321根据存储信息获取驱动程序的安装包,对驱动程序进行安装,以便正常使用该扫描仪。
回到方法400的步骤S440中,客户端111还与服务器120通信连接,若在仓库配置模块322中未查找到对应的驱动程序,则根据设备信息生成上报信息,将所述上报信息传输到服务器,以便服务器对上报信息进行处理,生成设备信息对应的驱动程序。上报信息包括硬件设备341的生产产商和产品型号。
服务器120对仓库配置模块322中所存储的驱动程序安装包的名录进行管理和维护,既可以对仓库配置模块322中添加新的驱动程序安装包,也可以修改或删除已有的驱动程序的安装包。服务器120在接受到上报信息后,开发人员根据上报信息从互联网中下载相应的驱动程序或开发相应的驱动程序,从而生成与硬件设备341相适用的驱动程序。服务器120还提供对开发人员的身份认证功能,开发人员成功在服务器120进行身份认证后,即可对驱动程序进行添加,修改以及删除。
服务器生成设备信息对应的驱动程序后,客户端从服务器获取驱动程序的安装包,所述仓库配置模块322中进行存储。随后在仓库配置模块322对驱动程序安装包进行解析,生成驱动程序的安装包的配置文件,配置文件包括设备信息的生产厂商,产品编号和驱动程序的标识ID。最后根据配置文件在数据表中添加新的数据行,数据行中包括设备信息的生产厂商,产品编号和驱动程序的标识ID,建立驱动程序与设备信息的映射关系,以便根据数据表对驱动程序进行查找。
仓库配置模块322随后将从服务器获取到的驱动程序安装包的存储信息发送到驱动安装模块321,驱动安装模块321根据存储信息获取安装包,将驱动程序安装到操作系统320中,以便使用硬件设备341。
根据本发明的又一个实施例,当硬件设备341实现为扫描仪时,图6示出了根据本发明又一个示范性实施例的对扫描仪的驱动程序进行安装的流程示意图。如图6所示,驱动安装模块321在操作系统320未查询到安装有与扫描仪对应的驱动程序时,向仓库配置模块322发送驱动程序下载请求,驱动程序下载请求包括硬件设备341的设备信息。仓库配置模块322根据设备信息从存储的数据表中进行查找,若查找到与硬件设备341对应的驱动程序,则直接将驱动程序安装包的存储信息返回驱动安装模块321,对驱动程序进行安装。
若为查找到与硬件设备341对应的驱动程序,则根据设备信息生成上报信息,将上报信息传输到服务器,以便服务器的维护人员上传驱动程序的安装包。服务器在生成驱动程序的安装包后,客户端获取新生成的驱动程序的安装包,对安装包信息进行解析,生成驱动程序安装包的配置信息。根据配置信息在数据表中添加新的数据行,建立扫描仪驱动程序和扫描仪的设备信息的映射关系,便于查询扫描仪的驱动程序。
根据本发明的另一个实施例,当客户端111向服务器120发送上报信息,服务器120生成驱动程序后,会以广播的形式将新生成驱动程序的消息发送至所有与服务器120相连接的客户端。客户端112和客户端113同样获取驱动程序的安装包,对仓库配置模块322中存储的数据表进行更新,以便后续接入同样型号的硬件设备341时,直接从本地获取安装包进行安装,从而使用该硬件设备341。
本发明中的驱动程序安装方法适于在客户端中执行,客户端中运行有操作系统,操作系统包括驱动安装模块和仓库配置模块。仓库配置模块中存储有多个驱动程序安装包。驱动安装模块对是否有硬件设备接入操作系统进行检测,若检测到有接入操作系统的硬件设备,则获取该硬件设备的设备信息。仓库配置模块中存储于有多个驱动程序的安装包,因此首先根据设备信息在仓库配置模块中查找与硬件设备对应的驱动程序。若查找到对应的驱动程序,则根据查找到的驱动程序的安装包安装该驱动程序,以便正常使用该硬件设备。本发明通过在操作系统中设置驱动安装模块和仓库配置模块实现对硬件设备接入的检测,设备信息的获取,驱动程序的存储和对驱动程序的查找和安装,能够自动根据所接入的硬件设备,查找匹配的驱动程序并进行安装,方便了用户对硬件设备的使用。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组间可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组间组合成一个模块或单元或组间,以及此外可以把它们分成多个子模块或子单元或子组间。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如软盘、CD-ROM、硬盘驱动器或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的设备停机状态的判断方法。
以示例而非限制的方式,计算机可读介质包括计算机存储介质和通信介质。计算机可读介质包括计算机存储介质和通信介质。计算机存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在计算机可读介质的范围之内。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (10)
1.一种驱动程序安装方法,适于在客户端中执行,所述客户端中运行有操作系统,所述操作系统包括驱动安装模块和仓库配置模块,所述仓库配置模块中存储有多个驱动程序的安装包,所述方法包括步骤:
通过所述驱动安装模块检测是否有硬件设备接入操作系统;
若检测到有接入操作系统的硬件设备,则获取该硬件设备的设备信息;
在所述仓库配置模块中,根据所述设备信息查找与所述硬件设备对应的驱动程序;
若查找到对应的驱动程序,则根据所查找到的驱动程序的安装包安装驱动程序,以便正常使用所述硬件设备。
2.如权利要求1所述的方法,其中,所述驱动安装模块包括查询接口,所述获取该硬件设备的设备信息包括:
调用所述查询接口获取该硬件设备的设备信息;
在所述操作系统中查询与所述设备信息所匹配的驱动程序;
若在所述操作系统中已经安装了与所述设备信息相匹配的驱动程序,则根据该驱动程序使用所述硬件设备。
3.如权利要求2所述的方法,其中,所述驱动安装模块还包括与所述仓库配置模块进行通信的通信接口,所述方法还包括:
若在所述操作系统中未安装所述硬件设备相应的驱动程序,则通过所述通信接口,将所述驱动安装模块获取的设备信息传输到所述仓库配置模块,便于在所述仓库配置模块根据所述设备信息查询相应的驱动程序。
4.如权利要求3所述的方法,其中,所述设备信息包括所述硬件设备的生产厂商和产品型号,所述仓库配置模块中还存储有多个驱动程序的标识ID,以及包括所述标识ID,所述生产厂商和产品型号的数据表,所述根据所述设备信息查找与所述硬件设备对应的驱动程序包括:
根据所述生产厂商和产品型号在所述数据表中查找相对应的驱动程序;
若所述数据表包含所述设备信息的生产厂商和产品型号,则根据对应的标识ID确定所述硬件设备相对应的驱动程序,并将该驱动程序的安装包的存储信息通过所述通信接口发送至所述驱动安装模块,以便安装所述驱动程序。
5.如权利要求4所述的方法,其中,所述根据所查找到的驱动程序的安装包安装驱动程序包括:
通过所述驱动安装模块的通信接口接收所述仓库配置模块发送的存储信息;
根据所述存储信息获取所述驱动程序的安装包;
加载所述安装包安装所述驱动程序。
6.如权利要求1-5中任一项所述的方法,其中,所述客户端还与服务器通信连接,所述方法还包括:
若在所述仓库配置模块中未查找到对应的驱动程序,则根据所述设备信息生成上报信息;
将所述上报信息传输到服务器,以便服务器对上报信息进行处理,生成所述设备信息对应的驱动程序。
7.如权利要求6所述的方法,还包括:
从所述服务器获取驱动程序的安装包,并在所述仓库配置模块中进行存储;
在所述仓库配置模块生成所述驱动程序的安装包的配置文件,所述配置文件包括所述设备信息的生产厂商,产品编号和所述驱动程序的标识ID;
根据所述配置文件在数据表中添加新的数据行,所述数据行中包括所述设备信息的生产厂商,产品编号和所述驱动程序的标识ID,以便根据所述数据表对驱动程序进行查找。
8.如权利要求7所述的方法,还包括:
所述仓库配置模块将从所述服务器获取到的驱动程序安装包的存储信息发送到所述驱动安装模块;
所述驱动安装模块根据所述存储信息获取安装包,将所述驱动程序安装到操作系统中,以便使用所述硬件设备。
9.一种计算设备,包括:
一个或多个处理器;
存储器;以及
一个或多个装置,所述一个或多个装置包括用于执行根据权利要求1至8所述的方法中的任一方法的指令。
10.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行根据权利要求1至8所述的方法中的任一方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110723155.8A CN113254035A (zh) | 2021-06-29 | 2021-06-29 | 一种驱动程序安装方法、计算设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110723155.8A CN113254035A (zh) | 2021-06-29 | 2021-06-29 | 一种驱动程序安装方法、计算设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113254035A true CN113254035A (zh) | 2021-08-13 |
Family
ID=77190007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110723155.8A Pending CN113254035A (zh) | 2021-06-29 | 2021-06-29 | 一种驱动程序安装方法、计算设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254035A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113885969A (zh) * | 2021-12-07 | 2022-01-04 | 阿里云计算有限公司 | 嵌入式设备、嵌入式软件加载方法与存储介质 |
CN114153779A (zh) * | 2021-10-31 | 2022-03-08 | 郑州云海信息技术有限公司 | 一种i2c通信方法、系统、设备、及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1383063A (zh) * | 2001-04-25 | 2002-12-04 | Lg电子株式会社 | 设备驱动程序安装方法 |
CN101297286A (zh) * | 2005-10-31 | 2008-10-29 | 微软公司 | 自动化设备驱动程序管理 |
CN103488513A (zh) * | 2013-09-30 | 2014-01-01 | 北京水木元生科技有限责任公司 | 设备即插即用通用驱动方法 |
CN103885802A (zh) * | 2014-03-17 | 2014-06-25 | 广州金山网络科技有限公司 | 驱动程序的安装方法、装置和客户端 |
CN103927260A (zh) * | 2014-04-22 | 2014-07-16 | 中国移动(深圳)有限公司 | 一种电信设备测试方法及系统 |
CN105678175A (zh) * | 2015-12-31 | 2016-06-15 | 北京恒安讯佳信息安全技术有限公司 | 一种硬拷贝设备驱动程序的管理方法及装置 |
CN106126256A (zh) * | 2016-07-01 | 2016-11-16 | 武汉深之度科技有限公司 | 一种驱动管理方法、装置及系统 |
CN109033816A (zh) * | 2018-06-15 | 2018-12-18 | 中国人民解放军国防科技大学 | 麒麟操作系统平台上的国产办公外设驱动管理方法及系统 |
US20190310874A1 (en) * | 2016-12-07 | 2019-10-10 | Huawei Technologies Co., Ltd. | Driver management method and host |
-
2021
- 2021-06-29 CN CN202110723155.8A patent/CN113254035A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1383063A (zh) * | 2001-04-25 | 2002-12-04 | Lg电子株式会社 | 设备驱动程序安装方法 |
CN101297286A (zh) * | 2005-10-31 | 2008-10-29 | 微软公司 | 自动化设备驱动程序管理 |
CN103488513A (zh) * | 2013-09-30 | 2014-01-01 | 北京水木元生科技有限责任公司 | 设备即插即用通用驱动方法 |
CN103885802A (zh) * | 2014-03-17 | 2014-06-25 | 广州金山网络科技有限公司 | 驱动程序的安装方法、装置和客户端 |
CN103927260A (zh) * | 2014-04-22 | 2014-07-16 | 中国移动(深圳)有限公司 | 一种电信设备测试方法及系统 |
CN105678175A (zh) * | 2015-12-31 | 2016-06-15 | 北京恒安讯佳信息安全技术有限公司 | 一种硬拷贝设备驱动程序的管理方法及装置 |
CN106126256A (zh) * | 2016-07-01 | 2016-11-16 | 武汉深之度科技有限公司 | 一种驱动管理方法、装置及系统 |
US20190310874A1 (en) * | 2016-12-07 | 2019-10-10 | Huawei Technologies Co., Ltd. | Driver management method and host |
CN109033816A (zh) * | 2018-06-15 | 2018-12-18 | 中国人民解放军国防科技大学 | 麒麟操作系统平台上的国产办公外设驱动管理方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114153779A (zh) * | 2021-10-31 | 2022-03-08 | 郑州云海信息技术有限公司 | 一种i2c通信方法、系统、设备、及存储介质 |
CN114153779B (zh) * | 2021-10-31 | 2023-07-14 | 郑州云海信息技术有限公司 | 一种i2c通信方法、系统、设备、及存储介质 |
CN113885969A (zh) * | 2021-12-07 | 2022-01-04 | 阿里云计算有限公司 | 嵌入式设备、嵌入式软件加载方法与存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107291458B (zh) | 一种Web应用的插件化构建方法、系统及服务器 | |
CN112083951B (zh) | 一种支持多操作系统平台的软件包统一管理方法及系统 | |
CN113254035A (zh) | 一种驱动程序安装方法、计算设备及存储介质 | |
WO2018040746A1 (zh) | 一种驱动程序的安装方法及装置、电子设备 | |
CN111563024A (zh) | 一种宿主机上监控容器进程的方法、装置及计算设备 | |
US20170269917A1 (en) | Information processing system, application introducing method, and information processing apparatus | |
US9032386B1 (en) | Product upgrade location identifier for software upgrade | |
CN112134908B (zh) | 应用适配方法及服务器、介质、车载多媒体系统 | |
US10365910B2 (en) | Systems and methods for uninstalling or upgrading software if package cache is removed or corrupted | |
CN111488157A (zh) | 一种服务器装机系统及方法 | |
US7610587B2 (en) | System and method for creating a best-match object at run time | |
CN113032790A (zh) | 一种安全漏洞处理方法、系统、计算设备及存储介质 | |
US11797640B2 (en) | System and method for automatic fleet partitioning | |
CN111782157A (zh) | 快递面单打印管理方法、装置及系统 | |
JPH05250239A (ja) | コンピュータネットワークシステム | |
CN113783863A (zh) | 一种写号方法及系统 | |
US9760585B2 (en) | Objectclass versioning | |
CN112950370A (zh) | 业务处理方法、装置、设备及存储介质 | |
US20030191775A1 (en) | Software identification system and method | |
US20200257736A1 (en) | Hybrid Datacenter for Dynamic Delta Documentation | |
CN111367550A (zh) | 物联网管理系统、方法和设备 | |
CN114448842B (zh) | 一种资源访问方法、装置及计算设备 | |
US20170242677A1 (en) | Automatic software gathering device and method | |
CN111625268B (zh) | 一种软件补丁快速扫描的方法、装置及计算设备 | |
WO2017076180A1 (zh) | 虚拟机升级方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210813 |