Comment Re:What? (Score 1) 345
Unfortunately, this sort of testing falls short when you start adding asynchronous events into the middle of your program flow. Preemptive operating systems are becoming increasingly common in automotive. With a fully preemptive system, it is impossible to test every possible stackup of task preemption on the bench and time prohibitive to do it in simulation. Concurrency issues are mainly avoided through proper design and implementation practices of both the operating system and the application itself.
When concurrency issues appear in the field or on the bench, you have the same scenario as Toyota... The knowledge of "It did this thing this time" and unless your testing generates the exact sequence of events to microsecond precision, you may never see the problem again...