[发明专利]一种基于源码分析的LINUX内核可靠性评测系统及其方法有效
| 申请号: | 201210208709.1 | 申请日: | 2012-06-25 |
| 公开(公告)号: | CN102768642A | 公开(公告)日: | 2012-11-07 |
| 发明(设计)人: | 刘璧怡 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 250014 山东*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 源码 分析 linux 内核 可靠性 评测 系统 及其 方法 | ||
技术领域
本发明属于LINUX系统可靠性评测技术领域,涉及一种基于源码分析的LINUX内核可靠性评测系统及其方法。
背景技术
在计算机系统中,操作系统是最为重要敏感的组件之一,它通过和硬件进行交互来给应用提供基础的服务,并管理计算机的所有资源。所有应用的执行都依靠于操作系统的正确运行,因此操作系统的准确运行至关重要。在操作系统内部的错误能够轻易的传播,上至应用,下至硬件,从而引起系统失效。任何操作上的干扰最终可能引起生产能力或经济上的损失,因此操作系统的稳定运行非常重要。
目前对系统可靠性评测的方法主要有逻辑证明、实验测试和分析模型等,有从理论分析方面入手,也有运用仿真实验方法。理论分析方法缺点是数学上分析复杂,而仿真实验由于对系统做了简化和假设而不能完全真实地反映系统的情况,从而造成评估结果的不准确,无法及时地发现在系统设计和实现阶段潜在的问题。在真实环境中,等待系统运行足够长的时间来观察获取系统故障信息是比较困难的,需要投入极大的人力和物力。
Linux操作系统使用的是传统的单一内核结构,在系统硬件上层建立了更高一层的抽象层次,在这个抽象层次上使用系统调用这种接口来实现操作系统的功能。对于像系统对进程管理、对内存的管理、对文件系统不同的支持等多种系统功能由运行在系统核心态的模块实现。这些核心的模块组成内核的子系统,这些子系统包含了高度集成的内核源代码,这些代码大部分是由分散的独立的开发者编写的,难以编写正确。在单一内核结构下,所有的模块共享一个内核空间,系统运行效率可以大大提高。但是各个模块间通过函数调用和数据接口直接通信,在进程没有隔离的情况下共享相同的地址空间,某个模块一个很小的bug 可能会引起其他模块的失效,甚至使整个系统崩溃。为了准确地评估Linux内核的可靠性及模块间的故障相关性,需要区分每个故障来自于哪个内核子系统。内核源代码中有数以千计的源文件和数以百计的文件目录,内核各个子系统间的架构清晰,各个源文件和路径名能够很容易的获取,但这些信息在内核编译并运行后,便会丢失。因此如何获取解析这些信息以便更好的进行可靠性评测是极其重要的。
故,针对上述现有技术存在的缺陷,实有必要进行研究,以提供一种基于真实数据的测试分析方法,人为地引入故障到系统中的技术手段,可以较精确地获取系统故障信息,得到真实的故障特性和故障传播特性,从而有效地评测故障对系统可靠性的影响,进而提高系统可靠性。
发明内容
为解决上述问题,本发明的目的在于提供一种基于源码分析的LINUX内核可靠性评测系统及其方法。
为实现上述目的,本发明的技术方案为:
一种基于源码分析的LINUX内核可靠性评测系统,包括主控端和目标端,其中,主控端运行在一个单独的系统中,其包括有控制逻辑的控制模块、故障注入器模块、通讯模块、故障负载生成器模块、以及数据分析模块;而目标端包括有注入执行器模块、工作负载生成器模块、结果回收及性能监控模块;其中,主控端和目标端通过普通的以太网进行连接,主控端通过此连接来跟踪目标端的执行状态,给目标端发送各种指令,而目标端通过此连接把系统状态信息,状态转化信息,故障注入结果信息发送给主控端。
进一步地,所述控制模块用于管理调度各个模块的协同工作,控制故障负载生成模块的执行,构建出故障库,通过通讯模块来和目标端建立通信连接。
进一步地,所述通讯模块用于提供主控端和目标端的通信连接服务,接收来自目标系统的内核信息,并提供给故障负载生成模块生成故障负载。
进一步地,所述故障负载生成模块用于把源码层级的数据结构和特定的内核使用的物理内存地址联系起来,找到该数据结构是在哪个内核子系统的源文件中被定义的,得到每一个变量数据从底层的物理地址到高层的源代码文件归属的内核子系统的一一对应关系。
进一步地,所述数据分析模块用于对实验结果的收集和处理,接受控制模块的调度,接收通过通讯模块发来的目标端反馈的故障注入结果,记录目标系统故障注入后的系统行为,根据相关的度量计算统计结果,写入结果文件中。
进一步地,还包括一用户界面模块,该模块用于提供用户和评测平台的交互。
进一步地,还包括一结果回收模块,以用于故障注入目标系统实验后的结果回收和反馈,将回收到的结果反馈至主控端。
进一步地,所述目标端监控模块用于收集和记录目标系统对各个注入故障的时间和系统反应,并以数据报告的形式发送给主控端的数据分析模块。
本发明另一技术方案为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210208709.1/2.html,转载请声明来源钻瓜专利网。





