Trying to get back in the habit of writing here, I decided to (re)start posting interesting articles and papers.
“Roadmap to a Failure-Resilient Operating System”, by Jorrit N. Herder, Herbert Bos, Ben Gras, Philip Homburg, and Andrew S. Tanenbaum. Interesting article, although not much new. MINIX 3. Drivers is major source of operating system bugs, therefore we move the drivers to a separate address space and contain the bugs. Mentions DMA, with IOMMUs as the solution, no discussion of how it fits in with the rest of the system. Performance Degradation of 5-10 percent when compared to MINIX 2 with in-kernel drivers, no comparison against Linux or other OS’s. See also Comparing Linux and MINIX on lwn.net.
Random thought: what if we ran drivers each in its own address space, but all with supervisor privileges? Is this a worthwhile point to explore in the performance/protection tradeoff?