Injecting faults into systems and subjecting them to extreme situations at or beyond their nominal operating conditions is an important part of making sure they keep working even when things go bad. It was realized very early in the history of Simics (and the same observation had been made by other virtual platform and simulator providers) that using a virtual platform makes it much easier to provide cheap, reliable, and repeatable fault injection for software testing. In an Intel Developer Zone (IDZ) blog post, I describe some early cases of fault injection with Simics.
Some fault injection techniques was designed into the virtual platforms on purpose. While some other were discovered by accident in the normal use of the Simics virtual platforms.
Read the full blog post at https://software.intel.com/en-us/blogs/2018/05/24/intentional-and-accidental-fault-injection-in-virtual-platforms to get the full story on ECC memory, hot-plug cards, and bad interrupt service routines.
This blog post is part of our series on “Simics 20 years” posts that look back to the past – and reflect on the present and future.