Google Native Clientをあれこれ試してみた
Googleが、ネイティブコードをWebブラウザ上で実行する「Native Client」を公開した。早速、その基本的なしくみと導入方法、利用の実際について報告させていただこう。
Native Clientのココに注目
Native Clientは、Googleが開発したWebブラウザ用ネイティブコード処理系。早い話が、ブラウザ上でマシン語プログラムを実行できるランタイム環境だ。ライブラリなどから構成されるランタイムと、各種Webブラウザに対応するプラグイン、そしてGCCベースのコンパイラツールで構成され、OSはWindowsとMac OS X、そしてLinuxの3種に対応する。現在のところ、CPUアーキテクチャはx86のみサポートされるが、ARMやPowerPCへの移植も進行中とのこと。
注目すべき点はいくつかあるが、筆頭に挙げられるのはやはり「CPUネイティブの命令を実行できること」。JavaScriptなどスクリプト型言語に比べ処理速度に優れ、高負荷な演算を行うアプリケーションで力を発揮する。JavaやAlchemyとは異なり仮想マシンを介さないので、オーバーヘッドも少ない。ただし、UIの定義は行われていないため、現在主流のJavaScript+HTMLを置き換えるものではなく、画像の変形やエンコードなど速度を要する処理をローカルで行うための実装だといえる。
もう1つは、CやC++をWebアプリケーション開発に使用できること。OS上で直接実行する場合に比べ制約はある(とはいえどマルチスレッドやSIMD命令まで使える!)うえ、再コンパイルは必須となるが、Native Clientの環境内で実行されるため、libc / libmath / libstdc++のほか、NPAPIやSRPCといった通信機構、Basic Multimedia Interfaceと呼ばれるマルチメディアAPIが用意されるなど、移植性はかなり高いと考えられる。実際、現行バージョンのNative Clientには、C言語で記述されている3Dシューティングゲーム「Quake」(SDL版)のパッチも同梱されている。
そしてもう1つが、セキュリティ機構。同梱されるGCCベースのコンパイラは、サンドボックスと呼ばれる安全装置の枠内でのみ実行されるバイナリを生成、危険な処理を予防するというしくみだ。一般的に実装の形態が増えればそのぶん脆弱性が存在する可能性も高まるため、過信は禁物だが、Googleはセキュリティ重視の開発方針を示している。このあたりは、ユーザからのフィードバックを生かせるオープンソースの長所に期待したいところだ。
Native Clientは、主要Webブラウザにプラグインの形でインストールされる(画面はFirefox 3)
地球の画像を回転させるデモ。ソースはC++で記述されている
- 1人の推薦記事
- 0人がクリップ
-
ソーシャルブックマーク(-)
- トラックバック(1)
-
- タグ
- ローダ
- カレントディレクトリ
- SDL
- Cygwin
- SIMD
- nacl-g++
- nacl-as
- run.py
- earth.html
- コンパイル作業用
- コンパイル作業
- 単独実行時
- 実行時
- Pythonスクリプト
- アプリケーションローダ
- sel_ldr
- earth.nexe
- マルチスレッド処理
- file
- ELFバイナリ
- ELF
- tools_bin
- nacl-gcc-4.2.2
- nacl
- nacl/googleclient/native_client
- googleclient
- native_client
- SCons
- ビルドツール
- xzf
- ファイルコピー
- scons-out
- staging
- index.html
- マンデルブロー集合
- ライフゲーム
- サンプルソースコード
- 静止画像
- earth
- earth.cc
- 3Dシューティングゲーム
- FPS
- Quake
- 安全装置
- 危険
- フィードバック
- 地球
- プリビルドバイナリ
- Core 2 Duo
- SIMD命令
- ホワイトペーパー
- 話題のタグ
グーグル、JavaScriptプログラミングツールをリリース
Windowsの歴史 Windows Server 2008編:同じカーネルを持つ「Vista」とは対照的に早くから支持を得たサーバOS
Windowsの歴史 Windows Server 2003 R2編:安定性と先進性の両立目指す「R2」の先駆けとなったOS
モジラ、「Firefox 3.6」の第1ベータ版をリリース
【最終警告】パンデミック対策特集
―エン・ジャパン厳選求人☆毎週更新―
最大32個のセンサーが電力を徹底管理!
企業ITシステムの企画、構築、運用のイロハ
大丈夫?あなたの会社のセキュリティ対策
100万円で実現!中小企業の情報漏えい対策
進むストレージ環境の見直し