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
95bbca4
Add PMP infrastructure and management structures
HeatCrab Oct 28, 2025
f95a0af
Add memory abstraction structures
HeatCrab Oct 28, 2025
11a4f97
Declare memory pools from linker symbols
HeatCrab Oct 28, 2025
b2d9bb7
Link tasks to memory spaces
HeatCrab Oct 29, 2025
33dd95a
Implement flexpage lifecycle management
HeatCrab Oct 31, 2025
e1a72a5
Include memory protection in public API
HeatCrab Oct 31, 2025
77a6600
Initialize global PMP configuration state
HeatCrab Oct 31, 2025
78b4984
Implement priority-based victim selection
HeatCrab Oct 31, 2025
50d3f5a
Implement PMP region load and evict operations
HeatCrab Oct 31, 2025
553bb5e
Implement memory space lifecycle management
HeatCrab Nov 2, 2025
c418d20
Add PMP CSR access infrastructure
HeatCrab Nov 2, 2025
0c08245
Implement PMP hardware initialization function
HeatCrab Nov 2, 2025
a280336
Configure individual PMP regions in TOR mode
HeatCrab Nov 2, 2025
55c2e0d
Extract helper for configuration index calculation
HeatCrab Nov 2, 2025
0d33625
Disable and lock regions for protection
HeatCrab Nov 2, 2025
8ffe886
Read PMP region configuration from shadow state
HeatCrab Nov 2, 2025
d698241
Verify memory access permissions in PMP regions
HeatCrab Nov 2, 2025
857e29a
Handle PMP access faults with dynamic region loading
HeatCrab Nov 3, 2025
4b9633a
Enable PMP hardware at boot time
HeatCrab Nov 6, 2025
59750a5
Implement PMP context switching for task isolation
HeatCrab Nov 6, 2025
c0767ec
Integrate PMP context switching into dispatcher
HeatCrab Nov 9, 2025
7d5491f
Initialize per-task memory spaces at creation
HeatCrab Nov 10, 2025
7e3992e
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