Download Center 

Protecting Applications Against Heisenbugs

February 2010
8 pages
Protecting Applications Against Heisenbugs

Virtually-synchronous replication provides a mechanism that allows developers of mission- and safety-critical applications to reduce the impact of elusive and non-reproducible bugs—commonly known as Heisenbugs—in their applications.


Introduction — The Increasing Impact of Heisenbugs — Virtually-Synchronous Replication — Other Forms of Replication — A Critical Observation — General Design — Ordering — Tradeoffs — Conclusion [+]

Download Now

Chris Hobbs

Chris Hobbs

Chris Hobbs is a kernel developer at QNX, specializing in "sufficiently-available" software: software created with the minimum development effort to meet the availability and reliability needs of the customer; and in producing safe software (in conformance with IEC61508 SIL3). He is also a specialist in WBEM/CIM device, network and service management, and the author of A Practical Approach to WBEM/CIM Management (2004).

In addition to his software development work, Chris is a flying instructor, a singer with a particular interest in Schubert's Lieder, and the author of several books, including Learning to Fly in Canada (2000) and The Largest Number Smaller than Five (2007). His blog, Software Musings, focuses "primarily on software and analytical philosophy".

Chris Hobbs earned a B.Sc., Honours in Pure Mathematics and Mathematical Philosophy at the University of London's Queen Mary and Westfield College.

See Also...

Exactly When Do You Need an RTOS?

Fault Tree Analysis with Bayesian Belief Networks for Safety-Critical Software

Using an IEC 61508-Certified RTOS Kernel for Safety-Critical Systems

Building Functional Safety into Complex Software Systems, Part I

Building Functional Safety into Complex Software Systems, Part II

Other whitepaper topics: Recent, Automotive, German Whitepapers, HMI + Graphics, Industrial, Medical, Multimedia + Acoustics, Networking, Operating Systems, Security + Defense, Safe Systems, Tools