论文部分内容阅读
随着多重中断在航天型号嵌入式系统中的推广,多重中断程序的调试和测试技术的研究也受到重视。现有的多重中断分析方法多采用静态分析技术,不能准确的分析多重中断程序不确定性引发潜在并发错误的具体时序环境。因此,如何有效解决多重中断的不确定性引发的测试困难问题在航天型号嵌入式软件测试中显得尤为重要。
本文首先研究了多重中断的特点、多重中断可能产生并发错误的原因及产生并发错误的特点。然后,本文提出了一种顺序程序多重中断环境下的并发错误测试框架。该测试框架根据多重中断产生并发错误的原因及特点,将对多重中断可能产生并发错误的分析转化为对每两个中断处理程序间关于共享资源的读写操作分析。该测试框架针对每个共享资源做并发错误检测,检测过程覆盖了所有可能会访问该共享资源的中断处理程序。
针对该测试框架,本文一方面提出了多重中断发生器算法,另一方面给出了多重中断并发错误的检测算法。多重中断发生器算法可根据并发错误的检测结果自动作出调整,以提高检测可能存在的并发错误的速度。多重中断并发错误的检测算法可在检测过程中对每个共享资源进行有效监测。
本文提出的并发错误测试框架通过从外部加载一组合适的中断信号序列控制中断处理程序的执行过程,迫使中断程序经历待测序列,避免了构造复杂的运行时控制环境,解决了多重中断不确定性带来的测试困难问题。通过具体实验发现,与一般多重中断分析方法相比,本文提出的多重中断分析方法能较为准确地分析可能存在并发错误的时序环境和具体原因。