首页> 中国专利> 通用串行总线设备的驱动程序升级方法及装置

通用串行总线设备的驱动程序升级方法及装置

摘要

本发明提供通用串行总线设备的驱动程序升级方法及装置,属于电数字数据处理技术领域,驱动程序升级方法包括:按照预定的时间间隔,将命令消息发送至驱动程序待升级的USB设备,使得USB设备的工作模式为非休眠模式;在非休眠模式下,对USB设备的驱动程序进行升级处理。可有效防止该USB设备进入休眠模式,从而使得用户在不用重启Windows Vista系统或者手动插拔USB设备的情况下,正常的完成对该USB设备驱动程序的升级。

著录项

  • 公开/公告号CN101673213A

    专利类型发明专利

  • 公开/公告日2010-03-17

    原文格式PDF

  • 申请/专利权人 北京中星微电子有限公司;

    申请/专利号CN200910235779.4

  • 发明设计人 唐巍;

    申请日2009-10-15

  • 分类号G06F9/445(20060101);

  • 代理机构11243 北京银龙知识产权代理有限公司;

  • 代理人许静

  • 地址 100083 北京市海淀区学院路35号世宁大厦15层

  • 入库时间 2023-12-17 23:44:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-04-10

    专利权人的姓名或者名称、地址的变更 IPC(主分类):G06F9/445 变更前: 变更后: 申请日:20091015

    专利权人的姓名或者名称、地址的变更

  • 2018-01-09

    专利权的转移 IPC(主分类):G06F9/445 登记生效日:20171220 变更前: 变更后: 申请日:20091015

    专利申请权、专利权的转移

  • 2015-07-01

    授权

    授权

  • 2012-10-03

    实质审查的生效 IPC(主分类):G06F9/445 申请日:20091015

    实质审查的生效

  • 2010-03-17

    公开

    公开

说明书

技术领域

本发明属于电数字数据处理技术领域,尤其涉及一种Windows Vista系统(微软开发的新一代面向个人用户的操作系统)中通用串行总线(UniversalSerial Bus,USB)设备的驱动程序升级方法及装置。

背景技术

一般来说,重新换硬件设备的花费无疑是巨大的,因此,升级硬件设备的驱动程序就显得非常必要,很多厂商都在硬件设备出厂之后提供最新的驱动程序供下载。

目前常用的USB设备的驱动程序升级方法为:首先禁用USB设备的旧驱动程序,然后卸载该USB设备的旧驱动程序,最后安装该USB设备的新驱动程序。然而对于安装有Windows Vista系统的主机来说,若长时间不使用USB设备,为了节省电能,Windows Vista系统会自动将该USB设备设置为休眠状态,此时若需要对该USB设备的驱动程序进行升级,同样也要在主机中禁用该USB设备的驱动程序,但由于该USB设备已进行了休眠状态,此时若禁用该USB设备的驱动程序,会让该USB设备进入假死状态,即无法响应正常的驱动程序卸载命令。

在实现本发明的过程中,发现现有技术存在至少以下问题:在对USB设备的驱动程序进行升级时,会因为禁用已休眠USB设备的驱动程序,而造成无法唤醒休眠中的USB设备,导致无法响应正常的驱动程序卸载命令的问题。从而会影响用户对USB设备的正常使用。

发明内容

为了解决上述问题,本发明的目的是提供一种通用串行总线设备的驱动程序升级方法及装置,解决了当需要对USB设备的驱动程序升级时,因该USB设备休眠而无法唤醒,从而影响用户对USB设备的正常使用。

为了达到上述目的,本发明提供一种通用串行总线设备的驱动程序升级方法,包括:

按照预定的时间间隔,将命令消息发送至驱动程序待升级的通用串行总线设备,使得所述通用串行总线设备的工作模式为非休眠模式;

在所述非休眠模式下,对所述通用串行总线设备的驱动程序进行升级处理。

优选的,所述对所述通用串行总线设备的驱动程序进行升级处理的步骤包括:

发送驱动程序禁用命令,禁用所述通用串行总线设备的低版本驱动程序;

