[发明专利]基于硬件监视和微包协议的关键数据恢复方法有效
申请号: | 201010579850.3 | 申请日: | 2010-12-09 |
公开(公告)号: | CN102012850A | 公开(公告)日: | 2011-04-13 |
发明(设计)人: | 张伟功;丁瑞;高兰志;朱晓燕;张永祥;荣金叶;邱庆林 | 申请(专利权)人: | 首都师范大学 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100048 北京市西三*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 硬件 监视 协议 关键 数据 恢复 方法 | ||
1.一种基于硬件监视和微包协议的三模冗余容错计算机系统中的关键数据恢复方法,其特征在于:把需要恢复的关键数据分成大小相等的硬件数据块,再把硬件数据块划分成大小相同的监测包;同时在硬件上针对每个硬件数据块设置监视器,该监视器能监测的监测包数与每个硬件数据块划分的监测包数相等,一旦发现某监测包有更新或修改,则形成对该硬件数据块的数据区域重新传送的依据,重新传送数据时以监测包为单位进行以减少重新传送的数据量;监视器为每个硬件数据块配置四个寄存器:表示硬件块在整个监控内存区中的位置的块起始地址寄存器、用来决定监测那些包的块内监测包使能标志寄存器、用来记录数据修改的监测结果的块内监测包变化标志寄存器和在监测包被恢复时用来清除相应的包的修改标志的块内监测包修改标志清除寄存器。
2.根据权利要求1所述的方法,其特征在于:软件设计模块只负责把关键数据分成适当的协议微包通过同步串口传送给故障机器。
3.根据权利要求2所述的方法,其特征在于:所述软件设计模块建立一种基于单向有序链表结构和矩阵式监测的关键数据区管理方法,按照微包协议的数据容量、恢复通道数据传送速率、系统任务周期与空闲时间大小、恢复缓冲区尺寸这些参数,将需要恢复的关键数据区在软件上划分为若干个连续或不连续的数据片,纵横排列组成关键数据矩阵,借鉴CACHE命中比较方法,对每个硬件数据块的修改情况和恢复情况进行实时监测,按照关键数据区的链表顺序,对所有关键数据进行轮回查询与恢复,从而保证数据恢复的一致性。
4.根据权利要求3所述的方法,其特征在于:为保证机器状态恢复的一致性,将系统时间基准和I/O状态恢复工作安排在恢复过程的末尾,与关键数据区恢复的结束检查过程及系统重同步过程一起组成一个不可中断的原子过程。
5.根据权利要求3所述的方法,其特征在于:所述单向有序链表由所有需要恢复的关键数据区组成,链表上的每块数据量最大不超过每个硬件块数据的大小;用户能够通过管理函数向此单向链表中添加或删除关键数据;设置关键数据区时只需要提供起始地址与长度,管理函数能将用户设置区域自动对齐到硬件监测的监测包的边界上,然后将其按地址从低到高的顺序插入到单向链表结构中;在搜索各硬件数据块的块起始地址时,如果有匹配的地址,则将块中相应包的使能标志设为有效,否则按从低到高的顺序重新排列各硬件数据块的起始地址,并将当前设置的数据区的起始地址作为一个新块插入到硬件数据块中。
6.根据权利要求5所述的方法,其特征在于:所述管理函数向单向链表中添加关键数据的过程如下:首先判断要插入的数据块大小是否超出硬件数据块的范围,如果超出则拆分为两块,依次类推,直到划分完毕为止,最多不超过硬件上规定的数据块数;其次是将要插入的数据块起始地址依次与链表上的数据块起始地址相比较,按照地址序列将数据块插入链表中;如果当前数据块地址范围包含要插入的数据块,则合并数据块;如果要插入的数据块的地址范围介于链表中两个数据块之间则同时进行合并;如果没有重合的地址范围则与当前数据块的起始地址相比较,依次插入到链表中即可;如果没有找到小于当前数据块的起始地址则直接插入到链表末尾。
7.根据权利要求6所述的方法,其特征在于:在确定数据块在链表中的位置以后,要置相应的包屏蔽字,包屏蔽字是链表结构中的一个数据项,有几包数据就把包屏蔽寄存器相应位置1;在设置包屏蔽字时首先判断是不是第一包数据和最后一包数据,如果是则先置第一包数据和最后一包数据的包屏蔽字,再置其它的包屏蔽字,置包屏蔽字的过程中记录该块数据的包数,同时使包恢复标志RF等于包屏蔽字。
8.根据权利要求7所述的方法,其特征在于:在数据恢复过程中,判断包恢复标志RF、块内数据变化标志寄存器和包屏蔽字相与的结果,如果判断结果不为0则恢复该包数据,如果该包数据恢复完,则包恢复标志RF置为0,下次判断该包数据是否需要恢复时,再取三者相与的结果,如果为0就不需要再次恢复了;当链表中最后一个数据块被恢复完成后,恢复函数从链表开始处对每个数据块进行修改标志检查,若某一监测包的数据修改标志有效,重新启动对它的恢复过程;恢复完成后,继续检查其它监测包的包恢复标志,直到链表结尾,然后再重新检查;如果在一次检查过程中,链表中所有数据块对应的监测包的修改标志均无效,则说明关键数据区的恢复过程已完成,恢复函数启动恢复结束过程,如果处于恢复完成状态,则重新升级为三机同步模式;然后再根据目前的同步模式调用对应的同步函数,使被恢复的机器进入重同步过程,系统恢复为三机运行模式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于首都师范大学,未经首都师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010579850.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多硬件兼容刷卡驱动系统
- 下一篇:配电柜刀闸手柄的安全装置