【技术实现步骤摘要】
【国外来华专利技术】内核装置模块的实时更新
技术介绍
相关技术说明错误修复或安全补丁会定期应用于实时生产内核模块代码库。在一些计算环境中,这些补丁将导致操作环境中断。例如,云服务提供商(CSP)在具有成千上万台主机的实时生产环境中运行各种软件模块。大型CSP将用户踢出主机以便安装更新后版本的内核装置模块(即,装置驱动程序)是不切实际的。等待所有用户自行注销也是不可行的。附加地,尝试在运行对应装置时替换正在运行的内核装置模块(或简称为模块)可能是一项挑战。卸载和重新加载模块的行为可能会导致丢失状态的情景。一个问题是,新模块将不了解旧模块留下的状态。在已卸载旧模块并开始加载新模块之后的一段时间期间,将没有驱动程序管理装置。装置的任何活动或状态更改都将丢失。附图说明通过结合附图参考以下描述,可更好地理解本文中描述的方法和机制的优点,在附图中:图1是计算系统的一个实现方式的框图。图2是服务器的虚拟环境的一个实现方式的框图。图3示出了计算系统的一个实现方式的框图。图4示出了计算系统的一个实现方式的框图。图5示出了计算系统的一个实现方式的框图。图6示出了计算系统的一个实现方式的框图。图7示出了OS、代理模块和内核装置模块之间的交互的一个实现方式的序列图。图8示出了在加载新的内核装置模块时交互的一个实现方式的序列图。图9示出了在加载新的内核装置模块时交互的一个实现方式的序列图。图10示出了使现有内核装置模块版本静默的一个实现方式的序列图。图11是 ...
【技术保护点】
1.一种系统,其包括:/n存储器,所述存储器存储操作系统(OS)、代理模块以及被配置为管理一个或多个软件应用程序与装置之间的交互的第一版本的装置驱动程序的程序指令;以及/n处理器,所述处理器被配置为:/n向所述代理模块注册所述第一版本的所述装置驱动程序;以及/n执行所述代理模块的程序指令以:/n提供从所述代理模块到所述第一版本的所述装置驱动程序的指示,所述指示指定另一版本的所述装置驱动程序是否已经被加载到所述系统上并且正在管理所述装置;以及/n响应于确定没有其他版本的所述装置驱动程序被加载到所述系统上并且正在管理所述装置,向所述OS注册为所述第一版本的所述装置驱动程序,并且将所述第一版本的所述装置驱动程序仿真到所述OS。/n
【技术特征摘要】
【国外来华专利技术】20180427 US 62/663,860;20180830 US 16/117,9591.一种系统,其包括:
存储器,所述存储器存储操作系统(OS)、代理模块以及被配置为管理一个或多个软件应用程序与装置之间的交互的第一版本的装置驱动程序的程序指令;以及
处理器,所述处理器被配置为:
向所述代理模块注册所述第一版本的所述装置驱动程序;以及
执行所述代理模块的程序指令以:
提供从所述代理模块到所述第一版本的所述装置驱动程序的指示,所述指示指定另一版本的所述装置驱动程序是否已经被加载到所述系统上并且正在管理所述装置;以及
响应于确定没有其他版本的所述装置驱动程序被加载到所述系统上并且正在管理所述装置,向所述OS注册为所述第一版本的所述装置驱动程序,并且将所述第一版本的所述装置驱动程序仿真到所述OS。
2.如权利要求1所述的系统,其中所述处理器还被配置为:
加载与被配置为管理所述装置与所述一个或多个软件应用程序之间的交互的所述第一版本的所述装置驱动程序不同的第二版本的所述装置驱动程序;
向所述代理模块注册所述第二版本的所述装置驱动程序;
所述代理模块向所述第二版本的所述装置驱动程序提供指向所述第一版本的所述装置驱动程序的指针;以及
所述第二版本的所述装置驱动程序经由所述指针请求来自所述第一版本的所述装置驱动程序的状态信息。
3.如权利要求2所述的系统,其中所述处理器还被配置为:
生成停止一个或多个外部刺激线程的一个或多个请求;
等待所述一个或多个外部刺激线程停止;以及
响应于所述一个或多个外部刺激线程停止,将所述装置的控制权从所述第一版本的所述装置驱动程序转移到所述第二版本的所述装置驱动程序。
4.如权利要求2所述的系统,其中所述处理器还被配置为:
将状态信息从所述第一版本的所述装置驱动程序传送到所述第二版本的所述装置驱动程序;
将所述装置的控制权从所述第一版本的所述装置驱动程序转移到所述第二版本的所述装置驱动程序;以及
停用所述第一版本的所述装置驱动程序。
5.如权利要求4所述的系统,其中所述处理器被配置为响应于确定所述第一版本的所述装置驱动程序被加载到所述系统上并且正在管理所述装置,而执行所述代理模块以通知所述第二版本的所述装置驱动程序跳过所述装置的硬件初始化。
6.如权利要求4所述的系统,其中所述处理器还被配置为:
将静态数据从所述第一版本的所述装置驱动程序传送到所述第二版本的所述装置驱动程序;
使所述第一版本的所述装置驱动程序静默;以及
在使所述第一版本的所述装置驱动程序静默之后,将瞬态数据从所述第一版本的所述装置驱动程序传送到所述第二版本的所述装置驱动程序。
7.如权利要求1所述的系统,其中所述处理器还被配置为:
如果当前没有其他装置驱动程序在管理所述装置,则提供从所述代理模块到所述第一版本的所述装置驱动程序的第一指示;以及
如果另一装置驱动程序当前在管理所述装置,则提供从所述代理模块到所述第一版本的所述装置驱动程序的第二指示,其中所述第二指示与所述第一指示不同。
8.一种方法,其包括:
执行第一版本的装置驱动程序的程序指令,以向代理模块注册所述第一版本的所述装置驱动程序,其中所述第一版本的所述装置驱动程序被配置为管理装置与一个或多个软件应用程序之间的交互;
其中在向所述代理模块注册所述第一版本的所述装置驱动程序之后:
执行所述代理模块的程序指令,以提供从所述代理模块到所述第一版本的所述装置驱动程序的指示,所述指示指定另一版本的所述装置驱动程序是否已经被加载到系统上并且正在管理所述装置;以及
响应于确定没有其他版本的所述装置驱动程序被加载到所述系统上并且正在管理所述装置,向OS注册为所述第一版本的所述装置驱动程序,并且将所述第一版本的所述装置驱动程序仿真到所述OS。
9.如权利要求8所述的方法,其还包括:
加载第二版本的所述装置驱动程序,其中所述第二版本的所述装置驱动程序被配置为管理所述装置与所述一个或多个软件应用程序之间的交互,并且其中所述第二版本的所述装置驱动程序不同于所述第一版本的所述装置驱动程序;
向所述代理模块注册所述第二版本的所述装置驱动程序;
所述代理模块向所述第二版本的所述装置驱动程序提供指向所述第一版本的所述装置驱动程序的指针;以及
所述第二版本的所述装置驱动程序经由所述指针请求...
【专利技术属性】
技术研发人员:凯利·唐纳德·克拉克·齐塔鲁克,
申请(专利权)人:ATI科技无限责任公司,
类型:发明
国别省市:加拿大;CA
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。