Known problems:

- Currently, security is a joke in Linux on L4: Publicly available
  versions of L4 currently start all tasks with CPL <= IOPL; that
  means that all tasks can enable/disable interrupts and do port I/O.
  The Linux system calls ioperm() and iopl() haven't been implemented,
  yet; they're dummies that always succeed.

- VM86 mode hasn't been implemented yet
  (system calls vm86(), modify_ldt()).

- Processes which never enter the kernel don't contribute to the
  machine's load and don't have their accounting times updated.

- There is a bug in the L4 kernel. The manual says that the kernel 
  adjusts the segment registers if they have an invalid selector, but it
  doesn't do so.  At the moment it raises a general protection fault.

- The processes' system time is not measured (correctly?).

- The processes' user time is reset in execve() because we
  delete/restart the execve()ing task.  We probably should either
  modify L4's task_new system call so that it doesn't reset the
  counter when deleting and creating at the same time, or make a note
  of the time spent before execve() and accumulate the times for every
  incarnation of a process.

- We seem to have a X related problem. Some applications executing on
  a remote machine simply block in a select call and wait forever. I
  don't know what event they are waiting for so I can't check why it
  doesn't happen.

- The above mentioned problem seems to be tcp/ip related. We have
  processes with an activ tcp connection and data within their send
  queues, but the for some reasons the protocol stack doesn't send the
  data out to the wire.

- The NOTES file is totally out of date :)
