关于32位程序申请大内存有关问题(1.6G). 小弟我在win7 64系统下面测试

关于32位程序申请大内存问题(1.6G). 我在win7 64系统上面测试
Visual studio 10

int* Test=new int[1024*1024*200];
int* Test2=new int[1024*1024*200];

申请1.6G内存.
抛出:
cpptest2.exe 中的 0x770e15ee 处有未经处理的异常: Microsoft C++ 异常: 内存位置 0x0044f660 处的 std::bad_alloc。

这只是一个简单的测试 . 我做三维仿真.. 内存要用到2G-4G左右.. 如何在64位系统 32位程序申请到大内存啊..

------解决方案--------------------
32位程序不可能申请大于4G的内存,linux在X86系统下,理论上用户态可以申请3G内存(有1G的地址空间留给内核),内核态可以申请4G内存,windows你需要查一查其系统规范。
------解决方案--------------------
用文件读写模拟内存读写是在32位操作系统下使用超过4G内存的不二法门。
参考_lseeki64
------解决方案--------------------
WIN64 下32位程序也可以用差不多4G内存, 不过M$的运行库不支持. cygwin是木有问题地..
有这么大内存要求, 为虾米不编译成64位程序..
表听楼上的, 这个能接受的最慢速度也得mmap ...

------解决方案--------------------
ogre用64位的啊