81020363 发表于 2009-11-11 14:02

怎样分配虚拟内存最合理?

我的物理内存是2G,现在分配了2046-4092M的虚拟内存在系统盘,系统盘剩余空间为7G

这样分配在系统盘好吗?还是分配在还有很多空间的扩展分区的盘里好?
还有只分配2046-4092M够吗?


顺便补一下课,虚拟内存的作用究竟是什么???

IronMartYn 发表于 2009-11-11 14:34

当你的物理内存不够用的时候,系统会在硬盘上面划分出来一块空间,作为内存使用

如果你的物理内存达到了3GB以上,可以关闭虚拟内存的,开启虚拟内存理论上会导致速度下降的,毕竟内存的速度要远远高于机械硬盘的速度

建议把虚拟内存放到其他硬盘分区上面

18502539 发表于 2009-11-11 14:48

为了游戏,我已经关闭了虚拟内存。因为听讲,如果游戏运行用到虚泥内存, 会有鼠标拖晃现象,这对FPS 来说是致命的。

超频爱好者 发表于 2009-11-11 16:09

虚拟内存只是物理内存的补充而已,除了少部分程序设计缺陷仍然需要虚拟内存外,绝大部分情况下只要物理内存充足可以毫不犹豫地将其关闭,程序长时间运行状态下的流畅程度将得以很大提升.
不过以LZ的内存容量在运行一些大型程序时可能会被全部啃光,设置一些虚拟内存较为保险,具体数目推荐700MB-2GB之间,再大也没有用了。

81020363 发表于 2009-11-11 16:28

意思就是当物理内存被全部占用了,才会用到虚拟内存吗?

如果我打开进程管理器(或系统的任务管理器)随时查看着物理内存,我玩游戏只要不是2G的物理内存全部被占光的话,虚拟内存根本是没用的么?

81020363 发表于 2009-11-11 22:26

原帖由 81020363 于 2009-11-11 16:28:00 发表
意思就是当物理内存被全部占用了,才会用到虚拟内存吗?

如果我打开进程管理器(或系统的任务管理器)随时查看着物理内存,我玩游戏只要不是2G的物理内存全部被占光的话,虚拟内存根本是没用的么?

81020363 发表于 2009-11-12 12:37

为了真相,我毅然一顶!

pdear 发表于 2009-11-12 13:30

虚拟内存最小和最大值都设置为物理内存的2.5倍,最好不要放在系统盘内

网上有很多都是这样建议的,具体有什么依据我也不清楚。

zhiwei75 发表于 2009-11-12 13:43

设置某一分区页面文件为系统管理大小即可

leal_ll 发表于 2009-11-12 14:19

恩,在这学习了~!

81020363 发表于 2009-11-12 14:35

如果我基本上内存不会用光,是不是不设置虚拟内存会比较好呢?

IronMartYn 发表于 2009-11-12 14:48

回复 11# 81020363 的帖子

是的

zhiwei75 发表于 2009-11-12 14:50

这个就要看你平时的内存使用量了.如果你使用内存的量少于2G,可以不设虚拟内存,完全使用主内存,不光是对硬盘好,还能增加电脑的性能.如果你不设置虚拟内存,而你物理内存又不够用,系统就会重启的.
PF使用率500多,就说明你的电脑使用了500M的虚拟内存.这里要注意一下,并不是物理内存耗尽才开始使用虚拟内存的(系统会自动调度使用虚拟内存,也就是说它会随机把暂时不用的调入页面文件中).
你可以通过任务管理器的性能页面中查看,如果你的可用内存数大于PageFile数,那么你可以关闭虚拟内存的.

81020363 发表于 2009-11-12 18:39

就算玩最后的神迹占1.7G,还没到2G
如果不设置虚拟内存是只要一用得超过2G就会立刻自动关机吗?

pdear 发表于 2009-11-12 19:48

不设置虚拟内存的话,运行某些程序时会报错(即便是物理内存足够)

81020363 发表于 2009-11-12 20:44

不是吧,具体是哪些程序会出错?那就是怎样也得设置一点?最低能设多少?

凉阵阵 发表于 2009-11-12 21:04

原帖由 81020363 于 2009-11-12 18:39:00 发表
就算玩最后的神迹占1.7G,还没到2G
如果不设置虚拟内存是只要一用得超过2G就会立刻自动关机吗?

我不是高手,但就我从网上找到的相关资料来看。

windows 32位系统下的程序所占用的内存是不能超过2GB的,说以虚拟内存也还是需要的。而且有些程序在设计的时候就被设计为需要使用虚拟内存。
为减少因使用虚拟内存产生碎片造成系统盘缓慢的影响,虚拟内存大部分应该设置在其他较少使用的非系统分区,但是也不好完全不设,彻底关闭虚拟内存,如果系统崩溃的话,就没法产生事件记录以供查询了。
如果有好几个物理硬盘,最好每个盘都设一个虚拟内存,提高系统磁盘控制器的效率,让虚拟内存的读写可以分开在不同硬盘里,避免数据在不同硬盘来回倒腾。
至于设置多少,许多文章都说,如果硬盘空间不是特别紧张,设置为系统托管就行了。

——以搜索中文为目标,还是百度强些。

81020363 发表于 2009-11-12 23:04

有的说不设好有的说多少得设置一点,到底哪个才对呢!

