ブラウザエンジンの新潮流「WebKit2」

海上忍
2010-04-14 22:43:06
  • このエントリーをはてなブックマークに追加

Google Chromeとの相違点

 プロセス分離によるアプローチは、すでにGoogle Chromeで採用されている。Google ChromeはHTMLレンダリングエンジンにWebKitを採用しており、ソースコードも公開されているため、Google Chromeの成果が取り込まれたかと早合点しそうになるが、そのデザインは大きく異なる。

 最大の違いは、プロセス分離モデルがフレームワークレベルで実現されていること。Google Chromeは、アプリケーションレベルでプロセス分離を実現(プロセス分離されていない従来モデルのWebKitを採用)しているため、他のアプリケーションで再利用することは難しいが、WebKit2ではそれが可能となる。

 システムにおける位置付けも異なる。WebKit2では、それ自体にプロセス管理機能を実装し、外部アプリケーションでも活用可能な「Webコンテンツエンジン」としての地位を目指しているという。Appleが現行のWebKitを採用するサードパーティー製プロダクトに配慮したとは考えにくいが、WebKitというエンジンを通じてブラウザ分野での影響力を確保しようという戦略は今後も継続されると考えていいだろう。

Google Chromeの構造 Google Chromeの構造

ブラウザとしての機能検証は当分先

 WebKit2のソースコードは、すでにWebKitプロジェクトのTrac/SVNサーバで公開されている。svnクライアントを利用してダウンロードすればコンパイルすることは可能だが(下記参照)、APIの互換性が一部失われているため、現行バージョンのSafariでは動作しない。近々簡易ブラウザソフトが追加されるそうなので、Safariおよび現行WebKitとの動作比較は、もうしばらく先のことになりそうだ。

 ところで、WebKit2のリリースにあわせ、JavaScriptベンチマークツールの「SunSpider」がアップデートされた(SunSpider 0.9.1 JavaScript Benchmark)。ここ数年で高速化が進んだJavaScript処理系に対応、比較しやすく調整したもので、テスト時間の短縮も図られている。まずはこちらをチェックしてほしい。

WebKit2をビルドする手順(Mac OS X 10.6.3/Xcode 3.2.2でテスト)

$ svn checkout http://svn.webkit.org/repository/webkit/trunk WebKit2
$ cd WebKit2
$ WebKitTools/Scripts/build-webkit --webkit2
ビルド後に付属のスクリプト(run-safari)で起動してみたが、ブラウザとしての機能は検証できなかった(クリックで拡大画像を表示) ビルド後に付属のスクリプト(run-safari)で起動してみたが、ブラウザとしての機能は検証できなかった(クリックで拡大画像を表示)
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]