Jump to...
Columns:
Advanced Software and Technologies
BYTE Media Lab
Chaos Manor
Conference Reports
Features
Free Features
Gigglebytes
Letters to BYTE.com
Mr. Computer Language Person
New Products
Op/Ed
Portable Computing
Serving with Linux
The Upgrade Advisor
Bug of the Month
Octo
ber 1997
/
Bits
/ Bug of the Month
Man Finds Bugs on Mars
Jason Krause
Wherever a computer goes, bugs are sure to follow. When the Mars Pathfinder developed a glitch, NASA had to somehow upload new code without losing valuable time needed for exploration. The most confounding bug on the Pathfinder mission appeared July 10. Steven Stolper, software engineer for the Mars Pathfinder, calls it "one in a million, insidious, and hard to replicate." The snafu arose because the OS, Wind River's VxWorks, developed a mutual-exclusion problem: A low-priority function (in this case, recording weather) interfered with the system's multi-tasking schedule. The system couldn't finish all the tasks it neede
d to, missed a real-time deadline, and then shut itself down. "It's a kind of interplanetary Control-Alt-Delete," says Stolper. "When things go wrong
, the system goes into a power-safe mode and waits for ground control to help out." Without a fix being implemented, this problem would replay itself over and over.
To identify the bug, engineers recreated the malfunction on Earth, identified the offending subroutine, and uploaded the binary difference between the new code and the buggy code on the Pathfinder.
Send yours to
jkrause@mgh.com
photo_link (53 Kbytes)
Pathfinder bugs inhibited the Rover.
Matthew Wilson
My approach to software engineering is far more pragmatic than it
is
theoretical--and no language better exemplifies this than C++.
more...
BYTE Digest editors every month analyze and evaluate the best articles from Information Week , EE Times , Dr. Dobb's Journal , Network Computing , Sys Admin ,
and dozens of other CMP publications—bringing
you critical news and information about wireless communication,
computer security, software development, embedded systems,
and more!
Find out more