Embedded systems today are large and complex, composed of a variety of components from different sources. These may be commercial off-the-shelf components, which are often less fault tolerant than their traditional counterparts. It is essential to assure the dependability of such systems, including robustness and availability, especially if the systems are safety critical or if system failures would result in heavy financial losses.
This paper proposes an integrated approach to user-level runtime software fault injection, which covers transient faults in both virtual and physical hardware. It is grounded on the loadable kernel modules of the operating system, which is architecture independent, and is exploitable as soon as a system prototype is available. No instrumentation in the kernel code or application under investigation is necessary.
With the authors’ approach, rather than having to wait for hardware delivery, one can conduct early deployment of the dependency analysis on a virtual hardware platform, and then follow up on the physical hardware platform. Decoupling dependency analysis from hardware availability makes concurrent development of software and hardware feasible. Experiments indicate that the evaluation results on virtual hardware are comparable with those on physical hardware.
In order to truly confirm the contributions of the proposed approach, it would be useful if the authors could validate the significance of the experimental results using standard statistical techniques. Finally, the paper suffers from an unusually high number of typographical errors, which may distract the reader.