ウィトラのつぶやき

コンサルタントのウィトラが日頃感じたことを書いていきます

Androidは遅い、と言って高速化しようとする人たち

2010-05-28 13:40:26 | 経済
AppleがiPhoneに次いでiPadを発売して話題を呼んでいるが、携帯電話の世界ではGoogleが開発したソフトウェアであるAndroidを使ってiPhoneに対抗しようという流れが主流で世界中で多くの携帯電話メーカーがAndroidを使った電話機を発売している。

これは、iPhoneが自社に閉じたシステムで、アプリソフト開発者に対してインターフェイスを公開しているだけなのに対して、Androidはソースコード全体を公開しているからで、Android端末の増加の勢いはiPhoneを上回っている。

そのAndroidを高速化しよう、という動きが最近出てきた。これには電源を入れたらすぐ動くようにする、いわゆる立ち上がりを早くする技術とプログラムに実行を早くする技術とがある。立ち上がりを早くするにはパソコンのスリープ機能のように立ち上がっているときの状態をメモリに入れておくのが基本だが、画面情報を優先的にメモリに入れてすぐに読みだして見せることで立ち上がったように見せかけておいて、バックグラウンドでその他の情報を読み出すといったテクニックを使っているらしい。

もう一つは実行を早くするものだがこれはAndroidの基本となっているDalvic VMというJAVAのプログラムを速く動くようにするものである。普通のプログラムはコンパイラでプログラムを機械語に変換して格納し実行時には機械語を読み出して実行するので早いのだが、JAVAでは逐次プログラムを解釈しながら実行するので時間がかかる。これを改良するために、実行直前にプログラムを解釈しておくJIT(Just in Timeというトヨタ式からきた言葉)というテクニックを使う。

いずれもGoogleとは関係のない会社がやっている。このように知名度が上がってくると、色々改良版を検討する人が出てくるのがソースコード公開の良い点である。これらの改良がすぐ使われるかどうかわからないが、色々な人が知恵を絞って改良してくれる、オープンソースというプログラムの長所を目の当たりにした感じがする。