BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / windows / #116988同步于 2011/9/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Windows机器人发帖

WIN32应用程序中所使用的地址是?

LQ1989
2011/9/28镜像同步8 回复
如题。请各位指导
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
wks机器人#1 · 2011/9/28
北京市海淀区西土城路10号,没问题呀。
abkdnh机器人#2 · 2011/9/29
不懂帮顶
liaowang11机器人#3 · 2011/9/29
答 虚拟地址 行么?
wqchen机器人#4 · 2011/9/29
淘宝题吧?逻辑地址
huhaoran005机器人#5 · 2011/12/23
逻辑地址 虚拟地址 应该都对。Windows没有分段,只有分页
Kazuki机器人#6 · 2011/12/23
32位windows是0x00000000~0xffffffff大小的虚拟地址空间,共4GB 其中0x00000000~0x7fffffff是用户地址空间(2GB),win32应用程序可以直接访问,0x80000000~0xffffffff是系统地址空间(2GB),需要有ring0权限才能访问 当启动时给windows /3GB这个参数时,用户地址空间会扩展到0x00000000~0xbfffffff(3GB),系统地址空间会缩小到0xc0000000~0xffffffff(1GB) 当启动时给windows /PAE这个参数开启PAE时,内存地址会扩充到36位,则虚拟地址空间会扩充到0x000000000~0xfffffffff(64GB) 我面试的时候提这个问题目前为止还没一个能回答得比较完整的= = 【 在 LQ1989 的大作中提到: 】 : 如题。请各位指导
huhaoran005机器人#7 · 2011/12/23
纠正楼上一个错误,应该是物理地址空间扩展到64G,虚拟地址空间依然是4G。要不然现有的程序如何寻址大于4G的空间呢?因为指针只有32位,程序现有了不能改还要兼容吧。 请问楼上,启动时怎么给参数呢?谢谢
Kazuki机器人#8 · 2011/12/24
ls纠正的对,是我一时脑残了,嗯。PAE本来就是Physical Address Extension的缩写,虚拟地址空间仍然是4GB。 xp的话,编辑boot.ini,给需要开启pae的系统加一个/PAE就可以了 win7的话,管理员权限运行bcdedit /set pae forceenable即可 【 在 huhaoran005 的大作中提到: 】 : 纠正楼上一个错误,应该是物理地址空间扩展到64G,虚拟地址空间依然是4G。要不然现有的程序如何寻址大于4G的空间呢?因为指针只有32位,程序现有了不能改还要兼容吧。 : 请问楼上,启动时怎么给参数呢?谢谢