Googleは、ウェブアプリケーションを高速化するオープンソースの「Native Client」技術について、セキュリティ基盤が強固であるとの確信を得たことから、この技術を研究段階から昇格させた。同社は今後、Native Clientをブラウザ「Google Chrome」に組み込んでいく。
GoogleのNative Client担当エンジニアリングマネージャーBrad Chen氏は、米国時間6月10日にメーリングリストの中で次のように述べた。「これまでの経験から、われわれのシステムの基本アーキテクチャは堅実で、実装可能なものになっていると確信するに至った。そこで今後は、Native Clientを研究段階の技術から開発プラットフォームへと移行させるための、数々のステップに着手していく」
Native Client(略称NaCl)とは、ウェブからダウンロードしたソフトウェアをIntelのCoreシリーズのようなx86プロセッサ上で直接実行するメカニズムだ。現在ウェブサイトの見栄えを良くするのに多用されているJavaScript環境はかなり動作が遅いことから、コンピュータにインストールされる普通の「ネイティブな」ソフトウェアのスピードを得たいというのがNative Client開発の中心的な動機となっている。Googleはウェブを、どちらかというと静的なサイトの集合体から、もっと強力なアプリケーション基盤へと進化させる幅広い取り組みを行っており、その一環としてNative Clientがある。
単にウェブからネイティブのコードを得て実行することだけなら容易だが、セキュリティ上の危険性を考慮に入れるとそうはいかない。セキュリティ確保のため、Native Clientはソフトウェアの実行前に検査を行い、禁止されているさまざまなアクションを含むソフトウェアをブロックする。いわゆる静的解析を行うのだ。その上でNative Clientは、保護されたサンドボックス内でソフトウェアを実行する。
「基盤となる技術が野心的で危険をはらんでいるのは分かっていたから、確定的な計画を始める前に公開による審査を通常よりたっぷりと行うことが適切だと強く感じていた」と、Chen氏は述べている。同氏によると、GoogleはNative Clientが検査に合格したことに満足し、オープンなインターネットからダウンロードしたNative Clientソフトウェアは実行できないなどの、セキュリティ上かけられているさまざまな制約を解除するという。
Native Clientは2008年12月に披露された際、ブラウザのプラグインだった。しかし、Googleはこのアプローチが気に入らないようだ。
「ブラウザプラグインのインストールに対しては、当然とも言える抵抗があることをわれわれは認識している。この理由からわれわれは、Native Clientをブラウザに事前インストールするか組み込んだ形で提供する方が好ましいと強く思っている。この形をNative Clientをユーザーに提供する方法の中心にする戦略に力を入れていくことになる」と、Chen氏は言う。
ここで、Googleが独自ブラウザの提供に注力している理由の1つが見えてくる。「注意深い読者はすでに、Native Clientのソースに『Chromium』への統合の証拠があったことに気がついていたかもしれない」と、Chen氏は書いている。Chromiumとは、同社のブラウザChromeの基になっているオープンソースプロジェクトのことだ。
Googleは、5月に開催されたGoogle I/OカンファレンスでNative Clientを売り込んだ際、この技術で提供可能な処理能力の実例として、ウェブベースの写真エディタを披露した。同社はまた、Native Clientと、同社の別のプロジェクト「O3D」との組み合わせを試みている。O3Dでは、ブラウザがハードウェアを利用して3Dグラフィックスを高速化できるようになる。
この記事は海外CBS Interactive発の記事をシーネットネットワークスジャパン編集部が日本向けに編集したものです。原文へ