Repository navigation
Implement VMM - #136
Implement VMM#136
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR implements a Virtual Memory Manager (VMM) for the kernel, restructuring the memory management system with significant architectural improvements.
- Refactored physical memory manager (PMM) with better type safety using
uintptr_tinstead of custom types - Implemented comprehensive paging system with recursive page directory mapping and page table management
- Added kernel heap allocator (kheap) with dynamic memory allocation capabilities
- Moved memory detection functionality to utils module for better organization
Reviewed Changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| kernel/src/utils.c | Added detect_memory function for multiboot memory detection |
| kernel/src/memory/pmm.c | Refactored PMM with improved type safety and removed dependencies |
| kernel/src/memory/paging.c | New comprehensive paging implementation with recursive mapping |
| kernel/src/memory/memory.c | Removed old memory implementation (replaced by paging.c) |
| kernel/src/memory/kheap.c | New kernel heap allocator with block-based memory management |
| kernel/src/kernel.c | Updated includes to use new memory subsystem |
| kernel/include/utils.h | Added detect_memory function declaration |
| kernel/include/pmm.h | Updated PMM interface with uintptr_t types |
| kernel/include/paging.h | New paging header with constants and function declarations |
| kernel/include/memory.h | Removed old memory header (replaced by paging.h) |
| kernel/include/kheap.h | New heap allocator interface definitions |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
There was a problem hiding this comment.
Pull Request Overview
Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
|



Uh oh!
There was an error while loading. Please reload this page.