更新日期: 2022/06/01 来源: https://gitee.com/weharmony/kernel_liteos_a_note
los_vm_common.h 文件参考

浏览源代码.

详细描述

@note_pic
鸿蒙虚拟内存-用户空间图 从 USER_ASPACE_BASE 至 USER_ASPACE_TOP_MAX
鸿蒙源码分析系列篇:  https://blog.csdn.net/kuangyufei 
                   https://my.oschina.net/u/3751245

|          /\              |
|          ||              |
|---------------------------|内核空间结束位置KERNEL_ASPACE_BASE + KERNEL_ASPACE_SIZE
|                          |
|      内核空间                |
|                          |
|                          |
|---------------------------|内核空间开始位置 KERNEL_ASPACE_BASE
|                          |
|      16M 预留              |
|---------------------------|用户空间栈顶 USER_ASPACE_TOP_MAX = USER_ASPACE_BASE + USER_ASPACE_SIZE
|                          |       
|      stack区 自上而下         |
|                          |
|          ||              |
|          ||              |
|          ||              |
|          \/              |
|                          |
|---------------------------|映射区结束位置 USER_MAP_BASE + USER_MAP_SIZE
| 映射区 (文件,匿名,I/O映射)        |
|                          |
|                          |
|   共享库 .so                |   
|                          |
|   L1/L2页表                |   
|---------------------------|映射区开始位置 USER_MAP_BASE = (USER_ASPACE_TOP_MAX >> 1)
|                          |
|                          |
|          /\              |
|          ||              |
|          ||              |
|          ||              |
|                          |
|      heap区 自下而上          |
|                          |
|---------------------------|用户空间堆区开始位置 USER_HEAP_BASE = USER_ASPACE_TOP_MAX >> 2
|                          |
|      .bss                |
|      .data               |
|      .text               |
|---------------------------|用户空间开始位置 USER_ASPACE_BASE = 0x01000000UL
|                          |
|      16M预留               |
|---------------------------|虚拟内存开始位置 0x00000000
版本
作者
weharmonyos.com | 鸿蒙研究站 | 每天死磕一点点
日期
2021-11-30

在文件 los_vm_common.h 中定义.