发送驱动程序卸载命令,卸载所述通用串行总线设备的低版本驱动程序;

安装所述通用串行总线设备的新版本驱动程序。

优选的,在对所述通用串行总线设备的驱动程序进行升级处理的步骤之后,所述方法还包括:

所述通用串行总线设备重新启动,在所述通用总线设备重启后加载所述新版本驱动程序。

优选的,所述命令消息为通用串行总线设备的寄存器读写命令。

优选的,所述通用串行总线设备为通用串行总线视频类设备。

本发明还提供一种通用串行总线设备的驱动程序升级装置,包括:

命令发送模块,用于按照预定的时间间隔,将命令消息发送至驱动程序待升级的通用串行总线设备,使得所述通用串行总线设备的工作模式为非休眠模式;

驱动程序升级模块,用于在所述非休眠模式下,对所述通用串行总线设备的驱动程序进行升级处理。

优选的,所述驱动程序升级模块包括:

禁用程序单元,用于发送驱动程序禁用命令,禁用所述通用串行总线设备的低版本驱动程序;

删除程序单元,用于发送驱动程序卸载命令,卸载所述通用串行总线设备的低版本驱动程序;

安装程序单元,用于安装所述通用串行总线设备的新版本驱动程序。

优选的,所述驱动程序升级装置还包括:

驱动程序加载模块,用于在所述通用总线设备重启后,加载所述新版本驱动程序。

优选的,所述命令消息为通用串行总线设备的寄存器读写命令。

优选的,所述通用串行总线设备为通用串行总线视频类设备。

上述技术方案中的至少一个技术方案具有如下有益效果:通过按照预定的时间间隔,将命令消息发送至驱动程序待升级的USB设备中,可有效防止该USB设备进入休眠模式,使得用户在不用重启Windows Vista系统或者手动插拔USB设备的情况下,能够的正常的完成对该USB设备驱动程序的升级。

附图说明

图1为本发明中驱动程序升级方法的流程图;

图2为本发明中驱动程序升级装置的结构框图。

具体实施方式

在本实施例中,通过按照预定的时间间隔,将命令消息发送至驱动程序待升级的USB设备中,可有效防止该USB设备进入休眠模式,避免了在对已休眠的USB设备的驱动程序禁用处理后,导致该USB设备无法唤醒的问题,使得用户在不用重启Windows Vista系统或者手动插拔USB设备的情况下,就能够正常的完成USB设备的驱动程序升级。

为了使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明实施例做进一步详细地说明。在此,本发明的示意性实施例及说明用于解释本发明,但并不作为对本发明的限定。如图1所示,为本发明中驱动程序升级方法的流程图,具体步骤如下:

步骤101、按照预定的时间间隔,将命令消息发送至驱动程序待升级的通用串行总线设备,使得通用串行总线设备的工作模式为非休眠模式;

在本实施例中,USB设备可选用UVC(USB Video Class,USB视频类)设备、USB音频类设备、或者USB输入输出设备中的任意一种。为了便于理解,下面仅以UVC设备为例进行说明本实施例的方法流程,且该UVC设备与安装有Windows Vista系统的PC(个人电脑)主机连接。

本步骤中可通过现有的硬件检测技术查找出驱动程序待升级的UVC设备,当找到驱动程序需要升级的UVC设备后,就按照预定的时间间隔(例如间隔2秒钟),向该驱动程序需要升级的UVC设备发送命令消息。通过间隔的发送命令消息,可有效防止驱动程序待升级的UVC设备进入休眠模式。该命令消息可以是UVC设备的寄存器读写命令,也就是对UVC设备的寄存器进行读写操作,也可是Vender Command(USB用户定义命令),在本实施例中并不限定命令消息的具体形式。

从而可根据接收到的命令消息,将由于在对UVC设备的寄存器进行读写操作时,UVC设备的驱动程序需要创建Filter(过滤器),而Windows Vista系统通常是根据Filter是否被创建来判断UVC设备是否被占用,当创建有Filter时,UVC设备的工作模式可设置为非休眠模式(即UVC设备不会选择进入休眠模式)。

