免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 43628 | 回复: 2
打印 上一主题 下一主题

[内存管理] 物理内存少于896MB内核直接映射 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2019-04-04 23:53 |只看该作者 |倒序浏览
最近研究内核,但是一直有几个问题不太明白,请教一下内核专家,希望能帮我解决:

1、内核直接映射低于896MB的物理内存,我理解映射了那么页表项应该设置了,至少页表项的Field字段(20位,即页框物理地址最高20位)已经指向了相应物理内存?

2、内核直接映射了前896MB的物理内存,映射了不一定代表页框已经分配给内核了?即映射了但是可能页表项的Present字段(为1表示所指的页在主存中)还是为0?因为如果这里内核映射了前896MB就代表页框已经分配的话,那么当主机所有物理内存少于896MB的时候,用户进程就没有页框可以分配了?

3、如果我第2点是正确的话,那么内核访问映射了但没分配页框的页,这时应该会产生缺页异常吧?应该就是发现Present为0,所以产生缺页异常吧?

论坛徽章:
3
卯兔
日期:2013-08-26 22:14:57未羊
日期:2013-09-08 19:16:05未羊
日期:2014-10-23 10:34:12
2 [报告]
发表于 2021-04-07 21:30 |只看该作者
是的,内核中mm的管理有一套专门的机制,已经映射的页表长时间没有使用到也会被换出,内核中的内存管理机制算法还是蛮复杂,我只知道这些基本概念,没研究过代码

论坛徽章:
0
3 [报告]
发表于 2021-05-03 16:31 |只看该作者
1、对的
2、present位=1
3、不会
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP