驱动程序安装方法、装置以及终端的利记博彩app

文档序号:10686875阅读:175来源:国知局
驱动程序安装方法、装置以及终端的利记博彩app
【专利摘要】本发明公开了一种驱动程序安装方法、装置以及终端。所述方法包括:对终端进行扫描以获取需要安装驱动程序的第一设备,对第一设备的驱动程序进行安装;在所述第一设备的驱动程序安装完成后,对所述终端进行扫描以检测终端中是否存在需要安装驱动程序的第二设备,其中,所述第二设备为在所述第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备;如果检测结果为存在需要安装驱动程序的所述第二设备,对所述第二设备的驱动程序进行安装。上述方法能够正确安装存在依赖关系的设备的驱动程序。
【专利说明】
驱动程序安装方法、装置以及终端
技术领域
[0001]本发明涉及终端领域,尤其涉及一种驱动程序安装方法、装置以及终端。
【背景技术】
[0002]驱动程序是可以使终端和设备之间通信的特殊程序。操作系统只有通过驱动程序才能实现对设备的控制,如果设备没有安装驱动程序,则设备不能正常工作。
[0003]技术人员在实践中发现,有些设备之间存在依赖关系,S卩,只有在第一设备的驱动程序正确安装后,第二设备才能被正确地显示出来,所以,用户会误以为所有设备的驱动程序均已经被正确地安装,而并不知道实际上还有第二设备的驱动程序没有被正确安装,给用户的使用带来不便。

【发明内容】

