StuBS
Class List
Here are the classes with brief descriptions:
[detail level 12]
 NACPIAbstracts the ACPI standard that provides interfaces for hardware detection, device configuration, and energy management
 NMADS
 NCoreImplements an abstraction for CPU internals
 CCRAccess to the Control Register
 CMSRAccess to the Model-Specific Register (MSR)
 NCPUIDQuery information about the processor
 NFPUFor the sake of simplicity we call it just FPU, although this is for MMX and SSE as well
 NGDTAbstracts the GDT that, primarily, contains descriptors to memory segments
 NHPETAbstraction of the HPET existing in "modern" computers (since ~2005)
 NIDT"Interrupt Descriptor Table (IDT)
 NIOAPICAbstraction of the I/O APIC that is used for management of external interrupts
 NLAPICAbstracts the local APIC (which is integrated into every CPU core)
 NIPIInter-Processor Interrupts
 NTimerLocal Timer (for each LAPIC / CPU)
 NMultibootInterface for Multiboot
 NPITAbstraction of the historical Programmable Interval Timer (PIT)
 CApplicationTest application
 CAssassinHandling for the "killer"-IPI, that is a message indicating that a thread should be terminated
 CBBufferThe class BBuffer implements a bounded buffer, that is a circular buffer with a fixed capacity
 CClockThe Clock implements the device for the real time clock, providing an interface to retrieve the current date/time
 CConsoleOutWrite text on console (STDOUT)
 CCopyStreamDuplicate all data passed by the stream operator to two output streams
 CDispatcherThe dispatcher dispatches threads and, by that, puts the scheduler's decisions into action
 CFileOutWrite text into file
 CGateClass of objects that are capable of handling interrupts
 CGDB_StubRemote stub for GNU Debugger (GDB)
 CGlobalHandy interface for OS global variables Example usage:
 CGuardedA handy interface to protect critical sections
 CGuardedSchedulerGuarded interface to the Scheduler used by user applications
 CIOPortAbstracts access to the I/O address space
 CKeyboardHandles keystrokes
 CKeyboardApplicationKeyboard Application
 CKeyDecoderDecoder for keyboard codes received from the PS2Controller
 CMouseHandles mouse movements and clicks
 CMouseDecoderDecoder for mouse codes received from the PS2Controller
 CNullStreamIgnore all data passed by the stream operator
 COutputStreamThe class OutputStream corresponds, essentially, to the class ostream from the C++ IO-Stream library
 CPanicDefault handler for (unconfigured) interrupt events
 CPerCoreHandy interface for core local variables Example usage:
 CQueueThis class implements a simple, singly-linked list of objects implementing the base class Queue::Node
 CIteratorA Queue Iterator
 CNodeBase class Node for all queueable classes
 CRTCReal Time Clock
 CSchedulerThe scheduler plans the threads' execution order and, from this, selects the next thread to be running
 CSerialSerial interface
 CSerialStreamConsole (VT100 compatible) via Serial interface
 CSpinlockBy the use of Spinlocks, it is possible to serialize blocks of code that might run parallel on multiple CPU cores
 CStateStructure for the core state after a trap
 CStringbufferThe class Stringbuffer composes single characters into a longer text that can be processed on block
 CTextModeBasic operations in the VGA-compatible text mode
 CTextStreamOutput text (form different data type sources) on screen in text mode
 CTextWindowVirtual windows in text mode
 CThreadThe is an object used by the scheduler
 CTickerThe Ticker device demonstrates HPET interrupts
 CWatchThe Watch device deals with timer interrupts