2008年9月3日 星期三

Google Chrome;Google 瀏覽器!

Google 推出自己的瀏覽器了!這裡有漫畫式(繪者是 McCloud)的說明;大抵是說明現有的 Web 應用已經超出當時瀏覽器設計出來的原意,現在各式各樣的應用都經由瀏覽器來呈現、操作,因此瀏覽器本身也需要再進化!比如:
  • 更穩定
  • 更快速(尤其是對於應用 JavaScript 的網站而言!)
  • 更安全
  • 而在操作介面上,應該更簡潔、簡單

Google 瀏覽器本身一如 Google 的其它眾多服務一樣,是免費的;甚至它是 Open Source 的!

另外,跟一般瀏覽器的差異在於 Google 瀏覽器的 process 控制。(看來要複習一下作業系統了 XD)。一般的瀏覽器的實作是 multi-thread on single process。所以,我們若是開了許多分頁,基本上它們都在同一個 process 上,但是一旦某個 thread (如分頁)上的 JavaScript 執行過久把 CPU 吃掉的話,那整個瀏覽器就都掛了。

IE 都是由同一個 PID 4132 的 process 來處理分頁

而 Google 瀏覽器則是把分頁的動作都各自建立一個 Process,如同作業系統的行程管理一般,Google 瀏覽器會管理這些 process。因此若是某個分頁在忙碌的呈現網站內容時,其它分頁仍舊可以正常運作!因為每個分頁都是獨立的 process,若是某個分頁掛掉了,我們也只會遺失該分頁的資訊內容。(不過這也應該會帶來了記憶體使用量會不會因此大增的問題吧)

Google Chrome 則由 PID 4980 來管理產生、刪除 process。如上圖,第一個分頁,4980 產生了 PID=9112 來處理。下圖,我又多開了一個分頁,另一個 process;PID=10232 被產生。

在漫畫裡,有相當簡潔清楚的比較傳統瀏覽器記憶體管理和 Google 以 process 為主的差異(很像在複習作業系統的感覺哈哈)。另外用漫畫呈現也讓人容易瞭解,比如用了許多有趣的小例子,如「無限猴子定理」,一群人坐在一台小汽車上,來描述現有 JavaScript 引擎的窘境。是相當值得一看的介紹!

相關技術

2 則留言:

匿名 提到...

好專業的解說
漫畫我都看一下而已
直接抓下來用比較實際
話說,我沒學過作業系統
所以,其實也看不太懂詳細的說明
大概只知道process的簡單原理而已

H.-J.Dai 提到...

其實那個漫畫內容蠻棒的...從作業系統...談到介面設計(應該有注意到 Google Chrome 把分頁移到最上面了吧...),談到網路安全...測試等等,值得一看!