塩田紳二のPDAレポート

Palm Developer Seminarレポート Palm OS 6編

真のモダンOSになるPalm OS 6
~搭載機は2004年初頭に登場か?


PalmSource Developer Seminarが開催されたSan Mateo Marriottホテル
会期:5月6日~7日(現地時間)
会場:San Mateo Marriottホテル

 PalmSource Developer Seminarの最終日となる7日(現地時間)、次期OS「Palm OS 6」の概要が公開された。

■アプリケーションソフトもARMネイティブに

Palm OS 6を構成するさまざまなプロセスとメモリ利用の図。ARMネイティブアプリケーションからは、Palm OS 6が直接見えるようになり、OS側コンポーネントとはサーバー、クライアント方式で接続するという

 カンファレンス編でもお伝えしたように、Palm OS 6の大きな変更点はARMコードで作られたアプリケーションソフトが使えるようになることだ。

 Palm 0S 5では、対応プロセッサが68000アーキテクチャからARMアーキテクチャへ変更された。だがPalm OS 5は、OS自体はARMコードで記述されているものの、その上に68000プロセッサのエミュレータ環境であるPACE(Palm Application Compatibility Environment)が動いており、動作するアプリケーションは、すべて68000コードで記述されたものだけに限られていた。

 速度の必要な処理の場合、ARMコードで記述した一種のライブラリ(ARMletと呼ばれる)を呼び出すことはできたが、あくまでも本体アプリケーション自体は68000コードで作られていなければならなかった。

 このような構成になったのは、従来のPalm OSがマルチタスクやメモリ保護といったOS機能を提供していなかったため、ネイティブARMコードを使ったアプリケーション環境は従来の環境と大きく違ったものにならざるを得ず、そのためのデザインと準備期間を作る必要があったのだ。また68000とARMでは、メモリやレジスタ内部での数値の並び(エンディアン)が違うため、これを解決するための開発期間が必要だったということもある。


■メモリの制約から解放

 Palm OS 6では、ARMネイティブコードによるアプリケーションが実行できるようになるが、このアプリケーションに関してメモリ保護やプロセスの独立性などが提供される。またこれに伴い、従来あったさまざまな制限(リソースサイズが最大64KBだったこと、グローバル変数に関して制限があったことなど)が解除され、あまり制約無くアプリケーションを作ることが可能になる。

 Palm OS 5のPACE上では、アプリケーションはいわばOSから呼び出される「大きなサブルーチン」のような形になっており、プロセスとして独立していなかった。また、アプリケーションが実行時に利用するメモリ(ヒープ領域)は1つしかなく、ほかの部分は通常のコンピュータでいう「外部記憶」としてデータベース領域として使われていた。そのため、他のアプリケーションを一時的に呼び出して使うといったことを行なうには、1つしかないヒープ領域を明け渡すなど複雑な手順が必要だった。

 Palm OS 6では、メモリ保護やプロセスの独立性など、最近のOSがアプリケーションに対して提供している機能をようやくARMネイティブコードプログラムに対して提供できるようになるわけだ。なお、PACEも引き続き提供され、この部分では従来との互換性が保たれる。

Palm OS 6では、ARMネイティブアプリケーションに対して、新しいメモリモデルやランタイムモデルが適用され、メモリ保護やプロセスの独立性が提供される 従来あった、リソースやレコードに対する64KBの壁がなくなり、グローバル変数に対する制限や、レコードに付けるカテゴリが16種類までといった制限がなくなる

■データベースも使いやすく

 もう1つの大きな機能追加は、データベースに対してスキーマが導入され、他のアプリケーションからの利用が簡単になる点。Palm OSは、メモリの大部分をデータを格納する「データベース」として使っているが、このデータベースでは、レコード単位までの管理はOS側で提供されるものの、レコードの内部はアプリケーションが自分で解釈して使っていた。

 スキーマの導入により、レコード内部のいわゆるフィールドまでがOSの管理下に入り、他のアプリケーションがデータベースレコードの物理的な構造を知らなくとも利用が可能になるほか、後からフィールドを追加してもアプリケーションに影響が出にくい(フィールドを介してデータにアクセスしていれば、新規フィールドの有無にかかわらず処理が可能)といったメリットが生まれる。

 なお、標準で内蔵されるPIMアプリケーションが、このスキーマを使ったデータベースに対応する予定だ。

 そのほか、従来行なわれていた表示用メモリ(スクリーンバッファ)に対するアクセスが禁止される代わりに、ハードウェアアクセラレータなどに対応が可能になる。また、ユーザーインターフェースコンポーネントにも変更があるようだ。

PIMデータベースは、スキーマを使ったものに移行する。アプリケーションが使うメモリ領域であるヒープ領域のサイズや数が拡張され、複数プロセスの同時実行などに対応できるようになる 表示に関しては、スクリーンバッファへの直接アクセスが禁止され、ユーザーインターフェースが変更される

■搭載製品は2004年初め?

Palm OS 6は現在αテスト段階で、まもなくβテストが開始される。ライセンシーへの最終版の提供は、今年秋の予定だ

 Palm OS 6はまもなくβテストが開始される予定で、今年の秋には、ライセンシーに対して最終コードが提供されるという。実際にPalm OS 6を搭載した製品がいつ出るのかについては、その後のライセンシーの作業次第になる。Palm OS 5では、PalmSourceが2002年6月にライセンシーへの出荷開始を発表、同年10月にソニーが最初のPalm OS 5搭載マシンを発表している。実際の作業期間などは不明だが、3~4カ月程度で製品出荷にこぎ着けたわけだ。

 それから想像すると、今年9月(PalmSourceの表現は秋)にPalm OS 6の出荷が開始されたとして、ビジネスを考えると年末ぎりぎりに発表、出荷ということはないだろうから、製品の出荷は2004年に入ってから、と推測される。開発が順調なら、2004年1月のCESあたりで製品が披露されるかもしれない。

 Palm OS 6で、PalmOS機は本格的にARMアーキテクチャへの移行を開始することになる。Palmが299ドルでARMアーキテクチャのPalm OS 5搭載機を提供しはじめたように、おそらく来年は、ほとんどの機種がARMアーキテクチャに移行することになるだろう。

□PalmSourceのホームページ(英文)
http://www.palmsource.com/
□PalmSource Developer Seminarのホームページ(英文)
http://www.palmsource.com/seminar/

バックナンバー

(2003年5月9日)

[Reported by 塩田紳二]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp 個別にご回答することはいたしかねます。

Copyright (c) 2003 Impress Corporation All rights reserved.