基于ARM的嵌入式安全关键软件仿真测试平台的研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
由于国家经济和大众生活中大量引入了嵌入式计算机系统,其中的安全关键软件是否可信赖已成为此类系统能否正常运转的关键因素。
     嵌入式安全关键软件的测试和验证是保证嵌入式安全关键软件正确性和提高嵌入式安全关键软件安全性的最基本和最重要的手段。本文在介绍了软件测试和安全关键软件测试的联系和区别,并引申到嵌入式安全关键软件测试后,着重分析和研究了故障注入技术和基于接口参数的测试方法在安全关键软件测试中的应用和几种常用的测试质量度量方法。
     嵌入式安全关键软件仿真测试平台是一个基于ARM的计算机模拟测试系统,是进行嵌入式关键软件系统测试的有力工具。通过分析嵌入式安全关键软件仿真测试平台的功能和体系结构,本文详细描述了嵌入式系统模拟器的结构组成和实现方式,并深入讨论了在测试过程中扮演重要角色的测试管理器的各个功能模块和具体实现。
     在嵌入式软件仿真测试平台的实现过程中,解决了多个关键技术问题,本文以此平台为例子,深入阐述了包括程序插桩技术、自动测试技术和软件故障注入技术等关键技术的具体实现。
     论文研究成果已在铁路道岔状态监测系统测试中得到了部分验证,并取得了良好的应用效果。最后,本文在总结现有成果的基础上,展望有待完善和深入研究的方向,包括更多嵌入式体系架构的模拟研究,更多测试方法的研究和实现,完善平台配套工具链的功能等。
Since large numbers of embedded computer systems are utilized in fields of national economy and people's live, whether safety-critical software (SCS) used in them is dependable or not has become a critical factor in their normal working.
     The testing and verification of embedded SCS are the guarantee of the validity and safety of embedded SCS. Firstly, by introducing the relationships among and differences of software testing, SCS and embedded SCS, this dissertation stresses the studies and analyses on the applications of the fault-injection technique and a new testing method based on the combinatorial coverage of all the interface parameters for functions in the embedded SCS testing, and describes a few common software testing quality measurement methods.
     The Embedded SCS Simulation Testing Platform is an ARM-based emulation system which is a powerful tool for comprehensive testing for embedded SCS. With the analyses on the functions and architecture of the Embedded SCS Simulation Testing Platform, it describes the components and implementations of the emulation for embedded system in details, and discusses the function modules and its realization of testing manager which plays a key role in the platform.
     During the implementation process of the Embedded SCS Simulation Testing Platform, a few key technologies have been solved. It uses this platform as an example to demonstrate the realizations of key technologies in details which include the fault-injection, the automation-testing, and the program-instrumentation technologies.
     The research in this paper has already been verified partly and used in railway Point Monitoring System. It obtains a good application result. Finally, after summarizing the existing research results, several problems that will be discussed deeply in future are enumerated, which include studies and implementations of more testing methods and embedded architecture simulations, and improvement of the tool trains for this platform.
