v0.23-beta.5
·
126 commits
to main
since this release
π Release Notes - NovumOS v0.23-beta.5
Date: February 10, 2026
Version: v0.23-beta.5
π Highlights - The Security & Hardening Update
This milestone introduces Hardware-Enforced Memory Protection, effectively isolating the Kernel's code and internal structures from the User Mode Shell. For the first time, NovumOS utilizes the processor's Memory Management Unit (MMU) to create a "sandbox" for system processes.
π‘οΈ Advanced Memory Isolation
- Executable Protection: The kernel and shell code is now marked as Read-Only for User Mode. Any attempt to modify system binaries at runtime now results in a Page Fault.
- Supervisor-Only Regions: Critical system areas, including the IDT (Interrupt Table), BIOS Data Area, and Kernel Stack (
0x500000), are now invisible to Ring 3. - Write Protect (CR0.WP): Enabled the
WPbit in theCR0register. This enforces read-only protection even for kernel-level instructions, preventing accidental corruption of system code by the kernel itself. - Precision Boundaries: Integrated linker-generated symbols (
_code_start,_data_start) into the paging initialization for pinpoint accuracy in memory permissions.
ποΈ Architecture & Stability
- GDT Relocation: Moved the Global Descriptor Table to the
.datasection. This allows the system to install Task State Segments (TSS) and update descriptors while code segments remain write-protected. - Bulletproof Exception Handling: The panic handler (
draw_rsod) now intelligently manages hardware registers to ensure it can display Error Screens even if a crash occurs in a write-protected environment. - Expanded User Stack: Increased User Stack allocations to 256KB, providing comfortable headroom for deep recursive calls and complex command processing in the shell.
ποΈ Hardware & Drivers
- TSS-Ready Segments: Refined GDT offsets to support upcoming multi-tasking and easier privilege switching.
- Paging Refactoring: Transitioned from a "fixed-block" memory map to a dynamic, symbol-based map, making the kernel easier to expand.
π Bug Fixes
- Fixed #PF on Startup: Resolved a crash where the shell would overflow its previous 4KB stack and hit supervisor memory.
- Fixed GDT Write Violation: Resolved a
General Protection Faultcaused by attempting to update TSS descriptors in a read-only code section. - Safe Kernel Re-entry: Improved register state persistence when jumping between kernel and user loops.