(57)【要約】一連の両方向ルールチェックかソフトウェア定義通信システムとシステム構成要素レコードとの間で達成され、システムセキュリティと保全性とを保証し維持するソフトウェア実行制御。システムプラットフォーム（２０）は、システムプラットフォーム（２０）のレコードとプラットフォーム（２０）によって呼び出されたアプリケーション（２２）との間、呼び出されたアプリケーション（２２）のレコードと呼び出されたアプリケーション（２２）を定義するモジュール（２４）との間、及び呼び出されたアプリケーション（２２）を定義するモジュール（２４）のレコードとプラットフォーム（２０）との間での一連の両方向ルールチェックを達成する。呼び出されたアプリケーション（２２）及び呼び出されたアプリケーション（２２）を定義するモジュール（２４）の両方は、次に、これら両方向ルールチェックが成功の場合、インスタンス化される。ルールチャックが両方向で達成されるので、ライセンシング及び出所制限の様な制限は、システムモジュール（２４−３０）だけではなく、モジュール（２４−３０）を使用するアプリケーション（２２）上に置くことができ、これによって、高いレベルのシステムセキュリティが達成されることが可能となる。更に、本発明は、従来の実行システムと関係する実行時間チェックではなく、ロード時間ルールチェックを講じているので、処理オーバーヘッドを最小にする。
2004504656.tif 000002
【特許請求の範囲】
【請求項１】
システムプラットフォーム、複数の記憶されたアプリケーション、及び記憶されたアプリケーションを実現するための複数の記憶されたモジュールを含む、オープンアーキテクチャシステムのオペレーションを制御する方法であり、この方法が、
システムプラットフォームと呼び出されたアプリケーションとの間で両方向ルールチェックを達成し、
呼び出されたアプリケーションと、呼び出されたアプリケーションを実行するために必要な際に、呼び出されたアプリケーションによって識別されるモジュールとの間で両方向ルールチェックを達成し、
呼び出されたアプリケーションによって識別されたモジュールとシステムプラットフォームとの間で両方向ルールチェックを達成し、
システムプラットフォームと呼び出されたアプリケーションとの間での両方向ルールチェックの達成、呼び出されたアプリケーションと呼び出されたアプリケーションによって識別されるモジュールとの間での両方向ルールチェックの達成、及び、呼び出されたアプリケーションによって識別されたモジュールとシステムプラットフォームとの間での両方向ルールチェックの達成が成功の場合、呼び出されたアプリケーションと呼び出されたアプリケーションによって識別されたモジュールの両方をインスタンス化することから成る、前記方法。
【請求項２】
呼び出されたアプリケーションとこの呼び出されたアプリケーションの両方の前記インスタンス化に続いて、呼び出されたアプリケーションによって識別されるモジュールを実行することによって、呼び出されたアプリケーションを実行することを更に含む請求項１記載の方法。
【請求項３】
呼び出されたアプリケーションとこの呼び出されたアプリケーションによって識別されたモジュールとの間での両方向ルールチェックの前記達成が、呼び出されたアプリケーションとこの呼び出されたアプリケーションによって識別された複数のモジュールとの間で両方向ルールチェックを達成することから成り、
呼び出されたアプリケーションによって識別されたモジュールとシステムプラットフォームとの間での両方向ルールチェックの達成が、呼び出されたアプリケーションによって識別された複数のモジュールとシステムプラットフォームとの間で両方向ルールチェックを達成することを含み、
呼び出されたアプリケーションと呼び出されたアプリケーションによって識別されたモジュールの両方の前記インスタンス化が、システムプラットフォームと呼び出されたアプリケーションとの間での両方向ルールチェックの達成、呼び出されたアプリケーションとこの呼び出されたアプリケーションによって識別された複数のモジュールとの間の両方向ルールチェックの達成、及び呼び出されたアプリケーションによって識別された複数のモジュールとシステムプラットフォームとの間での両方向ルールチェックの達成が、成功の場合、呼び出されたアプリケーションと呼び出されたアプリケーションによって識別された複数のモジュールの両方をインスタンス化することから成ることを特徴とする請求項１記載の方法。
【請求項４】
システムプラットフォームと呼び出されたアプリケーションとの間での両方向ルールチェックの前記達成が、
記憶されたプラットフォーム構成とルールデータに対してアプリケーションルールレコードをチェックし、そして
アプリケーション識別レコードに対して記憶されたプラットフォーム構成とルールデータをチェックすることから成る請求項１記載の方法。
【請求項５】
システムプラントフォームと呼び出されたアプリケーションとの間での両方向ルールチェックの達成が、更に、呼び出されたアプリケーションのモジュールポインティングレコードをパースして、ロードされるべきモジュールデータを決定することから成る請求項４記載の方法。
【請求項６】
システムプラットフォームと呼び出されたアプリケーションとの間の両方向ルールチェックの前記達成が、呼び出されたアプリケーションの署名が有効であると証明することから更に成る請求項４記載の方法。
【請求項７】
オープンアーキテクチャシステムが通信システムであることを特徴とする請求項６記載の方法。
【請求項８】
呼び出されたアプリケーションとこの呼び出されたアプリケーションによって識別されるモジュールとの間でのルールチェックの前記達成が、
前記呼び出されたアプリケーションによって識別されたモジュールのモジュールポインタレコードをチェックし、
モジュールレールレコードに対して、呼び出されたアプリケーションの識別レコードをチェックすることから成る請求項１記載の方法。
【請求項９】
呼び出されたアプリケーションによって識別されたモジュールとシステムプラットフォームとの間での両方向ルールチェックの前記達成が、
プラットフォームルールと構成情報に対して、モジュール識別をチェックし、
モジュールルールレコードに対して、システムプラットフォームと構成情報とをチェックすることから成る請求項１記載の方法。
【請求項１０】
コンピューティングプラットフォーム、
システムプラットフォームによって呼び出された時に、各々所定のシステムオペレーションを達成する複数のアプリケーション、
単独的又は複数のモジュールの他のものと組み合わせて、各々複数のアプリケーションの一つを定義する複数のモジュール、から成り、
前記複数のアプリケーションの各々が、一つ又は複数のアプリケーションモジュールを識別するための一つ又は複数のモジュールポインタレコードを含み、
前記コンピューティングプラットフォームが、コンピューティングプラットフォームのレコード、複数のアプリケーションからの一つの呼び出されたアプリケーション、及び、複数のアプリケーション内の呼び出されたものを定義する一つ又は複数のアプリケーション定義モジュールの間での両方向ルールチェックを呼び出されたアプリケーションと一つ又は複数のアプリケーション定義モジュールをロードする以前に達成することから成るオープンアーキテクチャソフトウェア定義システム。
【請求項１１】
前記コンピューティングプラットフォームが、複数のアプリケーションの呼び出されたものを定義する一つ又は複数のアプリケーション定義モジュールとシステムプラットフォームとの間の両方向ルールチェックを、複数のアプリケーションの呼び出されたものを定義する一つ又は複数のアプリケーション定義モジュールの署名をチェックすることにより、達成することを特徴とする請求項１０記載のオープンアーキテクチャソフトウェア定義システム。
【請求項１２】
オープンアーキテクチャソフトウェア定義システムが通信システムである請求項１１記載のオープンアーキテクチャソフトウェア定義システム。
【請求項１３】
前記通信システムは無線ラジオである請求項１２記載のオープンアーキテクチャソフトウェア定義システム。
【請求項１４】
複数のアプリケーションの各々が、
アプリケーション識別情報を含む識別レコード、
プラットフォーム保証、容量制約、プラットフォーム互換性情報、ベンダ特定ルールの一つ又はそれ以上のものを含むルールレコード、
複数のモジュールからアプリケーション識別モジュールを識別するための少なくとも一つのモジュールポインタ、及び
認可されたアプリケーションエンティティを識別するための少なくとも一つの署名、から成るグループ選択される少なくとも一つのレコードを含む、請求項１０記載のオープンアーキテクチャソフトウェア識別システム。
【請求項１５】
モジュール名、形態、バージョン、及び出所情報を含むモジュールポインタ識別、及び
必要とされるモジュール保証、要求されるモジュールバージョン情報、モジュール相互作動性情報、及びバージョン特定プラットフォームルール、から成る請求項１４記載のオープンアーキテクチャソフトウェア定義システム。
【請求項１６】
複数のモジュールの各々が、
モジュール名、形態、バージョン、出所、保証及び追加情報の一つ又はそれ以上を含む識別レコード、
要求されたアプリケーション保証、要求されたプラットフォーム保証、容量制約、プラットフォーム形態、及び要求されたリ出所情報、及びベンダ特定アプリケーション及び／又はプラットフォームルールを含むルールレコード；及び
実行可能モジュールコード、から成る請求項１０記載のオープンアーキテクチャソフトウェア定義システム。
【請求項１７】
前記複数のモジュールの各々が、更に、少なくとも一つの署名、及び少なくとも一つの対応する署名認証を含む少なくとも一つの署名レコードから成る請求項１６記載のオープンアーキテクチャソフトウェア定義システム。
【請求項１８】
前記コンピューティングプラットフォームが、要求されたアプリケーション保証、要求されたモジュール保証、及び容量制約の一つ又はそれ以上に関する情報を含むプラットフォームルールレコード、フラットフォーム特定アプリケーション／モジュールルール、及びベンダ特定アプリケーション／モジュールルールを含むこと特徴とする請求項１０記載のオープンアーキテクチャソフトウェア定義システム。
【請求項１９】
前記オープンアーキテクチャソフトウェア定義システムが無線通信システムである請求項１０記載のオープンアーキテクチャソフトウェア定義システム。
【請求項２０】
各々互いに独立であり、各々所定のハードウェア及びソフトウェア機能の一方を実行する複数のモジュール、
複数のモジュールの少なくとも一つによって各々定義される複数のアプリケーション、及び
受け取られたアプリケーション命令に基づいて、複数のアプリケーションの各々を選択的に呼出し、コンピューティングプラットフォーム、呼び出されたアプリケーション、呼び出されたアプリケーションを定義する複数のモジュールの内の一つ又はそれ以上のもののルールに基づいて、呼び出されたアプリケーションのローディングを実施し、そして、コンピューティングプラットフォーム、呼び出されたアプリケーション、及び呼び出されたアプリケーションを定義する複数のモジュールの一つ又はそれ以上のものの間での一連の両方向ルールチェックを開始して、コンピューティングプラットフォーム、呼び出されたアプリケーション、及び呼び出されたアプリケーションを定義する複数のモジュールの一つ又はそれ以上のもののルールのロード時実行を確実にする、コンピューティングプラットフォーム、から成るオープンアーキテクチャソフトウェア定義通信システム。
【発明の詳細な説明】
【０００１】
（発明の属する技術分野）
本発明は、一般的に、オープンアーキテクチャーソフトウェアシステム、特に、システム全体のセキュティ及び保全性を強化するために、構成要素の各々に対する所定の構成（コンフィギュレーション）及びルール情報に基づいて、一連の両方向ルールチェックがシステム構成要素間で達成されるソフトウェア実行制御にに関係する。
【０００２】
（従来技術の記述）
オープンアーキテクチャ通信システムは、通常、複数のソフトウェアアプリケーションによって、定義されており、ソフトウェアアプリケーションの各々は、一つ以上の対応するハードウェア及びソフトウェアモジュールによって定義されている。これらの内在するソフトウェア及びハードウェアモジュールは、通常数多くのベンダによって、作られ且つ供給される。この様なシステムにおいては、現存するモジュールを更新するために新しいバージョンのソフトウェアモジュールが周期的にダウンロートされ、現存するハードウェアモジュールが周期的に置き換えられるか又は更新され、且つ新たなハードウェア及びソフトウェアモジュールが、システムに加えられることは、通常行なわれていることである。
【０００３】
セキュリティ、ライセンシング、及び互換性に関係する理由のために、この様なシステムにおいて、或るソフトウェアモジュールの使用を制御することが必要な場合がある。例えば、特定のモジュールの使用を、或る他のモジュールと組み合わせてのみ作動することが保証される様に、制限することができる。また、複数の制限が、ソフトウェアモジュールの使用を、或るバージョンのハードウェアモジュールのみに限定する。更に、或るソフトウェアモジュールでの制限は、そのモジュールが、特定の組織によって保証又は認証され、そのモジュールが信頼される出所から生じたものであり、及び／又はモジュールが修正されていないことを要求する場合がある。
【０００４】
現存する実行制御技術は、ソフトウェアモジュールの出所及び保全性を決定することが可能であり、又、これらのモジュールに対するライセンスが存在しない場合、或るモジュールの使用を禁止することが可能である。しかしながら、これらの技術は、或るモジュールが、他のベンダから生じた可能性のある他のモジュールを相互チェックすることが可能ではない。更に、従来の技術は、モジュール又はアプリケーションの実行中に、チェックを通常行う、従って、実行前に、追加のルールを発生して、システムの保全性を増大することは不可能である。
【０００５】
本発明の更なる目的及び利点は、添付図面と共に本発明の好適な実施の形態の以下の記述から容易に明らかになるであろう。
【０００６】
（好適な実施例の詳細な記述）
同様な番号が同様な部品を指示する図面をここで参照する。図１は、本発明が実施される形態のソフトウェア定義オープンアーキテクチャ通信システム１０の構成要素を示している。このシステム１０は、個別に取り除き、置き換え、更新し、及び／又はそれ以外の仕方で修正されることができ、従って、全ての他のシステム構成要素を修正する必要が無い、複数のハードウェア及びソフトウェア構成要素を有する。本発明の好適な実施の形態に従うと、システム１０は、本発明の譲受人であるモトローラ（登録商標）社によって、設計及び販売されるラジオの形態の無線情報送信システム（ＷＩＴＳ）である。例えば、パーソナルコンピュータ１２の様なインターネットポータル、セルラフォン１４の様な無線通信装置、及び通信衛星１６、更に、その他のＷＩＴＳシステム（図示せず）の様な、広範囲の形態の他の通信装置とインタフェースすることができる。
【０００７】
上述のラジオ１０内の構成要素の各々の動作は、ラジオに予めロードされ、次いで、典型的に周期ベースで更新されるソフトウェアによって定義されている。ソフトウェア自体は、一緒にバンドルされることができ、単一のベンダによって供給され、より典型的には、２以上のベンダによって個別に供給される多数の構成要素からなる。後者の場合、本発明の実行制御は、ライセンスされるか、そうでなければ互いに使用することが承認された構成成分のみが組み合わせて利用できることを保証する仕方で、複数のベンダからのソフトウェア構成要素が個別にロードされ、更新され、又は置き換えられることを可能にする。オープンアーキテクチャシステムは、システムを維持するのとシステム通信要求が変化した時にシステムを修正するのとの両方において、高い自由度を設計者に与えるが、同時にラジオ１０の基本的保全性も維持する。
【０００８】
図２は、図１のラジオ１０の例示ソフトウェア構成要素を示す。構成要素はコンピューティングプラットフォーム２０、アプリケーション２２、及び種々のモジュール２４、２６、２８、３０を含む。しかしながら、アプリケーション及びモジュールの数は、特定の基本的コンピュータプラットフォームに依存して、変化する場合がある。これらの構成要素２０−３０の各々は、構成要素の他のものと相互に作用して、以下により詳細に記述される様に、本発明の実行制御に従って、ラジオ１０の動作を決定する。
【０００９】
コンピューティングプラットフォーム２０は、ハードウェアベースであり、ラジオ１０のオペレーティングシステムである。上述のＷＩＴＳラジオシステムにおいて、コンピューティングプラットフォーム２０は、以下で議論される様に、他のソフトウェア構成要素によってチェックされる時に、プラットフォームを一義的に識別するプラットフォーム識別情報、及び必要とされるアプリケーション保証、モジュール保証及び容量制約を含むルール情報、更に、例えば、使用の局所性又は使用ルールの周期性の様な、アプリケーション２２又はモジュール２４−３０に関する他のベンダ特定ルールを含む。
【００１０】
図２において、アプリケーション２２は、ラジオ１０が所定の機能を実行することを可能にするアルゴリズムを定めている。アプリケーション２２は、アプリケーション名、形態、バージョン、出所、保証の様な情報、及び、特徴リストの様な可能な他の情報を含む識別レコード３２を含む一連のレコードによって定義される。この識別レコード３２は、従って、アプリケーションを一義的に識別し、アプリケーションにモジュール又はプラットフォームルール及び制約を課すことがあるアプリケーションに付いての情報を提供する。代替的に、アプリケーション識別レコード３２は、或るモジュールの利用を制限し、且つプラットフォーム２０による利用又はその利用の程度を制限するこはができる情報を含む。例えば、アプリケーションレコード３２は、アプリケーションがプラットフォーム２０によって使用が承認されたことを示すセキュリティ許可データを含むこともでき、又は含まないことも出来る。アプリケーションルールレコード３４は、プラットフォームがアプリケーションをロードすることが出来る以前に、プラットフォームによって満足され且つ有効にされるべきアプリケーション制約を含む。このルールレコード３４は、使用の局所性又は使用ルールの期間の様な他のベンダ特定ルールと同様に、要求されるプラットフォームの保証、容量制約、及び要求されるプラットフォームの形態の様なルールの通常のアプリケーションの形態を含むことができる。換言すると、アプリケーションベンダは、それ自身のセクュリティ／保全性の制約及び要求を、アプリケーションを介して、プラットフォームに課し、詐欺又はその他の未許可の使用からアプリケーションを保護することができる。
【００１１】
アプリケーション２２は、また、モジュール２４、２６、２８、３０をそれぞれアプリケーション２２に組み込むモジュールポインタレコード３６、３８、４０、４２を含むことができる。図示される様に、モジュールポインタレコードは、アプリケーション２２に組み込まれた各モジュールに対して利用することができる。アプリケーション２２は、４つのモジュール２４、２６、２８、３０を組み込んで示されているが、アプリケーションに組み込まれたモジュールの実際の数は、アプリケーションの要求される機能に依存して、一つのみ又は５つ以上とすることができる。また、ポインタレコード３６−４２は、プラットフォーム２０がモジュール２４−３０にロードされることができる以前に、モジュール２４−３０によって満足される必要がある要求を、ポイント指示されたモジュール２４−３０に課することができる。例えば、モジュール２４−３０の幾つか又は全てがアプリケーション認証／保証組織によってデジタル的に署名され、または、モジュール２４−３０の幾つか又は全てが、特定のベンダから発生されることをアプリケーション２２が要求することができる。
【００１２】
図３に示される様に、モジュールポインタ３８の様なモジュールポインタレコードは、モジュールポインタ識別レコード４４及びモジュールポインタルールレコード４６の両方を実際に含むことができる。モジュールポインタ識別レコード４４は、モジュール名、形態、バージョン及び出所の様な要求されたモジュールに付いての情報を与える。アプリケーション開発者によって、参照されるモジュールに課される要求及び制限を特定するポインタレコードルールの通常の形態を含む。要求及び制限は、要求されたモジールの保証、要求されたモジュールのバージョン、及び相互作動性情報、更に、使用の局所性及び使用ルールの期間の様なベンダ特定ルールを含むことができる。上述されたＷＩＴＳラジオ１０において、モジュール要求の一つの例は、ライセンスされたモジュール開発者の波形要求及びＲＦモジュール中の連邦通信委員会の署名とすることができる。プラットフォーム２０が参照されたモジュールをロードすることができる以前に、プラットフォームは、モジュールルールレコード４６で規定された制限及び要求が満足されているかを確認して、モジュール２４が実行のためにプラットフォーム２０上にロードされる以前に、モジュール２４がルールを承諾することをアプリケーション２２がチェックすることを可能にする必要がある。
【００１３】
更に、アプリケーションは、アプリケーションの開発及び／又は分配と関係するアプリケーションベンダ及び／又は他の組織を識別する、暗号署名又は署名人認証情報の様な、単一（又は複数の）デジタル署名を含む単一（又は複数の）署名レコード４８も含むことができる。この様な署名レコードはアプリケーション２２の出所を証明し、アプリケーションがプラットフォーム２０上にロードされる以前に署名が存在することを特定のモジュールが要求する場合、又は、プラットフォーム２０がアプリケーション２２をロードすることができる以前に、アプリケーション署名の存在をプラットフォーム２０が要求する場合に、この様な署名レコードを要求することができる。本発明の好適な実施の形態に従って、別の署名以外の全てのアプリケーションレコードをカバーする２以上のデジタル署名が要求される場合がある。
【００１４】
図２に再び戻る。モジュール２４−３０の各々は、アプリケーション２２によって使用され、且つアプリケーション２２によって呼び出された時に、アプリケーションを実行するために呼び出される特定の機能を実行するソフトウェアの別のライブラリである。上述のＷＩＴＳの実施の形態において、例えば、モジュールの各々は、データ暗号化、信号処理、プロトコル処理、ネットワーク通信計画、又は信号変調の何れかと関係する機能を達成する。
【００１５】
図３を参照する。モジュール２４のみの内容及び機能が、詳細に説明され、他のモジュール２６−３０の基本構成及び機能は類似していることが理解されるであろう。モジュール２４は、モジュール識別レコード５０、モジュールルールレコード５２、モジュールデータセクション５４及び一つ又は複数のオプション的モジュール署名レコード５６を含む。モジュール識別レコード５０はモジュール２４に対する単一識別情報、及びモジュールにアプリケーション又はプラットフォームルール又は制限を課することができるモジュール情報を提供する。識別情報は、モジュール名、形態、バージョン、出所、及び保証、及び使用の局所性又は使用の期限に関する情報の様な他の情報を含むことができる。
【００１６】
モジュールルールレコード５２は、アプリケーション２２及びプラットフォーム２０に関するモジュール要求又は制約を識別する。この様な要求／制約は、例えば、許容されるモジュールの組合せ、モジュール／アプリケーションデジタル信号要求、モジュールがプラットフォーム２０にロードされることができる以前に、特定のハードウェア構成要素が利用可能でなければならないＲＦモジュール要求の様なプラットフォーム環境要求を含むことができる。或る好適な実施の形態に従って、分類された暗号アルゴリズムアプリケーションは、モジュールがプラットフォームにロードされることができる以前に、呼出しアプリケーションが国家安全保障機関によって署名されることを必要とする。この様な要求は、ルールレコード内に、Ｘ．５０９属性認可を含むことによって、実施することができる。従って、モジュールベンダは、それ自身のセキュリティ／保全性の制約及び／又は要求をプラットフォーム２０及びアプリケーション２２の何れか又は両方に課し、不正又は他の非許可使用からモジュールを保護することができる。
【００１７】
モジュールデータレコード５４は、モジュールに対する実行可能コードを保持し、署名及び全モジュールルールレコードルールチェックが成功の場合、プラットフォーム２０によってロードされる。また、ローディング以前従ってプラットフォーム２０がアプリケーション２２を作動する以前の、モジュールの２４のルールチェック中に、プラットフォーム２０及び／又はアプリケーション２２がモジュール署名の有効性を要求する場合、一つ（又は複数）のモジュール署名レコード５６は、モジュールベンダ又は他の関連する事業体から一つ（又は複数）のデジタル署名を保持する。例えば、モジュール２４が国家安全保障機関の様な信頼性のある出所から発生されたことをプラットフォーム２０が、保証することが必要な場合、その信頼性のある出所は、そのデジタル署名を署名レコード５６に供給する必要があり、モジュール２４をプラットフォーム２０上にロードする時に、プラットフォーム２０によって有効にすることができる。
【００１８】
図４を参照する。本発明の動作が、通信装置１０、コンピューティングプラットフォーム２０、アプリケーション２２、及びモジュール２４に関して、記述される。特に、アプリケーション２２及びモジュール２４のローディン中、従って、アプリケーション実行時間以前に、システム構成要素中の本発明の実行制御によって実行される一連の両方向ルールチェックがここで記述される。本発明の動作の以下に記述において、用語「ルールチェック」は、アプリケーション／モジュールローディング中及びアプリケーション実行時間以前に、システム構成要素の幾つか又は全てによって満足される必要がある種々のルール及び他の要求の有効性を言うのに使用される。この様なルール／要求は、出所証明、認可／保証状態、プラットフォーム能力、レコード破壊状態、及びセキュリティクリアランス状態ルール及び要求を含むことができる。しかしながら、或るシステム構成要素によって他の構成要素厳密ち課せられる厳密な要求はシステム及びベンダの必要性に従って、変化することができる。
【００１９】
先ず、６０で、プラットフォーム２０は、アプリケーション２２をロードし且つ実行するユーザ要求を受信し、次に、プラットフォームルール及び構成情報に対して、アプリケーション識別レコード３２をチェックし、且つモジュールポインタレコード３８をパースする。更に、プラットフォーム２０は、セキュリティ／保全性に付いて特別の対策が望まれる場合、アプリケーション署名レコード４８をチェックスする。同時に、６２において、プラットフォーム２０は、プラットフォームルール及び構成情報の保全性をチェックして、プラットフォーム２０が、例えば、ベンダライセンス同意を介して、アプリケーションルールレコード３４毎に、アプリケーション２２をロードすることが認可されるか否かを決定する。
【００２０】
プラットフォーム２０からローディングコマンドを受信する際に、６４で、プラットフォームは、モジュールポインタルールレコード４６に対してモジュール識別レコード５０の内容をチェックして、モジュール２４の保全性及び出所の両方を確認する。また、６６で、プラットフォーム２０は、モジュール識別レコード５０をチェックすることによって、モジュール２４の保全性にアグセスし且つチェックする。次に、プラットフォーム２０は、６８で、アプリケーション識別レコード３２毎のアプリケーション２２の保全性をチェックし、且つ、７０で、モジュールルールレコード５２に対して、プラットフォームルール及び構成情報毎にプラットフォーム自体の保全性をチェックして、アプリケーション２２及びプラットフォーム２０がモジュール２４の全ての要求を満足するかを決定する。
【００２１】
上述の両方向ルールチェックの各々が成功の場合、プラットフォーム２０がアプリケーション２２及びモジュール２４のインスタンス化を完了し、内在するアプリケーションの実行を行なうことができる。しかしながら、６０−７０で達成されたルールチェックのいずれかが、失敗する場合、プラットフォームはアプリケーション２２のローティングを終結する。換言すると、例えば、アプリケーション２２は、６４で、ルールチェックを介して、モジュール識別レコードファイル５０は、アプリケーションベンダとモジュールベンダとの間での必要とされるライセンス合意を含まないことを、又は、モジュールセキュリティ又はデータが危うくなったことを決定する場合、アプリケーション２２は、プラットフォーム２０がモジュール２４をダウンロードすることを許可しなく、アプリケーション２２のインスタンス化は終結される。
【００２２】
図４は、プラットフォーム２０、アプリケーション２２及びモジュール２４間での一連の両方向ルールチェックを示しているが、６２、６４、６８、及び７０でのチェックは、上述したように、プラットフォーム２０によって実際に達成されることがここで理解されるべきである。より明確には、プラットフォーム２０は、プラットフォーム構成及びルール情報に含まれるルール、アプリケーションルールレコード３４、モジュールポインタルールレコード４６、及びモジュールルールレコード５２と連結して、アプリケーション２２及びモジュール２４をロードする必要がある。従って、アプリケーション２２及びモジュール２４は、プラットフォーム２０を信頼して、６２、６４、６８及び６８でチェックを達成し、チェックの何れかが失敗の場合アプリケーション２２のローディングを終結し、アプリケーション２２のローディングが終結した場合に、ロードされたアプリケーション２２の何れかの部分を除去する必要がある。
【００２３】
更に、６０及び６６でプラットフォームによって達成されたチェックは、アプリケーション及びモジュール署名レコード４８、５６にそれぞれ記録されているデジタル署名の有効性を含むことができる。
【００２４】
本発明の方法論のみが、例示的プラットフォーム２０、アプリケーション２２及びモジュール２４を参照して、記述されたが、本発明の実行制御は、数多くのアプリケーション及びモジュールを含むオープンソフトウェア環境で利用することができることは理解されるべきである。多数アプリケーションシステムにおいて、モジュールのあるものは、２つ以上のアプリケーションによって使用することができることも理解されるべきである。図５は、プラットフォーム１２０、２つの別のアプリケーション１２２ａ，１２２ｂ、及び４つの別のモジュール１２４、１２６、１２８、１３０を含む通信装置１００の一例を示しており、モジュール１２６はアプリケーション１２２ａ、１２２ｂの両方の一部を定める様に利用される。
【００２５】
以上の記述から明らかなように、本発明の実行制御システム及び方法論は、ライセンスされていない、許可されていない又は危うくされたソフトウェアの様な、許されていないソフトウェアが、最小の実行時間の影響という仕方で検出され、それがロードされること禁止することを可能にする。従って、上述された様なオープンアーキテクチャシステムは、安全な且つ制御可能な仕方及び第３者に対してライセンス及び使用保護を与える仕方で、時間と共に拡張され且つ改良されることができる。更に、本発明は、輸出される及び海外で使用されるシステムの様な、ライセンス及びセキュリティ要求を増強することが通常困難な環境でシステムがライセンス及びセキュリティ要求が増強されることを可能にする。
【００２６】
本発明の実行制御は、無線情報送信システム（ＷＩＴＳ）ラジオ１０で実施されると記述されたが、本発明の実行制御は、例えば、図１に示されたパーソナルコンピュータ１２、セルラー電話１４、又はサテライト１６の様な、オープンアーキテクチャを有する他のソフトウェア定義通信装置、又は、より一般的には、図２に示されるコンピューティングプラットフォーム２０の様なコンピューティンプラットフォームを有する如何なるオープンアーキテクチャソフトウェア定義環境において、実施することができる。
【００２７】
上記説明は、本発明の好適な実施の形態を有するが、本発明は、特許請求の範囲の領域及び正しい意味から離れること無しに、修正、変更、又は変化されることができることは理解されるべきである。
【図面の簡単な説明】
【図１】本発明の実行制御を含む第１の例示アーキテクチャシステムを説明するブロック図、
【図２】本発明の実行制御のソフトウェア構成要素のブロック図、
【図３】モジュールポインタレコード及びモジュールを示すブロック図、
【図４】システムプラットフォームかシステムアプリケーションを呼び出した時、システム構成要素のレコード中のルールチェックのシークエンスを説明するブロック図、
【図５】本発明の実行制御を含む第２の例示オープンアーキテクチャシステムを説明するブロック図。
【図２】
2004504656.tif 000003
【図３】
2004504656.tif 000004
【図４】
2004504656.tif 000005
【図５】
2004504656.tif 000006
【国際公開パンフレット】
2004504656.tif 000007
2004504656.tif 000008
2004504656.tif 000009
2004504656.tif 000010
2004504656.tif 000011
2004504656.tif 000012
2004504656.tif 000013
2004504656.tif 000014
2004504656.tif 000015
2004504656.tif 000016
2004504656.tif 000017
2004504656.tif 000018
2004504656.tif 000019
2004504656.tif 000020
2004504656.tif 000021
2004504656.tif 000022
2004504656.tif 000023
2004504656.tif 000024
2004504656.tif 000025
【国際公開パンフレット（コレクトバージョン）】
2004504656.tif 000026
【国際調査報告】
2004504656.tif 000027
2004504656.tif 000028