XP/win2003下发现1G的内存比512M还慢的解决方法

内存越大,机器越快?我想大多数人的回答都是肯定的,从256M到512M的提示是明显的,所以想当然的,从512M到1G的提升也会很明显吧。但是我用我的亲身经历告诉你,1G的内存比512M还慢,当然前提是你什么都不设置。

  前几天我把我的Compaq N410c扩展到了1G的内存,2×512M pc133的SD,结果扩展之后发现机器不但还跟原来一样,有点卡,而且休眠时间变长了,这是肯定的啦,休眠就是把内存里的东西拷贝到硬盘上,内存越大,休眠时间肯定越长了,这让我很郁闷,难道我花了500多升级我的机器,反而比原来更慢了。

  我用memstate这个软件实时监测我的内存情况,发现一直都有600多兆的空余内存,这说明机器的内存是非常够用的,甚至很多都在被浪费着,可是机器为啥还是这么慢呢?于是我到google上找原因,结果发现已经有很多人发现这个问题了,并且已经有了权威的解释,这里我把关键的部分摘抄出来,并结合自己的使用心得与大家分享。
注:这里的修改以及使用方法均针对XP系统。

  一、修改注册表发挥大内存优势

  现在请打开注册表编辑器,找到


代码如下:

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Momory Management]

在右侧窗格修改一些键值,具体如下(要注意的是,做一下设置的前提是内存最好超过512MB,并仅限于Windows 2000/XP)。

  (1)"LargeSystemCache"(启动大的系统缓存):在内存中开辟一块大的内存空间用于磁盘文件系统的预读取操作。当程序连续请求的数据增加时,Windows通过系统缓存自动预读,使程序能以最快速度获取所需数据。由于启用这个系统缓冲会占用较多的物理内存,使得能被程序利用的可用物理内存减少。将其值设为1。这样,系统缓存从4MB增加到8MB。

  (2)"SecondLevelDataCache"(提高cpu性能):CPU的处理速度要远远大于内存的存取速度,而内存又要比硬盘快得多。这样CPU与内存之间,内存与磁盘之间就形成了影响性能的瓶颈效应,前面的"LargeSystemCache"是为了缓解内存与磁盘瓶颈而设计的,而CPU为了能够迅速从内存获取处理数据也设置了一种缓冲机制L2 Cache(二级缓存)。调整这个键值能够使Windows更好地配合CPU利用该缓存机制获得更高的数据预读取命中率。建议将其设置为512。

  (3)DisablePagingExecutive(禁用页面文件):将其值改为1(十六进制),这样将使所有程序和数据强制性限定在物理内存中运行,而不是使用虚拟内存。很明显,当有足够多的物理内存来完成所需任务时(比如1GB以上),这样做必使系统性能得到巨大的提升。对于内存仅有128MB甚至更少的用户而言启用它或许就是灾难——系统频繁出错,直至崩溃。

  (4)"IOPageLockLimit"(定制输入/输出缓冲尺寸):输入输出系统是设备和微处理器之间传输数据的通道,当扩大其缓冲尺寸时数据传递将更为流畅。同理,具体设置多大的尺寸要视物理内存的大小和运行任务多少来决定,一般来说,如果内存有64MB就可将该双字节键的16进制值设置为400(1MB)、800(2MB)或1000(4MB)128MB内存可设为1000(4MB)、2000(8MB)或4000(16MB);256MB内存4000(16MB)或8000(32MB)。当然如果有更多内存,完全可以将其设为10000(64MB)甚至更多。当设为0时,Windows将自动配置。

  设置这些之后,重启系统即可。其实修改这些的效果并不是很明显,不过心理上总有个安慰吧,下面的才是让你感到质的飞跃的地方。

  二、利用虚拟硬盘软件

  这里要向大家介绍一个软件,RAMDisk Plus,这个软件就是把内存的一部分划分出来作为一个磁盘分区用的,你可以把一些临时文件夹转移到这个分区上,比如IE的临时文件夹,这样会大大提升你浏览网页的速度。内存的传输速度和硬盘的传输速度的差距我想大家都清楚吧,用内存的一部分作硬盘相当于添加了一个几十万转的硬盘,速度的提升可想而知。这个是我的亲身体会,我把我的内存中的100M划出来作为一个分区,然後把IE的临时文件夹挪到上面,重启之后,打开网页就是一瞬间,以前即便是在网速很好的半夜,也没有这么快的,看来很多时候网速不是瓶颈,机器才是瓶颈啊,尤其是那些图片较多,需要缓存的网页,大家可以试试。划出这100M内存之后,我现在的正常可用内存还保持在500M以上,还有好多空间啊,好在RAMDISK plus可以添加多个分区,我可以再划出来几个分区,然后把一些常用程序放进去,这样运行起来肯定也快多了。

  不过记住,内存掉电后里面东西就都没了,但是还好,Ramdisk plus提供了关机自动保存的选项,也就是关机的时候可以把虚拟硬盘分区中的东西保存到实际硬盘分区中你指定的地方,然后开机的时候再load回来,跟休眠的道理差不多啦,只是这样就会导致关机时间和开机时间变得很长,所以我建议只在虚拟硬盘分区上放临时文件,反正临时文件迟早是要被清空的,放到ramdisk上还省去了手动清空的麻烦。

(0)

