分享

最高指挥官跳出错误完美解决(去官网论坛看了半天蚂蚁文) - 最高指指官-Supreme Commander - 首页-最高指挥官-TA-横扫天下会- - Powered By SupeSite

 长云 2007-10-13
终于明白是为什么了,原来尽管XP、VISTA等早已支持32GB、64GB等等牛B容量的内存,但虚拟内存容量却仍然维持在最大2GB的限制上。我的机 器内存2G,开大图1VS2AI时单位一旦过500,占用内存就会超过1.5GB,但系统显然不会让你的所有内存被占满,于是用到虚拟内存。但这时其实最 高指挥官占用的虚拟内存已经接近2GB了,也就是说,最高指挥官实际上占用的虚拟内存比物理内存还要多。
官网上那个家伙,开了81*81的大图,1VS7AI,结果才十分钟就CRASH了,在这之前他看过内存占用情况,占用物理内存1.6GB,而占用虚拟内存达2.08GB,几秒钟后切回去就崩溃了。

微软对此有个解决方案:
http://www.microsoft.com/whdc/system/platform/server/PAE/PAEmem.mspx

那个家伙对此开出了几个解决方案:
For Vista:
Vista 32 bit (not x64) needs to run this command instead of the XP boot.ini change mentioned in the readme.txt.
At a command prompt:
Code:
BCDEDIT /set increaseuserva 2900
The readme.txt has the rest of the directions that should be applied in reference to the image header.
Vista x64 doesn‘t need the bcdedit, just run the startme.bat I supply as mentioned in the readme.

X64 OS:
A 64 bit OS is also limited to 2GB for user-mode virtual application space for a single process until the Large_Address_Aware header is in place in the executable. So on x64 run the startme.bat batch file, that is all you need to do for x64 to allow SupCom to use >2GB and up to 4GB on x64. (
MSDN reference)

An Additional Note: (5-26-07)
Lately, some have been trying to check their memory usage in Task Manager after a crash to see if this is the cause of their crashes. This will not work for two reasons.
You will not be able to accurately and reliably identify SupCom‘s address space or any memory usage AFTER a crash, as certain threads may have been killed. Besides that, and more importantly, Windows Task Manager does not even have the ability to show you the memory metric of virtual address space set aside for that process, which is what this focus is about. A unit count in SupCom can be used as a very rough guideline, that if their is about 2300 units in a large map (give or take), that is the memory ceiling crash limit without this


以上系统我没用过,也不清楚到底怎么做,但我所关心的XP系统下的解决方案他没细说,看了微软网站半天后我才发现解决之道非常简单,在启动盘下的BOOT.INI文件中加一个参数即可

举例:
文件原来的命令行:
[boot loader]
timeout=1
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional"
。。。

在上述最后一行末尾加上参数“/3GB”

修改后如下:

[boot loader]
timeout=1
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional"/3GB
。。。

重启后生效

另外,请不要在一些优化软件或“我的电脑”右键占属性的高级选项中限定虚拟内存的大小,如果要限定,请把上限提高到3072M以上。

测试后感觉非常好,前几日经常不定时跳出的单位数下现在能稳定地跑上一二个小时,一点事儿也没有。用了这方法,腰不酸了,腿不疼了,吃嘛嘛香!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多