引文
[1] Oing Li著,王安生译,嵌入式系统的实时概念[M].北京:北京航空航天大学出版社,2004年
    [2] 黄锡滋.软件可靠性、安全性与质量保证[M].北京:电子工业出版社.2002
    [3] The IMIS column on Computer Ethics, created by Professor Simon Rogerson, De Montfort University[HI. Available at: http://www.ccsr.cse.dmu.ac.uk/resources/general/ethicol/Ecvl2no2.html
    [4] 蔡开元.安全关键软件的可靠性评估[R].航天高技术青年学术讨论会,1998
    [5] 付乐勇.质量的报复[J].质量与可靠性,1999.9第5期
    [6] 魏忠,蔡勇,雷红卫.嵌入式开发详解[M],电子工业出版社,2003.1
    [7] http://www.ipl.com/products/tools/pt400.cn.php
    [8] http://www.telelogic.com/products/logiscope/
    [9] ttp://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=01272694015663
    [10] http://www.virtio.com
    [11] http://cosoft.org.cn/projects/eastt/index.php
    [12] 孙昌爱.基于软件休系结构的正逆向设计研究[博士学位论文][D].北京:北京航空航天大学,2002
    [13] 杨仕平,桑楠,熊光泽,安全关键软件的防危性测试技术研究[J],计算机学报,vol.27(4),2004:442-450
    [14] Arlat J, Aguera M, Amat L et al. Fault injection for dependability validation: A methodology and some applications[J]. IEEE Trans on Software Engineering, 1990, 16(2)
    [15] Jeffrey A Clark, Dhiraj K Pradhan. Fault Injection: a Method for Validating Computer-System Dependability[J]. Computer, 1995.47-56
    [16] Wang J Y, Sun J Z, Li Y C, et al. The implementation of FTT-1: a hardware-based fault injector[J]. IEEE International Workshop on Computer-Aided Design, Test and Evaluation for Dependability. Beijing: IEEE Computer Society. 1996: 170-174.
    [17] Ghani A, Nasser A, Jacob A. Aflexible software-based fault and error injection system[J]. IEEE Trans. Computer. 1995, 44(2): 248-260
    [18] Karlsson J, Liden P, Dahlgren P, et al. Using heavy-ion radiation to validate fault-handling mechanisms[J]. IEEE Micro. 1994, 14(1): 8-32
    [19] 聂长海,徐宝文.基于接口参数的黑箱测试用例自动生成算法[J].计算机学报,2004.3(第27卷第3期:328-338)
    [20] 聂长海,徐宝文,史亮.一种新的二水平多因素系统两两组合覆盖测试数据生成算法[J].计算机学报,2006.6(第29卷第6期:841-848)
    [21] 朱鸿,金凌子.软件质量保障与测试[M].北京:科学出版社,1997
    [22] 徐中伟,吴芳美.基于规则的联锁软件测试集自动生成[J].计算机工程,2002.1(第28卷第1期:96-97)
    [23] Duran J. W. and Ntafos S., An Evaluation of Random Testing[J], IEEE Transaction on Software Enginerring, Vol. SE-10, No. 4, 1984
    [24] Ntafos S. C., A Comparison of Some Structural Testing Strategies[J], IEEE Transactions on Software Engineering, Vol. SE-14, No. 6, 1988
    [25] Tsoukalas M. Z., Duran J. W., Ntafos S. C., On some reliability estimation problems in random and partition testing[J], IEEE Transactions on Software Engineering, Volume 19, Issue 7, July 1993 Page(s): 687-697
    [26] P. G. Frankl and J. E. Weyuker, A Formal Analysis of the Fault-DetectingAbility of Testing Methods[J], IEEE Transactions on Software Eng., Vol.19, No. 3, 1993
    [27] Zhu H., A Formal Analysis of the Subsume Relation between Test Adeqacy Criteria[J], IEEE Transaction on Software Engineering, Vol. 22, No. 4, 1996
    [28] 徐中伟.安全软件测试理论和技术的研究及其在铁路信号安全软件测试测评中的实现[同济大学博士学位论文][D]2000年8月
    [29] 陈渝,李明,杨晔等.源码开放的嵌入式系统软件分析与实践[M].北京:北京航空航天大学出版社,2004
    [30] Steve Furber. ARM System-on-Chip Architecture(2nd Edition)[M]. BUAA PRESS, 2002
    [31] David Seal. ARM Architecture Reference Manual(2nd Edition)[M]. Addison-Wesley Professional, 2000
    [32] J. C. HUANG. An Approach to Program Testing[J]. Department of Computer Science, University of Houston, Houston, Texas 7700
    [33] J. C. Huang. Program instrumentation and software testing[J]. Computer, Apr. 1978, 11(4): 3
    [34] Riehard M Stallman. GNU Compiler Collection Internals[HI. Available at: http://gcc.gnu.org/onlinedocs
    [35] Procedure Call Standard for the ARM Architecture[H]. Available at: http://www.arm.com/miscPDFs/8031.pdf
    [36] 郑人杰.计算机软件测试技术[M].北京:清华大学出版社,1992
    [37] 吕诚昭,孟洛明.一个软件测试自动化系统:TSBAG[J].北京邮电学院学报,1993,16(1):8—14
    [38] Mosley, D. & Posey, B. Just Enough Software Test Automation[M]. Prentice Hall PTR, 2002.
    [39] 袁开榜等编著,计算机原理[M].北京:清华大学出版社,1993
    [40] 建荣.基于微程序控制器的在线指令系统的设计[J].计算机工程与设计,2004, 25(12):2366-2368.
    [41] 俸远祯,阎彗娟,罗克露.计算机组成原理(修订本)[M].北京:电子工业出版社,1996.
    [42] 孙昌爱,靳若明,刘超,金茂忠.实时嵌入式软件的测试技术.[J].小型微型计算机系统.2000,21(9):920~924
    [43] J. Carreira, H. Madeira, J. Silva. Xception: A technique for the Experimental Evaluation of Dependability in Modern Computers[J]. IEEE Transactions On Software Engineering. 1998, 24(1): 125-13
    [44] W. Kao, R. K. Iyer. DEFINE: A Distributed Fault Injection and Monitoring Environment[J]. Proc. Workshop Fault-Tolerant Parallel and Distributed Systems, 1994: 114-128

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700