Integrating a multi-principal browsing architecture with the underlying OS

May 27, 2010 16:12 GMT  ·  By

ServiceOS is the latest platform that can be added to the list already containing codenames such as Midori and Singularity, non-Windows operating system research projects explored by Microsoft. According to Alexander Moshchuk and Helen J. Wang from Microsoft Research, ServiceOS was born because of the need to closely integrate a multi-principal browsing architecture with the underlying OS. Fact is that Microsoft Research has already been flirting with a project involving a web browser as a multi-principal operating system. In this context, some users might remember Gazelle. It’s no coincidence that Helen J. Wang, senior researcher in the Systems and Networking group at Microsoft Research Redmond, is involved in both ServiceOS and Gazelle (via Mary-Jo Foley).

With Gazelle, Microsoft was researching a web browser built like a multi-principal OS. ServiceOS is designed to explore resource management for web applications in the context of a multi-principal OSbased browser. Wang emphasized that resource management continues to be one of the most critical missing pieces in browser design at this point in time. Projects such as ServiceOS and Gazelle come to resolve this problem.

Wang has already detailed the “design for resource management for web applications in ServiceOS, a multi-principal OS where a web site is a first-class OS principal. ServiceOS provides web applications with systematic and consistent access and control of common I/O devices, such as cameras or microphones, by centralizing access control policies in an extensible layer. For sharing divisible resources, such as CPU and network bandwidth, ServiceOS uses a DOM-recursive sharing policy by default when in resource contention. This allows ServiceOS to insulate resource usage of a web page from untrusted content it embeds, and to allocate resources fairly among multiple applications embedded on the same web page. We also introduce application-specified resource allocation to allow web programmers to explicitly influence resource allocations based on web application semantics,” she explained in a whitepaper on ServiceOS.

Microsoft has already put together a ServiceOS prototype, according to Wang. Obviously, just as it is the case with Midori and Gazelle, such prototypes are not offered to the public for testing. However, according to Wang, Service OS has been tested in scenarios involving management of a “wide range of resources, including CPU, memory, network bandwidth, and devices like cameras, microphones, or GPS. Our evaluation shows that compared to existing browsers, ServiceOS provides web applications with improved service quality, fairness, and security.”

UPDATE: Small changes to make it clear that ServiceOS is a prototype and not a fully-fledged product in development. As is the case with any Microsoft Research projects, ServiceOS might in fact never become a product offered to customers. This doesn’t change the fact that it does sound quite interesting.