Truly reliable software?

I've been thinking. We have lots of software crashing these days. Some due to bugs. Some due to viruses and worms. Some due to hardware failure. And yet software is becoming more common and important than ever before. So what can we do to make software more reliable? Can it be 100% reliable when it is written by failable humans.

Mental exercise: how to you make truly 100% reliable software? And I mean hardcore 100%, like people die if it fails or goes offline. Assume money is no object (and saying "write perfect code" doesn't count :)

Here are some rather radical ideas: