summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* refactor: promote new architecture to repository rootRichard Qin2026-07-1051-9480/+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-1415-322/+734
| | | | logging to exec syscalls
* Important: License changed from MIT to GPL.Richard Qin2026-01-0550-0/+192
| | | | Rewrote the README based on the actual project.
* dev(shell): implement basic shell toolsRichard Qin2026-01-0413-20/+421
| | | | fixed(file-system): fixed read and write bugs
* feat(file-system): implement read and write FAT32 File System and basic shellRichard Qin2026-01-0417-112/+1260
|
* Fix: critical malloc size calculation bugRichard Qin2026-01-036-46/+96
| | | | | | | | | | 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-0218-210/+2839
| | | | please see the log for detail.
* dev(file-system): establish VFS and Read-only FAT32 File SystemRichard Qin2026-01-0212-34/+1162
|
* dev(device): implement VirtIORichard Qin2026-01-0113-231/+781
| | | | See dev log for detail
* dev: PILC implementationRichard Qin2025-12-312-0/+77
|
* dev:Refactor Memory Management and Process ManagementRichard Qin2025-12-3113-650/+1461
|
* 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-285-9/+106
|
* feat(syscall): Implement syscall dispatch and process lifecycle ↵Richard Qin2025-12-288-126/+564
| | | | (exit/wait/sleep)
* feat: Implement the first user program of the lume OSRichard Qin2025-12-277-66/+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-139-59/+237
|
* feat:Cooperative MultitaskingRichard Qin2025-12-116-52/+232
|
* feat: Add initial Supervisor Mode Trap HandlerRichard Qin2025-12-104-16/+255
| | | | | | | | | | 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-094-20/+253
| | | | | | 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-083-0/+105
feat: Initial bare-metal RISC-V boot with UART