Theia OS
Theia OS is an operating system under development. Its initial implementation targets the 32-bit x86 architecture and uses a custom bootloader for legacy BIOS systems. The project is written primarily in freestanding C and NASM assembly.
The project includes an interactive command-line console and foundational kernel components. Development is organized into incremental versions, with basic system functionality being implemented before higher-level facilities.
Architecture
The initial implementation targets 32-bit x86 hardware and the legacy BIOS boot process.
The system consists of a custom bootloader, a kernel, and an interactive console. Assembly language is used for low-level startup operations, while freestanding C is used for kernel functionality.
The bootloader is developed as part of Theia OS rather than relying on an external bootloader.
Boot process
The boot process begins with the BIOS loading the first boot stage. This stage loads subsequent boot components, which prepare the environment for transferring control to the kernel.
The bootloader and kernel are separate components of the project. Their implementation is developed incrementally alongside the rest of the system.
Kernel development
Kernel development has proceeded through a series of foundational milestones, including timer functionality and memory management.
The early memory-management work includes memory-map handling, memory-region management, and allocator development. These components provide a foundation for further kernel development.
Command-line interface
Theia OS includes an interactive command-line console that allows users to enter commands and receive responses from the running system.
Implemented commands include:
ECHO— displays text.CLS— clears the console display.VERSION— displays version information.SYSINFO— displays system information.MEMINFO— displays memory information.REBOOT— restarts the system.SHUTDOWN— provides shutdown-related functionality.
The exact behavior of commands depends on the version being used.
Development status
Version 0.15 is identified by the project as "Basic Closed" and marks the completion of its initial basic-functionality phase.
Filesystem support and application infrastructure are part of the planned development roadmap. They should be considered future work unless documented as implemented in a later release.