L4Re Quick Note (1)

General System Structure

  • Microkernel: Provides only a minimal set of mechanisms that are necessary to support applications.
  • Runtime Environment: Aims at providing more convenient abstractions for application development.
  • Applications: Run on top of the system and use services provided by the Runtime Environment.

The Fiasco.OC Microkernel

  • lowest-level piece of software
  • only program that runs in privileged processor mode
  • does not include complex services
  • services are implemented in kernel objects
  • tasks hold references called capabilities (in their respective “object space”, which is a kernel-protected table)
  • if a task owns a capability, it may grant other tasks the same (or fewer) rights
  • capabilities are a concept that enables flexibility

Inter Process Communication (IPC)

  • It is always synchronous
  • The basic communication mechanism
  • also used to resolve hardware exceptions, faults and for virtual memory management

Kernel Objects

  • Task comprises a memory address space, an object space, and on X86 an IO-port address space
  • Thread is bound to a task and executes code.
  • Factory is used by applications to create, control and restrict kernel objects
  • IPC gate is used to create a secure communication channel between different tasks
  • IRQ objects provide access to hardware interrupts.
  • Vcon Provides access to the in-kernel debugging console
  • Scheduler implements scheduling policy and assignment of threads to CPUs

taken from: http://os.inf.tu-dresden.de/L4Re/doc/

 

Leave a Reply

Your email address will not be published. Required fields are marked *