在本实施例中,该非休眠模式包括:工作模式和待机模式。一般为了节省PC主机的电能,在本步骤中,可将UVC设备的工作模式设置为待机模式。

步骤102、在非休眠模式下,对通用串行总线设备的驱动程序进行升级处理。

在本步骤中,由于UVC设备并未进入休眠模式,因此可采用现有的驱动程序更新方式来完成UVC设备驱动程序的升级处理,包括如下步骤:

步骤1021、向PC主机发送驱动程序禁用命令,禁用UVC设备的低版本驱动程序;

也就是,通过PC主机的输入设备,向PC主机的中央处理器发送驱动程序禁用命令,禁用该UVC设备的低版本驱动程序;

步骤1022、向PC主机发送驱动程序卸载命令,卸载UVC设备的低版本驱动程序;

也就是,通过PC主机的输入设备,向PC主机的中央处理器发送驱动程序卸载命令,卸载该UVC设备的驱动程序;

步骤1023、安装该UVC设备的新版本驱动程序。

也就是,在PC主机中安装该UVC设备的新版本驱动程序。

步骤103、通用串行总线设备重新启动,并在通用总线设备重启后加载新版本驱动程序。

在执行完步骤102后,可以通过一计时器来判断是否需要执行步骤103,例如在执行完步骤102后,该计时器开始计时,当达到预先设定的时间间隔后,UVC设备自动进行重新启动,在完成重新启动后,再加载更新后的新版本驱动程序。当然该UVC设备也可通过接收重启命令来完成重新启动的操作,例如在UVC设备接收到重启命令后,该重启命令触发UVC设备重新启动,在完成重新启动后,再加载更新后的新版本驱动程序。由于只需要UVC设备执行重新启动,简化了升级驱动程序的步骤,同时也节省了升级驱动程序所花费的时间。

由上述技术方案可知,通过按照预定的时间间隔,将命令消息发送至驱动程序待升级的USB设备中,可有效防止该USB设备进入休眠模式,使得用户在不用重启Windows Vista系统或者手动插拔USB设备的情况下,能够的正常的完成对该USB设备驱动程序的升级。

为了实现上述的方法实施例,本发明的其他实施例还提供了一种通用串行总线设备的驱动程序升级装置。另需首先说明的是,由于下述的实施例是为实现前述的方法实施例,故该装置中的模块都是为了实现前述方法的各步骤而设,但本发明并不限于下述的实施例,任何可实现上述方法的装置和模块都应包含于本发明的保护范围。并且在下面的描述中,与前述方法相同的内容在此省略,以节约篇幅。

参见图2,为本发明中驱动程序升级装置的结构框图,由图中可知,该驱动程序升级装置包括:

命令发送模块21,用于按照预定的时间间隔,将命令消息发送至驱动程序待升级的通用串行总线设备,使得通用串行总线设备的工作模式为非休眠模式;

该命令消息可以是寄存器读写命令,也就是对UVC设备的寄存器进行读写操作。在本实施例中并不限定命令消息的具体形式。由于在对UVC设备的寄存器进行读写操作时,UVC设备的驱动程序需要创建Filter(过滤器),而Windows Vista系统通常是根据Filter是否被创建来判断UVC设备是否被占用,当创建有Filter时,UVC设备的工作模式可设置为非休眠模式(即UVC设备不会选择进入休眠模式)。

驱动程序升级模块22,用于在非休眠模式下,对所述通用串行总线设备的驱动程序进行升级处理。

在本实施例中,该驱动程序升级模块22可包括:

禁用程序单元,用于发送驱动程序禁用命令,禁用所述通用串行总线设备的低版本驱动程序;

删除程序单元,用于发送驱动程序卸载命令,卸载所述通用串行总线设备的低版本驱动程序;

安装程序单元,用于安装所述通用串行总线设备的新版本驱动程序。

在本发明的另一实施例中,该驱动程序升级装置还包括:

驱动程序加载模块23,用于在通用总线设备重启后,加载所述新版本驱动程序。

由于只需要UVC设备执行重新启动,简化了升级驱动程序的步骤,同时也节省了升级驱动程序所花费的时间。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号