Microsoft's Midori operating-system skunkworks project soldiers on

A new research paper makes a not-so-thinly-veiled reference to Microsoft's secret project to develop a non-Windows-based operating system and programming environment.
Written by Mary Jo Foley, Senior Contributing Editor

Midori -- the Microsoft skunkworks operating-system project -- is still alive and moving forward.

Midori is a new operating system being developed by a team of all-star Microsoft programmers. Midori is not based on the current NT kernel; instead, its original roots can be traced back to Singularity, a Microsoft-Research-developed microkernel operating system. Headed (at least at one point) by Senior Vice President of Technical Strategy Eric Rudder, Midori is believed to be a distributed, concurrent operating system. The product and associated deliverables (a related programming language/framework, etc.) are in technical incubation.


The latest, not-so-thinly-veiled reference to Midori comes via a presentation at last month's OOPSLA 2012 conference. At that event, several Microsoft employees presented a paper entitled "Uniqueness and Reference Immutability for Safe Parallelism." The paper outlines a prototype extension to C# that extends C# so that it supports safe task and data parallelism.

From that paper:

"Our type system models a prototype extension to C# that is in active use by a Microsoft team. We describe their experiences building large systems with this extension....

"A source-level variant of this system, as an extension to C#, is in use by a large project at Microsoft, as their primary programming language."

This "large project" is the Midori project.

A Microsoft job description for a software architect to help "lead development of our safe concurrent programming model" for the Midori team makes reference to some of the same work outlined in the OOPSLA paper:

"This programming model is a core component of a new, novel operating system, 99% of which is written in type- and memory-safe C#. A core principle we add to managed code is that 1st class, statically enforced concurrency-safety must become a peer of type- and memory-safety. This role demands innovation at each layer of the software stack: programming model abstractions, scheduling (kernel and user-mode/runtime), message passing and asynchrony more generally, shared-memory, data and task parallelism, distributed parallelism, heterogeneity (including vectorization and GPGPU), interaction with processor architecture, feedback directed optimizations, and even language design and compiler implementation."

I found the link to the OOPSLA paper (thanks to a tipster who asked not to be named) via posts on both Rob Jellinghaus' and Joe Duffy's blogs. Both Jellinghaus and Duffy are known to be working on Midori.

Speaking of who is/isn't working on Midori these days, thanks to some sleuthing by "Felix9" of Microsoft Channel 9 fame, we know that former Midori team member Rick Ledoux has left the effort and is now working at Buzzhorn. Matthew Moore, a Softie who has been working on the "Phoenix" compiler framework developed by Microsoft Research and the Microsoft product compiler teams, left Microsoft recently to join Google. (Phoenix has been touted as "the universal compiler backend for upcoming Microsoft languages and development tools.")

Meanwhile, another name to add to the current Midori team roster is Shon Katzenberger, a partner software architect at Microsoft who has worked on another Microsoft incubation project (Tangram), as well as Microsoft Solver Foundation, C# compiler and language design.

Not every Microsoft incubation project ends up seeing the light of day. But given how long the Softies have been working on Midori, I'm thinking this one will end up going commercial at some point.

Editorial standards