"Out of Memory"的提示经常会让我们回忆起 DOS 时代640KB内存的限制,不过这并不完全是 DOS 的专利,Windows Vista 系统用户在玩一些新游戏时也会遇到这种提示。追究硬件原因则是因为在 Windows 平台上应用程序2G寻址范围的限制,另外 Vista 系统对显卡虚拟显存的处理方法也存在疏漏。
微软近期针对此问题发布了一个 hotfix 补丁,虽然仍处于测试阶段,但据媒体测试确实已经解决了"Out of Memory"错误。由于此补丁仍处于测试期,所以并不会出现在 Windows Update 中,是否会被包含于 Vita SP1 中目前亦未可知。
Windows 显示驱动模式(WDDM)是 Windows Vista 系统所带来的新特性之一,WDDM 可以通过显卡支持实现一些特别的桌面效果,比如说玻璃效果。WDDM 对 Vista 系统带来的另外一大好处是支持虚拟化显存管理,因为 WDDM 的介入,其它应用程序可以无须担心显卡的显存是否够用,能否存下程序和游戏所需要的纹理贴图或者其它一些信息。
不过和 Windows 下的程序一样,虚拟化显存管理程序一样受到2GB寻址的制约,当应用程序和显存管理程序发生冲突时,就有可能用完2GB寻址空间。微软 发布的补丁程序试图减轻这一问题的影响,当某个应用程序对显存特别需求时,通过建立一个虚拟的显存空间来解决上述的冲突问题。微软把这个流程称为 "lockable",打过补丁之后,只有 lockable 的程序才能建立一块虚拟的显存空间。
AnandTech 网站的测试显示这一补丁确实显著的降低内存对游戏的影响,通过一块 768MB GeForce 8800 GTX 的实测证明,每款游戏的内存占用量大概在400MB左右。不过,即使是打过补丁之后,Vista 系统下的游戏平均内存占用率也比同硬件情况下的 XP 系统多出 180MB。通过补丁程序可以让大多数游戏处于2GB的安全线以下,不过仍有游戏例如《Supreme Commander》达到了1580MB内存空间占用,我们不知道新一代的游戏是否会再次突破这一限制,导致问题重新出现,除非人们都使用上64位操作系统。
没有评论:
发表评论