专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Linux/Unix

linux用户态内存的物理地址有关问题

发布时间:2011-06-27 17:47:40 文章来源:www.iduyao.cn 采编人员:星星草
linux用户态内存的物理地址问题?
小弟我看linux内存管理一段时间了。有一个问题一直不解。 linux用户态进程使用0—3G的线性地址空间,内核使用3G-4G的线性地址空间。内核对0-896M以下的物理内存进行直接映射(即物理地址与线性地址仅差一个偏移量PAGE_OFFSET),那也就是物理内存的0-896M都已经直接映射了到了3G-3G+896M的线性地址了。如果物理内存仅仅有896M或者不足896M。那用户态使用的内存已经被内核直接映射到了3G-3G+896M的线性地址空间了,如果再映射到用户态的0-3G线性地址空间,那进程的页表或页全局目录该怎么办啊?

------解决方案--------------------
内核中的页目录表和页表总共只占4M = 1M (20bit)*4(32位的地址)的空间,不会有问题的
------解决方案--------------------
如果物理内存不足,那么内存管理会回收一些提供给当前运行程序,比如把一些数据写到硬盘,这个涉及到虚拟内存了。然后会有一些page空闲,提供映射。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: