Google社が公開した新ブラウザ「Chrome」、プロセッサやメモリーのリソース効率に自信

米Google社の新ブラウザ「Google Chrome」の画面例である。出典:米Google社

 インターネット検索エンジン大手の米Google(グーグル)社は2008年9月2日(米国時間)、オープンソースのウェブ・ブラウザ「Google Chrome」(グーグル・クローム、以下「Chrome」)のベータ版を公開した。Windows OSに対応する。Google社は独自ブランドのこのブラウザについて、「競合ブラウザに比べて、安定性やセキュリティに優れており、マイクロプロセッサやメモリーなどのリソースをより効果的に活用できる革新的なブラウザだ」と自信を見せている。

Google社はベータ版の提供開始に先駆けて、Chromeの多彩な機能をチュートリアル風に紹介するコミックをウェブ上で披露していた。さらに2008年9月1日(米国時間)にはプレス・リリースを配信し、その中でChromeの開発背景について、「複雑化するウェブ・アプリケーションの増加に対応できる、新しいブラウザが必要である」と説明していた。

こうした情報から、Google社がついに、組み込みシステムで利用可能なブラウザを開発したのではないかという憶測が飛び交っていた。同社はすでにChromeのMacintosh OS版とLinux OS版の開発も進めており、今後パソコン以外の組み込み機器向けを投入する可能性も示唆している。

2008年8月27日には、米Microsoft社がウェブ・ブラウザ「Internet Explorer 8 ベータ 2」を公開したばかりだった。Google社の新ブラウザ公開を受けて、Microsoft社でInternet Explorer担当のゼネラル・マネジャーを務めるDean Hachamovitch氏が短い声明文を発表した。

その中で同氏は、「ブラウザの開発競争が激化しているが、ユーザー離れは想定していない。Internet Explorer 8では、ユーザーは使用したいサービスをワン・クリックで利用できるだけでなく、ウェブ・サイトの閲覧方法を自由に選べるなど、ユーザーごとのスタイルを重視している。また、競合ブラウザに勝る技術を駆使し、ユーザー自身による個人データのオンライン管理を実現した点も、大きな利点だ」と主張する。

Google社のChromeは、同社のデンマーク拠点のエンジニアたちが新たに開発した、「V8」と呼ぶJIT Virtual Machine型のJavaScript実行エンジンをベースにしたブラウザだ。V8がJavaコードをインタープリト(解釈)し、マイクロプロセッサ(x86プロセッサを想定する)に対応したマシン語に直接コンパイルする。

V8はオブジェクトのグループ化や管理の改善を図るため、「隠れたクラスのトランザクション」にも対応している。さらに、ガベージ・コレクション(使用後のメモリー領域を自動的に解放する機能)を高速化し、処理時間を「数ミリ秒」にまで短縮した。

Google社によれば、V8はポインタの管理やガベージ・コレクションのインクリメンタル処理(マイクロプロセッサの負荷が低いときに自動的にメモリー解放を進める)の点でも、競合に勝るという。V8は独自のAPI(Application Programming Interface)を備えており、ほかのブラウザやプログラムで使うことも可能だ。

セキュリティや機能にも工夫

 Chromeはマルチプロセスで動作し、各プロセスが専用のメモリー領域と、グローバル・データ構造のコピーを備える。この手法は、ブラウザを立ち上げた初期には大量のメモリーを必要とするものの、シングルスレッドで動作するブラウザを長時間にわたって使用した場合に起こるメモリー領域の断片化(フラグメンテーション)を防止できる利点があるとGoogle社は説明する。メモリー領域の断片化が発生すると、大量のメモリー領域が実際には使えない状態になってしまう。従って、メモリー消費量を抑えるという点では結果的にはChromeが勝る形だ。

Chromeは複数のウェブ・ページを切り替えて閲覧できる、いわゆるタブ・ブラウザだが、各タブがそれぞれ別プロセスとして処理されるため、あるウェブ・ページで問題が発生しても、すべてのタブが終了し、ブラウザが落ちてしまうことはない。各プロセスには一定量のメモリーが割り当てられるが、詳細は明らかにされていない。ただしユーザーは、Chromeのプロセス・マネジャー機能を利用して、所定のタブが使用するメモリー量やプロセッサ・リソースの大きさを調べることができる。

Chromeには、オープンソースで開発されているウェブ・ブラウザのレンダリング・エンジン「Webkit」が搭載されている。Webkitは、現在ベータ版が公開されている、Google社の携帯電話機向け開発プラットフォーム「Android」にも採用されている。同社は、Webkitを採用したもう1つの理由として、組み込みシステムへの搭載が容易であることを挙げており、同社が今後、Chromeをパソコン以外の組み込み機器に向けて供給する可能性が裏付けられたといえる。

セキュリティ面ではChromeは、プロセスによるハード・ディスク装置やユーザー・ファイルへの書き込みを禁止することで、マルウエアの侵入を防ぐ機能を備えた。さらに、2段階のセキュリティ・システムを採用しており、ユーザー・モードとは別にサンドボックスでプロセスを実行する。

Google社は、セキュリティ権限の低いサンドボックス内で実行可能なブラウザ用プラグインには、業界標準が不可欠だとしている。現時点ではプラグインは、Chromeの外部で、OS上で動作させることが可能だ。

またChromeでは、ユーザーはプライベート・タブを開くことで、アクセス履歴やクッキーを保存せずにウェブ・ページを閲覧できるため、プライバシー保護の点でも安心だ。

Chromeに搭載された機能の一部には、インターネットに精通したGoogle社が蓄積した情報が利用されている。例えば、ユーザーの個人情報を盗もうとする、いわゆる「フィッシング・サイト」としてGoogle社がすでに特定済みのサイトにユーザーがアクセスしようとすると、ブラウザが警告を発する。Google社は公開APIを作成し、同社が探知したフィッシング・サイトを掲載した最新リストへのアクセスも提供している。

ユーザーが以前に訪問したサイトをトラッキングするだけでなく、閲覧パターンに基づいてユーザーの好みに合った人気サイトを推薦するなど、ChromeはGoogle社が検索エンジンで収集した情報を大いに活用したブラウザといえる。

Google社は今後、「Gears」と呼ぶAPIを公開し、同社がブラウザに組み込んださまざまな機能を開発者が利用できるようにする。このAPIに関する詳細は、現時点では明らかにされていない。

Google社はChromeについて、毎週何百万という膨大な数の人気サイトで試験運用を重ねたことを明かし、その安定性を強調した。

 

PR