v0.23: Unleashing the Cores (Multitasking & SMP)
π Release Notes - NovumOS v0.23 Stable
Date: March 8, 2026
Version: v0.23 (The Multitasking & SMP Milestone)
π Highlights - The Concurrency & Stability Update
This milestone marks the most significant evolution of NovumOS to date. We have transitioned from a single-tasking kernel into a modern, multicore-aware system with a preemptive scheduler. This update fundamentally changes how the OS manages time and resources, providing the infrastructure for complex applications and multi-threaded workloads.
π§ Preemptive Multitasking
- Round-Robin Scheduler: Implemented a hardware-timer-driven scheduler that performs context switching across processes. This allows multiple programs to share CPU time seamlessly.
- Process Lifecycle & Management: Added support for process isolation, termination logic, and return stubs. Processes now automatically clean up their state and memory upon exit.
- Task Control: New shell utilities (
ps,kill) allow users to monitor and manage running tasks directly from the command line.
ποΈ Symmetric Multiprocessing (SMP)
- Multi-Core Booting: Implemented a robust SMP initialization protocol using a BSP/AP handshake and dual-startup IPIs. NovumOS now successfully utilizes up to 4 CPU cores (tested in QEMU).
- Global Work Balancing: Introduced a global task queue with work-stealing capabilities, ensuring that any idle core can take up pending background tasks to maximize system throughput.
- Synchronized I/O: Implemented kernel-wide spinlocks for critical resources, including a global print lock to prevent interleaved console output from multiple cores.
β‘ Graphics Architecture & Performance
- Double Buffering: Implemented a full backbuffer system for the VESA Linear Framebuffer. All drawing is now flicker-free.
- Dirty Rectangles: Added an optimized flushing mechanism that only copies modified pixels to the screen, drastically reducing the overhead of high-resolution rendering.
- BGA Integration: Full support for the Bochs Graphics Adapter, allowing for dynamic, on-the-fly resolution switching via the
rescommand.
π‘οΈ Security & Kernel Hardening
- Kernel Relocation: The kernel is now safely loaded at the 1MB mark (0x100000), avoiding legacy BIOS memory conflicts and providing a clean execution environment.
- Memory Isolation: Hardened the paging model by making core system structures (Page Directories, PMM) supervisor-only and enforcing strict user-mode pointer validation in syscalls.
- I/O Guarding: Restricted direct hardware port access from Ring 3. User applications must now use secure syscall wrappers for hardware interaction.
π Infrastructure & CI/CD
- Automated Workflows: Integrated GitHub Actions for automatic builds on both Windows and Linux environments.
- Build Caching: Implemented sophisticated caching for the Zig compiler and NASM, reducing compilation times by up to 70% in the CI environment.
- Static Analysis: Integrated CodeQL for automated security scanning of the SDK and C-based system modules.