Subversion Repositories HelenOS-doc

Rev

Rev 40 | Rev 48 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

<?xml version="1.0" encoding="UTF-8"?>
<chapter id="architecture">
  <?dbhtml filename="arch.html"?>

  <title>Architecture overview</title>

  <section>
    <para>
      <mediaobject id="arch1">
        <imageobject role="html">
          <imagedata fileref="images/arch1.png" format="PNG" />
        </imageobject>

        <imageobject role="fop">
          <imagedata fileref="images.vector/arch1.svg" format="SVG" />
        </imageobject>
      </mediaobject>
    </para>
  </section>

  <section>
    <para>The HelenOS operating system is designed as a relatively small
    microkernel assisted with a set of userspace drivers and server tasks.
    HelenOS is not very radical in what subsystems should or should not be
    implemented in the kernel - in some cases, both kernel and userspace
    drivers exist. The reason for creating the system as a microkernel is
    prosaic. Even though it is initially more difficult to get the same level
    of functionality from a microkernel than it is in the case of a simple
    monolithic kernel, a microkernel is much easier to maintain once the
    pieces have been put to work together. Therefore, the kernel of HelenOS,
    as well as the essential userspace libraries thereof can be maintained by
    only a few developers who understand them completely. In addition, a
    microkernel based operating system reaches completion sooner than
    monolithic kernels as the system can be used even without some traditional
    subsystems (e.g. block devices, filesystems and networking).</para>

    <para>HelenOS is comprised of the kernel and userspace server tasks. The
    kernel provides scheduling, memory management and IPC. It also contains
    essential device drivers that control the system clock and other devices
    necessary to guarantee a safe environment. Userspace communicates with the
    kernel through </para>
  </section>
</chapter>

Generated by GNU Enscript 1.6.6.