Google Chrome runs web pages and applications with lightning speed. |
Googleは2月18日(米国時間)、ブラウザでネイティブコードの実行を可能にするNative Clientの開発が重要なマイルストーンを到達したことを発表した。Native ClientはChromeにおいてネイティブにコンパイルされたコードを利用するWebアプリケーションの開発を可能にするもの。これまで実験的位置づけとして公開されてきたが、今回の発表で1段階引き上げられ、開発者向けに開発の開始を促すバージョンとなった。Chrome 10以降のバージョンで利用可能。デフォルトでは無効化されているため、利用するにはabout:flagsから機能を有効にする必要がある。
Googleはここ数カ月の間、Native ClientのPepperプラグイン対応に取り組んできた。Pepperはより進んだサンドボックス化を実現するためのプラグインアーキテクチャ。Pepperに対応したNative ClientはJavaScriptと同程度には移植性があり、そしてセキュアになったと評価されている。発表に合わせて公開された新しいNative Client SDKでは次の機能が実現されている。
- 計算、オーディオ、2Dを実現するNative Clientモジュールに対応するPepperインタフェースの提供
- 自動アップデート機能の提供
- 外部サンドボックス機能の実現
- ダウンロード対象マシンに合わせたモジュールのダウンロード機能の実現
これまではセキュリティを実現する方法として実験的に期日機能とローカルホストにおけるセキュリティ制限が課されてきたが、自動アップデートと外部サンドボックスが提供されたことでこの制限が撤廃されている。今後の開発としては次の内容が紹介されている。
- 3DグラフィックAPIへの対応
- ローカルファイルストレージ機能の提供
- WebSockets対応
- Peer-to-Peerネットワーキング対応
- ダイナミック共有オブジェクト(Dynamic Shared Object; DSO)への対応
ダイナミック共有オブジェクトへの対応が実現すると、従来よりもABIの安定化を実現できるようになる。GoogleはChromeにNative Clientを提供することで、既存のJavaScriptベースのWebアプリケーションよりもさらに高速に動作するWebアプリケーションを実現することを目指している。