设置虚拟内存大小多少合适

作者&投稿:代爱 (若有异议请与网页底部的电邮联系)
~ 虚拟内存设置(解决linux内存不够情况)
背景介绍
Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存的造价是要高于磁盘的,且内存的断电丢失数据也是不能把所有数据和程序都保存在内存中的原因。
既然不能全部使用内存,那数据还有程序不可能一直霸占在内存中。当内存没有可用的,就必须要把内存中不经常运行的程序踢出去。但是踢到哪里去,这时候swap就出现了。
Swap全称为swap place,即交换分区。当内存不够的时候,被踢出的进程被暂时存储到交换区。当需要这条被踢出的进程时,就从交换区重新加载到内存,否则它不会主动交换到真实内存中。
Swap介绍
在详细介绍swap之前,需要知道的是计算机内存分为物理内存与虚拟内存(注意虚拟内存和
虚拟地址空间
的区别)。
物理内存是计算机的实际内存大小,由RAM芯片组成。虚拟内存则是虚拟出来的、使用磁盘代替内存。虚拟内存的出现,让机器内存不够的情况得到部分解决。当程序运行起来由
操作系统
做具体虚拟内存到物理内存的替换和加载(相应的页与段的虚拟内存管理)。这里的虚拟内存即所谓的swap。
当用户提交程序,然后产生进程在机器上运行。机器会判断当前物理内存是否还有空闲允许进程调入内存运行,如果有则直接调入内存进行;如果没有,则会根据优先级选择一个进程挂起,把该进程交换到swap中等待,然后把新的进程调入到内存中运行。根据这种换入和换出,实现了内存的循环利用,让用户感觉不到内存的限制。从这也可以看出swap扮演了一个非常重要的角色,就是暂存被换出的进程。
内存与swap之间是按照
内存页
为单位来交换数据的,一般Linux中页的大小设置为4Kb。而内存与磁盘则是按照

