In this episode we talk to Galen Hunt
about the Singularity
research OS. Galen is the head of Microsoft's OS Research Group
and, together with a team of about 30 other researches, has built Singularity.
We started our discussion by covering the basics of Singularity: why it was designed, what the goals of the project are as well as some of the architectural foundations of Singularity: software isolated processes, contract-based channels and manifest-based programs. In this context we also looked at the role of the Spec# and Sing# programming languages and the role of static analysis tools to statically verify important properties of a singularity application.
We then looked a little bit more closely at the role of the kernel and how it is different from kernels in traditional OSes.
In a second part of the discussion we looked at some of the experiments the group did based on the OS. These include compile-time reflection, using hardware protection domains, heterogenerous multiprocessing as well as the typed assembly language
We closed the conversation with a look at some of the performance characteristics of Singularity, compatibility with traditional operating systems and a brief look at how the findings from Singularity influence product development at Microsoft.