返回列表 发帖

看到迅雷官方对第三方做的内存优化补丁的评析

大家不要逼TW2做这种事啊,内存大没关系,内存就是要用的,不要像他们这样造假。

原文如下:
大概在昨天,网上出现一个文件,用他替换迅雷安装目录中的文件后会减少迅雷的资源占有,对此迅雷官方发布了相关说明.
替换所谓的优化库后,打开任务管理器,看Thunder5.exe,发现内存使用在不停的变化,大概每秒减少一次.
猜测可能通过系统函数SetProcessWorkingSetSize将进程页面交换出物理内存,造成内存占用低的假象.



打开迅雷5,用OllyDbg等调试器调试,在SetProcessWorkingSetSize函数上设置断点,断下后可以看到调用处代码,如图

用C语言表示就是

while(1)
{
Sleep(1618);
SetProcessWorkingSetSize(GetCurrentProcess(), -1, -1);
}

作用就是每1618毫秒将当前进程(迅雷5进程)物理内存页面交换到虚拟内存.
在程序需要访问这些被交换出物理内存的页面时就会触发页面错误.

操作系统会执行数十万条指令从虚拟内存将页面交换回物理内存,来解决这个页面错误.

而交换回物理内存的页面在1.6秒后又被所谓的优化库交换到虚拟内存.

这个过程不断重复会严重影响程序执行效率,cpu资源会被浪费在这种没有意义的页面交换上.

迅雷在下载时需要频繁读写内存,因此这个库不但没有优化资源,反而会增加磁盘读写次数增加cpu占用率,导致的结果就是下载速度降低,系统速度变慢.而且内存的减少也只是显示减少了,其实是假象.

相信tw不会这么无聊。。

TOP

楼主请放心
tw从1.x时代就抵制这样的做法
而是在程序本身做优化
直到现在某些浏览器还是这样做的
相关的讨论与说明论坛上也可以搜索的到
花招总会有被揭穿的一天
等用户真正了解了真相
自然会有自己的选择的
遇见浏览问题请将tw主程序拷贝到空白目录下运行,排除插件、设置文件的错误。反馈问题时请尽量包含以下内容,以便开发组可以尽快解决问题:TheWorld版本、操作系统、IE版本、问题现象(可截图说明)、问题重现方式(如果可以反复重现)
世界之窗浏览器--打开窗口看世界。
应用技巧和常见问题
风向吧

TOP

嗯..假象!!
就像一个10公斤的人...不论怎么做 ..他的重力加速度跟我们还是一样的
anywhere anytime anyone anything just you

TOP

原帖由 uulele 于 2007-10-26 23:08 发表 http://bbs.ioage.com/cn/images/common/back.gif
嗯..假象!!
就像一个10公斤的人...不论怎么做 ..他的重力加速度跟我们还是一样的



如果属实,那种做法就更象一个奸商:比如卖药的
拿着没有功用的仪器、打着专家免费义诊的幌子
甭管有病没病,只要你坐下了,仪器指定会通过“专家”告诉你,这有问题,那有问题
一旦你买了N多吃不死病但是很花RMB的药物之后,就算真的有病,他们就会告诉你没一点儿问题,要不再加两个疗程

TOP

我在网上也看到了这个内存优化的补丁,没敢用,不知道效果怎么样,现在看来的确是适得其反,谢谢楼主,解决了心中的疑问。

TOP

原帖由 靖哥哥 于 2007-10-26 22:55 发表 http://bbs.ioage.com/cn/images/common/back.gif
楼主请放心
tw从1.x时代就抵制这样的做法
而是在程序本身做优化
直到现在某些浏览器还是这样做的
相关的讨论与说明论坛上也可以搜索的到
花招总会有被揭穿的一天
等用户真正了解了真相
自然会有自己的选择的

TW 也有使用 SetProcessWorkingSetSize 把内存转到虚拟的,只是在不同的时机进行。

TOP

频繁调用此函数
不断的整理、释放
任务管理器中的内存占用
永远为最小值
甚至于失焦释放物理内存
造成系统额外开销更加大
以此给普通用户造成极大误解
本版就此问题来质问tw开发组的帖
也不是一两篇了
xx浏览器就很少的内存
tw为什么占用这么大的内存?
质问的、不满的一度甚嚣尘上
凤凰曾经有过一个说法
如果想做的话
可以使tw的内存占用在任务管理器中显示的极低
这样得不偿失的事情,tw的开发组是不会去做的
熟悉tw的特务应该都了解开发组的理念
tw在关闭多个页面标签后
只保留一个标签的情况下
会有一个释放内存动作
但是此释放并不是把物理内存占用转换到虚拟内存
这个可以很清楚的看出,只是在释放程序自身占用
而最小化释放物理内存是window的机制
挑选一个适合自己的软件,要明白自己需要什么
是追求表面数字上的完美,还是高效、稳定的运行
借用下本论坛某著名写手的名言:
“我选用TW主要是仰慕开发者的人品”
e,又是深夜了......
ps:某著名写手如果不幸看见了俺这个乱七八糟的回复
又不幸正好看见了俺未经许可,擅自转载的恶事
千万莫要介意哈,只要不收版权费
俺也仰慕您一次......
遇见浏览问题请将tw主程序拷贝到空白目录下运行,排除插件、设置文件的错误。反馈问题时请尽量包含以下内容,以便开发组可以尽快解决问题:TheWorld版本、操作系统、IE版本、问题现象(可截图说明)、问题重现方式(如果可以反复重现)
世界之窗浏览器--打开窗口看世界。
应用技巧和常见问题
风向吧

TOP

我现在觉得占不占用内存,占多少都没关系,只要不假死,不抢占cup 就可以了
毕竟现在内存已经很便宜了,再强调 内存的占用已经没有什么前途了

TOP

象这样做法的  只要在资源管理器里面设置显示虚存 应该就可以看出猫腻了吧?内存使用是小了 可虚拟内存可一点没小

TOP

回复 #1 hynos 的帖子

我好像还用了这个补丁呢
马上改过来!
只要你相信奇迹,你就会生活在奇迹之中...
If you believe in miracles, you will be in the miracle of life...

TOP

原帖由 靖哥哥 于 2007-10-27 02:40 发表 http://bbs.ioage.com/cn/images/common/back.gif
频繁调用此函数
不断的整理、释放
任务管理器中的内存占用
永远为最小值
甚至于失焦释放物理内存
造成系统额外开销更加大
以此给普通用户造成极大误解
本版就此问题来质问tw开发组的帖
也不是一两篇了
...


比如说哪个?mt??gb??tt??or anyone others??

TOP

返回列表