BREW(Binary Runtime Environment for Wireless)とは、その名の
通り実行環境(Runtime Enviroment)です。
2001年1月にQUALCOMM
(www.qualcomm.co.jp)社が発表しました。
現在、BREW を搭載するMSM チップを採用するキャリアは AU です 。
ソフトウェア実行環境として他には JRE(Java Runtime Enviromen t)
というものも有名です。
JRE は Java の実行環境です。
皆さんも既にご存知の通り、携帯電話に通話以外の高機能の搭載
が始まったのは i モードからになります。i モードのサービスは 1999年に開始されました。当初、iモードとはiモード網(通信パケ ット網)を指していましたが、現在は i アプリに代表されるアプ リケーション実行環境を指していることが多いように思えます。
その i モードの実行環境に採用されたのが JRE でした。
最初に Java が正式に世の中にでてきたのは 1996 年になります 。
当初は、ブラウザ上で動作するアプリケーションの実効環境とし ての期待が先行していました。
2001年に i モード用に携帯電話上で動作する Java の実行環境が 提供されました。その環境で動作するアプリケーションが i アプ リです。しかし、携帯電話で動作する i アプリには当時の Java がPC 上でも抱える問題を内包していました。
それは動作が遅いという
問題です。理由は Java の実行環境の構成理念にあります。Java は 1990 年当時ソフトウェア開発の問題点と思われていた問題を クリアする為に生まれた言語です。
それまでの既存の言語の問題点を
クリアするために以下のような特徴を持っています。
1)オブジェクト指向言語
↑それまでの構造化言語よりはソフトウェア開発が容易にな
ると考えられていました。
2)リソース操作の容易さ
↑ファイルや、メモリ等のリソース管理に関してある程度の 曖昧さを許容します。
3)Write Once, Run Anywhere
↑一度実行モジュールを作成してしまうとどのような環境で も実行が可能となりました。他の言語では再コンパイル が必
要になります。
他にもいろいろありますが、詳しくは Java を解説した文書をお 読
みください。
#私には Java の解説はできません。
このうち、3) の特徴が実行スピードを落とさせる大きな原因とな っ
ていました。通常、ソフトウェアはそのプラットフォーム(OS)に 最適
なように生成されます。それは CPU に取って最適というのとほぼ 同
義です。しかし、Java は 3) の特徴を保持するために、JRE と呼 ば
れる実行環境にプラットフォーム依存吸収層を持たせました。そ の
差異吸収層があることで、3) の特徴を実現しています。つまり
Java で作られたソフトウェアは本当に CPU で動作する前に一旦 処
理が必要だと言うことです。この問題は現在ではかなり改善され ていますが、Java 1.0 がリリースされた当初は大きな
問題でありました。
同じ問題が携帯電話上で起きていたのです。
歴史は必ず教師になります。
BREW はそのような Java の問題点を解決する実行環境として世の 中に
リリースされました。しかも、Java の 3) の特徴を保持していま す。
では、BREW はどうやって 3) を実現したのでしょうか。それは Q ualcomm
がプラットフォームを独占するという方法で実現しました。つま り、
Qualcomm の提供するチップ(MSM)を利用することで、通信モジュ ール
+ 実行環境を提供したのです。通信モジュールを持つメーカがア プ
リケーション実行環境したことで、「Write Once, Run Anywhere 」が
実現されました。
こうすると差異吸収層は不要です。最下位のレイヤまで全てが均 一で
あるためです。したがって、BREW は CPU に依存したソフトウェ アを
生成することができました。
これが BREW です。
BREW は実行環境ですが、一般的に BREW と言った場合、BREW 環 境が
提供する API を含める事が多いです。その広義の BREW という言 葉を
含めると BREW は他にもいくつかの特徴を持っています。
・勝手アプリの製作が不可能
↑Qualcomm はアプリケーションの配布の際に Qualcomm の試 験の通過を必須としました。
・携帯電話の中核情報の抽出が可能
↑勝手アプリの存在を拒否したことにより、いわゆる作法を 無視した無法アプリケーションが存在する余地が無くな りまし
た。この事を利用して、Javaでは利 用する事ができない携帯電話内部の中核情報まで操作す る方法を提供することが
可能になっていま す。
このように BREW はいろいろな特徴を持ちます。