后端驱动程序的更新方法及装置制造方法及图纸

技术编号:17161898 阅读:35 留言:0更新日期:2018-02-01 20:14
本申请提供了一种后端驱动程序的更新方法及装置,其中的更新方法包括:确定新后端驱动程序所对应的各后端设备;为处于连接状态的后端设备设置新后端驱动程序,直到为所述各后端设备均设置了新后端驱动程序;控制所述新后端驱动程序接管处于连接状态的各后端设备与前端设备的信息交互。本申请避免了必须使用户中断业务,并重新启动虚拟机才能够使后端设备的旧后端驱动程序更新为新后端驱动程序的现象,实现了后端驱动程序的热升级;从而本申请的热升级不会对用户的业务产生影响,并提高了后端驱动程序的更新的自动化程度。

Update method and device for backend driver

The invention provides a method and apparatus for updating the backend driver, including the update method: determining the back-end equipment corresponding to the new rear driver; in the connection state of back-end equipment set a new rear driver until the end equipment is provided with new backend driver; new back-end control the driver took over the information interaction are connected to each of the front-end equipment and back-end equipment. This application must be used to avoid the interruption of business households, and restart the virtual machine to the back-end equipment old rear driver update for the new rear driver phenomenon, realize hot upgrade backend drivers; so as to influence the application of thermal upgrading not on the user's business, and improve the degree of automation of the rear drive program update.

【技术实现步骤摘要】
后端驱动程序的更新方法及装置
本申请涉及计算机技术,尤其涉及一种后端驱动程序的更新方法和后端驱动程序的更新装置。
技术介绍
使用虚拟化技术可以将一个物理服务器划分为多个虚拟机(即虚拟服务器),从而可以采用多租户的形式使不同的虚拟机为不同用户提供计算、网络以及存储等服务。在虚拟化技术中,驱动程序(Driver),包括前端驱动程序(FrontendDriver)和后端驱动程序(BackendDriver),前端驱动程序工作在虚拟机中,且以内核态的形式存在,而后端驱动程序工作在物理服务器中,且以内核态或者用户态的形式存在。在使用虚拟机为用户提供相应服务的过程中,通常会由于修复缺陷、增强功能以及代码重构等原因而需要对后端驱动程序进行更新,以利用新后端驱动程序模拟后端设备。目前,后端驱动程序的更新方式通常为:在通知用户虚拟机需要停机后,维护人员执行新后端驱动程序的安装操作,且安装操作的执行过程中会关闭虚拟机,在新后端驱动程序安装成功后,重新启动所有的虚拟机,从而使被建立的后端设备使用新后端驱动程序。专利技术人在实现本申请过程中发现,现有的后端驱动程序的更新方式不但需要用户中断业务,而且需要关闭且重启虚拟机,从而不但对用户的业务的影响较大,而且更新的自动化程度较差。
技术实现思路
本申请的目的是提供一种后端驱动程序的更新方法及装置。根据本申请的其中一个方面,提供了一种后端驱动程序的更新方法,该方法包括:确定新后端驱动程序所对应的各后端设备;为处于连接状态的后端设备设置新后端驱动程序,直到为所述各后端设备均设置了新后端驱动程序;控制所述新后端驱动程序接管处于连接状态的各后端设备与前端设备的信息交互。根据本申请的其中另一个方面,还提供了一种后端驱动程序的更新装置,该装置包括:确定模块,用于确定新后端驱动程序所对应的各后端设备;设置模块,用于为处于连接状态的后端设备设置新后端驱动程序,直到为所述各后端设备均设置了新后端驱动程序;接管模块,用于控制所述新后端驱动程序接管处于连接状态的各后端设备与前端设备的信息交互。可选的,前述后端驱动程序的更新装置,其中,所述装置还包括:注册模块,用于注册所述新后端驱动程序,以设置表征新后端驱动程序与后端设备之间的关联关系的注册信息。可选的,前述后端驱动程序的更新装置,其中,所述确定模块具体用于:根据存储的后端驱动程序的注册信息确定新后端驱动程序所对应的各后端设备。可选的,前述后端驱动程序的更新装置,其中,所述设置模块包括:监测子模块,用于监测所述各后端设备各自对应的前端设备的当前状态信息;确定子模块,用于根据所述前端设备的当前状态信息确定与前端设备的对应后端设备的当前状态。可选的,前述后端驱动程序的更新装置,其中,所述设置模块包括:设置子模块,用于在阻止处于连接状态的后端设备发生状态变化的情况下,为处于连接状态的后端设备设置新后端驱动程序。可选的,前述后端驱动程序的更新装置,其中,所述装置通过线程实现,且通过将所述装置运行时的上下文与处理后端设备状态变化的上下文设置于同一个线程上下文中,来阻止处于连接状态的后端设备发生状态变化。可选的,前述后端驱动程序的更新装置,其中,所述接管模块包括:复用子模块,用于针对各后端设备的新后端驱动程序分别复用各后端设备各自对应的共享内存中的ring信息的访问通道,使所述新后端驱动程序具有所述共享内存中的ring信息的访问权限。可选的,前述后端驱动程序的更新装置,其中,所述接管模块包括:第一控制子模块,用于控制旧后端驱动程序处于停止响应前端设备的请求的状态;判断子模块,用于根据共享内存中的ring信息判断是否存在由旧后端驱动程序响应且未处理完成的请求;第二控制子模块,用于在判断出不存在由旧后端驱动程序响应且未处理完成的请求的情况下,控制新后端驱动程序对前端设备的请求进行响应。可选的,前述后端驱动程序的更新装置,其中,所述第一控制子模块具体用于:根据共享内存中的事件通道信息调用接口函数关闭相应的中断。可选的,前述后端驱动程序的更新装置,其中,所述第二控制子模块具体用于:根据共享内存中的事件通道信息调用接口函数开启相应的中断,并根据共享内存中的事件通道信息注册所述新后端驱动程序中的中断处理函数。与现有技术相比,本申请各个实施例体现了以下优点:本申请通过在为各后端设备设置新后端驱动程序的过程中,通过针对处于连接状态的后端设备设置新后端驱动程序,避免了为后端设备设置新后端驱动程序而导致的系统异常现象(如前端设备异常、后端设备异常以及用户业务异常等);本申请通过在为各后端设备成功设置了新后端驱动程序后,控制新后端驱动程序接管处于连接状态的各后端设备与前端设备的信息交互,使前端设备与后端设备可以正常进行信息交互。由此可知,本申请避免了必须使用户中断业务,并需要重新启动虚拟机才能够使后端设备的旧后端驱动程序更新为新后端驱动程序的现象,实现了后端驱动程序的热升级。由于本实施例的后端驱动程序的热升级不需要通知用户虚拟机停机,也不需要重新启动虚拟机,因此,用户通常不会感知到后端驱动程序的更新过程,从而使后端驱动程序的更新过程变得更加便捷;最终本申请提供的技术方案不但不会对用户的业务产生影响,而且还提高了后端驱动程序的更新的自动化程度。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1为本申请实施例一的后端驱动程序的更新方法流程图;图2为本申请实施例一的为多个后端设备分别设置新后端驱动程序的一个具体例子的流程图;图3为本申请实施例二的后端驱动程序的更新方法流程图;图4为本申请实施例三的后端驱动程序的更新装置的一结构示意图;图5为本申请实施例三的后端驱动程序的更新装置的另一结构示意图;图6为本申请实施例三的设置模块的一结构示意图;图7为本申请实施例三的设置模块的另一结构示意图;图8为本申请实施例三的接收模块的一结构示意图;图9为本申请的技术方案的一个具体应用环境的示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施例作详细描述。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然本申请的流程图将各项操作描述成顺序的处理,但是,其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。本实施例中的服务器包括但不限于单个网络服务器、多个网络服务器组成的服务器组或者基于云计算(CloudComputing)的由大量计算机或者网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述服务器可以接入网络并与网络中的其他设备进行信息交互操作。其中,所述服务器所能够接入的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。需要说明的是,所述服务器以及网络等仅为举例,其他现有的或今后可能出现的服务器或者网络如可适用于本申请,也应包含在本申请保护范围以内,并以引用方式包含于此。后面描述所讨论的方法(其中一些通过流程图示出)实施本文档来自技高网...
后端驱动程序的更新方法及装置

