主题 : 请教一个关于linux内存管理的问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 11538
精华: 0
发帖: 38
金钱: 240 两
威望: 78 点
综合积分: 76 分
注册时间: 2009-12-10
最后登录: 2018-02-08
楼主  发表于: 2010-01-10 11:21

 请教一个关于linux内存管理的问题

LDD3里说进程所能访问的内存达到4G,0~3G为用户空间,3~4G为内核空间,那像我板子上只有64M的内存,这个用户空间和内核空间怎么分配呢?
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-01-10 12:29
4G空间(0x0 ~ 0xFFFFFFFF)指的是虚拟地址空间,实际上并不是每一个虚拟地址都一定有映射的物理地址。这些映射都是由MMU完成的。
另外,物理地址不仅包括内存地址,还包括如IO设备的地址空间,片上寄存器的地址空间。
这是一个典型的ARM Linux系统的虚拟地址空间map http://www.arm.linux.org.uk/developer/memory.txt
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."