Chinaunix's Archiver
论坛
›
内核源码
› LINUX的虚拟内存的大小
huangxiebo
发表于 2014-12-22 11:13
:sleepy:
zsszss0000
发表于 2014-12-23 18:37
32位操作系统Linux是4G内存空间,操作系统欺骗了进程,让他误以为自己就是全部,操作系统通过对内存的管理来实现的。回复 11# huangxiebo
rockcanon
发表于 2014-12-24 15:48
linux的虚拟空间,32位地址可寻址4G, 在x86平台, 这4G被PAGE_OFFSET(0xc0000000=3G), 分成两部分, 前面3G由用户进程使用, 后面1G由内核使用。而内核的虚拟地址到物理地址的映射就是: 物理地址 = 虚拟地址 - PAGE_OFFSET. 如果物理内存大于1G, 高于1G的物理内存, 就不能再用这个公式来映射。 具体的还是看下understanding linux virtual memory manager这本书吧。
页:
1
[2]
查看完整版本:
LINUX的虚拟内存的大小