@evildictaitor:  I found this other document that talks about the architecture of Singularity including background information on how they came up with those cycles calculations..

 

ftp://ftp.research.microsoft.com/pub/tr/TR-2005-135.pdf

 

Would love your input seeing as you know this stuff intimately (assuming you have time ofcourse as its 44 pages long)  BUT its a great read Smiley

 

 

Quote from the document

Singularity is a micro-kernel operating system that uses advances in programming languages and compilers to build lightweight, software-isolated processes, which provide code with protection and failure isolation at lower overhead than conventional, hardware supported processes. Singularity provides an isolation boundary by running verifiably safe programs and by preventing object pointers from passing between processes' object spaces.

SIPs, in turn, enable a new solution to the problem of code extension in systems and applications. In Singularity's model, extensions are not loaded into their parent process, but instead run in their own process and communicate over strongly typed channels. This model fixes some of the major problems with extensions, since in Singularity, they cannot directly access their parents' data or interfaces, and, if they fail, they can be easily terminated by killing their parents.

Singularity is above all a laboratory for exploring interactions among system architecture, programming languages, compilers, specification, and verification. Advances in each of these areas enable and reinforce advances in the others domains, which limits the benefit and impact of studying an area in isolation. Singularity is small and well structured, so it is possible to make changes that span the arbitrary boundaries between these domains. At the same time, it is large and realistic enough to demonstrate the practical advantages of new techniques.