From: Prasanna Kumar Jayapal (prasak_at_winse.microsoft.com)
Date: Wed Jan 21 2004 - 17:25:32 PST
This paper ("Application performance and Flexibility on Exokernal
Systems) describes the architecture of the Exokernal operating system.
The main goal of Exokernal system is to give un-trusted applications
efficient control over hardware and software resources and to separate
the management from protection. This paper gives a good overview of this
system, its architecture, talks about the storage and protection,
discusses XoK/ExOS environment, Shared libraries (libOS, libFS), its
applications and then compares the performances with other systems and
nicely concludes by mentioning their experiences and lessons learned.
The authors start by highlighting the flaw in the traditional operating
systems in which only the privileged servers and the kernel can manage
the system resources, and it is very difficult to customize the system
to a particular application. The Exokernal system solves this problem by
giving full control to its applications and allows them to fine tune the
system to their needs. This is an interesting thought and the paper was
very exiting to read through.
The three design techniques in the kernel support for protected
abstractions section was nice. Especially, I liked the idea of allowing
applications to download code into the kernel. Protection and sharing in
Exokernel are implemented through software regions. Other mechanisms
that help in shared abstractions are the creation of hierarchical named
capabilities on the fly, wakeup predicates and robust critical sections.
This paper talks extensively on the storage system, XN. Although I did
not understand some of the minute details of the storage implementation,
it was nice to see so much thought given to the storage and protection.
Exokernel provides great flexibility and allows having multiple file
systems on the system. The description of libFS and how it uses the UDFs
was interesting.
The overview of Xok and ExOS gave a good understanding of the overall
architecture. Xok is the kernel where memory and processes management
happens and ExOS is a libOS which provides most of the abstractions and
interfaces.
The applications section was very useful as well and it was exiting to
see the scenarios (Binary emulation, XCP, Cheetah, etc) that exploit the
Exokernel systems. Also, it was good to see these applications being
backed up with the impressive performance numbers and charts.
In the end, the authors sound very confident that the Exokernel system
would provide global performance "superior" to current systems. I am
very curious to see the future of this operating system.
This archive was generated by hypermail 2.1.6 : Wed Jan 21 2004 - 17:25:32 PST