Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
14d59de
Add PMP infrastructure and management structures
HeatCrab Oct 28, 2025
cf7da32
Add memory abstraction structures
HeatCrab Oct 28, 2025
14b00d0
Declare memory pools from linker symbols
HeatCrab Oct 28, 2025
9242c57
Link tasks to memory spaces
HeatCrab Oct 29, 2025
3ada7f2
Implement flexpage lifecycle management
HeatCrab Oct 31, 2025
468767e
Include memory protection in public API
HeatCrab Oct 31, 2025
a382283
Initialize global PMP configuration state
HeatCrab Oct 31, 2025
0ace60d
Implement priority-based victim selection
HeatCrab Oct 31, 2025
45ed95c
Implement PMP region load and evict operations
HeatCrab Oct 31, 2025
2f4d8c4
Implement memory space lifecycle management
HeatCrab Nov 2, 2025
3006616
Add PMP CSR access infrastructure
HeatCrab Nov 2, 2025
643319b
Implement PMP hardware initialization function
HeatCrab Nov 2, 2025
555d94f
Configure individual PMP regions in TOR mode
HeatCrab Nov 2, 2025
3adbc9e
Extract helper for configuration index calculation
HeatCrab Nov 2, 2025
807e4bd
Disable and lock regions for protection
HeatCrab Nov 2, 2025
d59282e
Read PMP region configuration from shadow state
HeatCrab Nov 2, 2025
709b265
Verify memory access permissions in PMP regions
HeatCrab Nov 2, 2025
f567508
Handle PMP access faults with dynamic region loading
HeatCrab Nov 3, 2025
15e589b
Enable PMP hardware at boot time
HeatCrab Nov 6, 2025
65c3521
Implement PMP context switching for task isolation
HeatCrab Nov 6, 2025
bd7ceef
Integrate PMP context switching into dispatcher
HeatCrab Nov 9, 2025
24fdfe0
Initialize per-task memory spaces at creation
HeatCrab Nov 10, 2025
11ff103
Add PMP context switching test
HeatCrab Nov 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ include arch/$(ARCH)/build.mk
INC_DIRS += -I $(SRC_DIR)/include \
-I $(SRC_DIR)/include/lib

KERNEL_OBJS := timer.o mqueue.o pipe.o semaphore.o mutex.o logger.o error.o syscall.o task.o main.o
KERNEL_OBJS := timer.o mqueue.o pipe.o semaphore.o mutex.o logger.o error.o syscall.o task.o memprot.o main.o
KERNEL_OBJS := $(addprefix $(BUILD_KERNEL_DIR)/,$(KERNEL_OBJS))
deps += $(KERNEL_OBJS:%.o=%.o.d)

Expand All @@ -29,7 +29,7 @@ deps += $(LIB_OBJS:%.o=%.o.d)
APPS := coop echo hello mqueues semaphore mutex cond \
pipes pipes_small pipes_struct prodcons progress \
rtsched suspend test64 timer timer_kill \
cpubench test_libc umode
cpubench test_libc umode pmp

# Output files for __link target
IMAGE_BASE := $(BUILD_DIR)/image
Expand Down
Loading
Loading