mirror of
https://github.com/DragonOS-Community/DragonOS.git
synced 2025-06-19 00:46:31 +00:00
new: 映射vma
This commit is contained in:
29
kernel/mm/internal.h
Normal file
29
kernel/mm/internal.h
Normal file
@ -0,0 +1,29 @@
|
||||
#pragma once
|
||||
|
||||
#include "mm.h"
|
||||
|
||||
/**
|
||||
* @brief 将vma结构体插入mm_struct的链表之中
|
||||
*
|
||||
* @param mm 内存空间分布结构体
|
||||
* @param vma 待插入的VMA结构体
|
||||
* @param prev 链表的前一个结点
|
||||
*/
|
||||
void __vma_link_list(struct mm_struct * mm, struct vm_area_struct * vma, struct vm_area_struct * prev);
|
||||
|
||||
/**
|
||||
* @brief 将vma给定结构体从vma链表的结点之中删除
|
||||
*
|
||||
* @param mm 内存空间分布结构体
|
||||
* @param vma 待插入的VMA结构体
|
||||
*/
|
||||
void __vma_unlink_list(struct mm_struct * mm, struct vm_area_struct * vma);
|
||||
|
||||
/**
|
||||
* @brief 获取指定虚拟地址处映射的物理地址
|
||||
*
|
||||
* @param mm 内存空间分布结构体
|
||||
* @param vaddr 虚拟地址
|
||||
* @return uint64_t 已映射的物理地址
|
||||
*/
|
||||
uint64_t __mm_get_paddr(struct mm_struct * mm, uint64_t vaddr);
|
Reference in New Issue
Block a user