[发明专利]服务于操作系统核心层的容错计算机系统数据比较方法无效

专利信息
申请号: 201010103349.X 申请日: 2010-01-29
公开(公告)号: CN101794242A 公开(公告)日: 2010-08-04
发明(设计)人: 张兴军;董小社;雷济凯;胡冰;王恩东;胡雷钧;孙江斌;张东;田佳;赵晓昳;伍卫国 申请(专利权)人: 西安交通大学;山东高效能服务器和存储研究院
主分类号: G06F11/00 分类号: G06F11/00
代理公司: 西安通大专利代理有限责任公司 61200 代理人: 徐文权
地址: 710049*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 服务 操作系统 核心 容错 计算机系统 数据 比较 方法
【说明书】:

技术领域

发明属于计算机领域,涉及计算机容错技术与数据比较技术,特别涉 及一种服务于操作系统核心层的容错计算机系统数据比较方法。

背景技术

随着计算机、互联网技术的飞速发展,信息化已深入到社会的方方面面, 计算机技术在提高工作效率、促进信息交流等方面极大地改变了人们的生活 方式,但同时也使人们对它产生了越来越多的依赖,一次计算机系统的故障 可能带来无法估量的损失。对那些需要保障信息安全和提供不间断信息服务 的机构来说,例如证券、制造、通信、银行、运输,业务系统的可靠性和不 间断性显得尤为重要。如何提高计算机系统的可靠性与可用性,从而保障各 种关键应用持续运营,达到永续经营的良性循环,已成为信息领域的一个重 要问题。容错计算机及相关技术正是在这种客观需求下应运而生,利用容错 计算机能避免因服务器故障而引发的数以万计的经济损失。

容错计算机是在冗余资源(硬件冗余、时间冗余、信息冗余、软件冗余) 的基础上,通过设计合理的体系结构,在系统软件的有效管理下而形成的高 可靠、高可用计算机。故障检测是实现容错计算机系统的关键技术之一,而 对任务数据的比较、表决是错误发现的主要手段。

对数据的比较、表决主要有基于硬件和基于软件两种方式。基于硬件的 方法在系统中增加比较芯片,芯片中包含比较或投票逻辑,对所有待写出的 数据进行比较、表决,这种方式发现错误及时,但设计复杂,实现成本高。 基于软件的方法在库函数或者应用程序中设置比较、表决点,对任务的中间 结果和最后输出进行一致性判断,这种方式系统设计简单,但对应用透明性 差,给编程人员和用户带来了额外的负担。

发明内容

本发明的目的在于针对上述现有技术的缺点和不足,提供了一种服务于 操作系统核心层的容错计算机系统数据比较方法,本发明能对容错系统中冗 余任务的状态和数据结果进行一致性比较,同时记录冗余任务的同步比较信 息。

为了实现上述任务,本发明采用如下的技术解决方案:在Linux操作系 统内核中创建内核态守护进程ft_syner,执行比较器逻辑,为冗余进程提供 数据比较服务;冗余进程在执行写操作时,分别准备好待写数据,再由主进 程将待写数据封装为消息包,然后将消息包添加入冗余进程和数据比较器通 信通道,并主动唤醒数据比较器ft_syner进行数据比较,在数据比较器 ft_syner完成数据比较后,冗余进程通过检测消息包中的比较结果字段获得 比较结果。

所述的通信通道,实现方式如下:在Linux操作系统内核中创建事件链 表ft_syner_event_list,冗余进程和数据比较器通过事件链表 ft_syner_event_list实现通信。

数据比较器和冗余进程以生存者-消费者方式工作,冗余进程将待比较 的数据按协议格式整理为消息包后挂接在事件链表ft_syner_event_list中, 比较器从该事件链表ft_syner_event_list中取下消息包,从中提取数据信息 进行比较。

所述的消息包的格式为:

   typedef struct{

   struct list_head list;

   short ft_msg_type;

   struct task_struct*p1;

   struct task_struct*p2;

   void*master_data;

   long master_data_len;

   void*slave_data;

   long slave_data_len;

   short error;

}ft_syner_event_msg;

其中,list为链表头,用于将消息包挂入事件链表,采用list_head为Linux 内核通用链表结构,消息包的插入、删除操作使用内核中的list_add()和 list_del()完成;

ft_msg_type为消息类型,表示消息包来自于哪一类系统调用,具体值 定义如下:

#define FT_WRITE    1  //write()系统调用

#define FT_WRITEV   2  //writev()系统调用

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学;山东高效能服务器和存储研究院,未经西安交通大学;山东高效能服务器和存储研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010103349.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top