[0004]本发明实施例所要解决的技术问题在于,提供一种驱动程序安装方法、装置以及终端,能够正确安装存在依赖关系的设备的驱动程序。
[0005]第一方面,提供了一种驱动程序安装方法,包括:对终端进行扫描以获取需要安装驱动程序的第一设备,对所述第一设备的驱动程序进行安装;在所述第一设备的驱动程序安装完成后,对所述终端进行扫描以检测所述终端中是否存在需要安装驱动程序的第二设备,其中,所述第二设备为在所述第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备;如果检测结果为存在需要安装驱动程序的所述第二设备,对所述第二设备的驱动程序进行安装。
[0006]结合第一方面,第一方面的第一种可能的实施方式中,对所述第二设备的驱动程序进行安装之后,所述方法还包括:对所述终端进行扫描以检测所述终端中是否存在需要安装驱动程序的第三设备,其中,所述第三设备为在所述第二设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备;如果检测结果为存在需要安装驱动程序的所述第三设备,对所述第三设备的驱动程序进行安装。
[0007]结合第一方面,第一方面的第二种可能的实施方式中,对第一设备的驱动程序进行安装具体包括:根据第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数KN;通过所述M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。
[0008]结合第一方面的第二种可能的实施方式,第一方面的第三种可能的实施方式中,对所述第二设备的驱动程序进行安装具体包括:判断所述第二设备的数量S是否大于M,其中,S为大于零的正整数;如果判断结果为大于M,则通过所述M个线程或进程对S个第二设备中的M个第二设备的驱动程序同时进行安装,并将S个第二设备中的其他第二设备的驱动程序进行队列;如果判断结果为小于或者等于M,则从所述M个线程或进程中选择与所述第二设备数量相等的线程或进程对所述第二设备的驱动程序同时进行安装。
[0009]结合第一方面的第二种可能的实施方式,第一方面的第四种可能的实施方式中,当创建的为M个线程时,所述M个线程属于同一个进程,或者,所述M个线程属于多个进程。
[0010]结合第一方面,第一方面的第五种可能的实施方式中,对所述第二设备的驱动程序进行安装具体包括:根据第二设备的数量S创建T个线程或进程,其中,S为大于零的正整数,T为大于零的正整数,T;通过所述T个线程或进程对S个第二设备中的T个第二设备的驱动程序同时进行安装,并对S个第二设备中剩下的S-T个第二设备的驱动程序进行队列。
[0011]结合第一方面的第五种可能的实施方式,第一方面的第六种可能的实施方式中,当创建的为T个线程时,所述T个线程属于同一个进程,或者,所述T个线程属于多个进程。
[0012]结合第一方面,第一方面的第七种可能的实施方式中,如果检测结果为不存在需要安装驱动程序的所述第二设备,则结束流程。
[0013]第二方面,提供一种驱动程序安装装置,所述装置包括第一安装模块、第一检测模块以及第二安装模块,所述第一安装模块用于对终端进行扫描以获取需要安装驱动程序的第一设备,对所述第一设备的驱动程序进行安装;所述第一检测模块用于在所述第一设备的驱动程序安装完成后,对所述终端进行扫描以检测所述终端中是否存在需要安装驱动程序的第二设备,其中,所述第二设备为在所述第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备;所述第二安装模块用于在检测结果为存在需要安装驱动程序的所述第二设备时,对所述第二设备的驱动程序进行安装。
[0014]结合第二方面,第二方面的第一种可能的实施方式中,所述装置还包括第二检测模块以及第三安装模块,所述第二检测模块用于对所述终端进行扫描以检测所述终端中是否存在需要安装驱动程序的第三设备,其中,所述第三设备为在所述第二设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备;第三安装模块用于在检测结果为存在需要安装驱动程序的所述第三设备时,对所述第三设备的驱动程序进行安装。
[0015]结合第二方面,第二方面的第二种可能的实施方式中,所述第一安装模块包括第一创建单元以及第一安装单元,所述第一创建单元用于根据第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数,M<N;所述第一安装单元用于通过所述M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。
[0016]结合第二方面的第二种可能的实施方式,第二方面的第三种可能的实施方式中,所述第二安装模块包括判断单元以及第二安装单元,所述判断单元用于判断所述第二设备的数量S是否大于M,其中,S为大于零的正整数;第二安装单元用于在判断结果为大于M时,通过所述M个线程或进程对S个第二设备中的M个第二设备的驱动程序同时进行安装,并将S个第二设备中的其他第二设备的驱动程序进行队列;在判断结果为小于或者等于M时,从所述M个线程或进程中选择与所述第二设备数量相等的线程或进程对所述第二设备的驱动程序同时进行安装。
[0017]结合第二方面的第二种可能的实施方式,第二方面的第四种可能的实施方式中,当创建的为M个线程时,所述M个线程属于同一个进程,或者,所述M个线程属于多个进程。
[0018]结合第二方面,第二方面的第五种可能的实施方式中,所述第二安装设备包括第二创建单元以及第二安装单元,所述第二创建单元用于根据第二设备的数量S创建T个线程或进程,其中,S为大于零的正整数,T为大于零的正整数,SST;所述第二安装单元用于通过所述T个线程或进程对S个第二设备中的T个第二设备的驱动程序同时进行安装,并对S个第二设备中剩下的S-T个第二设备的驱动程序进行队列。
[0019]结合第二方面的第五种可能的实施方式,第二方面的第六种可能的实施方式中,当创建的为T个线程时,所述T个线程属于同一个进程,或者,所述T个线程属于多个进程。
[0020]结合第二方面,第二方面的第七种可能的实施方式中,所述第一检测模块还用于在检测结果为不存在需要安装驱动程序的所述第二设备,结束流程。
[0021]第三方面,本发明提供了一种终端,包括:处理器、存储器、通信接口和总线;所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行一种驱动程序的安装方法;其中,所述方法为如第一方面任一项所述的方法。
[0022]第四方面,本发明提供了一种存储介质,其中,该存储介质用于存储应用程序,所述应用程序用于在运行时执行本发明第一方面提供的一种驱动程序的安装方法的任一项。
[0023]第五方面,本发明提供了一种应用程序,其中,该应用程序用于在运行时执行本发明第一方面提供的一种驱动程序的安装方法的任一项。
[0024]通过在第一设备的驱动程序安装完成后,检测终端中是否存在第二设备,并在存在第二设备时,对第二设备的驱动程序进行安装,实现正确安装依赖于第一设备的第二设备的驱动程序,提高用户的体验。
【附图说明】
[0025]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0026]图1是本发明实施例提供的第一种驱动程序的安装方法的流程图;
[0027]图2是本发明实施例提供的第一种驱动程序的安装方法的中第一设备的驱动程序被正确安装前与第一设备的驱动程序被正确安装后的对比图;
[0028]图3是本发明实施例提供的第二种驱动程序的安装方法的流程图;
[0029]图4是本发明实施例提供的第三种驱动程序的安装方法的流程图;
[0030]图5是本发明实施例提供的第三种驱动程序的安装方法中多个线程或者进程同时安装驱动程序的示意图;
[0031 ]图6是本发明实施例提供的第四种驱动程序的安装方法的流程图;
[0032]图7是本发明实施例提供的第一种驱动程序的安装装置的结构示意图;
[0033]图8是本发明实施例提供的第二种驱动程序的安装装置的结构示意图;
[0034]图9是本发明实施例提供的第三种驱动程序的安装装置的结构示意图;
[0035]图10是本发明实施例提供的第四种驱动程序的安装装置的结构示意图;
[0036]图11是本发明实施例提供的一种终端的结构示意图。
【具体实施方式】
[0037]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0038]需要说明的是,在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。本发明的说明书和权利要求书及所述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0039]本发明实施例所描述的终端可以包括智能手机(如Android手机、1S手机、Windows Phone手机等)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备(MobileInternet Devices,MID)或穿戴式设备等。
[0040]请参见图1,图1是本发明实施例提供的第一种驱动程序的安装方法。如图1所示,该驱动程序的安装方法可以包括但不限于以下步骤。
[0041]110:对终端进行扫描以获取需要安装驱动程序的第一设备,对第一设备的驱动程序进彳丁安装。
[0042]终端通过API 提供的 SetupDiGetClassDevs,SetupDiEnumDeviceInfo 两个类枚举终端中的硬件信息,从而得到终端中需要安装驱动程序的硬件设备的硬件信息作为终端中的第一设备的硬件信息。其中,第一设备可以是U盘、打印机、声卡、网卡以及显卡等等需要安装驱动程序,但却尚未成功安装驱动程序的设备。在获取得到第一设备的硬件信息后,终端根据第一设备的硬件信息查找第一设备的驱动程序,并对第一设备的驱动程序进行安装。安装时,终端可以逐个对第一设备的驱动程序进行安装,也可以建立多个线程或者进程以同时对第一设备进行安装。
[0043]120:在第一设备的驱动程序安装完成后,对终端进行扫描以检测终端中是否存在需要安装驱动程序的第二设备。
[0044]在第一设备的驱动程序安装完成后,终端再次通过AP I提供的SetupDiGetClassDevs,SetupDiEnumDeviceInfο两个类枚举终端中的硬件信息,从而检测终端中是否存在需要安装驱动程序的硬件设备的硬件信息作为第二设备的硬件信息。其中,第二设备为在第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备。第二设备可以是U盘、打印机、声卡、网卡以及显卡等等需要安装驱动程序,但却尚未成功安装驱动程序的设备。
[0045]例如,如图2(a)所示,在安装完成第一设备1、第一设备2、第一设备3以及第一设备4的驱动程序之前,设备列表上只显示了第一设备1、第一设备2、第一设备3以及第一设备4,而第二设备并不会被显示出来;如图2(b)所示,在安装完成第一设备1、第一设备2、第一设备3以及第一设备4之后,设备列表上除了显示已安装驱动程序的第一设备1、第一设备2、第一设备3以及第一设备4之外,还显示了尚未安装驱动程序的第二设备I以及第二设备2。
[0046]如果终端中存在需要安装驱动程序的第二设备,进入步骤130,如果终端中不存在需要安装驱动程序的第二设备,则结束本方法的流程。
[0047]130:对第二设备的驱动程序进行安装。
[0048]根据第二设备的硬件信息查找第二设备的驱动程序,对第二设备的驱动程序进行安装。安装时,终端可以逐个对第二设备的驱动程序进行安装,也可以建立多个线程或者进程以同时对第二设备进行安装。
[0049]请参见图3,图3是本发明实施例提供的第二种驱动程序的安装方法。图3所示的驱动程序的安装方法是根据图1所示的驱动程序的安装方法优化而得到的,图3所示的驱动程序的安装方法除了包括图1所示的步骤110,步骤120以及步骤130之外,还包括步骤140以及步骤150。
[0050]140:在第二设备的驱动程序安装完成后,对终端进行扫描以检测终端中是否存在需要安装驱动程序的第三设备。
[0051]在第二设备的驱动程序安装完成后,终端再次通过AP I提供的SetupDiGetClassDevs,SetupDiEnumDeviceInfο两个类枚举终端中的硬件信息,从而检测终端中是否存在需要安装驱动程序的硬件设备作为第三设备。其中,第三设备为在第二设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备。第三设备可以是U盘、打印机、声卡、网卡以及显卡等等需要安装驱动程序,但却尚未成功安装驱动程序的设备。
[0052]如果终端中存在需要安装驱动程序的第三设备,进入步骤150,如果终端中不存在第三设备,则结束本方法的流程。
[0053]150:对第三设备的驱动程序进行安装。
[0054]根据第三设备的硬件信息查找第三设备的驱动程序,对第三设备的驱动程序进行安装。安装时,终端可以逐个对第三设备的驱动程序进行安装,也可以建立多个线程或者进程以同时对第三设备进行安装。
[0055]在第三设备安装完成后,继续判断是否存在需要安装驱动程序的第四设备,如果存在需要安装驱动程序的第四设备则对第四设备的驱动程序进行安装……,如此重复,直到不再出现新的需要安装驱动程序的设备。其中,第四设备为在第三设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备。第四设备可以是U盘、打印机、声卡、网卡以及显卡等等需要安装驱动程序,但却尚未成功安装驱动程序的设备。
[0056]请参见图4,图4是本发明实施例提供的第三种驱动程序的安装方法。如图4所示,该驱动程序的安装方法可以包括但不限于以下步骤。
[0057]210:根据第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数,MSN。
[0058]终端通过API 提供的 SetupDiGetClassDevs,SetupDiEnumDeviceInfo 两个类枚举终端中的硬件信息,从而得到终端中需要安装驱动程序的硬件设备的硬件信息作为终端中的第一设备的硬件信息。其中,第一设备可以是U盘、打印机、声卡、网卡以及显卡等等需要安装驱动程序,但却尚未成功安装驱动程序的设备。终端根据获取得到的第一设备的硬件信息统计第一设备的数量N。终端根据第一设备的数量N创建M个线程,或者,可以根据第一设备的数量N创建M个进程。
[0059]可以理解的是,当创建的为M个线程时,M个线程可以属于同一个进程,或者,M个线程可以属于多个进程。例如,线程I,2,3可以属于同一个进程I,或者,线程I属于进程1,线程2属于进程2,线程3属于进程3,或者,线程I和线程2属于进程I,线程3属于进程2等等。
[0060]220:通过M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。
[0061]在获取得到N个第一设备的硬件信息后,终端根据N个第一设备的硬件信息查找N个第一设备的驱动程序,通过M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。例如,如图5所示,共有4个第一设备的驱动程序需要被安装,终端建立了 3个线程对这4个第一设备的驱动程序进行安装,其中,4个第一设备的驱动程序中的3个第一设备的驱动程序通过3个线程同时进行安装,剩下的I个第一设备的驱动程序进行队列,当3个正在安装的第一设备的驱动程序中有驱动程序安装完成,则剩下的I个第一设备的驱动程序将会替补已经安装完成的第一设备的驱动程序进行安装。
[0062]230:在第一设备的驱动程序安装完成后,对终端进行扫描以检测终端中是否存在需要安装驱动程序的第二设备。
[0063]本实施的步骤230与图1所示的实施例中的步骤120相同,具体请参阅图1所示的实施中的步骤120,此处不再具体描述。
[0064]240:判断第二设备的数量S是否大于M,其中,S为大于零的正整数。
[0065]获取得到第二设备的硬件信息后,对第二设备的硬件信息进行统计,从而获得第二设备的数量S。终端判断第二设备的数量S是否大于M,如果判断结果为第二设备的数量S大于M,进入步骤250;如果判断结果为第二设备S的数量小于或者等于M,进入步骤260。
[0066]250:通过M个线程或进程对S个第二设备中的M个第二设备的驱动程序同时进行安装,并将S个第二设备中的其他第二设备的驱动程序进行队列。
[0067]在第二设备的数量S大于M时,可以根据第二设备的硬件信息查找第二设备的驱动程序,利用原来的M个线程或者进程对S个第二设备中的M个第二设备的驱动程序同时进行安装,并将S个第二设备中的剩下的第二设备的驱动程序进行队列。
[0068]260:从M个线程或进程中选择与第二设备数量相等的线程或进程对第二设备的驱动程序同时进行安装。
[0069]在第二设备的数量小于或者等于M时,可以根据第二设备的硬件信息查找第二设备的驱动程序,从原来的M个线程或者进程中选择与第二设备数量相等的线程或进程对第二设备的驱动程序同时进行安装。
[0070]请参见图6,图6是本发明实施例提供的第四种驱动程序的安装方法。如图6所示,该驱动程序的安装方法可以包括但不限于以下步骤。
[0071]310:根据第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数,MSN。
[0072]320:通过M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。
[0073]330:在第一设备的驱动程序安装完成后,对终端进行扫描以检测终端中是否存在需要安装驱动程序的第二设备。
[0074]本实施的步骤310、320以及330分别与图4所示的实施例中的步骤210、220以及230相同,具体请参阅图4所示的实施中的步骤210、220以及230,此处不再具体描述。
[0075]340:根据第二设备的数量S创建T个线程或进程,其中,S为大于零的正整数,T为大于零的正整数,S<T。
[0076]获取得到第二设备的硬件信息,对第二设备的硬件信息进行统计,从而获得第二设备的数量S。终端根据第二设备的数量S创建T个线程,或者,可以根据第二设备的数量S创建T个进程。
[0077]可以理解的是,当创建的为T个线程时,T个线程可以属于同一个进程,或者,T个线程可以属于多个进程。例如,线程I,2,3可以属于同一个进程I,或者,线程I属于进程1,线程2属于进程2,线程3属于进程3,或者,线程I和线程2属于进程I,线程3属于进程2等等。
[0078]350:通过T个线程或进程对S个第二设备中的T个第二设备的驱动程序同时进行安装,并对S个第二设备中剩下的S-T个第二设备的驱动程序进行队列。
[0079]在获取得到S个第二设备的硬件信息后,终端根据S个第二设备的硬件信息查找T个第二设备的驱动程序,通过T个线程或进程对S个第二设备中的T个第二设备的驱动程序同时进行安装,并对S个第二设备中剩下的S-T个第二设备的驱动程序进行队列。
[0080]上述详细阐述了本发明实施例的方法,下面为了便于更好地实施本发明实施例的上述方案,相应地,下面还提供用于配合实施上述方案的驱动程序的安装装置。
[0081]请参见图7,图7是本发明实施例提供的第一种驱动程序的安装装置的结构示意图。本实施例的驱动程序的安装装置40包括第一安装模块410、第一检测模块420以及第二安装模块430。
[0082]第一安装模块410用于对终端进行扫描以获取需要安装驱动程序的第一设备,对第一设备的驱动程序进行安装;
[0083]第一检测模块420用于在所述第一设备的驱动程序安装完成后,对所述终端进行扫描以检测终端中是否存在需要安装驱动程序的第二设备,其中,所述第二设备为在所述第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备。
[0084]第二安装模块430用于在检测结果为存在需要安装驱动程序的所述第二设备时,对所述第二设备的驱动程序进行安装。
[0085]可选地,所述第一检测模块还用于在检测结果为不存在需要安装驱动程序的所述第二设备,结束流程。
[0086]可理解的是,本实施例的驱动程序的安装装置40的各功能单元的功能可根据上述图1方法实施例的方法具体实现,此处不再赘述。
[0087]请参见图8,图8是本发明实施例提供的第二种驱动程序的安装装置的结构示意图。本实施例的驱动程序的安装装置40是对图7所示的驱动程序的安装装置40优化得到的。本实施例的驱动程序的安装装置40除了包括第一安装模块410、第一检测模块420以及第二安装模块430之外,还包括第二检测模块440以及第三安装模块450。
[0088]第二检测模块440用于对所述终端进行扫描以检测终端中是否存在需要安装驱动程序的第三设备,其中,所述第三设备为在所述第二设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备。
[0089]第三安装模块450用于在检测结果为存在需要安装驱动程序的所述第三设备时,对所述第三设备的驱动程序进行安装。
[0090]可理解的是,本实施例的驱动程序的安装装置40的各功能单元的功能可根据上述图3方法实施例的方法具体实现,此处不再赘述。
[0091]请参见图9,图9是本发明实施例提供的第三种驱动程序的安装装置的结构示意图。本实施例的驱动程序的安装装置40是对图7所示的驱动程序的安装装置40优化得到的。其中,第一安装模块410包括第一创建单元411以及第一安装单元413。第二安装模块430包括判断单元411以及第二安装单元413。
[0092]第一创建单元411用于根据第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数,M<N。
[0093]第一安装单元413用于通过所述M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。
[0094]判断单元411用于判断所述第二设备的数量S是否大于M,其中,S为大于零的正整数。
[0095]第二安装单元413用于在判断结果为大于M时,通过所述M个线程或进程对S个第二设备中的M个第二设备的驱动程序同时进行安装,并将S个第二设备中的其他第二设备的驱动程序进行队列;在判断结果为小于或者等于M时,从所述M个线程或进程中选择与所述第二设备数量相等的线程或进程对所述第二设备的驱动程序同时进行安装。
[0096]可选地,当创建的为M个线程时,所述M个线程属于同一个进程,或者,所述M个线程属于多个进程。
[0097]可理解的是,本实施例的驱动程序的安装装置40的各功能单元的功能可根据上述图4方法实施例的方法具体实现,此处不再赘述。
[0098]请参见图10,图10是本发明实施例提供的第四种驱动程序的安装装置的结构示意图。本实施例的驱动程序的安装装置40是对图7所示的驱动程序的安装装置40优化得到的。其中,第一安装模块410包括第一创建单元412以及第一安装单元414。第二安装模块430包括第二创建单元432以及第二安装单元434。
[0099]第一创建单元412用于根据第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数,M<N。
[0100]第一安装单元414用于通过所述M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。
[0101]第二创建单元432用于根据第二设备的数量S创建T个线程或进程,其中,S为大于零的正整数,T为大于零的正整数,SST;
[0102]第二安装单元434用于通过所述T个线程或进程对S个第二设备中的T个第二设备的驱动程序同时进行安装,并对S个第二设备中剩下的S-T个第二设备的驱动程序进行队列。
[0103]可选地,当创建的为M个线程时,所述M个线程属于同一个进程,或者,所述M个线程属于多个进程。
[0104]可选地,当创建的为T个线程时,所述T个线程属于同一个进程,或者,所述T个线程属于多个进程。
[0105]可理解的是,本实施例的驱动程序的安装装置40的各功能单元的功能可根据上述图5方法实施例的方法具体实现,此处不再赘述。
[0106]请参见图11,是本发明提供的一种终端的结构示意图。本实施例中所描述的终端500包括:至少一个处理器501、通信接口 502、用户接口 503和存储器504,处理器501、通信接口 502、用户接口 503和存储器504可通过总线或者其它方式连接,本发明实施例以通过总线505连接为例。其中,
[0107]处理器501可以是通用处理器,例如中央处理器(Central Processing Unit,CPU)。
[0108]通信接口 502可以为有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他终端或服务器进行通信。本发明实施例中,通信接口502具体用于将目标网站中记载目标新闻的网页的链接发送给客户端。
[0109]用户接口503具体可为触控面板,包括触摸屏和触控屏,用于检测触控面板上的操作指令,用户接口503也可以是物理按键或者鼠标。本发明实施例中,用户接口503具体用于接收用户输入的目标新闻的标题或关键词。用户接口 503还可以为显示屏,用于输出、显示图像或数据。本发明实施例中,用户接口503具体用于接收用户输入的目标新闻的标题或关键词。
[0110]存储器504可以包括易失性存储器(Volatile Memory ),例如随机存取存储器(Random Access Memory,RAM);存储器也可以包括非易失性存储器(Non-Volati I eMemory),例如只读存储器(Read-Only Memory ,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器504还可以包括上述种类的存储器的组合。存储器504用于存储一组程序代码,处理器501用于调用存储器504中存储的程序代码,执行如下操作:
[0111]对终端进行扫描以获取需要安装驱动程序的第一设备,对第一设备的驱动程序进行安装;
[0112]在所述第一设备的驱动程序安装完成后,对所述终端进行扫描以检测终端中是否存在需要安装驱动程序的第二设备,其中,所述第二设备为在所述第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备;
[0113]如果检测结果为存在需要安装驱动程序的所述第二设备,对所述第二设备的驱动程序进行安装。
[0114]可选地,处理器501还执行如下操作:
[0115]对所述终端进行扫描以检测终端中是否存在需要安装驱动程序的第三设备,其中,所述第三设备为在所述第二设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备;
[0116]如果检测结果为存在需要安装驱动程序的所述第三设备,对所述第三设备的驱动程序进行安装。
[0117]可选地,处理器501还执行如下操作:
[0118]根据第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数,MSN;
[0119]通过所述M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。
[0120]可选地,处理器501还执行如下操作:
[0121]判断所述第二设备的数量S是否大于M,其中,S为大于零的正整数;
[0122]如果判断结果为大于M,则通过所述M个线程或进程对S个第二设备中的M个第二设备的驱动程序同时进行安装,并将S个第二设备中的其他第二设备的驱动程序进行队列;
[0123]如果判断结果为小于或者等于M,则从所述M个线程或进程中选择与所述第二设备数量相等的线程或进程对所述第二设备的驱动程序同时进行安装。
[0124]可选地,当创建的为M个线程时,所述M个线程属于同一个进程,或者,所述M个线程属于多个进程。
[0125]可选地,处理器501还执行如下操作:
[0126]根据第二设备的数量S创建T个线程或进程,其中,S为大于零的正整数,1~为大于零的正整数,SST;
[0127]通过所述T个线程或进程对S个第二设备中的T个第二设备的驱动程序同时进行安装,并对S个第二设备中剩下的S-T个第二设备的驱动程序进行队列。
[0128]可选地,当创建的为T个线程时,所述T个线程属于同一个进程,或者,所述T个线程属于多个进程。
[0129]可选地,处理器501还执行如下操作:如果检测结果为不存在需要安装驱动程序的所述第二设备,则结束流程。
[0130]可理解的是,处理器501的执行步骤具体可参见图1至图6中任实施例所述的内容,此处不再赘述。
[0131]通过在第一设备的驱动程序安装完成后,检测终端中是否存在第二设备,并在存在第二设备时,对第二设备的驱动程序进行安装,实现正确安装依赖于第一设备的第二设备的驱动程序,提高用户的体验。
[0132]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
[0133]以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
【主权项】
1.一种驱动程序安装方法,其特征在于,包括: 对终端进行扫描以获取需要安装驱动程序的第一设备,对所述第一设备的驱动程序进行安装; 在所述第一设备的驱动程序安装完成后,对所述终端进行扫描以检测所述终端中是否存在需要安装驱动程序的第二设备,其中,所述第二设备为在所述第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备; 如果检测结果为存在需要安装驱动程序的所述第二设备,对所述第二设备的驱动程序进行安装。2.根据权利要求1所述的方法,其特征在于,对所述第二设备的驱动程序进行安装之后,所述方法还包括: 对所述终端进行扫描以检测所述终端中是否存在需要安装驱动程序的第三设备,其中,所述第三设备为在所述第二设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备; 如果检测结果为存在需要安装驱动程序的所述第三设备,对所述第三设备的驱动程序进行安装。3.根据权利要求1所述的方法,其特征在于,对所述第一设备的驱动程序进行安装具体包括: 根据所述第一设备的数量N创建M个线程或进程,其中,M为大于零的正整数,N为大于零的正整数,MSN; 通过所述M个线程或进程对N个第一设备中的M个第一设备的驱动程序同时进行安装,并对N个第一设备中剩下的N-M个第一设备的驱动程序进行队列。4.根据权利要求3所述的方法,其特征在于,对所述第二设备的驱动程序进行安装具体包括: 判断所述第二设备的数量S是否大于M,其中,S为大于零的正整数; 如果判断结果为大于M,则通过所述M个线程或进程对S个第二设备中的M个第二设备的驱动程序同时进行安装,并将S个第二设备中的其他第二设备的驱动程序进行队列; 如果判断结果为小于或者等于M,则从所述M个线程或进程中选择与所述第二设备数量相等的线程或进程对所述第二设备的驱动程序同时进行安装。5.根据权利要求3所述的方法,其特征在于,当创建的为M个线程时,所述M个线程属于同一个进程,或者,所述M个线程属于多个进程。6.根据权利要求1所述的方法,其特征在于,对所述第二设备的驱动程序进行安装具体包括: 根据所述第二设备的数量S创建T个线程或进程,其中,S为大于零的正整数,T为大于零的正整数,SST; 通过所述T个线程或进程对S个第二设备中的T个第二设备的驱动程序同时进行安装,并对S个第二设备中剩下的S-T个第二设备的驱动程序进行队列。7.根据权利要求6所述的方法,其特征在于,当创建的为T个线程时,所述T个线程属于同一个进程,或者,所述T个线程属于多个进程。8.根据权利要求1所述的方法,其特征在于,如果检测结果为不存在需要安装驱动程序的所述第二设备,则结束流程。9.一种驱动程序安装装置,其特征在于,所述装置包括第一安装模块、第一检测模块以及第二安装模块, 所述第一安装模块用于对终端进行扫描以获取需要安装驱动程序的第一设备,对所述第一设备的驱动程序进行安装; 所述第一检测模块用于在所述第一设备的驱动程序安装完成后,对所述终端进行扫描以检测所述终端中是否存在需要安装驱动程序的第二设备,其中,所述第二设备为在所述第一设备的驱动程序安装完成后才显示出来的需要安装驱动程序的设备; 所述第二安装模块用于在检测结果为存在需要安装驱动程序的所述第二设备时,对所述第二设备的驱动程序进行安装。10.—种终端,其特征在于,包括:处理器、存储器、通信接口和总线;所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行一种驱动程序的安装方法;其中,所述方法为如权利要求1至8任一权利要求所述的方法。
【文档编号】G06F9/445GK106055370SQ201610410915
【公开日】2016年10月26日
【申请日】2016年6月13日
【发明人】杨勇
【申请人】北京金山安全软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1