久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
關于瀏覽器內存占用的一點思考
[打印本頁]
作者:
51黑芯片
時間:
2016-1-17 00:27
標題:
關于瀏覽器內存占用的一點思考
在論壇里面混了好久了,突然發現一篇主題都沒發表過,都只是回帖,于是決定貢獻一點力量。
最近看論壇,發現很多用戶都在關注內存問題,不少用戶覺得內存占用比較大,就這個問題,我想以個人觀點發表一些看法,當然也希望大家看完我的文字之后,對內存這個東西有個新的理解和看法。
先講點基本的科普知識,以windows為例,操作系統里面運行著很多進程,每個進程都需要消耗一定的內存用來存放自己的數據,瀏覽器也不例外。但是內存總數是固定的,那么一旦進程所需要的總內存超出機器安裝的物理內存怎么辦呢?操作系統很聰明,它會把一些不常用的內存放到硬盤上(想了解更多細節的,可以去搜一下LRU算法),這樣可以把內存騰出來給那些處于活動狀態的程序。當那些當初被臨時放到硬盤的內存數據需要再次被使用時,操作系統會把它們取出來,重新放到內存中去。這個過程就是我們常說的“換頁(page swap)”操作。換頁操作是有很大的額外開銷的,畢竟硬盤速度比內存要慢很多。
那么我們平常在任務管理器所看到的“內存”是什么呢?其實那個數值的含義是“一個進程真實消耗的內存大小 減去 被轉移到硬盤上的內存大小”,你可以簡單理解為“假的內存占用”。也就是說,這個數字越小并不能說明一個軟件越省內存,有可能是這個軟件在“搞鬼”:它把自己的內存“強制”放到硬盤上(windows有一個api叫SetProcessWorkingSetSize,可以強制把內存放到硬盤上)。這里推薦大家關注一個叫Private Bytes的指標,這個指標才能真正反映一個進程所消耗的內存數。注意,xp下面的任務管理器是無法看到這個指標的,大家可以去下載process explorer,就能看到了。
上面說的可能太深奧,下面我們說點簡單的,就說瀏覽器占內存這個事情吧。論壇上不少朋友都說瀏覽器占內存大,說什么開了5個頁面就占了200M之類的話。那么你也許一直關注的就是我上面說的那個“假”的內存,如果有可能,不妨關注一下private bytes。比如對比一下傲游或者tw,甚至是ie也可以,開同樣的標簽,做同樣的動作,看看大家的private bytes是否一樣。當然,我舉這個例子,顯然他們的private bytes應該是相差無幾(差個幾M不是關鍵問題)。此時你可以再關注一下“假”內存,如果有某個瀏覽器的這個“假”內存數字很小,說明這個瀏覽器在“有意掩飾”一些東西,當然出于什么目的我們就不知道了。
有些朋友可能會擔心,說瀏覽器會不會把整個操作系統的內存全吃滿。我可以放心地告訴你,操作系統的設計絕對比你想的要聰明得多。假設你有512M的內存,但是你開了很多網頁,這些網頁要消耗1G的內存。此時操作系統會自動把多出的那些內存轉移到硬盤,而且在一般情況下,操作系統會很聰明地選擇那些你長時間沒有閱讀的頁面(因為采用多標簽,所以一般只能看到一個頁面)放入硬盤。這個時候,你通過任務管理器就會看到,這個瀏覽器也許只占用了300M的內存,但是其實它有700M的內存被臨時放到了硬盤上。但是如果你用process explorer,就會看到,這個軟件的private byte是1G,不會隨著窗口的顯示和隱藏而發生改變。
從操作系統的設計角度來看,數據在內存和硬盤之間的轉移應該屬于操作系統的職責,一個進程不應當越俎代庖。如果純為了任務管理器好看,純為了一些無聊的內存評測,那么我們完全可以把內存全都塞到硬盤上,你甚至可以看到瀏覽器只占1M的內存,但是這樣用起來就會特別卡,因為每次需要訪問數據時,都要從硬盤中現取,那速度自然可想而知了。有些朋友可能擔心,說我開著瀏覽器的時候還要做別的事情,不能讓瀏覽器把內存都吃掉,那么從這個角度考慮,就更應該把內存的管理權交給操作系統了,因為只有操作系統才知道你這個時候在做什么,操作系統會根據你當前的行為來決定內存的分配策略。而相反地,搜狗瀏覽器的開發人員并不知道你會做什么,極端一點說,如果搜狗瀏覽器強制“不許”把內存放到硬盤,那么有些用戶就會說“搜狗瀏覽器好流暢啊,真爽”,但是另外一些用戶就會說“搜狗真爛,一開搜狗,其他軟件都巨卡”;相反地,如果搜狗瀏覽器強制把所有內存都放到硬盤,那么一些用戶就會說“搜狗真省內存,一點也不影響其他軟件運行”,但是另外一些用戶就會說“搜狗太他媽卡了,根本沒法用”。
我個人的觀點是,搜狗以后可以推出多種模式供大家選擇,比如有些用戶喜歡關注“假”內存這個數字,那么就可以把內存全部交換到硬盤,以滿足這些用戶的一些癖好;而對于大多數普通用戶,目前這樣子應該說是最佳的狀態(即把內存的管理權完全交給操作系統掌管)。
最后請各位噴子注意,我的觀點僅供大家參考,但是如果你想在原理上————注意是“原理”上————噴我,那么我建議你先做一些功課再來噴,比如學學基本的操作系統原理,讀讀linux kernel源碼,改改wrk什么的,以免你的水平比我低太多。
歡迎大家深入交流
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
色影视
|
91色漫
|
久久久在线
|
日韩av网站在线观看
|
亚洲激情第一页
|
久久一区视频
|
福利视频免费
|
国产香蕉av
|
精品欧美一区二区三区久久久
|
久久夜色精品国产欧美乱极品
|
欧美日韩视频在线
|
黄色片免费网站
|
高清视频一区二区
|
久久久二区
|
欧美一级片在线观看
|
4hu在线
|
一级毛片大全
|
一级做a爰片久久毛片潮喷 亚洲黄色天堂
|
亚洲日本欧美
|
久久精品99久久久久久
|
国产欧美日韩综合
|
午夜爽爽影院
|
国产一区精品在线观看
|
欧美二区视频
|
国产专区在线播放
|
久久免费看
|
国产欧美在线观看
|
成人黄色在线视频
|
欧美自拍视频
|
艳妇臀荡乳欲伦交换h漫
|
日韩精品视频免费播放
|
天堂一区二区三区
|
久久性色
|
国产精品毛片一区二区在线看
|
国产精品日韩欧美
|
男女操网站
|
九九热在线播放
|
亚洲黄色在线视频
|
成人小视频在线观看
|
国产视频一区二区在线观看
|
www.黄色
|