| Index: > A B C D E F G H I J K L M N O P Q R S T U V W X Y Z |
|
|||||
| First Prev [ 1 2 3 ] Next Last |
Exokernels, also known as vertically structured operating systems, are a new and rather radical approach to OS design.
The idea behind this is to enable the developer to make all the decisions about hardware performance. Exokernels are extremely small, since they arbitrarily limit their functionality to the protection and multiplexing of resources.
Classic kernel designs (both monolithic and microkernels) abstract the hardware, hiding resources under a hardware abstraction layer, or behind device drivers. In these classic systems, if physical memory is allocated, one cannot assure its actual placement, for example.
The goal of an exokernel is to allow an application to request a specific piece of memory, a specific disk block etc., and merely ensure that the requested resource is free, and the application is allowed to access it.
Since an exokernel therefore only provides a very low-level interface to the hardware, lacking any of the higher-level functionalities of other operating systems, it is augmented by a "library operating system". Such a library OS interfaces to the exokernel below, and provides application writers with the familiar functionalities of a complete OS.
Some theoretical implications of an exokernel system are that it becomes possible to have several kinds of operating systems (Windows, Unix) running under a single exokernel, and that a developer may choose to override or increase functionality for performance reasons.
The concept of an exokernel has been around since at least 1995 [3], but as of 2004 the design is still very much a research effort and it is not used in any major commercial operating systems. One concept operating system is Nemesis , written by University of Cambridge, University of Glasgow, Citrix Systems, and the Swedish Institute of Computer Science . MIT has also built several exokernel based systems.