summaryrefslogtreecommitdiff
path: root/src/kernel
Commit message (Collapse)AuthorAgeFilesLines
* refactor: promote new architecture to repository rootRichard Qin2026-07-1019-3990/+0
| | | | Archive the deprecated implementation under lume-legacy, make the new kernel the default root-level build, and update repository entry points without changing kernel behavior.
* feat: implement FDT-based memory discovery and add comprehensive debug ↵Richard Qin2026-04-147-255/+483
| | | | logging to exec syscalls
* Important: License changed from MIT to GPL.Richard Qin2026-01-0519-0/+72
| | | | Rewrote the README based on the actual project.
* dev(shell): implement basic shell toolsRichard Qin2026-01-041-1/+3
| | | | fixed(file-system): fixed read and write bugs
* feat(file-system): implement read and write FAT32 File System and basic shellRichard Qin2026-01-046-17/+373
|
* Fix: critical malloc size calculation bugRichard Qin2026-01-034-36/+78
| | | | | | | | | | Summary: - Fixed an integer arithmetic error in malloc() where 'nunits' was initialized to 0, causing incorrect heap sizing. - This bug caused malloc to return pointers pointing to unmapped memory pages, leading to Store Page Fault (scause 15) at process boundaries. - Switched memory allocator logic to use byte-based size calculation instead of K&R style units to prevent off-by-one errors. Improvements: - Shell now starts successfully without segfaults.
* dev(sell): add simple libc and implement shellRichard Qin2026-01-026-6/+368
| | | | please see the log for detail.
* dev(file-system): establish VFS and Read-only FAT32 File SystemRichard Qin2026-01-026-33/+423
|
* dev(device): implement VirtIORichard Qin2026-01-017-80/+107
| | | | See dev log for detail
* dev: PILC implementationRichard Qin2025-12-311-0/+17
|
* dev:Refactor Memory Management and Process ManagementRichard Qin2025-12-319-609/+1289
|
* dev(spinlock): refactoring the implementation of locksRichard Qin2025-12-302-101/+196
|
* fixed(vm): page allocation errorRichard Qin2025-12-281-1/+1
|
* fixed(proc):Fix the page table mapping error during process forkRichard Qin2025-12-282-5/+11
|
* feat(syscall): implement functional sys_write using copyin for user console ↵Richard Qin2025-12-281-6/+24
| | | | output
* feat(user): add user-space build system and init process to test fork/waitRichard Qin2025-12-282-9/+14
|
* feat(syscall): Implement syscall dispatch and process lifecycle ↵Richard Qin2025-12-286-126/+491
| | | | (exit/wait/sleep)
* feat: Implement the first user program of the lume OSRichard Qin2025-12-276-65/+559
|
* Add the README to provide a detailed explanation of the projectRichard Qin2025-12-141-1/+1
|
* feat: add preemptive scheduling, SBI timer support and FDT parser.Richard Qin2025-12-137-34/+220
|
* feat:Cooperative MultitaskingRichard Qin2025-12-116-52/+232
|
* feat: Add initial Supervisor Mode Trap HandlerRichard Qin2025-12-103-16/+240
| | | | | | | | | | Implement the initial mechanism for handling traps and exceptions in Supervisor Mode. Set up the stvec Control and Status Register (CSR) to direct all S-Mode Traps (Interrupts and Exceptions) to a unified assembly entry point. Implemented assembly code for saving and restoring the Trap Context (register state). Provides the foundational framework necessary for future Timer Interrupts and System Calls.
* feat: Initial PMM implementationRichard Qin2025-12-093-3/+224
| | | | | | Introduce the foundational Physical Memory Manager (PMM) and restructure the project for modularity. Implemented basic PMM and related memory management headers (mm/pmm.h, mm/vm.h). Updated Makefile and build process to support new modular structure.
* The start of the project -- A MicroDOSRichard Qin2025-12-081-0/+20
feat: Initial bare-metal RISC-V boot with UART