该死的msn space,如果存的时候出了错误,就再也找不回来了。
最近研究了一下关于内存和performance方面的一点东西,发现maxthon这个很popular的浏览器的一个有趣的现象。先是说说windows task manager的那些terminology。
Mem Usage = Working Set = 这个程序在物理内存里占用的大小,大概等于linux的RSS
VM Size = Virtual Memory Size = Private Bytes = 这个程序申请的内存大小,可能在内存里,也可能在硬盘上。
还有一个Virutual Size,是运行这个程序总共需要的内存大小。
那么Maxthon这个浏览器,他的Mem Usage总是很小,所以很多人以为这个浏览器真的占用内存比较小,不过仔细观察就会发现,他的Mem Usage总是很快的涨,到20多M,就快速的下跌一次。而且,他的page faults总是很快的增长,开不到一个小时就超过了使用率最高的explorer,成为系统第一个高的page faults。这个说明它为了让自己在task manager里显示占用的内存比较小,每过一段时间就主动的把内存里面的东西都swap出去,但是由于浏览器还在运行,所以操作系统就疯狂的产生page fault,再从硬盘读入被换出的页面,这个感觉不是很厚道。。。难怪我的笔记本硬盘没事总是嘎卡两声。。。
于是又比较了一下firefox, maxthon和ie。结果如下:(内存都是K为单位)
刚启动 | |||||||
Firefox | |||||||
maxthon | |||||||
IE | |||||||
5分钟后,打开news.sina.com.cn | |||||||
Firefox | |||||||
maxthon | |||||||
IE |
看起来maxthon/ie占用的virtual size和private bytes都比较大,而working set maxthon最小是以大量的page fault为代价的,嗯,firefox表现还不错,除了不能在msnspace发信以外,没太多的缺点了。。1.5的确快了不少,而且,对新的web标准支持很好,比如。。哈哈,开始鼓吹firefox了。。。不过对ie的数据有个不公平的地方是,其他两个都有adblocker,block了不少flash和图片。。。
不知道其他一些浏览器如何,比如opera,或者,safari?