一种智能电能表软件的可靠性检测仪及其检测方法

文档序号:9865403阅读:582来源:国知局
一种智能电能表软件的可靠性检测仪及其检测方法
【技术领域】
:
[0001]本发明涉及便携式嵌入式设备的技术,以及计算机学科中的固件逆向工程技术、反编译技术、软件可靠性分析技术。
【背景技术】
:
[0002]智能电能表作为嵌入式系统,现有研究对其软件质量的可信监督略显不足。通过对智能电能表的故障定位分析,建立智能电能表的硬件运行状态预警机制,可以及时消除智能电能表故障隐患,切实提高智能电能表的质量水平。目前的智能电能表的监控主要采用的方法有:1、基于黑盒测试的智能电能表软件检测方法,基于黑盒测试的智能电能表的软件测试,不能准确定位软件的缺欠的位置,以及分析出故障产生的原因。2、采用针对嵌入式软件的动态插粧技术。这种方法需要知道智能电能表的原始高级语言的程序,这对电能表的表厂的知识产权的影响很大,并且会导致代码的大量膨胀,影响智能电能表的运行。
[0003]综上所述,现有的智能电能表的软件可靠性检测存在的问题是:1、仅适用于已知原始电能表的高级语言的程序,智能电能表的表厂因为知识产权的关系,会不配合。2、代码的膨胀太严重,受嵌入式设备的硬件限制,智能电能表运行不正常。3、不能准确知道智能电能表的故障原因以及对故障进行定位。4、没有一种轻巧的设备,可以方便地直接对读取的机器码进行翻译与检测,让工作人员易于携带以及方便使用减轻操作人员的负担。

【发明内容】

