Exokernel review

From: Joanna Muench (joannam_at_spro.net)
Date: Mon Jan 19 2004 - 18:24:09 PST

  • Next message: David Coleman: "Review of Exokernel"

    Kassshoek, et al (1997) present a detailed description of an exokernel
    system, including the motivating philosophy, implementation, performance
    comparisons with unmodified UNIX systems and finally an example of a web
    server application. The paper argues that an architecture giving
    application direct access to resources will both speed performance and
    accommodate a broader variety of applications. The first point is
    adequately proven through benchmarks comparing the system with other
    UNIX systems while the second point is perhaps appropriately left to
    other referenced work.

    System protections are again defined by capabilities; the substantial
    difference between these capabilities and those defined in Dennis and
    Van Horn (1966) are unfortunately described elsewhere. The storage
    system presented the greatest technical challenge in implementing the
    system and required at least three different approaches. One
    break-through was the realization that temporary file systems don't need
    to maintain the rigid integrity rules defined by Ganger and Patt
    (1994).The more important concept of the storage system were the
    templates required to define each type of data structure and the
    untrusted deterministic functions used to define these templates. I
    found the description of UDF's to be somewhat opaque.

    The remainder of the paper described the Xok implementation of the
    exokernel ideas and provides some benchmarks, both of the base system
    and of a web server application specially designed for this
    architecture. The numbers are impressive, with the base system at least
    matching and often surpassing standard UNIX implementations and the
    optimized Cheetah application dwarfing other applications (at least
    until limited by network bandwidth). Some of the improvements are due to
    a more efficient library file system, C-FFS (which any OS could
    implement), but most are attributable to the gains allowed by optimizing
    resources, for instance storing individual files that make up an HTML
    page together. Interestingly, the authors were unable to explain
    performance gains for the base system in three applications (pax, cp and
    diff).

    As a developer, I was relieved to read that the system came with the
    ExOS library to support most of the BSD abstractions. This obviates the
    need for an application to redefine the wheel for non-critical resource
    access. But it raises the issue of how widespread the need for such a
    specialized system really is. As processor speeds have increased the
    cost of designing an application that will fully exploit the exokernel
    interface becomes hard to justify. I wish the authors had discussed some
    of the experience they allude to in the first paragraph of the
    introduction, that mistakes in resource interface design can be very
    expensive.


  • Next message: David Coleman: "Review of Exokernel"

    This archive was generated by hypermail 2.1.6 : Mon Jan 19 2004 - 18:20:36 PST