来交换数据的。
Swap的设置
从上可以看出,当物理内存使用完或者达到一定比例之后,我们可以使用swap做临时的内存使用。当物理内存和swap都被使用完那么就会出错,如:out of memory。
对于使用多大比例内存之后开始使用swap,在系统配置文件中可以通过调整参数进行修改。
1
# cat /proc/sys/vm/swappiness2 60
该参数范围为0-100。0就是最大限度使用内存,尽量不使用swap;100是积极使用swap。
物理内存无法更改,所以swap大小的设置将会影响应用能否正常运行。swap大小的确定,根据Centos官网介绍可以得出如下公式:
1 M = Amount of RAMinGB, and S = Amount of swapinGB, then If M 2, S = M *2 Else S = M + 2
注意:最小不应小于32M。
Swap分区的数量对性能也有很大的影响。因为swap毕竟还是以磁盘来伪装成内存,交换的操作是磁盘IO的操作而不是内存的ioad与store操作。如果有多个swap交换区,每个swap会有一定的优先级,该优先级也可以调整。swap空间的分配会以轮流的方式操作于所有的swap,这样会大大均衡IO的负载,加快swap交换的速度。
swap相关命令
1
# swapon -s #查看当前swap的使用情况2 Filename Type Size Used Priority3 /dev/sda3 partition 2064376 0 -14
# cat /proc/swaps #查看当前swap的使用情况5 Filename Type Size Used Priority6 /dev/sda3 partition 2064376 0 -17
# swapoff /dev/sda3 #关闭相应的swap_disk_name8
# swapon -s9 Filename Type Size Used Priority10
# swapon /dev/sda3 #启动相应的swap_disk_name11
# swapon -s12 Filename Type Size Used Priority13 /dev/sda3 partition 2064376 0 -1
虚拟内存设置
1、检查 Swap 空间
在设置 Swap 文件之前,有必要先检查一下系统里有没有既存的 Swap 文件。
运行以下命令:
swapon -s
如果返回的信息概要是空的,则表示 Swap 文件不存在。
2、检查文件系统
在设置 Swap 文件之前,同样有必要检查一下文件系统,看看是否有足够的硬盘空间来设置 Swap 。运行以下命令:
df -hal
检查返回的信息,还剩余足够的硬盘空间即可。
3、创建并允许 Swap 文件
下面使用 dd 命令来创建 Swap 文件。
dd if=/dev/zero of=/tmp/swapfile bs=1024 count=1024k
这样就建立一个/tmp/swapfile的分区文件,大小为1G。
参数解读:
if=文件名:输入文件名,缺省为标准输入。即指定源文件。 if=input file
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。 of=output file
bs=bytes:同时设置读入/输出的块大小为bytes个字节
count=blocks:仅拷贝blocks个块,块大小等于bs指定的字节数。
4、格式化并激活 Swap 文件
上面已经创建好 Swap 文件,还需要格式化后才能使用。运行命令:
dd if=/dev/zero of=/tmp/swapfile bs=1024 count=1024k
激活 Swap ,运行命令:
swapon /tmp/swapfile
以上步骤做完,再次运行命令:
swapon -s
你会发现返回的信息概要:
Filename Type Size Used Priority/tmp/swapfile file 524284 0 -1
如果要机器重启的时候自动挂载 Swap ,那么还需要修改 fstab 配置。
用 vim 打开 /etc/fstab 文件,在其最后添加如下一行:
/tmp/swapfile swap swap defaults 0 0
最后,赋予 Swap 文件适当的权限:
chown root:root /tmp/swapfilechmod 600 /tmp/swapfile
同时,我们还可以修改 Linux Swap 空间的 swappiness ,降低对硬盘的缓存。
Linux 会使用硬盘的一部分做为 Swap 分区,用来进行进程调度–进程是正在运行的程序–把当前不用的进程调成‘等待(standby)’,甚至‘睡眠(sleep)’,一旦要用,再调成‘活动(active)’,睡眠的进程就会在 Swap 分区,把内存空出来让给‘活动’的进程。
如果内存够大,应当告诉 Linux 不必太多的使用 Swap 分区,可以通过修改 swappiness 的参数来设置。swappiness=0 的时候表示最大限度使用物理内存,然后才是 Swap 空间,swappiness=100 的时候表示积极的使用 Swap 分区,并且把内存上的数据及时的搬运到 Swap 空间里面。
在 CentOS 中,swappiness 的默认值是60。
通过以下命令可以看到:
cat /proc/sys/vm/swappiness
返回值60
我们可以调整 swappiness 的值到一个合适的参数,从而达到最优化使用 Swap 的目的。这里我们将其设为10。这样你就将值由60改为10,这可以大大降低系统对于swap的写入,建议内存为512M或更多的朋友采用此方法。如你你发现你对于swap的使用极少,可以将值设为0。这并不会禁止你对swap的使用,而是使你的系统对于swap的写入尽可能的少,同时尽可能多的使用你的实际内存。这对于你在切换应用程序时有着巨大的作用,因为这样的话它们是在物理内存而非swap分区中。
使用 sysctl 命令:
sysctl vm.swappiness=10
但是这只是临时性的修改,在你重启系统后会恢复默认的60,要永久设置,还需要在 vim 中修改sysctl.conf:
vi /etc/sysctl.conf
在这个文档的最后加上这样一行:
# Search for the vm.swappiness setting. Uncomment and change it as necessary.vm.swappiness=10
输入:x,保存退出 vim 。
这样一来,Swap 分区重启后都会生效了。


虚拟内存怎么设置最好
6,点击你电脑系统所在的驱动器,再点击“自定义大小”选项,在“初始大小”和“最大值”的输入框里输入设定的大小数值,最后再点击“设置”按钮和底部的“确定”按钮即大功告成。须知:虚拟内存容量一般设置为物理内存的1.5-3倍左右才是最合适的,按照1G等于1024MB计算,设置合适的虚拟内存数值。

虚拟内存怎么设置最好
建议将初始大小和最大值同时设置为你物理内存的1-2倍,比如2G设置为4096MB(2G内存是2倍),3G设置为4608MB(3G内存是1.5倍),4G内存先设置为4096MB(4G的1倍不够在加),6-8G内存或更大就选则自动管理就是了。如果你的物理内存是2G,建议升级一下你的物理内存(初始大小和最大值设置要一致)。如...

