Tracking
Down Killer Bugs by Eric McRae tells the detailed story of a
fuel injector on a V8 engine, that after hours of normal operation would generate
a fuel pulse 10 times longer than
it was supposed to, on a random injector. In his very interesting and entertaining story,
Mr. McRae mentions a sometime unintentional, although effective debugging method:
"When all else fails, you can sometimes find a solution to a problem by emphatically
declaring that everything you've done is correct and submitting this information to
public inspection."
When plain old embedded systems inadvertently become Life
Support by Ed Nisley. Have you read your semiconductor spec sheets and realized
that it seems NO device can be used in any type of life support equipment?
What happens with less obvious embedded systems end up in life-critical applications?
My
Hairiest Bug War Stories by Marc Eisenstadt is a neat article of some crazy bugs,
with a nice classification of bug types and solution methods used to root
them out.
I wrote a debugging mystery for Embedded Systems Programming Magazine called
A Feynman Approach to Debugging, (or pdf)
in the December 2004 issue.
"As a child, Richard Feynman could fix radios by thinking. You can take the same
approach to debugging embedded systems...On Tuesday afternoon, a small oven on
IEC's manufacturing line malfunctioned.
Rather than heating components to a predefined temperature, it got too hot and
damaged the components. The manufacturing line was stopped for the remainder of
the day. Your job, find it and fix it."
It is a true story, although the name of
the company, the type of embedded device, the application, and darn near the
entire story except the actual bug itself have been changed to protect the guilty.
I got a good response from the Feynman Debugging article, so I wrote an entire book
of these mysteries called "If I Only Changed the Software, Why is the Phone on Fire?" You can find more information here, and pick up a copy on Amazon.
Anatomy
of a Software Bug is a good story and dissection of the Microsoft Word "Disk is full" on save
error. The setup occurs over a ten year period, showing the difficulties in
reproducing reported bugs and how the problem was identified and solved.
Collection of Software Bugs
Microsoft Crash Library
In some respects, a PC is just a large generalized embedded system, and it suffers
from some of the same poor design and development problems. These are great!
|