占据坏物理内存

由于我有一条4G内存条因安装时不小心烧坏,软件使用到这个内存条某些地址时会很卡。


我想到这是一些物理地址访问时有故障造成,如果我用一个程序把这些地址先占用住,使其他软件不使用故障的地址,那就跟好的内存一样了。做了这个程序(下载地址:http://download.csdn.net/detail/cento123/9851140,要1下载分),试用效果还不错。


原理是:您用《任务管理器》观察你使用的软件在物理内存使用到多大时,程序会出现很卡的现象(玩大型游戏,或多开安卓模拟器玩游戏时就很明显了)。那您就在系统启动时,以这个地址为起始,占用一定的内存,本程序就把这段内存占用了,再运行您要使用的软件,卡顿现象就消失了。


实际情况:我用《逍遥安卓多天模拟器》及《靠谱助手》玩某手游,内存用到6~7G(用到坏的那4G内存了),有一、两个窗口会很卡。我这时用《任务管理器》观察至物理内存占用为5.3G,或6.3G,我就推断:可能我这条4G内存在每个300M的那个地址上是坏的。我就用这个程序,在4300M处占用200M,5300M处占用200M,6300M处占用200M,7300M处占用200M,结果游戏基本上正常了,那种像锁住不动的卡顿现象消失了--我这样占用了900M后再玩游戏,坏的4G内存条相当于3G好的内存条的效果!


注意:

1)我这个程序是写死了8G物理内存的机器,如果您机子是16G物理内存(或更大),那要改一下程序的那个判断(代码中有注释,我懒得把这个设计成可设置的灵活程序)。

2)菜单中那个【占内存】是开发初始时,程序写死在3.998G处开始占500M,基本上不用它了。使用【手工占用】那里可配置程序启动时自动占用的多个地址及长度。

3)这个程序在技术上只是使用了MemoryStream来占内存,效果是达到了,但这有可能会占用的是虚拟内存部份(看代码注释,也就是1)的那个8G判断)。我没有找到明确使用物理内存(像汇编、C语言那样)的技术。


原代码下载地址:http://download.csdn.net/detail/cento123/9851140,要1下载分

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值