黑盒之嵌入式操作系统鲁棒性研究

这里选用MicroC/OS-II嵌入式操作系统和Infineon C167微控制器,进行操作系统鲁棒性的探究。首先须要我们建立软件故障注冊机制(software fault injection),这样我们才干产生測试用例。我们不去改动和了解MicroC/OS-II的源代码,採用黑盒方法,但为了进行故障和非法值注入,我们须要在OS和Application之间建立一个Meta-Kernel层,通过这个层,能够对系统调用參数进行故障和非法值注入,从而实现測试用例的产生和输入。

那么怎样破坏系统调用參数呢?通过bit翻转和替换无效值进行fault injection。以下是測试结果分类:

Events after injection

|

|——OS Error

|——Infineon C167 Error

|——Application Error

|——Nothing happened

|——system hang

|_

可见黑盒不仅用于应用软件的測试,也在操作系统鲁棒性研究中起到重要作用,不同的是,在软件測试中我们更关注在不同測试用例下是否会出错,而在鲁棒性研究中我们是要发现都会产生哪些错误。


注:翻译来源COMPSAC’04论文

Pardo, J., Campelo, J.C, Serrano, J.J. , Robustness study of an embedded operating system for industrial applications

posted @ 2015-02-22 20:22  blfshiye  阅读(159)  评论(0编辑  收藏  举报