プロセス分割モデルを取り入れた「WebKit2」発表

 米AppleのWebKit Open Source Projectは4月8日、オープンソースのWebブラウザエンジン「WebKit2」を発表した。JavaScriptの実行やHTMLのパース、レイアウトなどを個別のプロセスで実行する「split process model」をサポートしているのが特徴。

 WebKitはKDEコミュニティで開発されていたHTMLレンダリングエンジン「KHTML」をベースにAppleが拡張を加えたHTMLレンダリングエンジンで、AppleのSafariやGoogle Chrome、フィンランドNokiaのスマートフォン「S60」向けWebブラウザなどで利用されている。

 WebKit2ではJavaScriptやHTML、各種要素のレイアウトといったWebコンテンツ関連処理をアプリケーションUIから独立したプロセスで実行する。そのため、HTMLのレンダリングやプラグインの実行時に問題が発生した場合でもWebブラウザ全体には支障が及ばないという。これはGoogle Chromeで行われているアプローチに近いものの、フレームワークレベルで実装されているためWebKitを採用するすべてのWebブラウザで利用できる点が異なるとのこと。

 WebKit2ではWebKitから大幅にAPIの仕様が変更されており、互換性が失われている。そのため「WebKit2」という新たな名称を採用、従来のWebKitとは区別できるようにしているとのこと。

 WebKit2の対応OSはMac OS XとWindowsで、CベースのノンブロッキングAPIをベースに、Mac OS X向けにはそれをラップしたObjective-C APIを提供する。ライセンスはWebKitと同じくLGPLおよびBSDライセンス。開発チームは現在、WebKit2は初期技術段階であり、運用レベルではないと注意している。

WebKit Open Source Project
http://webkit.org/