Timing analysis

What really happened to the software on the Mars Pathfinder spacecraft?

It’s the 4th of July. Exactly sixteen years ago today the Mars Pathfinder landed to a media fanfare and began to transmit data back to Earth. Days later and the flow of information and images was interrupted by a series of total systems resets. How this problem was a) diagnosed and b) resolved still makes for a fascinating tale for software engineers.
Read More

simpler_Ada_using renames for.complex.names;

The renames facility is just one of a long list of reasons why we are big Ada fans. Here I explain how the renames facility works and how it can help you write code which is both readable and traceable.
Read More

PowerPC and TriCore timing variability: which is the more predictable?

We recently tested a system with two different processors, a PowerPC and a TriCore. For anyone concerned with variability, the results make for interesting reading.
Read More

Rapita Systems blog recap: MC/DC, RVS 3.1 and more

Have you missed some Rapita blog posts over the past few months? This quick recap of recent posts will fill any gaps in your knowledge.
Read More

Safe, portable, non-blocking interprocess communication (part 2)

Some time ago, I wrote about interprocess communication without interrupt locks, using a circular buffer. This is a really useful technique, if you want to provide buffered data transfer between a reader and a writer without introducing blocking into your application.
Read More