相关推荐

  • XP/win2003下发现1G的内存比512M还慢的解决方法

    内存越大,机器越快?我想大多数人的回答都是肯定的,从256M到512M的提示是明显的,所以想当然的,从512M到1G的提升也会很明显吧.但是我用我的亲身经历告诉你,1G的内存比512M还慢,当然前提是你什么都不设置. 前几天我把我的Compaq N410c扩展到了1G的内存,2×512M pc133的SD,结果扩展之后发现机器不但还跟原来一样,有点卡,而且休眠时间变长了,这是肯定的啦,休眠就是把内存里的东西拷贝到硬盘上,内存越大,休眠时间肯定越长了,这让我很郁闷,难道我花了500多升级我的机器,

  • Win10下 Redis启动 错误1067导致进程意外终止的解决方法

    一.系统环境 操作系统:Windows10专业版 64位 Redis版本:redis-64.3.0.503 二.问题描述 1.命令行启动: redis-server redis.windows.conf 可以启动成功: 2.将Redis安装为Windows系统服务: redis-server --service-install redis.windows-service.conf --loglevel verbose 3.进入系统服务页面: Win + r打开运行命令框,services.msc

  • MySQL常见内存不足启动失败的完美解决方法

    1.启动MySQL时一直不成功,查看错误日志 /var/log/mysql/error.log 2.主要的错误信息有如下几条: [ERROR] InnoDB: mmap(136151040 bytes) failed; errno 12 [ERROR] InnoDB: Cannot allocate memory for the buffer pool [ERROR] InnoDB: Plugin initialization aborted with error Generic error [

  • win2003下安装apache2.2.3+php5.2+mysql+Zend的配置方法第1/2页

    写一个现在来说最新的最详细的安装说明,因为我是重装系统后再配置的,有部分只需要修改配置文件就可以了 一.使用软件: apache_2.2.3-win32-x86-no_ssl.msi php-5.2.0-Win32.zip mysql-4.1.18-win32.zip或mysql-5.0.18-win32.zip phpMyAdmin-2.9.1.1 配置环境:Windows 2003 sp1 二.具体步骤 注意事项:安装过程,任何目录和文件名都不要使用空格, 不要使用D:\Program Fi

  • SQL Server 2008 R2占用cpu、内存越来越大的两种解决方法

    SQL Server 2008 R2运行越久,占用内存会越来越大. 第一种: 有了上边的分析结果,解决方法就简单了,定期重启下SQL Server 2008 R2数据库服务即可,使用任务计划定期执行下边批处理: net stop sqlserveragent net stop mssqlserver net start mssqlserver net start sqlserveragent 第二种: 进入Sql server 企业管理器(管理数据库和表的,这个都不知道就不用往下看了),在数据库

  • Windows环境下npm install 报错: operation not permitted, rename的解决方法

    前言 最近发现了一个问题,运行 npm install 命令安装依赖包,在 Mac 上的 Vagrant 装的虚拟机上没问题,在阿里云 CentOS 上也没问题,但是在 Windows 环境同样是 Vagrant 装的环境相同的虚拟机上就是不成功,报错如下: npm ERR! Error: EPERM: operation not permitted, rename '/usr/share/nginx/html/tanteng.me/node_modules/duplexify' -> '/us

  • IIS下Zend 出现 Unable to view file mapping 问题的解决方法汇总

    zend 错误日志中有:Unable to view file mapping, 试图访问无效的地址.网上搜了下解决方法有 解决方法如下: 对比php两个版本的php.ini文件. ;extension=php_yaz.dll;extension=php_zip.dll检查这个两个是否存在新的版本中.同时确认extension=php_zip.dll前面的;去掉保存重启iis和mysql 大功告成 另外一种说法 eAccelerator v0.9.4-rc1, 这个php加速插件,把这个屏蔽掉就

  • Xcode 9下适配iPhoneX导致iOS 10不兼容问题的解决方法

    前言 前久发现测试组提交来一个 bug,说有的布局在 iOS 11 上正常,在 iOS 10 下不正常.分别在 iOS 11 模拟器和 iOS 10.3 模拟器上跑了一下 app,发现果然如此,如下图所示: iOS 11 下点击"省市广播站",下级菜单中的按钮正常显示: iOS 10 下点击"省市广播站",下级菜单显示为空白: 解决方法 检查代码,发现下级菜单中的按钮是以手动布局方式动态添加到一个 scroll view 中的.添加时指定了按钮的框架,框架计算完全正

  • php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法

    本文实例讲述了php下foreach()错误提示Warning: Invalid argument supplied for foreach() 的解决方法.分享给大家供大家参考.具体实现方法如下: 一.问题: php下foreach()错误提示Warning: Invalid argument supplied for foreach() 错误提示:Warning: Invalid argument supplied for foreach() in E:wampwwwmyshopcart.p

  • IIS下ASP目录漏洞和IIS分号漏洞(;)的临时解决方法

    解决方法: 下载 银月服务器工具,使用工具->组件下载器下载ISAPI_Rewrite,解压出来. 把ISAPI_Rewrite中的ISAPI_Rewrite.dll添加为ISAPI,名字为ISAPI_Rewrite,这就是伪静态,做过的不用安装了 下载漏洞补丁包,即下图选择的项目,下载打开! 把ISAPI_Rewrite目录中的httpd.ini替换成补丁包中的httpd.ini. 或者保证ISAPI_Rewrite下面的httpd.ini有下图选择的两行规则也行!这样就能防止这两个IIS漏洞

随机推荐