| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | feat: refactor Physical Memory Manager to use Page instead of Frame | Richard Qin | 2026-05-13 | 2 | -150/+149 |
| | | |||||
| * | feat: add KASLR configuration options and implement LZ4 compression in ↵ | Richard Qin | 2026-05-13 | 2 | -0/+244 |
| | | | | | pack_image script | ||||
| * | feat: add relocation section and fixup handling in linker script | Richard Qin | 2026-05-13 | 1 | -0/+14 |
| | | |||||
| * | feat: add BootParams structure and related enums for bootloader integration | Richard Qin | 2026-05-13 | 1 | -0/+85 |
| | | |||||
| * | feat: enhance UART driver and FDT parser with MMU support and default UART ↵ | Richard Qin | 2026-05-13 | 2 | -6/+22 |
| | | | | | settings | ||||
| * | feat: add support for Copy-On-Write in SV39 page table management | Richard Qin | 2026-05-13 | 2 | -6/+89 |
| | | |||||
| * | feat: update slab allocator to use Page descriptors instead of Frame | Richard Qin | 2026-05-13 | 3 | -51/+79 |
| | | |||||
| * | feat: add printk and vprintk functions with Linux-style log level parsing | Richard Qin | 2026-05-13 | 2 | -0/+70 |
| | | |||||
| * | feat: add Page structure and PageState enumeration for physical memory ↵ | Richard Qin | 2026-05-13 | 1 | -10/+10 |
| | | | | | management | ||||
| * | feat: add LZ4 decompressor implementation and update linker script | Richard Qin | 2026-05-13 | 3 | -0/+95 |
| | | |||||
| * | feat: add compressed kernel header and implementation for RISC-V architecture | Richard Qin | 2026-05-13 | 2 | -0/+508 |
| | | |||||
| * | feat: add relocation header and implementation for RISC-V architecture | Richard Qin | 2026-05-13 | 2 | -1/+58 |
| | | |||||
| * | feat: add relocation header and implementation for RISC-V architecture | Richard Qin | 2026-05-13 | 2 | -0/+153 |
| | | |||||
| * | feat: refactor KASLR computation and enhance validation checks | Richard Qin | 2026-05-13 | 1 | -62/+145 |
| | | |||||
| * | feat: add LumeOS compressed kernel header and update boot entry logic | Richard Qin | 2026-05-13 | 1 | -7/+38 |
| | | |||||
| * | feat: update Makefile for improved kernel build process and relocation handling | Richard Qin | 2026-05-13 | 1 | -8/+50 |
| | | |||||
| * | feat: remove unused linker script for RISC-V architecture | Richard Qin | 2026-05-03 | 1 | -111/+0 |
| | | |||||
| * | feat: enhance KASLR support with early seed metadata and validation checks | Richard Qin | 2026-05-03 | 3 | -6/+178 |
| | | | | | Co-authored-by: Copilot <copilot@github.com> | ||||
| * | feat: implement KASLR support and runtime address mapping for RISC-V ↵ | Richard Qin | 2026-05-03 | 12 | -36/+258 |
| | | | | | | | architecture Co-authored-by: Copilot <copilot@github.com> | ||||
| * | feat: add Kconfig infrastructure for kernel configuration management | Richard Qin | 2026-05-03 | 4 | -5/+269 |
| | | |||||
| * | feat: add self-test for random number generation | Richard Qin | 2026-05-02 | 1 | -0/+49 |
| | | |||||
| * | fix: update physical and virtual address handling in self-tests | Richard Qin | 2026-05-02 | 3 | -54/+44 |
| | | | | | Co-authored-by: Copilot <copilot@github.com> | ||||
| * | feat: add klog self-test suite with various test cases | Richard Qin | 2026-05-02 | 1 | -0/+175 |
| | | |||||
| * | fix: correct UART address conversion in early_putc function | Richard Qin | 2026-05-02 | 1 | -1/+1 |
| | | |||||
| * | feat: add driver registration subsystem with probe functionality | Richard Qin | 2026-05-02 | 2 | -0/+60 |
| | | |||||
| * | feat: reorganize includes and improve FdtManager documentation | Richard Qin | 2026-05-02 | 2 | -443/+490 |
| | | | | | Co-authored-by: Copilot <copilot@github.com> | ||||
| * | feat: implement hardware random number generation and early PRNG initialization | Richard Qin | 2026-05-02 | 4 | -0/+190 |
| | | |||||
| * | feat: enhance address conversion functions and introduce address types | Richard Qin | 2026-05-02 | 4 | -32/+72 |
| | | | | | Co-authored-by: Copilot <copilot@github.com> | ||||
| * | feat: refactor memory management and integrate memblock | Richard Qin | 2026-05-02 | 6 | -425/+735 |
| | | | | | | | | | | | | - Updated physical memory management (PMM) to utilize memblock for memory layout and frame allocation. - Enhanced the virtual memory manager (VMM) to allocate the frame map from memblock, ensuring it starts at the correct virtual address without relocation. - Improved frame allocation and deallocation functions to handle physical addresses more consistently. - Adjusted the slab allocator to correctly convert between physical and virtual addresses. - Refined page fault handling to ensure proper frame allocation and address translation. - Streamlined the initialization process for PMM and VMM, ensuring a more robust setup of memory structures. Co-authored-by: Copilot <copilot@github.com> | ||||
| * | feat: add RISC-V configuration and memory management enhancements | Richard Qin | 2026-05-02 | 6 | -15/+112 |
| | | | | | Co-authored-by: Copilot <copilot@github.com> | ||||
| * | feat: update C++ standard to C++23 and enhance toolchain detection in Makefile | Richard Qin | 2026-05-02 | 2 | -12/+28 |
| | | |||||
| * | feat: update UART handling and memory management parameters for improved ↵ | Richard Qin | 2026-05-02 | 7 | -26/+58 |
| | | | | | functionality | ||||
| * | feat: replace panic.h with klog.h for improved logging in multiple files | Richard Qin | 2026-05-02 | 7 | -7/+7 |
| | | |||||
| * | feat: add SBI interface with ecall and timer functions for RISC-V architecture | Richard Qin | 2026-05-02 | 1 | -0/+39 |
| | | |||||
| * | feat: add timer interrupt enable/disable functions for RISC-V architecture | Richard Qin | 2026-05-02 | 1 | -0/+15 |
| | | |||||
| * | fix: change constexpr to const for size_t offset calculation in list_entry | Richard Qin | 2026-05-02 | 1 | -1/+1 |
| | | |||||
| * | feat: add bit manipulation utilities for kernel operations | Richard Qin | 2026-05-02 | 1 | -0/+120 |
| | | |||||
| * | feat: add centralized compiler macros and integrate into rbtree headers | Richard Qin | 2026-05-02 | 3 | -24/+28 |
| | | |||||
| * | feat: implement kernel logging and formatted output subsystems | Richard Qin | 2026-05-02 | 7 | -51/+796 |
| | | |||||
| * | feat: add tiny printf implementation for embedded systems | Richard Qin | 2026-05-02 | 2 | -0/+1043 |
| | | |||||
| * | feat: add driver registration table to linker script macros | Richard Qin | 2026-04-29 | 1 | -0/+8 |
| | | |||||
| * | feat: add linker script and common macros for RISC-V architecture | Richard Qin | 2026-04-22 | 3 | -1/+163 |
| | | |||||
| * | feat: update errno.h with comprehensive error codes | Richard Qin | 2026-04-22 | 1 | -3/+114 |
| | | |||||
| * | feat: enhance kernel initialization with FDT parsing and self-test integration | Richard Qin | 2026-04-21 | 1 | -22/+41 |
| | | |||||
| * | feat: add boot self-tests for various kernel components | Richard Qin | 2026-04-21 | 10 | -0/+1314 |
| | | | | | | | | | | | | | - Implemented a self-test runner in `selftest.cc` to invoke all test suites. - Added tests for atomic operations in `test_atomic.cc`, covering construction, store/load, exchange, arithmetic, and compare-and-swap. - Created tests for the Flattened Device Tree (FDT) in `test_fdt.cc`, verifying node access and compatibility queries. - Developed a comprehensive Physical Memory Manager (PMM) test suite in `test_pmm.cc`, including allocation, deallocation, reference counting, and boundary conditions. - Implemented Red-Black Tree tests in `test_rbtree.cc`, validating insertion, deletion, and iteration. - Added Slab Allocator tests in `test_slab.cc`, covering various allocation sizes, edge cases, and operator overloads. - Created Spinlock tests in `test_spinlock.cc`, ensuring proper locking behavior and interrupt state preservation. - Developed Virtual Memory Area (VMA) tests in `test_vma.cc`, validating region mapping, unmapping, and fault handling. - Added tests for Virtual Memory Management (VMM) in `test_vmm.cc`, verifying address translation and page alignment. | ||||
| * | feat: add Virtual Memory Manager and Virtual Memory Area management | Richard Qin | 2026-04-21 | 3 | -0/+388 |
| | | |||||
| * | feat: add SLUB allocator implementation with KmemCache management | Richard Qin | 2026-04-21 | 2 | -0/+404 |
| | | |||||
| * | feat: implement Physical Memory Manager (PMM) with Buddy System and Per-CPU ↵ | Richard Qin | 2026-04-21 | 2 | -0/+558 |
| | | | | | Cache | ||||
| * | feat: add minimal C++ ABI stubs for freestanding kernel | Richard Qin | 2026-04-21 | 2 | -14/+39 |
| | | |||||
| * | feat: refactor Spinlock implementation to use atomic operations for lock ↵ | Richard Qin | 2026-04-21 | 2 | -6/+7 |
| | | | | | management | ||||
