The mechanism involved by fault injection tools for virtual machine system such as failure model, injection mode, trigging mechanism, monitor and trace was studied. The typical failure model (including fault type, fault location, occurrence mechanism and duration) and its implementation were proposed by statistically analyzing the fault symptoms occurring in various virtual machine systems. By investigating the architecture of virtual machine system and the principle of fault injection, a fault injection tool for Xen system using software simulation method was designed—software fault injector for virtualized environments (SFIVE), and its injection mode, trigging mechanism, monitor and trace were introduced. Experimental results show that SFIVE has higher fault type coverage of virtual machine system, and can activate and monitor most of fault types related to virtual machine.
[1] ROSENBLUM M, GARFINKEL T. Virtual machine monitors: current technology and future trends [J]. Computer, 2005, 38(5): 39-47.
[2] SHIVELEY R. Enhanced virtualization on Intel architecturebased servers [R]. California: Intel Corporation, 2005.
[3] ALDINUCCI M, DANELUTTO M, TORQUATI M, et al. VirtuaLinux: virtualized highdensity clusters with no single point of failure [C]∥ Proceedings of the International Conference ParCo2007. France: IOS, 2007: 355-362.
[4] WEI Lunkao, IYER R. DEFINE: a distributed fault injection and monitoring environment [C]∥ Proceedings of IEEE Workshop on FaultTolerant Parallel and Distributed Systems. California: IEEE, 1995: 252-259.
[5] HAN S, SHIN K, ROSENBERG H. DOCTOR: an integrateD sOftware fault injeCTiOn enviRonment for distributed real time systems [C]∥ Proceedings of Computer Performance and Dependability Symposium. Germany: IEEE, 1995: 204-213.
[6] BARTON J H, CZECK E W, SEGALL Z Z, et al. Fault injection experiments using FIAT [J]. IEEE Transactions on Computers, 1990, 39(4): 575-582.
[7] KANAWATI G A, KANAWATI N A, ABRAHAM J A. FERRARI: a tool for the validation of system dependability properties [C]∥ Proceedings of the 22nd International Symposium on Fault Tolerant Computing. Washington: IEEE, 1992: 336-344.
[8] STOTT D T, FLOERING B, BURKE D, et al. NFTAPE: a framework for assessing dependability in distributed systems with lightweight fault injectors [C]∥ Proceedings of the IEEE International Computer Performance and Dependability Symposium. Washington: IEEE, 2000: 91-100.
[9] DAWSON S, JAHANIAN F, MITTON T. Orchestra: a fault injection environment for distributed systems [C]∥ Proceedings of the 26th International Symposium on FaultTolerant Computing. Washington: IEEE, 1996: 404-414.
[10] CARREIRA J, MADEIRA H, SILVA J G. Xception: software fault injection and monitoring in processor functional units [C]∥ Proceedings of the 5th IFIP Working Conference on Dependable Computing for Critical Applications. Washington: IEEE, 1998: 245-266.
[11] HSUEH M C, TSAI T K, IYER R K. Fault injection techniques and tools [J]. Computer, 1997, 30(4): 75-82.
[12] AVAREZ G, CRISTIAN F. Centralized failure for distributed, faulttolerant protocol testing [C]∥ Proceedings of the 17th IEEE International Conference on Distributed Computing Systems. Washington: IEEE, 1997: 78-86.
[13] CHOI G S, IYER R K. FOCUS: an experimental environment for fault sensitivity analysis [J]. IEEE Transactions on Computers, 1992, 41(12): 1515-1526.
[14] JENN E, ARLAT J, RIMEN M, et al. Fault injection into VHDL models: the MEFISTO tool [C]∥ Proceedings of the 24th International Symposium on Fault Tolerant Computing. Washington: IEEE, 1994: 66-75.
[15] GUNNETLO O, KARLSSON J, TONN J. Evaluation of error detection schemes using fault injection by heavyion radiation [C]∥ Proceedings of the 19th International Symposium on Fault Tolerant Computing. Washington: IEEE, 1989: 340-347.
[16] ARLAT J, CROUZET Y, LAPRIE J C. Fault injection for dependability validation of faulttolerant computer systems [C]∥ Proceedings of the 19th International Symposium on Fault Tolerant Computing. Washington: IEEE, 1989: 348-355.