linux物理地址和虚拟地址定义
线性地址(Linear Address)
是逻辑地址到物理地址变换之间的中间层
如果启用了分页机制,那么线性地址可以再经过变换以产生一个物理地址;如果没有启用分页机制,那么线性地址直接就是物理地址
分页管理
CPU的页式内存管理单元,负责把一个线性地址,最终翻译为一个物理地址
例如一个32位的机器,线性地址最大可为4G,可以用4KB为一个页来划分
物理地址(Physical Address)
在存储器里以字节为单位存储信息,为正确地存放或取得信息,每一个字节单元给以一个唯一的存储器地址
虚拟内存
应用程序拥有的内存
linux 0.11内核中,给每个程序都划分了总容量64MB的虚拟内存
因此程序的逻辑地址范围是0x0000000到0x4000000