【技术保护点】
一种后端驱动程序的更新方法,包括:确定新后端驱动程序所对应的各后端设备;为处于连接状态的后端设备设置新后端驱动程序,直到为所述各后端设备均设置了新后端驱动程序;控制所述新后端驱动程序接管处于连接状态的各后端设备与前端设备的信息交互。

【技术特征摘要】
1.一种后端驱动程序的更新方法,包括:确定新后端驱动程序所对应的各后端设备;为处于连接状态的后端设备设置新后端驱动程序,直到为所述各后端设备均设置了新后端驱动程序;控制所述新后端驱动程序接管处于连接状态的各后端设备与前端设备的信息交互。2.根据权利要求1所述的方法,其中,所述方法还包括:注册所述新后端驱动程序,以设置表征新后端驱动程序与后端设备之间的关联关系的注册信息。3.根据权利要求1所述的方法,其中,所述确定新后端驱动程序所对应的各后端设备的步骤包括:根据存储的后端驱动程序的注册信息确定新后端驱动程序所对应的各后端设备。4.根据权利要求1所述的方法,其中,所述为处于连接状态的后端设备设置新后端驱动程序的步骤包括:监测所述各后端设备各自对应的前端设备的当前状态信息;根据所述前端设备的当前状态信息确定与前端设备的对应后端设备的当前状态。5.根据权利要求1所述的方法,其中,所述为处于连接状态的后端设备设置新后端驱动程序的步骤包括:在阻止处于连接状态的后端设备发生状态变化的情况下,为处于连接状态的后端设备设置新后端驱动程序。6.根据权利要求5所述的方法,其中,所述方法通过线程实现,且通过将所述方法运行所需的上下文与处理后端设备状态变化所需的上下文设置于同一个线程上下文中,来阻止处于连接状态的后端设备发生状态变化。7.根据权利要求1至6中任一权利要求所述的方法,其中,所述控制所述新后端驱动程序接管各后端设备与前端设备的信息交互的步骤包括:针对各后端设备的新后端驱动程序分别复用各后端设备各自对...

【专利技术属性】
技术研发人员:万佳
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1