一种实时设备驱动恢复系统及方法

文档序号:6439303阅读:206来源:国知局
专利名称:一种实时设备驱动恢复系统及方法
技术领域
本发明涉及操作系统技术领域,特别涉及一种实时设备驱动恢复系统及方法。
背景技术
可靠性是操作系统的一个重要目标。Windows XP操作系统85%的失效是由设备驱动造成的。Linux操作系统设备驱动失效的频率是其它部分的3-7倍以上。实时设备广泛使用于航空航天、医疗等领域。实时设备驱动发生故障可能会造成不可估计的损失,因此, 提高实时设备驱动的可靠性具有重要意义。

发明内容
(一)要解决的技术问题本发明要解决的技术问题是如何提供一种实时设备驱动恢复系统及方法,以便提高实时设备驱动的可靠性,进而提高实时设备整体的可靠性。( 二 )技术方案为解决上述技术问题,本发明提供一种实时设备驱动恢复系统,其包括控制模块、备份驱动模块和模拟设备模块;所述控制模块连接正常驱动和所述备份驱动模块,用于管理所述正常驱动、备份驱动模块和模拟设备模块;所述备份驱动模块,用于对所述正常驱动的行为进行备份;所述模拟设备模块连接所述备份驱动模块,用于模拟与所述正常驱动连接的硬件设备。优选地,所述控制模块还连接操作系统内核,并且所述控制模块还用于实现所述操作系统内核与正常驱动之间的信息交换。本发明还提供一种实时设备驱动恢复方法,其包括步骤B:控制模块同时向正常驱动和备份驱动模块发送命令并接收返回值,根据所述正常驱动的返回值判断所述正常驱动是否发生故障,如果是,执行步骤C;否则,将所述正常驱动的返回值发送给操作系统内核;C 所述控制模块控制所述正常驱动停止运行,将所述备份驱动模块切换到硬件设备上运行,控制所述模拟设备模块停止运行;D 所述控制模块恢复所述正常驱动,并控制恢复后的所述正常驱动在所述模拟设备模块上运行。优选地,在所述步骤B之前还包括步骤A 所述控制模块同时对所述正常驱动和备份驱动模块进行初始化。5、如权利要求3所述的方法,其特征在于,所述步骤B具体包括步骤Bi:所述控制模块从所述操作系统内核获得所述命令后,将所述命令进行拷贝,其中一份发送给所述正常驱动,另一份同时发送给所述备份驱动模块;B2:所述控制模块接收所述正常驱动和备份驱动模块的返回值,对于所述备份驱动模块的返回值不做处置;根据所述正常驱动的返回值,判断所述正常驱动是否发生故障,如果是,执行所述步骤C ;否则,将所述正常驱动的返回值发送给所述操作系统内核。
优选地,所述步骤C具体包括步骤
Cl 所述控制模块控制所述正常驱动停止运行,不再向所述正常驱动发送命令;
C2 所述控制模块改变所述备份驱动模块的参数,使所述备份驱动模块在所述硬件设备上运行;
C3 所述控制模块控制所述模拟设备模块停止运行。
优选地,所述步骤D具体包括步骤
Dl 所述控制模块采用重新启动所述正常驱动的方式,或者根据所述备份驱动模块修正所述正常驱动的方式,恢复所述正常驱动;
D2 所述控制模块改变所述正常驱动的参数,使所述正常驱动在所述模拟设备模块上运行。
(三)有益效果
本发明所述实时设备驱动恢复系统及方法,通过所述控制模块、备份驱动模块和模拟设备模块的协调配合,在所述正常驱动出现故障时,能够及时顶替和恢复,提高了实时设备驱动的可靠性,进而提高实时设备整体的可靠性。


