Mozilla 釋出了第一個有外掛程序獨立運行功能(Out of process plugins, OOPP)的 Firefox 測試版
Lorentz(得名自印尼
Lorentz 國家公園)。這個功能讓外掛程式在獨立的程序(process)中執行;一旦外掛程式當掉,Firefox 也能不受影響的維持正常運作,而原本顯示外掛程式的區域則會變成一張黑色的圖片提示使用者,並且提供可以重新載入外掛程式的連結。
這個功能在兩個月前完成,之後 Mozilla 強化了其穩定性,並且將這項功能從目前主要的開發分支移植到 Namoroka(Firefox 3.6.x)分支上。
目前這項功能只會將 QuickTime、Flash、Silverlight 以獨立的執行程序執行,不過使用者可以在
about:config 中手動加入其他的外掛程式。
比方說要讓 Adobe Reader 外掛程式以獨立的程序執行,只要在
about:config 中新增一個名為
dom.ipc.plugins.enabled.nppdf32.dll 的偏好設定,並將其值設定為
true。您只需要知道函式庫名稱(可在
about:plugins 中查詢),再建立相對應的偏好設定即可。
另一方面,您也可以停用特定外掛程式的 OOPP(即使是預設啟用的項目也行!)您只要把相對應的偏好設定設為
false 即可。
但請記得,有些外掛程式沒有預設啟用 OOPP 是有原因的,如果程式不穩定的話,記得把設定改回來喲!
另外,請注意讓外掛程式在各自的程序上運行,會增加記憶體使用量。我(原文作者)在 Firefox 上開了幾個分頁,將四個 Youtube 的影片各播放一分鐘左右。Firefox(firefox.exe + mozilla-runtime.exe 程序)在非獨立以及獨立執行 Flash 的時候分別吃了 220MB 與 240MB 的記憶體,也就是大概會有 10% 的差異。但我認為每個使用者的測試數據,會視外掛程式以及實際的內容而有不同,您可以將您的測試結果分享在這邊。
Lorentz 是
Electrolysis 的第一個成果。Electrolysis 是將 Firefox 的使用者介面、以及分頁各自導入獨立執行程序,以強化穩定性的重要專案。
Lorentz 的最終版本按計劃會成為五月的 Firefox 小更新版(沒意外的話是 3.6.4 版)。請至 Mozilla 的
Firefox Lorentz 頁面下載測試。請注意根據
release notes,Mac OS X 的 Lorentz 版本因為架構上的差異,目前尚未加入 OOPP 的功能。
原文 - dabeniao 翻譯 - Irvin 校對