我的电脑物理内存总共是400G,C盘是80g,那么虚拟内存怎么设置最小值和...
虚拟内存容量一般设置为物理内存的1.5-3倍左右才是最合适的,按照1G等于1024MB计算,设置合适的虚拟内存数值。

虚拟内存设置多大合适?
虚拟内存设置的大小,一般来说,初始大小等于内存的容量,如内存为2G,设为2000MB;最大值为内存容量的1.5倍,3000MB就可以了。

城市天际线虚拟内存设置多少
8、虚拟内存设置大小一般应该为物理内存的15倍为好,如果物理内存为2G,虚拟内存应该设置为3G=3072MB,如果物理内存为4G,那虚拟内存应该设置为6G=6144MB,我的物理内存为1G,那虚拟内存应该设置为15G=1536MB,注1G=1024。9、一般设置为内存的15倍,你内存不是512M的,他才会显示768M,这个虚拟内存不...

16g内存最佳虚拟内存设置
虚拟内存的设置大小一般是物理内存的1.5倍,16G的内存可以考虑调整为24576MB。如果只用于办公方面,那么运行内存大于或等于4G,不用设置虚拟内存。如果是用于玩游戏或进行其他工作,可以设置虚拟内存以防止系统死机。Windows的虚拟内存设置页面文件可以放置于系统中的联机的任何一个硬盘驱动器上。这个虚拟内...

16g内存设置多大虚拟内存
虚拟内存的设置大小,一般是物理内存的1.5倍,16G的内存可以考虑调整为24576MB,如果只用于办公方面,那么运行内存大于或等于4G,在任何情况下,都不用设置虚拟内存,如果是用于玩游戏或进行其他工作,就设置虚拟内存,以防止系统死机。虚拟内存应在C、D、E、F、G、H等等,盘符中越靠前越好,因为运行...

16g物理内存设置多少虚拟内存合适吃鸡
1、 虚拟内存设置大小一般应该为物理内存的1.5倍为好,如果物理内存为2G,虚拟内存应该设置为3G=3072MB,如果物理内存为4G,那虚拟内存应该设置为6G=6144MB,2、16G内存可以考虑调整为24576MB 虚拟内存设置方法如下:1.同时按下键盘“win+r”组合键,点击确定,然后再运行窗口中输入“sysdm.cpl”,...

电脑玩英雄联盟虚拟内存怎么设置最好
一般来说,页面文件的最大值设置得越大越好,建议设置为最小值的2到3倍4极端情况 假如硬盘空间比较紧张,在设置页面文件时,只需保证它不小于物理内存的34即可如果物理内存很大大于512MB,则可以将虚拟内存禁用。设置虚拟内存方法右击我的电脑属性高级性能中的设置高级虚拟内存中的更改选自定义大小,在初...

虚拟内存初始大小和最大值的设置
1、1024MB物理内存,自定义虚拟内存,初始值可设为768MB,最大值设为1024MB,如果在使用中发现不够用时,初始值不动,最大值可再往大了设,如1536\/2048MB 。2、最好将虚拟内存设置在装有系统的C分区以外,分区中磁盘剩余空间较大而又不常用的盘中,如D、F,这样可以避免系统在此分区内进行频繁的...

安宁区17072481940: 虚拟内存设置多大合适? -
武盼独一: 一般设置系统自动分配就可以了,这不是很重要的事,电脑快不快看内存条的大小,现在的系统不是XP时代,4G内存不算大内存,8G内存是标配,如果您用的是4G内存,建议加4G内存会快多了. 1)Win7810的方法: 右击计算机或这台电脑选...

安宁区17072481940: 我的虚拟内存设置多少合适 -
武盼独一: 通常,建议虚拟内存的设置为: 1、避开系统分区,选用剩余空间较多的其他分区. 2、虚拟内存值设置为:最小值与最大值相等,值为物理内存的两倍.如电脑内存为4GB,则虚拟内存设置为:自定义大小,初始大小8192,最大值8192.

