虚拟空间,每个进程都有一个属于自己的虚拟内存地址空间 更多...
#include <los_vm_map.h>
虚拟空间,每个进程都有一个属于自己的虚拟内存地址空间
在文件 los_vm_map.h 第 146 行定义.
LosArchMmu VmSpace::archMmu |
vm mapping physical memory | MMU记录<虚拟地址,物理地址>的映射情况
在文件 los_vm_map.h 第 157 行定义.
VADDR_T VmSpace::base |
vm space base addr | 虚拟空间的基地址,线性区的分配范围,常用于判断地址是否在内核还是用户空间
在文件 los_vm_map.h 第 150 行定义.
VADDR_T VmSpace::codeEnd |
user process code area end | 代码区结束位置
在文件 los_vm_map.h 第 160 行定义.
VADDR_T VmSpace::codeStart |
user process code area start | 代码区开始位置
在文件 los_vm_map.h 第 159 行定义.
LosVmMapRegion* VmSpace::heap |
heap region | 传说中的堆区,用于满足进程的动态内存需求,大家熟知的malloc,realloc,free其实就是在操作这个区
在文件 los_vm_map.h 第 154 行定义.
VADDR_T VmSpace::heapBase |
vm space heap base address | 堆区基地址,指向堆区起点
在文件 los_vm_map.h 第 152 行定义.
VADDR_T VmSpace::heapNow |
vm space heap base now | 堆顶地址,指向堆区终点,do_brk()直接修改堆的大小返回新的堆区结束地址, heapNow >= heapBase
在文件 los_vm_map.h 第 153 行定义.
VADDR_T VmSpace::mapBase |
vm space mapping area base | 虚拟空间映射区基地址,L1,L2表存放在这个区
在文件 los_vm_map.h 第 155 行定义.
UINT32 VmSpace::mapSize |
vm space mapping area size | 虚拟空间映射区大小,映射区是个很大的区。
在文件 los_vm_map.h 第 156 行定义.
LOS_DL_LIST VmSpace::node |
vm space dl list | 节点,通过它挂到全局虚拟空间 g_vmSpaceList 链表上
在文件 los_vm_map.h 第 147 行定义.
LosMux VmSpace::regionMux |
region list mutex lock | 虚拟空间操作红黑树互斥锁
在文件 los_vm_map.h 第 149 行定义.
LosRbTree VmSpace::regionRbTree |
region red-black tree root | 采用红黑树方式管理本空间各个线性区
在文件 los_vm_map.h 第 148 行定义.
UINT32 VmSpace::size |
vm space size | 虚拟空间大小
在文件 los_vm_map.h 第 151 行定义.