摘要
中断数据冲突问题是航天嵌入式软件常见典型问题之一,问题的发生具有较大的偶然性和不确定性,目前缺少较为成熟的技术和有效分析方法,冲突问题仍是时有发生,增大了软件研制周期和维护成本.本文从参数的类型及访问序角度,重点针对数组变量,多于处理器字长变量和关联变量的一次访问操作从源码和反汇编码级别搭建冲突场景并分析造成数据不同步的机理.针对同一个参数的多次访问序,构建高低优先级子程序所有可能存在访问冲突的操作序场景并给出分析结论,并以实例说明固定操作序被打断造成的访问冲突场景.这种通过静态方式下构建冲突场景的分析方法相比较动态方法更容易实施,分析更为充分,对今后数据冲突自动化检测工具的研究具有一定的参考作用.
Interrupt data confliction is a common problem in aerospace embedded software.Because of the occurrence contingency and uncertainty,absence of mature technology research and analysis methods,results in increasing research cycle and maintenance cost,and problems resurface sometimes.From the perspective of parameter types and access parameters,this report focuses on array variables,more than one processor word length variables and associated variable access operation from the source code or disassembler code to build conflict scenarios.The mechanism is analyzed that causes data to be out of sync.For the multiple access sequence of the same parameter,all the high and low priority subroutines are constructed and there may be an operation sequence of the access conflict and the analysis conclusion is given.The examples show the access conflict scenarios caused by the fixed operation sequence being interrupted.This static interrupt confliction analysis method compared to dynamical method is easier to be implemented,much more fully analyzing,and has much more help to future automation research.
作者
董燕
黄晨
王小丽
虞砺琨
于倩
DONG Yan;HUANG Chen;WANG Xiaoli;YU Likun;YU Qian(Beijing Institute of Control Engineering,Beijing 100190,China)
出处
《空间控制技术与应用》
CSCD
北大核心
2018年第6期62-68,共7页
Aerospace Control and Application
基金
国家自然科学基金资助项目(91118007)~~
关键词
参数类型
参数访问序
静态方式
数据冲突
parameter type
parameter access sequence
static testing
data conflict