sanpupu 发表于 2009-11-13 03:58

原帖由 pdear 于 2009-11-12 13:30:00 发表
虚拟内存最小和最大值都设置为物理内存的2.5倍,最好不要放在系统盘内

网上有很多都是这样建议的,具体有什么依据我也不清楚。
没这么夸张吧,我6G内存不是要设置12G虚拟的......

krizalidzf 发表于 2009-11-13 08:41

虚拟内存可以放在别的盘里,但是C盘速度快,放C盘比较好。不过最大值最小值设成一个数值比较好。可以减少文件碎片。如果内存较大,设成一个较小数值就行。不过无论你的内存有多大,一般来说也不能关闭虚拟内存,很多程序还是要用到的,否则会程序出错。

81020363 发表于 2009-11-13 12:31

那我设置1M如何!

18502539 发表于 2009-11-13 14:25

有哪个程序能用到2G 内存就真的佩服他了。 我自己是4G 内存所以没有设置虚内,为了游戏的稳定, 但是如果真的只有2G 内存还是在非系统盘让系统自动设置一个分区好了。

81020363 发表于 2009-11-13 15:55

那我搞个几百M的虚拟内存吧?楼上那位说将虚拟内存设置到系统盘会快一点??

175439824 发表于 2009-11-17 13:29

物理内存的2~4倍就可以了

70023940 发表于 2009-11-18 11:12

弱弱的问~!现在动不动都数G的内存~还用在意虚拟内存么?

mineme 发表于 2012-1-16 13:27

说2.5倍的应该是看了windows系统设置的推荐分配虚拟内存的大小。
我8G的内存系统建议分配10+GB的虚拟内存,着实令俺汗颜……
C盘需要设定一定的虚拟内存(400MB以上),最好不要关闭C盘虚拟内存,因为系统的错误转存和相关日志报告都要靠它来完成,否则会导致这些功能失常。
具体怎么分配虚拟内存我也在寻求答案之中…………

nkvdsk 发表于 2012-1-16 14:26

呵呵,小弟也分享些拙见
1.    对于单硬盘用户,磁盘外道是比内道要快的。如果你知道自己盘符的扇区划分就很容易找到高速区
这也就是为啥机械硬盘测hdtune速度是一条曲线,寻道时间也是线性的。不想ssd,一条直线
2.      内存是连续空间,但是因程序、操作、内存分配管理等原因会造成不连续的空间。也就是内存碎片,这个影响很小且不可避免。一般用链表指向就能逻辑上形成连续空间来使用。所谓的内存整理就是消除碎片,并将一部分数据写入虚拟内存
3.      cpu直接操作是内存,所有数据变化都靠内存实现。对于一些暂时不做变化改动的数据则可以写入硬盘备用,需要调用时再读出来。这样做的意义是节约内存。提高使用性。毕竟,将一些暂时不需要参与运算的数据放在内存真的是浪费它的超高速度了。但是硬盘一写一读,速度还是会变慢。
    至于为什么内存没用完就开始写入虚拟内存,这是为了提高系统响应。对于一台4g内存的机子,假设开机共用内存1.23gb,有1g是在内存里面的。剩下0.23g是不常用数据(已加载,但不怎么用)将写进虚拟内存。剩下的3g空闲内存是为了接下来的工作而准备,提高速度。当然,这是按应用决定的。如果你只是浏览网页,看电影的话,大可关闭虚拟内存,1g占用和1.23g占用无区别。

区别于休眠,休眠就是将所有内存(包括空闲的)做镜像写入硬盘,休眠时,机器断电,内存数据丢失。开机时,直接将镜像还原到内存,原原本本的还原之前的工作状态,内存地址分毫不差。同理,12g内存的机子,一次休眠要12g的硬盘空间。

------------全手打---------
望交流

nkvdsk 发表于 2012-1-16 14:43

70023940 发表于 2009-11-18 11:12 static/image/common/back.gif
弱弱的问~!现在动不动都数G的内存~还用在意虚拟内存么?

如果你用dos的话确实不用了
老早前(你还没摸电脑的时候)就有位it名人说:“内存神马的32mb就够啦!”
当时是萌芽期,dos还是主流。现在就成笑话了。
win98时对系统稍作更改就要重启,xp时某些驱动也要重启才能使用,win7时,使用新技术,显卡驱动安装都不用重启了。还有uac、虚拟化(沙箱)等这些技术实现是要一定条件的,内存大小就是其一
科技在发展。目前也可以不要虚拟内存,要么向下发展,xp(64位)+4g内存妥妥的要么向上win7(64位)+16g

kyotrue 发表于 2012-1-16 14:45

这挖坟挖得。。。

2G及以下内存,虚拟内存设成物理内存的2倍。

4G及以上的,虚拟内存设为4G即可。

不管你内存有多大,虚拟内存都是不能关闭的,如果你把她关闭了,就会有很多意想不到的错误发生,因为很多软件会直接操作虚拟内存的。

虚拟内存过大只是浪费硬盘空间,不会造成性能影响的,如果你的物理内存没用完,Windows也不会把数据交换到虚拟内存中的。

咸水草 发表于 2012-1-16 15:15

内存便宜啊,我现在8G没做虚拟内存
页: [1] 2
查看完整版本: 怎样分配虚拟内存最合理?