首先,很抱歉為了想完整描述過程,所以接下來的內容有點長,大大如欲節省時間,可直接看紅字標示部份,感謝您的撥冗指教。

認真說來,小弟初期在 Firefox 1.x 時代,因為它的記憶體管理,加上操作習慣的不便(主要因素),沒裝多久便移除。後來,在 Fx 2 出來時,想說再裝一次試試,以及了解到有套件可提高其操作性後,才真正一頭栽入它的世界,拋棄起慣用的 IE、GreenBrowser,因為愈多好用的套件支援下,更是依賴起 Fx,即使後來有 opera、safari、google chrome 的威脅,它仍一直是我工作列上不會關掉的應用程式之一,但仍無法避免的是 Fx 2 還是存在著耗用記憶體的缺點。

就在 Fx 3 推出後,大家都說它的記憶體管理變得比以前好,而依小弟的使用結果,是有比 Fx 2 之前來得好,但卻仍然一樣是吃 mem 的怪獸。因此,小弟前前後後從 Fx 3.0.* 開始,便一直在邊使用邊 try 問題原因,而發現到一個更奇怪的現象,它不只吃「實體記憶體」,就連「虛擬記憶體」也是愈吃愈多,甚至有過之而無不及。

以下是小弟的使用經過:

1. 不同的版本使用:

先後使用過不少版本,從官方安裝版本,到有針對效能調校過的 Firefox tete,再到綾川版,甚至某名 blogger 大大提供的 portable firefox...等版本,不論是哪一種,來來回回調整過先後使用次序,最後都一樣:mem 吃到爆~

2. 套件的安裝、移除/停用:

因為太多好用的套件,所以小弟愈裝愈多,約曾裝到有 30 個之多,但不外乎是那些很受歡迎的套件,中間一度以為是某些套件的緣故,但在忍痛(真的很好用)移除或停用一些套件後,約剩餘 20 個套件使用中(如:FireGestures、Tab Mix plus、Stylish、GreaseMonkey、Firebug、Download Statusbar、Easy DragToGo、Adblock plus、新同文堂、Menu Editor、Personal Menu、SpeedDial...等),依然使用到最後:mem 吃到爆~

3. 放到 ramdisk:

前一陣子由於看到 ramdisk 的好處,加上有 2G 的 ram,便切割了一個區塊來將 fx portable 整個放到 ramdisk 執行,並將 fx 的 cache 路徑改指到該槽,且為不使 ramdisk 空間爆滿,也調了 cache 大小設定,但說也奇怪,小弟不但感覺不到人家所說的,開啟 fx 的速度會比放在實體 disk 的快感;透過磁碟存取監控工具,仍可以看出 fx 不只是在 ramdisk 運作,還是有對實體 disk 進行存取(這應該是跟 fx default 目錄仍在原預設安裝路徑有關)。結果一樣:mem 吃到爆~ 於是,取消 ramdisk 的使用。

現在,小弟原先期待 Fx 3.5 版本的釋出,也許真的就可以解決了疑惑,但從 3.5 beta 到 RC,再到目前正式版本,這些日子下來,吃 mem 的問題還是依舊,甚至這兩天將所有套件全部停用,回到最純淨的 FX 3.5 環境,沒有任何套件的包袱,開的 tabs 也都剩不到幾個分頁,也是沒輒。

小弟的電腦使用習慣,平常都是用「休眠」而非「關機」方式來保存工作桌面,以便下次快速進入工作狀態,所以日常必用的工具一定至少會保持「收發信軟體、類檔案總管工具、Firefox」這三種應用程式不被關閉。

加上有訂閱 RSS 及看推文、01 討論的習慣,所以,使用 Fx 開的分頁數,通常會隨著使用時間而增加,但都會在看完之後隨即關閉該分頁。

以下便是在連續不關機、不關 firefox,將所有套件停用後,使用兩天後至今天,兩次在工作管理員所查看的記憶體使用量之擷圖:

圖一:僅剩餘 3 個 tabs(Google Reader, GMail, Plurk)
Firefox 的記憶體管理疑問...

圖二:中午休息邊吃便當、邊使用 fx 看 RSS 訂閱文章、01 討論等網頁的結果,即便開啟的分頁看完隨即關閉也是沒降多少。
Firefox 的記憶體管理疑問...


最後,從 2.*、 3.0.* 到 3.5 版的使用上,有感到不同的是,Fx 2 吃 mem 到最後會掛掉,Fx 3.0.* 有穩定一些,但最後會頓頓的(不是 ram 不夠,因為其他程式到可以正常使用,且可用記憶體還夠),現在 Fx 3.5 開啟速度比 3.0 之前快,mem 吃再多,也還算順暢,只是還是不解,為何大家口中說的有改善記憶體管理,自己用卻非如此? 雖然說,只要每隔一段時間,把 fx 關掉再重啟就可以,但好奇心使然,很想知道為什麼它會這麼地吃「虛擬記憶體」?(實體記憶體因有設定最小化後釋放,所以還 ok。)
我覺得樓主你是在鑽牛角尖 !
既然程序死都不肯釋放虛擬記憶體空間
表示它強烈主張資料能快速因應重複存取
您也知道重開就釋放掉了,又何必執著這一點呢?
或許您可以到Firefox的論壇去問問那邊的高手
說不定在 about:config 那邊可以設定分頁關閉之後即刪除所有資料
這樣虛擬記憶體絕對吃得非常非常之低。
我猜啦,虛擬記憶體就是硬碟裡面用來存放暫時網路資料的空間,基本上是可以手動設定要劃多空間給網路暫存,請查閱火狐論壇,基本上現在硬碟又便宜大碗,不必計較這0.5GB吧(況且IE也是一樣,預設就是512MB)。

且既然是暫存,關閉後就會清光,或者自己手動清除就好,比起這些火狐暫存,其他清不掉找不到,要用特殊軟體才能殺的暫存檔還更可惡吧。
親愛的 :

真正管理記憶體的作用與釋放是作業系統
火狐能做的是告訴系統"我想要記憶體","我不想要記憶體了"
可是作業系統會因為自己本身的考量,不是應用程式喊喊"我不要記憶體了","可用的記憶體"那個欄位數值就會增多

尤其你一直以來都用休眠,很多資料會被快取住,記憶體吃很大是必然
RAM很夠的話,不會影響到去它軟體的運作,就不要去理它了...
不然你買RAM回來是看它剩很多,這樣就很爽嗎

還有你都知道firefox會佔用RAM了,就不要開著一直不關,重新啟動firefox不用幾秒吧!?
如果剛好是有頁面存在,Personal Menu裡面有個重新啟動的功能,重啟後,當前頁面也會恢復。
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!