免费注册 查看新帖 |

Chinaunix

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

PAE是怎么实现64GB的ram映射的? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-04-26 22:04 |只看该作者 |倒序浏览
在看ULK
PAE分页机制跟普通分页有什么区别呢。32位的线性地址要映射64GB的RAM只要使用不同CR3不是就可以了么,为什么还要采用PAE分页机制呢?
而且我也没看懂,如果要用一个32位的线性地址去映射64GB空间,这是怎么做到的?

论坛徽章:
0
2 [报告]
发表于 2010-04-26 22:15 |只看该作者
在 PAE 模式下的 paging

所有 page translation-table 结构都被扩展为 8 bytes 64 位。

在 Intel 实现下,它的 PDPE, PDE, PTE 结构里的 base address 有效位数是 40 位,因此:可以允许定位在 40 位的 physcial address 空间。
SO,能实现 64G 的物理寻址,但是 virtual address 仍是 32 位的

论坛徽章:
0
3 [报告]
发表于 2010-04-26 22:29 |只看该作者
http://en.wikipedia.org/wiki/Physical_Address_Extension

建议LZ以后自己先GOOGLE下,表示下问问题的诚意

论坛徽章:
0
4 [报告]
发表于 2010-04-27 10:51 |只看该作者
开启PAE 地址线是36个,而不是32了哦 ,因此物理地址空间是2的36次方 也就是64G了

论坛徽章:
0
5 [报告]
发表于 2010-04-27 11:14 |只看该作者
回复 3# accessory


    我百度了一下,什么也没有。不好意思,我并不想打扰各位cuer,只是百思不得其解

论坛徽章:
0
6 [报告]
发表于 2013-02-27 17:03 |只看该作者
挖下坟:wink:
楼主既然说ULK,那么在第三版的57页,有说“页表项的物理地址字段从20位扩展到了24位”,那么利用这种页表项便就可以实现2^24个页框的寻址了,所以寻址能力上,是64GB级别的
但是,如楼主所言,进程的线性地址空间依然是2^32即4GB,PAE实现的只是对64GB大容量物理内存的充分利用而已。
因为,通过:
(1)设置新的CR3
(2)修改PDPT的内容
这两种方式,都可以使进程获得另外的4GB物理空间。
所以,PAE只是实现对大内存的充分使用,如果不使用PAE技术,那么所有进程都只能使用大内存的前4GB。
个人理解,欢迎大牛拍砖

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:17
7 [报告]
发表于 2013-02-27 17:24 |只看该作者
PAE的设计者应该 开除


就找不出第二个这么 丑陋的、愚蠢的、乱伦的──以上形容词引自Linus,虽然他评价的不是PAE ── 设计

当然,sysenter/sysexit这套 也差不多的恶心
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP