SysManNews
 
DEPARTMENTS
 
 
 
 
ON THE WEB
 
 
 
 
PRINT EDITION
 
 
 
 
BZ MEDIA
 
 
 
 
 
 
AS OF 11/21/2008 11:01PM EST
Microsoft's Plans for Post-Windows OS Revealed
By David Worthington, special to Systems Management News

July 29, 2008 — Microsoft is incubating a componentized non-Windows operating system known as Midori, which is being architected from the ground up to tackle challenges that Redmond has determined cannot be met by simply evolving its existing technology.

SD Times has viewed internal Microsoft documents that outline Midori’s proposed design, which is Internet-centric and predicated on the prevalence of connected systems.

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.

According to published reports, Eric Rudder, senior vice president for technical strategy at Microsoft and an alumnus of Bill Gates' technical staff, is heading up the effort. Rudder served as senior vice president of Microsoft’s Servers and Tools group until 2005. A Microsoft spokesperson refused comment.

“That sounds possible—I’ve heard rumors to the effect that he [Rudder] had an OS project in place,” said Rob Helm, director of research at Directions on Microsoft. He noted that it is quite possible that the project is just exploratory, but conceivably a step above what Microsoft Research does.

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 .

Building Midori from the ground up to be connected underscores how much computing has changed since Microsoft’s engineers first designed Windows; there was no Internet as we understand it today, the PC was the user’s sole device and concurrency was a research topic.

For coverage on programming with Midori, click here.

Today, users move across multiple devices, consume and share resources remotely, and the applications that they use are a composite of local and remote components and services. To that end, Midori will focus on concurrency, both for distributed applications and local ones.

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.

Midori’s design treats concurrency as a core principle, beyond what even the Microsoft Robotics Group is trying to accomplish, said Tandy Trower, general manager of the Microsoft Robotics Group.

The Midori documents foresee applications running across a multitude of topologies, ranging from client-server and multi-tier deployments to peer-to-peer at the edge, and in the cloud data center. Those topologies form a heterogeneous mesh where capabilities can exist at separate places.

In order to efficiently distribute applications across nodes, Midori will introduce a higher-level application model that abstracts the details of physical machines and processors. The model will be consistent for both the distributed and local concurrency layers, and it is internally known as Asynchronous Promise Architecture.

Related Stories:

Microsoft Maps Out Migration From Windows

Internal documents reveal that Microsoft is carefully mapping out migration strategies to move customers from Windows to Midori, its planned legacy-free operating environment. Virtualization, and a composite application model that permits applications to be hosted by both OSes, are key to the strategy.


Microsoft's Midori to Sandbox Apps for Increased Security

Microsoft’s effort to design a next-generation operating system is projected to offer memory access
control, protect against privilege elevation attacks, and enforce
least-privilege computing.
Midori will have provisions for distributed concurrency—or cloud computing—where application components exist in data centers. Doing so will require work in three areas: execution techniques, a platform stack and a programming model that can tolerate cancellation, intermittent connectivity and latency.

In that scenario, operating system services, such as storage, would either be provided to the applications by the OS or be discovered across a trusted distributed environment.

Likewise for local concurrency, Midori will have a programming model, a platform stack and execution techniques that are intended to help developers write applications that can safely and efficiently use a greater number of hardware threads than is currently feasible. Elements in local parallelism interact through shared memory, which is the huge difference with distributed applications, said Microsoft distinguished engineer John Manferdelli, in a separate interview.

“Mere mortal developers need a programming model/application model that lets them distribute processing to massively parallel devices without having to become experts," explained Forrester Research senior analyst Jeffrey Hammond in an e-mail. “Even with the quad-core Intel chips today, you have to have specialist teams to take full advantage of them,” he added.

These design goals affect aspects of the system that include its application model, scheduling and storage. Indeed, big changes are in store for Microsoft developers.

The Fundamentals
Unlike Windows, Microsoft intends for Midori to be componentized from the beginning to achieve performance and security benefits. It will have strong isolation boundaries and enforced contracts between components, to ensure that servicing one component will not cause others to fail, while keeping overhead minimal.

At its lowest level, Midori has two separate kernel layers: a microkernel comprised of unmanaged code that controls hardware and environment abstracts, and higher-level managed kernel services that provide the full set of operating system functionality.

The OS will have a single scheduling framework for all device types, known internally as the Resource Management Infrastructure (RMI). RMI will have provisions for resource accounting, quotas and management; resources including IO bandwidth, memory, power and response time will be monitored.

Microsoft believes that power-based scheduling will be particularly useful for mobile devices. It is considering creating a layered, thin platform for such devices, but it remains unclear how far the company can go with a single code base.

The ecosystem of devices is a major consideration in how Microsoft may choose to implement storage, perhaps by teasing functionality out of the OS and moving it into distributed services, with parts of the service being executed on the device itself.

“In this scenario, you establish Midori not so much as a replacement for Windows,” Hammond noted, “but as the hub of a new type of distributed system which Windows machines connect into until they are no longer needed,” in a fashion similar to IBM’s multi-year transition path for moving its iSeries customers to pSeries and xSeries platforms.

Hammond went on to forecast that there will be a deluge of mobile devices introduced over the next several years built with similar hardware, but with a range of different power and form factors.

Microsoft also envisions higher-level opportunities for storage, including compliance, compression, consistent replication, computation close to data, encryption, indexing and search, as well as storage in the cloud. Midori provides a built-in multi-master replication for complex data.

Scheduling, a process that allows multiple processes to run on the processor at the same time, will be integrated in Midori at the user-mode application level, from both the desktop and across distributed applications in the cloud. Its distributing scheduling may include active task migration, an activity that today is performed by hypervisors.

Notably, Midori’s scheduling may provide hooks for third parties to integrate software that asynchronously updates scheduling tables.

The intention is to enable developers to create collaborative Web-like applications, such as active documents, that operate safely and securely at the OS level. Resource quotas will be used to prevent denial-of-service attacks.

“This is the second attempt at re-implementing OS scheduling that I’ve seen announced in as many months,” Hammond remarked. “[Steve] Jobs talked [at the Apple Worldwide Developers Conference on June 9] about how Snow Leopard was going to have a new scheduling framework that would make take advantage of multicore easier for OS X developers. This seems to reach similar conclusions, and then take it to the next step in terms of scheduling flexibility,” he added.

No timeframe for development has been set for Midori, which Microsoft technical fellow Burton Smith says is a research project. A spokesperson added that Midori is one of many incubation projects across Microsoft Research.


Related Search Term(s): cloud computingmobile development.NETSOA & SaaSsoftware developmentWindowsMicrosoft


Share this link: http://www.sysmannews.com/link/32630
 


 
 
 
  Search
 
 
 
GET NOTIFIED!
About all of the latest Resources
 
 
SUBSCRIBE TODAY!
Systems Management Week
 
 
 
PDF & PRINT EDITION
* Requires Resource Account!  LOGIN or SIGN UP

Download Current Issue!
NOVEMBER ISSUE PDF

Need Back Issues?
DOWNLOAD HERE

Receive The Print Edition?
SUBSCRIBE HERE
 
LOADING...
LOADING...