Glossary

Glossary#

ACPI#

Advanced Configuration and Power Interface. An open standard that operating systems can use to discover and configure computer hardware components, to perform power management (e.g. putting unused hardware components to sleep), auto configuration (e.g. Plug and Play and hot swapping), and status monitoring.

Capability#

IPC#

Inter Process Communication. The foundational principle of the L4Re system to connect entities in the system.

Object space#

The object space is the part of a Task that holds references to kernel objects. Among others, these are for example IPC gates.

Task#

A task comprises a memory address space (represented by the task’s page table), an Object space (holding the kernel protected capabilities), and on x86 an IO-port address space.

Thread#

A thread is bound to a task and executes code. Multiple threads can coexist in one task and are scheduled by the microkernel’s scheduler.

Factory#

A factory is used by applications to create new kernel objects. Access to a factory is required to create any new kernel object. Factories can control and restrict object creation.

IPC gate#

An IPC gate is used to create a secure communication channel between different :term:tasks. It embeds a label (kernel protected payload) that securely identifies the gate through which a message is received. The gate label is not visible to and cannot be altered by the sender.

IRQ#

IRQ objects provide access to hardware interrupts. Additionally, programs can create new virtual interrupt objects and trigger them. This allows to implement a signaling mechanism. The receiver cannot decide whether the interrupt is a physical or virtual one.

Vcon#

Provides access to the in-kernel debugging console (input and output). There is only one such object in the kernel and it is only available, if the kernel is built with debugging enabled. This object is typically interposed through a user-level service or without debugging in the kernel can be completely based on user-level services.

Scheduler#

Implements scheduling policy and assignment of threads to CPUs, including CPU statistics.

VMM#

Virtual Machine Monitor. The service that implements the virtual machine model (read: the virtual hardware) and controls the execution of the virtual machine guest.

Virtio#