:
[0004]本发明目的是针对上述问题,提供一种减轻劳动强度、易于携带的针对智能电能表机器码的对智能电能表软件可靠性,进行检测的嵌入式智能电能表软件检测仪及其检测方法。
[0005]为实现上述目的,我们设计了如下的技术方案:
[0006]一种智能电能表的软件可靠性检测仪,包括具有WinCE操作系统的嵌入式设备,以及搭载了自主设计的智能电能表软件的可靠性检测软件,其特征:嵌入式设备提供智能电能表软件可靠性检查软件运行的硬件平台,数据库SQLiteDB为软件的中间结果提供了存储。自主研发的智能电能表软件的可靠性检测软件,可以实现智能电能表软件的基于机器码的可靠性检测。可靠性检测软件运用可靠性分析以及反编译技术,通过将智能电能表的二进制代码进行反汇编;再反编译为高级程序语言(C语言);最后对前面的反编译后的C语言进行静态结构基础上的软件可靠性检查。
[0007]而且,所述的智能电能表的软件可靠性检测软件为自主研发的基于智能电能表MCU中的机器码进行软件可靠性测试。
[0008]而且,所述嵌入式设备采用7寸WINCE工业触摸式平板电脑WLT_T8048_070B,带有7寸TFT LCD,支持VS2005,VS2008下的VC++,VB,C#编程。
[0009]而且,所述的软件可靠性检查包括函数调用分析、控制流分析、数据流分析。
[0010]所述的函数调用分析,结合字符串的复合分割方法和多级存储空间,对电表相关的函数声明和调用进行准确的识别,产生可靠的函数调用信息。
[0011]所述的控制流分析,在对程序各个分支进行抽象的基础上,对节点进行多级正反向遍历和关联,产生的结果通过调用Graphviz开源画图类生成清晰的控制流结构图。
[0012]所述的数据流分析,根据变量定值到达关系,全程追踪电表敏感变量,结合函数调用信息和控制流图形成完整的故障分析图。
[0013]本发明的优点和积极效果是:
[0014]1.本智能电能表的软件可靠性检测仪包括由智能电能表的软件可靠性检测软件,及其嵌入式硬件和WinCE操作系统。当输入智能电能表MCU中的智能电能表程序的机器码时,能够进行反汇编以及反编译,再对反编译后的高级语言的程序进行软件的静态结构分析以及软件可靠性分析,解决了智能电能表不知道高级语言源代码的情况下软件的可靠性分析以及错误定位。
[0015]2.本智能电能表的软件可靠检测仪,可以用于检测采用主流嵌入式MUC的智能电能表软件,包括有瑞萨,NEC等。具有使用方便,通用性强的特点。
[0016]3.本发明检测仪具有体积小,携带以及使用方便,通用性强的特点,可以用于多种主流的智能电能表。
【附图说明】
[0017]图1为本检测仅的不意图;
[0018]图2为本检测仪所搭载的可靠性检测软件的设计流程图。
【具体实施方式】
[0019]以下结合附图对本发明实施例做出进一步阐述:
[0020]本智能电能表的软件可靠性检测仪,包括具有WinCE操作系统的嵌入式设备,以及搭载了自主设计的智能电能表软件的可靠性检测软件组成,其特征:嵌入式设备提供智能电能表软件可靠性检查软件运行的硬件平台。数据库SQLiteDB,为软件的中间结果提供了存储。自主研发的智能电能表的软件可靠性检测软件,可以实现智能电能表软件的基于机器码的可靠性检测。可靠性检测软件,运用软件可靠性分析以及反编译技术,通过将智能电能表的二进制代码进行反汇编;再反编译为高级程序语言;最后对前面的反编译后的C语言进行静态结构基础上的软件可靠性检查。采用的嵌入式设备型号:7寸WINCE工业触摸式平板电脑 WLT_T8048_070B。
[0021]本智能电能表软件可靠性检测仪的特点是:搭载的我们自主研发的电能表软件可靠性检测软件,是基于程序的静态结构分析的,能准确定位软件的缺欠的位置,以及分析出智能电能表典型故障产生的原因。另外本设计是基于智能电能表机器码进行反汇编反编译的,所以无需知道智能电能表的原始高级语言的程序,对电能表的表厂的知识产权的影响很小,不同于动态插粧技术并且会导致代码的大量的膨胀,自主研发的软件不会影响智能电能表的运行。嵌入式设备轻巧,可以方便地直接对读取的机器码,进行与检测,造成了工作中的沉重的人员负担。
[0022]本智能电能表软件可靠性检测仪的工作过程为:点击“机器码导入”读入智能电能表MCU中的机器码;点击“源码”,可以看到导入智能电能表MCU的机器码;再然后点击“反汇编”,可以看到刚才读进来的机器码的反汇编的结果;再点击“反编译”,可以看到机器码经过反汇编反编译后的高级语言的结果;点击“数据流图”,可以看到原始程序的进一步分析后的数据流图;点击“控制流图”,可以看到程序的进一步的控制流图;再点击“可靠性分析”,可以看到智能电能表软件可靠性分析结果;点击“退出”,程序就返回。嵌入式设备提供智能电能表软件可靠性检查软件运行的硬件平台。数据库SQLiteDB为软件的读入的机器码,中间转化的反汇编结果,以及中间转化的反编译结果,以及最后转化的可靠性检测的结果提供了存储。
[0023]下面以一个智能电能表软件可靠性检测仪加以说明:嵌入式设备提供智能电能表软件的可靠性检查软件运行的硬件平台。嵌入式设备,采用7寸WINCE工业触摸式平板电脑WLT_T8048_070B,带有7寸TFT LCD,支持VS2005,VS2008下的VC++,VB,C#编程,WindowsCE操作系统。数据库SQLiteDB为软件读入的机器码,中间转化的反汇编结果,中间转化的反编译结果,最后转化的可靠性检测结果提供存储。自主研发的智能电能表软件的可靠性检测软件,可以实现智能电能表软件的基于机器码的可靠性检测。
[0024]为了验证智能电能表软件可靠性检测仪,我们对该仪器
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1