以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 网友互助 』  (http://bbs.xml.org.cn/list.asp?boardid=76)
----  系统怎么没有给系统地址空间分配在2G以外的地址?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=76&rootid=&id=68860)


--  作者:vfdff
--  发布时间:10/29/2008 10:24:00 PM

--  系统怎么没有给系统地址空间分配在2G以外的地址?
我使用程序测试了共享变量g_iShared的地址,结果发现它没有大于 2G,难道 系统没有给系统地址空间分配在2G以外的地址吗?
以下是测试代码:
#include   <stdio.h>

// VC6 版本
#pragma comment(linker, "/SECTION:.text1,RWS") // 创建自定义的 shared Section
#pragma data_seg(".text1")
int g_iShared = 0;
#pragma data_seg()

int main()
{
    g_iShared = 200;
    //int iLocal  = 300;
    printf("%d,0x%p\n",g_iShared,&g_iShared);
    //printf("%d,0x%p\n",iLocal,&iLocal);
    return 0;

}


--  作者:amani
--  发布时间:10/29/2008 11:04:00 PM

--  
用户态代码在2G 以下地址, 内核态代码共享2G 以上地址. windows 32位有如此限制.
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
31.250ms