Barrelfish - Microsoft's other OS
Written by Mike James   
Tuesday, 12 July 2011

With multicore becoming the norm we need operating systems that can take advantage of them without wasting time trying to keep the show on the road with centralized management. Barrelfish is Microsoft's experiment in viewing the hardware as a collection of networked processors.

Since it became difficult for hardware manufacturers to increase clock speeds much above 3Ghz we have had to change our approach from faster serial processing to more parallel processing. The big problem is that while operating systems such as Linux, Unix and Windows can make use of multiple processors they were never designed to do so efficiently or in a modern way.

Researchers at Microsoft Research working with ETH Zurich think that Barrelfish, a new OS built from scratch, might be a way forward. It was started as a project back in 2007 and they are very clear that this is not a Windows replacement - not now, not ever. The whole point of Barrelfish is to find out how to build a better multiprocessor system. One of the key properties that the new OS needs is scalability. The number of cores available on today's machines varies but over time it is only going to increase and the operating system has to be able to keep up.

The standard way that current OSes cope with the symmetric multiprocessor architecture is to use a shared memory kernel. The problem is that the shared memory has to be protected by locks and this slows things down a lot and the slow down increase according to the number of processors available. The new idea, although it has been tried before, is to think of the multicore architecture as a network of independent processors. This even works if you consider a multiprocessor machine with different types of CPU and even includes multiple GPUs.

barrelfishdesign

The multikernel model works by allowing individual kernels - or OS Nodes to communicate by message passing rather than using shared memory. Instead of keeping a single OS state in memory the idea is that it is replicated and kept up-to-date by message passing. This removes the problem of locks slowing things down but adds problems to do with maintaining the state across multiple kernels.

Barrelfish is an implementation of these principles and it currently works on x86-64 and ARM processors. It is argued that the message passing and networking approach fits into the approach used by current hardware and in time the match will improve - especially if hardware manufacturers start to build in support for message passing OSs.

Although it is supposed to be just a research tool it is interesting to read the footer from the Barrelfish website:

This web page was brought to you by a server running Barrelfish.

The code for the entire system can be downloaded and is open source. You can also read about the fine details of the structure of the system in a recent paper:

The Multikernel: A new OS architecture for scalable multicore systems

 


barrelfish

More information

The Multikernel: A new OS architecture for scalable multicore systems

Barrelfish.org

Download the code

 

Banner


Windows 9 Coming Soon
26/08/2014

At the moment what we know about Windows 9 is mostly rumor, but it is fairly reliable rumor. It seems that Microsoft has something to announce on September 30th and we can start to prepare for the cha [ ... ]



Application Insights SDK Moves To Azure
10/09/2014

Microsoft has a new SDK for finding out what users are doing with your apps. The Application Insights SDK is in preview and confusingly it already has an "old version".


More News

Last Updated ( Tuesday, 12 July 2011 )
 
 

   
RSS feed of news items only
I Programmer News
Copyright © 2014 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.