Muen Kernel: Trustworthy by Design – Correct By Construction
muen.sk
muen.sk
You should update your source to use the new 2014 tools. The verifications become part of the syntax.
In a positive direction, it would be nice to be able to be able to strip out more functionality and still produce a functional kernel. Unfortunately, I don't think this is scalable with autotools or any configuration management setups without having more #ifdefs than code. Haskell could be a good candidate for such a kernel framework, but I'm sure there are other functional and imperative languages that have better complex configuration mgmt support with formal verification.
The attack surface will still be huge, but perhaps by such hiding you can make it too hard for an attacker to actually get to it.
Given that the Banana is about twice as expensive, here's a subsidiary question: who has a use-case for which TWO Raspberries wouldn't have been powerful enough, but a Banana would have been?
I had the impression seL4 was the first microkernel formally proven to be secure.
Also, no runtime errors is quite different from secure, and at the source code level (which I think applies to both OSes) leaves room for compiler, linker, or standard library to introduce issues.
Of course they might have improved on that later, this paper is ~5 years old now.
At least as these people are using SPARK/Ada.
Then again, maybe I should return to looking at Intel CPU and chipset errata....
On the third hand, these guys aren't using systems with ECC.... (http://ark.intel.com/products/64893/intel-core-i7-3520m-proc...).