安宁区17072481940: 虚拟内存设置多少合适啊 -
武盼独一: 根据内存设定. 最小值:物理内存的1.5倍,512*1.5 = 768 最大值:物理内存的3倍,512*3 = 1536

安宁区17072481940: 虚拟内存设置多大才合适 -
武盼独一: 虚拟内存 内存在计算机中的作用很大,电脑中所有运行的程序都需要经过内存来执行,如果执行的程序很大或很多,就会导致内存消耗殆尽.为了解决这个问题,Windows中运用了虚拟内存技术,即拿出一部分硬盘空间来充当内存使用,当内...

安宁区17072481940: 虚拟内存一般设置多少好? -
武盼独一: 根据需要进行设置.虚拟内存的设定主要根据你的物理内存大小和电脑的用途来设定;一般为物理内存的虚拟内存设为物理内存容量的1.5--3倍;在虚拟内存设置页面下方有一个推荐数值,如果确实不知道设置多少为最佳,建议虚拟内存就设为推荐的数值.、具体设置:计算机右键——属性——高级系统设置——性能——设置——高级——虚拟内存,自定义大小,输入数字后点击“设置”,确定,退出重启系统即可.

安宁区17072481940: 虚拟内存设置多大比较合适? -
武盼独一: 量身定制虚似内存 1.普通设置法 根据一般的设置方法,虚拟内存交换文件最小值、最大值同时都可设为内存容量的1.5倍,但如果内存本身容量比较大,比如内存是512MB,那么它占用的空间也是很可观的.所以我们可以这样设定虚拟内存的基...

安宁区17072481940: 请问虚拟内存设置多少合适 -
武盼独一: 虚拟内存的设置一般是根据物理内存大小所决定的,通常初始大小是设置为物理内存总容量的1-1.5倍(如8G内存就是初始大小就是8192),最大值设置为物理内存总容量2-2.5倍(如8G内存的最大值就是20480),虚拟内存设置超过这个数可以给总体内存增加一点点但是不会增加太多,也会给计算机运行程序的时候稍微增加一点流畅性.而这是在早期电脑所需要的做的.目前的电脑大多都是4G起步甚至8G,16G的内存为标配,不需要用户额外为其设置,只需要让其自动管理各驱动器的分页文件大小即可.如果有问题请追问...

安宁区17072481940: 电脑虚拟内存设置多少最好 -
武盼独一: 一、不管物理内存有多大,都不要关闭虚拟内存.因为Windows系统的许多核心功能都需要使用分页文件(虚拟内存),如果你禁用了虚拟内存,有些程序是需要虚拟内存才能正常运行的,有些第三方的应用软件就可能会遇到内存不足的错误而...

安宁区17072481940: 虚拟内存设置多大最好?
武盼独一: 其实设置多大,对你的电脑影响不大!最关键的还是你的物理内存大小!自然最好的方法就是扩展内存....至于虚拟内存,大内存时设置小点,小内存时设置大点,入楼上所言:2G为界! 小,虚拟内存设置为内存的1.5倍 大,虚拟内存设置为 最小512m,最大1024M 太大了浪费,太小了不够!!

安宁区17072481940: 虚拟内存一般设置到多少最好?
武盼独一: 通常虚拟内存的设置分为两的极.即最大值和最小值. 通常人们设定虚拟内存是根据自己实际内存的大小来设定的.最小值应设为实际内存的1.5倍而最大值应设为实际内存的倍.比如说.你现在的虚拟内存是128M,则虚拟内存的范围则可以设置为:最小值:128*1.5=192M.最大值:128*2=256M.当然还有更容易的.你可以用优化大师这款软件.它可以根据你的实际内存来精算出你的虚拟内存的最佳设置范围. 最后我要补充一点的是,你应该隔一段时间就清理虚拟内存里的分页碎片.养成良好的清理习惯.(优化大师里有这样的全面功能)要不然即使你的虚拟内存设置的再大也会被垃圾数据填充.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网