▼NACPI | Abstracts the ACPI standard that provides interfaces for hardware detection, device configuration, and energy management |
►NMADS | |
▼NCore | Implements an abstraction for CPU internals |
CCR | Access to the Control Register |
►CMSR | Access to the Model-Specific Register (MSR) |
▼NCPUID | Query information about the processor |
▼NFPU | For the sake of simplicity we call it just FPU, although this is for MMX and SSE as well |
▼NGDT | Abstracts the GDT that, primarily, contains descriptors to memory segments |
▼NHPET | Abstraction of the HPET existing in "modern" computers (since ~2005) |
▼NIDT | "Interrupt Descriptor Table (IDT) |
▼NIOAPIC | Abstraction of the I/O APIC that is used for management of external interrupts |
▼NLAPIC | Abstracts the local APIC (which is integrated into every CPU core) |
►NIPI | Inter-Processor Interrupts |
►NTimer | Local Timer (for each LAPIC / CPU) |
▼NMultiboot | Interface for Multiboot |
▼NPIT | Abstraction of the historical Programmable Interval Timer (PIT) |
CApplication | Test application |
CAssassin | Handling for the "killer"-IPI, that is a message indicating that a thread should be terminated |
CBBuffer | The class BBuffer implements a bounded buffer, that is a circular buffer with a fixed capacity |
CClock | The Clock implements the device for the real time clock, providing an interface to retrieve the current date/time |
CConsoleOut | Write text on console (STDOUT ) |
CCopyStream | Duplicate all data passed by the stream operator to two output streams |
CDispatcher | The dispatcher dispatches threads and, by that, puts the scheduler's decisions into action |
CFileOut | Write text into file |
CGate | Class of objects that are capable of handling interrupts |
CGDB_Stub | Remote stub for GNU Debugger (GDB) |
CGlobal | Handy interface for OS global variables Example usage: |
CGuarded | A handy interface to protect critical sections |
CGuardedScheduler | Guarded interface to the Scheduler used by user applications |
CIOPort | Abstracts access to the I/O address space |
CKeyboard | Handles keystrokes |
CKeyboardApplication | Keyboard Application |
CKeyDecoder | Decoder for keyboard codes received from the PS2Controller |
CMouse | Handles mouse movements and clicks |
▼CMouseDecoder | Decoder for mouse codes received from the PS2Controller |
CNullStream | Ignore all data passed by the stream operator |
COutputStream | The class OutputStream corresponds, essentially, to the class ostream from the C++ IO-Stream library |
CPanic | Default handler for (unconfigured) interrupt events |
▼CPerCore | Handy interface for core local variables Example usage: |
▼CQueue | This class implements a simple, singly-linked list of objects implementing the base class Queue::Node |
CIterator | A Queue Iterator |
CNode | Base class Node for all queueable classes |
CRTC | Real Time Clock |
CScheduler | The scheduler plans the threads' execution order and, from this, selects the next thread to be running |
CSerial | Serial interface |
CSerialStream | Console (VT100 compatible) via Serial interface |
CSpinlock | By the use of Spinlocks, it is possible to serialize blocks of code that might run parallel on multiple CPU cores |
▼CState | Structure for the core state after a trap |
CStringbuffer | The class Stringbuffer composes single characters into a longer text that can be processed on block |
▼CTextMode | Basic operations in the VGA-compatible text mode |
CTextStream | Output text (form different data type sources) on screen in text mode |
CTextWindow | Virtual windows in text mode |
CThread | The is an object used by the scheduler |
CTicker | The Ticker device demonstrates HPET interrupts |
CWatch | The Watch device deals with timer interrupts |