Microsoft has a post-Windows operating system in the works, and it is code-named Midori, sources say. What's in it for developers? David Worthington over at SD Times has gained access to the details of an integral post-Windows operating system the software giant has been working on.
The project is so important that Microsoft tapped Eric Rudder, former head of Microsoft's server and tools business and a key member of Chairman Bill Gates' faction of the company, to run it.
Several sources have continued to chip away at the Midori story, piecing together critical portions of the overall Midori strategy, here, but in one fell swoop, Worthington snatched the limelight by landing what we shall call "the goods," an internal document Microsoft has closely guarded.
According to Worthington, "Midori is an offshoot of Microsoft Research's Singularity operating system, the tools and libraries of which are completely managed code. Midori is designed to run directly on native hardware (x86, x64 and ARM), be hosted on the Windows Hyper-V hypervisor, or even be hosted by a Windows process."
Moreover, said Worthington:
""One of Microsoft's goals is to provide options for Midori applications to co-exist with and interoperate with existing Windows applications, as well as to provide a migration path.""
And Midori will focus on concurrency, one of the core issues facing developers today, as multicore processors become more mainstream. "According to the documentation, Midori will be built with an asynchronous-only architecture that is built for task concurrency and parallel use of local and distributed resources, with a distributed component-based and data-driven application model, and dynamic management of power and other resources," Worthington wrote in his piece.
While Midori is a nice, crunchy, chewy piece of technology for Microsoft to deliver to the post-Windows world, I am most interested in how it will impact developers. From what Worthington says from his perusal of the Microsoft document, developers have much to be tickled about.
"The Midori programming model will tackle state management, which Microsoft admits in its documentation is a challenge in Windows, by migrating APIs, applications and developers to a constrained model," Worthington wrote.
In addition, "The Midori programming model will be particularly useful for service-oriented architectures, by allowing for the decomposition of applications into services that can be partitioned across tiers," Worthington said.
And Worthington writes that, "In a possible link to Microsoft's Oslo composite application initiative, the [Midori] programming model will have a dependence on metadata, with the aim of allowing the system to more reliably manage applications."
Microsoft has other goodies in store, too. Midori is also critical to Microsoft's cloud computing strategy. "The Midori documents indicate that the proposed OS would have a non-blocking object-oriented framework API," Worthington wrote. "This would have strong notions of immutability--in the sense of objects that cannot be modified once created--and strive to foster application correctness through deep verifiability by using .NET programming languages."
Worthington says the Microsoft documents indicate that the company is "making a clean break from the existing Windows GUI model" at the presentation layer, "where applications must update their display on one and only one thread at a time, and the associated problems that affect OS stability and make it more difficult to write multithreaded applications."
That's just a small glimpse into what Microsoft is up to with Midori, which the company characterizes as an incubation project in its research group. Worthington has a whole lot more to say on the topic.