一种动态二进制翻译指令集模拟器计时方法

    公开(公告)号:CN103955357B

    公开(公告)日:2017-03-15

    申请号:CN201410178279.2

    申请日:2014-04-29

    Abstract: 一种动态二进制翻译指令集模拟器计时方法,本方法通过有效划分基本块,使得基本块每次执行时所占用的指令周期数可以在动态翻译阶段确定,从而实现模拟器的精确计时;计时过程包括下列步骤:(1)以跳转指令、分支指令和内存访问指令作为基本块的划分依据;(2)在动态翻译过程中,计算被翻译指令的周期数及所在内存区域的内存延迟大小,从而在动态翻译阶段确定基本块每执行一次所占用的指令周期数;(3)模拟器在执行翻译代码时,并以基本块为单位判断实时事件的响应时机。本方法能够对实时事件及时响应,可以满足航天嵌入式软件的强实时性需求,同时由于不需要逐条指令判断实时事件的响应时机,计时开销较小。

    一种用于检测中断驱动型程序数据竞争的系统

    公开(公告)号:CN102063328B

    公开(公告)日:2012-12-26

    申请号:CN201010611695.9

    申请日:2010-12-17

    Abstract: 本发明公开了一种用于检测中断驱动型程序数据竞争的系统,该系统由前端处理器和数据竞争分析引擎组成;其中前端处理器包括:反汇编器、词法/语法分析器、控制流图构造器、函数调用关系图构造器;数据竞争分析引擎包括:中断优先级分析模块、中断状态分析模块、内存访问分析模块和竞争条件识别器。本发明采用静态检测方法,以源代码或汇编代码为输入,无需运行被测程序,能够在软件开发的早期阶段应用,自动化程度较高;对中断使能状态进行了迭代的过程间分析,其中,“迭代”能够最大限度地收集所有可能的中断切换情况,减少数据竞争检测的漏报;“过程间”考虑了函数调用以及中断进入对程序状态的影响,提高了检测的精确度和检测效率。

Patent Agency Ranking