摘要
VxWorks是目前广泛应用于机载、车载等复杂嵌入式系统的操作系统,它为应用程序提供了强大的故障捕捉和缺省的故障处理服务,并提供应用程序可挂载的故障处理接口。由于故障产生的时机和机理复杂,因此如何控制操作系统使其按照应用程序的测试需求抛出相应的故障,从而触发应用程序的故障处理,是对应用程序开展鲁棒性测试时需要解决的一个关键问题。本文以VxWorks嵌入式实时操作系统中捕捉的故障作为研究对象,提出了由故障建模、故障注入、测试控制和鲁棒性判定组成的故障设计与测试方法,以支持对基于VxWorks的应用程序开展鲁棒性测试。该测试方法将模型驱动测试与故障注入技术相结合,在平台无关层次描述故障,针对操作系统中对相应故障处理方式的不同,本文设计了函数替换和变量修改两种故障注入方法,并在VxWorks 5.5上进行了实验,确认了相应方法和技术的有效性。
VxWorks is a popular real-time operating system for complex embedded systems like avionics or automobile. VxWorks provides strong fault capture capabilities and default handling methods for user applications. It also provides APIs to mount user application specific fault handlers. As for application robustness testing, since the timing and mechanism of fault occurrence is complex, it is an essential problem that how to control operating system to throw corresponding fault based on the testing requirement of the application. In this paper, we study the fault captured by VxWorks, and present a fault design and testing method consist of fault modeling, fault injection, testing control and robustness estimate. This testing method combines the model driven testing with the fault injection technique, so users can design fault in the platform-independent level and dynamically inject appropriate fault depending on different platforms in system level. In this paper we designed two kinds of fault injection methods: function replacement and variable modification, and carried out experiments on VxWorks 5.5 to confirm the validity of the corresponding methods and techniques.
出处
《科研信息化技术与应用》
2013年第3期40-48,共9页
E-science Technology & Application