首先明白,这是个LINUX的软件概念。毛坯房就是硬件,LINUX内存布局就是装修。这种分内核和用户空间的,是体系结构的不同运行模式决定的。图片是arm32线性映射是直接把物理内存映射过来(大小:600M+)vmalloc是分配非连续物理内存,连续虚拟内存的(大小:200M+)数据段,代码段,bss(已经定义但没赋初值的全局变量和静态变量)堆空间:malloc使用mmap: 映射文件或者映射匿名页面(分配大段虚拟内存)从进程看内存布局.init 存放程序初始化的代码段.text 代码段(源代码编译后的机器指令).data (初始化后全局静态变量).rodata(只读数据).bss(没初始化的静态...