图1是本发明实施例所述的实时设备驱动恢复系统模块结构示意图2是本发明实施例所述的实时设备驱动恢复方法流程图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1是本发明实施例所述的实时设备驱动恢复系统模块结构示意图。如图1所示, 所述系统包括控制模块200、备份驱动模块300和模拟设备模块400,即图1中虚线所围区域。所述控制模块200连接正常驱动500和所述备份驱动模块300,用于管理所述正常驱动 500、备份驱动模块300和模拟设备模块400 ;所述备份驱动模块300,用于对所述正常驱动 500的行为进行备份;所述模拟设备模块400连接所述备份驱动模块300,用于模拟与所述正常驱动500连接的硬件设备600。所述控制模块200还连接操作系统内核100,并且所述控制模块200还用于实现所述操作系统内核200与正常驱动500之间的信息交换。
图2是本发明实施例所述的实时设备驱动恢复方法流程图。如图2所示,所述方法包括步骤
步骤A 所述控制模块200同时对所述正常驱动500和备份驱动模块300进行初始化。
步骤B 所述控制模块200同时向所述正常驱动500和备份驱动模块300发送命令并接收返回值,根据所述正常驱动500的返回值判断所述正常驱动500是否发生故障,如果是,执行步骤C ;否则,将所述正常驱动500的返回值发送给操作系统内核100。
所述步骤B具体包括
步骤Bl 所述控制模块200接收所述操作系统内核100的所述命令后,将所述命令进行拷贝,其中一份发送给所述正常驱动500,另一份同时发送给所述备份驱动模块 300。步骤B2 所述控制模块200接收所述正常驱动500和备份驱动模块300的返回值, 对于所述备份驱动模块300的返回值不做处置;根据所述正常驱动500的返回值,判断所述正常驱动500是否发生故障,如果是,执行所述步骤C ;否则,将所述正常驱动500的返回值发送给所述操作系统内核100。步骤C 所述控制模块100控制所述正常驱动500停止运行,将所述备份驱动模块 300切换到硬件设备600上运行,控制所述模拟设备模块400停止运行。所述步骤C具体包括步骤步骤Cl 所述控制模块200控制所述正常驱动500停止运行,不再向所述正常驱动500发送命令。步骤C2 所述控制模块200改变所述备份驱动模块300的参数,使所述备份驱动模块300在所述硬件设备600上运行。步骤C3 所述控制模块200控制所述模拟设备模块400停止运行。步骤D 所述控制模块200恢复所述正常驱动500,并控制恢复后的所述正常驱动 500在所述模拟设备模块400上运行。 所述步骤D具体包括步骤步骤Dl 所述控制模块200采用重新启动所述正常驱动500的方式,或者根据所述备份驱动模块300修正所述正常驱动500的方式,恢复所述正常驱动500。步骤D2 所述控制模块200改变所述正常驱动500的参数,使所述正常驱动500在所述模拟设备模块400上运行。此时,所述正常驱动500和备份驱动模块300完成一次角色互换,即所述正常驱动500开始充当备份驱动的角色。本发明实施例所述实时设备驱动恢复系统及方法,通过所述控制模块、备份驱动模块和模拟设备模块的协调配合,在所述正常驱动出现故障时,能够及时顶替和恢复,提高了实时设备驱动的可靠性,进而提高实时设备整体的可靠性。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.一种实时设备驱动恢复系统,其特征在于,包括控制模块、备份驱动模块和模拟设备模块;所述控制模块连接正常驱动和所述备份驱动模块,用于管理所述正常驱动、备份驱动模块和模拟设备模块;所述备份驱动模块,用于对所述正常驱动的行为进行备份;所述模拟设备模块连接所述备份驱动模块,用于模拟与所述正常驱动连接的硬件设备。
2.如权利要求1所述的系统,其特征在于,所述控制模块还连接操作系统内核,并且所述控制模块还用于实现所述操作系统内核与正常驱动之间的信息交换。
3.一种实时设备驱动恢复方法,其特征在于,包括步骤B:控制模块同时向正常驱动和备份驱动模块发送命令并接收返回值,根据所述正常驱动的返回值判断所述正常驱动是否发生故障,如果是,执行步骤C;否则,将所述正常驱动的返回值发送给操作系统内核;C 所述控制模块控制所述正常驱动停止运行,将所述备份驱动模块切换到硬件设备上运行,控制所述模拟设备模块停止运行;D 所述控制模块恢复所述正常驱动,并控制恢复后的所述正常驱动在所述模拟设备模块上运行。
4.如权利要求3所述的方法,其特征在于,在所述步骤B之前还包括步骤A所述控制模块同时对所述正常驱动和备份驱动模块进行初始化。
5.如权利要求3所述的方法,其特征在于,所述步骤B具体包括步骤Bl 所述控制模块从所述操作系统内核获得所述命令后,将所述命令进行拷贝,其中一份发送给所述正常驱动,另一份同时发送给所述备份驱动模块;B2 所述控制模块接收所述正常驱动和备份驱动模块的返回值,对于所述备份驱动模块的返回值不做处置;根据所述正常驱动的返回值,判断所述正常驱动是否发生故障,如果是,执行所述步骤C ;否则,将所述正常驱动的返回值发送给所述操作系统内核。
6.如权利要求3所述的方法,其特征在于,所述步骤C具体包括步骤Cl 所述控制模块控制所述正常驱动停止运行,不再向所述正常驱动发送命令;C2 所述控制模块改变所述备份驱动模块的参数,使所述备份驱动模块在所述硬件设备上运行;C3 所述控制模块控制所述模拟设备模块停止运行。
7.如权利要求1所述的方法,其特征在于,所述步骤D具体包括步骤Dl 所述控制模块采用重新启动所述正常驱动的方式,或者根据所述备份驱动模块修正所述正常驱动的方式,恢复所述正常驱动;D2 所述控制模块改变所述正常驱动的参数,使所述正常驱动在所述模拟设备模块上运行。
全文摘要
本发明公开了一种实时设备驱动恢复系统及方法,涉及操作系统领域。所述系统包括控制模块、备份驱动模块和模拟设备模块;所述控制模块连接正常驱动和所述备份驱动模块,用于管理所述正常驱动、备份驱动模块和模拟设备模块;所述备份驱动模块,用于对所述正常驱动的行为进行备份;所述模拟设备模块连接所述备份驱动模块,用于模拟与所述正常驱动连接的硬件设备。所述系统及方法,通过所述控制模块、备份驱动模块和模拟设备模块的协调配合,在所述正常驱动出现故障时,能够及时顶替和恢复,提高了实时设备驱动的可靠性,进而提高实时设备整体的可靠性。
文档编号G06F11/14GK102495773SQ20111038208
公开日2012年6月13日 申请日期2011年11月25日 优先权日2011年11月25日
发明者尹杰, 胡事民, 赵鹏, 马超 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1