summaryrefslogtreecommitdiff
path: root/src/sys/include/vm
AgeCommit message (Collapse)Author
11 dayskern/amd64: mmu: pmap_set_cache() -> pmap_set_cache()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-20kern/amd64: mmu: Add page-level cacheability attrsIan Moffett
This commit adds support for page-level cacheability attributes. We have added the pmap_set_cache() as well as some MMU_CACHE_* bits Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kern: proc: Keep track of mapped areas with rangesIan Moffett
This commit adds a virtual memory range queue to the process descriptor in order to keep track of mapped pages and free their respective frames upon program exit. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern/amd64: mmu: Add mmu_free_vas() to cleanup VASIan Moffett
Introduce a new resource deallocation function that destroys a specified virtual address space. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: vm: Implement lazy allocation for vm_map()Ian Moffett
Introduce lazy allocation in the vm_map() function. When passing a zero value to any of the base address fields of the map spec, allocate our own memory. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern/amd64: mmu: Add routine to switch VASIan Moffett
This commit introduces a new mmu_write_vas() function to allow the caller to change the virtual address space used by the current processor. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern/amd64: mmu: Add mmu_new_vas() routineIan Moffett
This commit introduces the ability to create new virtual address spaces for user programs and a zeroed lower half. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15sys: mman: Add PROT_USER flagIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: vm: Add MI vm_map() functionIan Moffett
Introduce a machine independent mechanism to map multiple pages through the new vm_map() function Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15os/amd64: Reduce coupling with VAS structureIan Moffett
This commit moves the VAS structure into a standard MD layer side and makes it accessible through a standard MI layer header. This indirection reduces coupling so that the codebase wont break if a name change or anything is needed. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15os/amd64: Make MMU header standard per archIan Moffett
Lunos's virtual memory system is split into two parts, the machine dependent MMU layer and the machine independent layer. The MMU side exposes a standard bridge header that allows the MI layer to interface with the MD layer. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: Add TLSF allocator portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-14kern: vm: Add virtual/physical address typesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-14os: vm: Add physical memory managerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-13vm: Add initial vm/vm.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>