(57)【要約】【課題】組込み機器への不要なアプリケーションのインストールを防止する。【解決手段】アプリケーション２０１を組込み機器１０１にインストールするプログラムであって、組込み機器１０１のシステム情報を記憶し（２０８）、アプリケーション２０１を読み込み（２０５）、読み込まれた実行モジュール２０３とシステム情報とに基づいて、アプリケーション２０１が正常に動作するかを判断し（２０６）、プロパティ２０２とシステム情報とに基づいて、アプリケーション２０１が正常に動作するかを判断し（２０９）、アプリケーションが正常に動作しないと判断した場合に、エラーを通知する（２１０）モジュールを備える。【選択図】　図２
2004005419.tif 000002
【特許請求の範囲】
【請求項１】
実行モジュールとプロパティ情報とを含むアプリケーションを組込み機器にインストールするインストール処理方法であって、
前記組込み機器のシステム情報を記憶するシステム情報記憶工程と、
前記アプリケーションを読み込む読込み工程と、
前記読み込まれたアプリケーションの実行モジュールの内容を解析し、該実行モジュール解析結果と前記システム情報とに基づいて、前記組込み機器において前記アプリケーションが正常に動作するか否かを判断する実行モジュール解析工程と、
前記読み込まれたアプリケーションのプロパティ情報を解析し、該解析結果と前記システム情報とに基づいて、前記組込み機器において前記アプリケーションが正常に動作するか否かを判断するプロパティ解析工程と、
前記実行モジュール解析工程または前記プロパティ解析工程において、前記アプリケーションが正常に動作しないと判断された場合に、エラーを通知するエラー通知工程と
を備えることを特徴とするインストール処理方法。
【請求項２】
前記実行モジュール解析工程は、
前記実行モジュールの内容に基づいて、前記アプリケーションの実行に際して必要なライブラリの一覧を解析し、
前記システム情報より、前記組込み機器が実装しているライブラリの一覧を読み込み、
前記アプリケーションが必要とするライブラリが、前記組込み機器に実装されているか否かに基づいて、前記アプリケーションが正常に動作するか否かを判断することを特徴とする請求項１記載のインストール処理方法。
【請求項３】
前記プロパティ解析工程は、
前記プロパティ情報を解析し、前記アプリケーションの実行に際して必要なシステム資源に関する情報を解析し、
前記システム情報より、前記組込み機器が有するシステム資源に関する情報を読み込み、
前記アプリケーションが必要としているシステム資源を前記組込み機器が有しているか否かに基づいて、前記アプリケーションが正常に動作するか否かを判断することを特徴とする請求項１に記載のインストール処理方法。
【請求項４】
前記システム資源に関する情報は、少なくとも前記組込み機器が有するＲＡＭ容量、ハードディスク容量、ネットワーク接続機能に関する情報のいずれかを備えることを特徴とする請求項３に記載のインストール処理方法。
【請求項５】
前記エラー通知工程は、
前記実行モジュール解析工程において前記アプリケーションが正常に動作しないと判断された原因または、前記プロパティ解析工程において前記アプリケーションが正常に動作しないと判断された原因を提示する工程を更に備えることを特徴とする請求項１に記載のインストール処理方法。
【請求項６】
前記プロパティ解析工程において、複数の実行モジュールから構成されるアプリケーションのプロパティ情報を解析した結果、個々の実行モジュール単独では正常に動作するが、複数の実行モジュールを同時に正常に動作させることはできないために該アプリケーションが正常に動作しないと判断された場合、前記エラー通知工程は、該判断結果を通知することを特徴とする請求項１に記載のインストール処理方法。
【請求項７】
前記実行モジュール解析工程および前記プロパティ解析工程において、前記アプリケーションが正常に動作すると判断された場合に、前記アプリケーションは前記組込み機器へインストールされることを特徴とする請求項１に記載のインストール処理方法。
【請求項８】
前記プロパティ解析工程において、前記アプリケーションが必要としているシステム資源を前記組込み機器が有していないと判断された場合、前記アプリケーションは前記組込み機器が有する一時的な記憶装置に格納され、前記プロパティ解析工程において、該システム資源の不足が解消したと判断された場合、前記エラー通知工程は、該判断結果を通知することを特徴とする請求項３に記載のインストール処理方法。
【請求項９】
前記プロパティ解析工程において、前記アプリケーションが必要としているシステム資源を前記組込み機器が有していないと判断された場合、前記アプリケーションは前記組込み機器にインストールされ、当該システム資源の不足が解消されるまでの間、該アプリケーションは実行不可能であることを特徴とする請求項３に記載のインストール処理方法。
【請求項１０】
実行モジュールとプロパティ情報とを含むアプリケーションを組込み機器にインストールするインストール処理装置であって、
前記組込み機器のシステム情報を記憶するシステム情報記憶手段と、
前記アプリケーションを読み込む読込み手段と、
前記読み込まれたアプリケーションの実行モジュールの内容を解析し、該実行モジュール解析結果と前記システム情報とに基づいて、前記組込み機器において前記アプリケーションが正常に動作するか否かを判断する実行モジュール解析手段と、
前記読み込まれたアプリケーションのプロパティ情報を解析し、該解析結果と前記システム情報とに基づいて、前記組込み機器において前記アプリケーションが正常に動作するか否かを判断するプロパティ解析手段と、
前記実行モジュール解析手段または前記プロパティ解析手段により、前記アプリケーションが正常に動作しないと判断された場合に、エラーを通知するエラー通知手段と
を備えることを特徴とするインストール処理装置。
【請求項１１】
請求項１乃至９のいずれか１つに記載のインストール処理方法をコンピュータによって実現させるための制御プログラムを格納した記憶媒体。
【請求項１２】
請求項１乃至９のいずれか１つに記載のインストール処理方法をコンピュータによって実現させるための制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、組込み機器にアプリケーションを動的にインストールする場合の処理技術に関するものである。
【０００２】
【従来の技術】
複写機やＦＡＸ等のオフィス機器から、携帯端末、双方向テレビに至るまで、あらゆるデジタル機器のうち、所謂パーソナルコンピュータ等を除く、Ｎｏｎ−ＰＣと呼ばれる機器は、一般に組込み機器と呼ばれている。
【０００３】
従来より、かかる組込み機器におけるアプリケーションは、システムの作成時に静的にコンパイルとリンクが行われてシステムに組み込まれており、組込み機器の稼動中にアプリケーションを動的にインストールすることが不可能な場合が多かった。しかし、インターネット接続機能を備えた組込み機器が多くなり、パーソナルコンピュータ（ＰＣ）やワークステーション（ＷＳ）上のＷｅｂブラウザから組込み機器にアプリケーションをインストールしたり、組込み機器自身がインターネットまたは企業内のファイルサーバから必要なアプリケーションをダウンロードして実行することも行われるようになりつつある。
【０００４】
一例として、米国およびその他の国における米国Ｓｕｎ　Ｍｉｃｒｏｓｙｓｔｅｍｓ，　Ｉｎｃ．の商標または登録商標であるＪａｖａ言語で記述されたＪａｖａアプレットやＪａｖａアプリケーションを、Ｊａｖａの実行環境であるＪａｖａ仮想マシン（Ｊａｖａ　Ｖｉｒｔｕａｌ　Ｍａｃｈｉｎｅ、以後ＪＶＭ）が実装された組込み機器に、動的にダウンロードし実行することが行われている。
【０００５】
従来、機器へのアプリケーションのインストールにおいては、「特開平１１−１７５３２２号公報」のように、インストールするアプリケーションが組込み機器のオペレーティングシステム（ＯＳ）を対象としたものかチェックし、不適切な場合はアプリケーションのインストールを防止したり、「特開平１１−１３４１７８号公報」のように、インストールに際してモジュール内のバージョン情報をチェックし、不要なアプリケーションのインストールを防止したりすることが出来るようになっている。
【０００６】
またＪａｖａアプレットやＪａｖａアプリケーションのインストールにおいてもインストールチェックを行うための方法が規定されている。例えば、同じＳｕｎ　Ｍｉｃｒｏｓｙｓｔｅｍｓ，　Ｉｎｃ．の登録商標であるＪａｖａ　２　Ｐｌａｔｆｏｒｍ，　Ｍｉｃｒｏ　Ｅｄｉｔｉｏｎ（Ｊ２ＭＥ）では、モバイル機器を対象としたＭｏｂｉｌｅ　Ｉｎｆｏｒｍａｔｉｏｎ　Ｄｅｖｉｃｅ　Ｐｒｏｆｉｌｅ　（ＪＳＲ−３７）　Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＭＩＤＰ）と呼ばれるプロファイルがＪａｖａ　Ｃｏｍｍｕｎｉｔｙ　Ｐｒｏｃｅｓｓ（ＪＣＰ）　Ｅｘｐｅｒｔ　Ｇｒｏｕｐによって策定されており、その仕様書には、インストールするＪａｖａアプリケーションの情報をＭＩＤｌｅｔ　Ａｔｔｉｂｕｔｅｓとして記述するようになっている。それによると、Ｊａｖａアプリケーションのバージョン、プロファイルのバージョン、ＪＶＭのバージョン、モジュールサイズなどを記述するようになっているため、インストール段階でその内容と機器のＪａｖａの実行環境とを比較することにより不要なアプリケーションのインストールを防止することが出来るようになっている。
【０００７】
【特許文献１】
特開平１１−１７５３２２号公報
【特許文献２】
特開平１１−１３４１７８号公報
【０００８】
【発明が解決しようとする課題】
しかしながら、上記従来例では、ＯＳやバージョンが適切であっても、ハードウェア資源、例えばメモリ容量、記憶装置の容量、あるいはネットワーク接続機能など、機器のサポート状況によっては、必ずしもインストールしたアプリケーションが動作する保証はないという問題がある。これは、特に組込み機器の場合には問題となる。何故ならば、コストを抑えるためにハードウェア資源を最低限に抑えているため、メモリ容量や記憶装置の容量不足で他のアプリケーションが動作しなくなったり、システムで使用可能なタスクの制限値を超えることにより、組込み機器の本来の機能が動作しなくなるだけでなく、最悪の場合はシステムダウンとなる可能性もあるからである。また、実行できないアプリケーションをインストールすることにより外部記憶装置の資源が無駄に消費されるという問題もある。
【０００９】
一方、Ｊａｖａの実行環境が実装された組込み機器にＪａｖａアプリケーションやＪａｖａアプレットをインストールする場合も、同様な問題が発生する。すなわち、前述したＭＩＤｌｅｔ　Ａｔｔｉｂｕｔｅｓの情報だけでは、このＪａｖａアプリケーションはいくつのスレッドが必要なのか、ハードディスクやフラッシュメモリ等どのような記憶装置を使用するのか、メモリ容量はどれくらい必要か、ネットワーク接続にどのようなプロトコルが必要かなどの情報が記述されないため、実際にインストールして実行するまで正常動作するかどうかわからないという問題がある。また、ＭＩＤｌｅｔ　Ａｔｔｉｂｕｔｅｓのプロファイルには、Ｊａｖａアプリケーションが必要とするＪａｖａクラスライブラリの種類を記述しないため、ユーザが作成したＪａｖａクラスライブラリや機器固有のＪａｖａクラスライブラリを必要とする場合でも、実際にインストールして実行するまで正常動作するかどうかわからないという問題もある。
【００１０】
本発明は、上記課題を鑑みてなされたものであり、組込み機器へアプリケーションをインストールするにあたり、該組込み機器において該アプリケーションが正常に動作するか否かを事前に判断することで、不要なアプリケーションのインストールおよび実行を防止することを目的とする。
【００１１】
【課題を解決するための手段】
上記の目的を達成するために本発明に係るインストール処理方法は以下のような構成を備える。即ち、
実行モジュールとプロパティ情報とを含むアプリケーションを組込み機器にインストールするインストール処理方法であって、
前記組込み機器のシステム情報を記憶するシステム情報記憶工程と、
前記アプリケーションを読み込む読込み工程と、
前記読み込まれたアプリケーションの実行モジュールの内容を解析し、該実行モジュール解析結果と前記システム情報とに基づいて、前記組込み機器において前記アプリケーションが正常に動作するか否かを判断する実行モジュール解析工程と、
前記読み込まれたアプリケーションのプロパティ情報を解析し、該解析結果と前記システム情報とに基づいて、前記組込み機器において前記アプリケーションが正常に動作するか否かを判断するプロパティ解析工程と、
前記実行モジュール解析工程または前記プロパティ解析工程において、前記アプリケーションが正常に動作しないと判断された場合に、エラーを通知するエラー通知工程とを備える。
【００１２】
【発明の実施の形態】
【第１の実施形態】
以下、本発明の第１の実施形態を図１乃至図６を参照しながら説明する。
【００１３】
図１は、本発明の各実施形態にかかるインストール処理方法を実現するシステムの一構成例を示す図である。同図において１０１は組込み機器であり、以下に組込み機器の一般的なハードウェア構成を示す。
【００１４】
１０２は後述する各種の処理を実行するマイクロプロセッサ等で構成された中央処理装置（ＣＰＵ）である。
【００１５】
１０３はＲＡＭ等により構成された主記憶装置で、この主記憶装置１０３は、外部記憶装置１０６から読み込んだオペレーティングシステム（ＯＳ）やプログラムを格納し実行するために利用される。
【００１６】
１０４はＣＲＴディスプレイや液晶ディスプレイ等の表示装置であり、実行中のプログラムの状態を表示したりするために利用される。
【００１７】
１０５はキーボードやポインティングデバイス等の入力装置である。
【００１８】
１０６は組込み機器１０１内の外部記憶装置で、例えばハードディスク、光磁気ディスク、フラッシュメモリ等の記憶媒体を備えており、オペレーティングシステム（ＯＳ）や各種アプリケーションプログラムを記憶するために利用される。
【００１９】
１０７はバスで、組込み機器１０１内の上記構成要素間でデータや信号を授受するために利用される。
【００２０】
１０８はＰＣやＷＳで、必要に応じて組込み機器１０１に接続し、ＰＣやＷＳに格納されているアプリケーションを転送することができる。
【００２１】
１０９は、ネットワークで、組込み機器１０１とＰＣやＷＳ１０８の間でアプリケーションを転送するために利用される。
【００２２】
なお、本実施形態を含む以下の実施形態においては、本発明にかかるインストール処理方法の各工程のプログラムコードを備えた制御プログラム（以下、インストール処理プログラムと称す）を、中央処理装置１０２で実行することで、該インストール処理方法を実現することとしているが、本発明はこれに限らず、インストール処理専用のハードウェアによって実現してもよいし、また、当該専用のハードウェアは、組込み機器内に装着されていても、組込み機器と別体であっても構わないものとする。
【００２３】
上記ハードウェア構成を有する組込み機器１０１では、ネットワーク上のＰＣやＷＳ１０８からアプリケーションのインストール処理が指示されると、前記インストール処理プログラムが起動し、当該プログラムが実行されることにより、転送されたアプリケーションを主記憶装置１０３に読み込み、中央処理装置１０２においてインストール可能かどうか判断し、インストール可能な場合は外部記憶装置１０６に格納する。インストール可能かどうかの判断結果は、ＰＣやＷＳ１０８に返され、ＰＣやＷＳ１０８からその後のインストール処理が指示される。この場合、インストール処理中の経過を組込み機器１０１の表示装置１０４に表示し、インストールに必要なデータ入力を入力装置１０５で行うこともできる。
【００２４】
図２はインストール処理機能を示すブロック図である。同図において２０１は、ＰＣやＷＳ１０８からインストール指示されたアプリケーションであり、プロパティ２０２と実行モジュール２０３とを含んでいる。
【００２５】
２０２はプロパティで、アプリケーション２０１の実行に際して必要なシステム資源の情報が含まれている。
【００２６】
２０３は実行モジュールであり、アプリケーション２０１の実際のコードが含まれている。
【００２７】
２０４は、本発明の第１の実施形態にかかるインストール処理プログラムのモジュール構成を示すものであり、後述する２０５乃至２１０の各種モジュールを含んでいる。
【００２８】
２０５は読込みモジュールで、ＰＣやＷＳ１０８から転送されたアプリケーション２０１を読み込む。
【００２９】
２０６は実行モジュール解析モジュールであり、読み込んだアプリケーション２０１の実行モジュール２０３の内容を解析してアプリケーション２０１の実行に必要なライブラリの一覧を解析すると共に、組込み機器１０１が実装しているライブラリの一覧を後述するシステム情報読込みモジュール２０７によって取得して比較し、必要とするライブラリが組込み機器１０１に実装されていない場合は、後述するエラー通知モジュール２１０にその結果を通知する。
【００３０】
２０７はシステム情報読込みモジュールであり、組込み機器１０１が実装しているライブラリの一覧や、主記憶装置の容量や実行可能なタスク数等のシステム資源の情報を後述するシステム情報記憶モジュール２０８から読み込む。
【００３１】
２０８はシステム情報記憶モジュールであり、組込み機器１０１が実装しているライブラリの一覧や、主記憶装置の容量や実行可能なタスク数等のシステム資源の情報を記憶する。
【００３２】
２０９はプロパティ解析モジュールであり、読み込んだアプリケーション２０１のプロパティ２０２の内容を解析してアプリケーション２０１の実行に必要なシステム資源を解析すると共に、組込み機器１０１が有するシステム資源の一覧をシステム情報読込みモジュール２０７によって取得して比較し、必要とするシステム資源を組込み機器１０１が有していない場合は、後述するエラー通知モジュール２１０にその結果を通知する。なお、実行モジュール解析モジュール２０６およびプロパティ解析モジュール２０９によってインストール可能（アプリケーションが組込み機器１０１にて正常に動作する）と判断した場合は、アプリケーション２０１を組込み機器１０１の外部記憶装置１０６に格納する。
【００３３】
２１０はエラー通知モジュールであり、実行モジュール解析モジュール２０６およびプロパティ解析モジュール２０９によってインストールが不適当（アプリケーションが組込み機器１０１にて正常に動作しない）と判断された場合、ＰＣやＷＳ１０８にその不適原因を返す。もしＰＣやＷＳ１０８から、それでもインストールすると指示された場合は、アプリケーション２０１を組込み機器１０１の外部記憶装置１０６に格納する。
【００３４】
図３は、アプリケーション２０１に含まれるプロパティ２０２の例を示す図で、この例では、アプリケーション２０１を実行する際に必要となるシステム資源として、主記憶メモリ（ＲＡＭ）が２５６ＫＢ、外部記憶装置（ＨＤＤ）が１００ＫＢ、スレッド（Ｔｈｒｅａｄ）が３つ、ネットワーク（Ｎｅｔｗｏｒｋ）機能としてＴＣＰ／ＩＰがサポートされていることが必要であることを示している。
【００３５】
図４は、組込み機器１０１が有しているシステム情報の例を示す図で、この例では、ライブラリ（Ｌｉｂｒａｒｙ）として、“ｃｏｍ．ｃａｎｏｎ．ｌｉｂ１”と“ｃｏｍ．ｃａｎｏｎ．ｌｉｂ２”と“ｃｏｍ．ｃａｎｏｎ．ｌｉｂ３”の３種類をサポートしていることを示している。また、組込み機器１０１が有しているシステム資源として、最大主記憶メモリ（Ｍａｘ　ＲＡＭ）が１６ＭＢ、最大外部記憶装置（Ｍａｘ　ＨＤＤ）が２５６ＭＢ、フラッシュメモリ（Ｍａｘ　Ｆｌａｓｈ　Ｍｅｍｏｒｙ）が６４ＭＢ、スレッド（Ｍａｘ　Ｔｈｒｅａｄ）が６４個、ネットワーク（Ｎｅｔｗｏｒｋ）機能としてＴＣＰ／ＩＰとＰＰＰをサポートしていることを示している。
【００３６】
さらに、現時点での使用可能なシステム資源として、主記憶メモリ（ＲＡＭ）が２ＭＢ、外部記憶装置（ＨＤＤ）が１２８ＭＢ、フラッシュメモリ（Ｆｌａｓｈ　Ｍｅｍｏｒｙ）が４８ＭＢ、スレッド（Ｔｈｒｅａｄ）が３つ残っていることを示している。アプリケーション２０１の実行モジュール２０３を解析することによって得られたライブラリの一覧と、アプリケーション２０１のプロパティ２０２を解析することによって得られたシステム資源は、図４のシステム情報と比較され、インストールするアプリケーションが組込み機器１０１で正常に動作可能かどうかが判断される。なお、システム情報は、ＯＳによって最新の状態に時々刻々と更新される。
【００３７】
図５は、実行モジュール解析モジュール２０６とプロパティ解析モジュール２０９が、組込み機器１０１にアプリケーションをインストールするのが適当であるか判断し、不適当であると判断された場合のエラーの種類の例を示す図である。この例では、ＥＲＲＯＲ１としてアプリケーションの実行に必要なライブラリがサポートされていないことを、ＥＲＲＯＲ２として実行中の他のアプリケーションが終了すれば動作可能であることを、ＥＲＲＯＲ３として主記憶メモリ（ＲＡＭ）を追加すれば動作可能であることを、ＥＲＲＯＲ４として外部記憶装置（ＨＤＤ）をサポートすれば動作可能であることを、ＥＲＲＯＲ５としてネットワーク接続機能をサポートすれば動作可能であることを示している。
【００３８】
図６は、本実施形態にかかるインストール処理プログラムの制御処理手順を示すフローチャートである。この処理プログラムのプログラムコードは主記憶装置１０３に格納されており、中央処理装置１０２がこのプログラムコードを実行することによって読込みモジュール２０５、実行モジュール解析モジュール２０６、システム情報読込みモジュール２０７、システム情報記憶モジュール２０８、プロパティ解析モジュール２０９、エラー通知モジュール２１０の各モジュールが機能する。
【００３９】
このプログラムコードは、アプリケーションをインストールするためにネットワーク上のＰＣやＷＳから転送されるアプリケーションを受け取り、受け取ったアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較して判断し、アプリケーションの実行条件を満たす場合に組込み機器の外部記憶装置に格納する、本実施形態にかかるインストール処理方法の制御手順に対応する。
【００４０】
図６に示すように、本実施形態にかかるインストール処理プログラムが実行されることにより、組込み機器ではネットワーク上のＰＣやＷＳから転送されるアプリケーションを受信し（ステップＳ１）、受信したアプリケーションを読込みモジュール２０５によって主記憶装置１０３に読み込む（ステップＳ２）。実行モジュール解析モジュール２０６は、読み込んだアプリケーション２０１の実行モジュール２０３の内容を解析してアプリケーション２０１の実行に必要なライブラリの一覧を解析する（ステップＳ３）。
【００４１】
次に、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のライブラリの一覧をシステム情報読込みモジュール２０７によって獲得し（ステップＳ４）、ステップＳ３で解析したアプリケーションが必要とするライブラリ一覧とステップＳ４で獲得したシステム情報の中のライブラリの一覧とを比較する（ステップＳ５）。ステップＳ５において、組込み機器１０１がライブラリをサポートしていると判断された場合、プロパティ解析モジュール２０９は、アプリケーション２０１に含まれるプロパティ２０２の内容を解析し（ステップＳ６）、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のシステム資源をシステム情報読込みモジュール２０７によって獲得し、ステップＳ６で解析したアプリケーション２０１が必要とするシステム資源と比較して、正常動作するために必要なシステム資源を満たしているかどうか判断する（ステップＳ７）。ステップＳ７において、システム資源を満たしていると判断された場合、組込み機器１０１の外部記憶装置１０６に格納する（ステップＳ８）。
【００４２】
一方、ステップＳ５において、組込み機器１０１がライブラリをサポートしていないと判断された場合や、ステップＳ７においてシステム資源を満たしていないと判断された場合、エラー通知モジュール２１０は、インストールしようとしたネットワーク上のＰＣやＷＳにその不適原因の情報を送り返す（ステップＳ９）。もし、図５のＥＲＲＯＲ２の様に状況によってはそれでもインストールするという応答がＰＣやＷＳからあった場合（ステップＳ１０）、ステップＳ８に進みアプリケーションを外部記憶装置１０６に格納する処理を行う。ステップＳ１０で、インストールしないという応答があった場合は、インストール処理を終了する。
【００４３】
以上説明したように、アプリケーションのインストールのためネットワーク上のＰＣやＷＳからアプリケーションが組込み機器に転送された場合において、本実施形態にかかるインストール処理プログラムが該組込み機器上で実行されることで、該組込み機器では転送されたアプリケーションを受け取り、受け取ったアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較してアプリケーションの実行条件を満たすかどうかを判断し、実行条件を満たす場合に外部記憶装置に格納することが可能となり、その結果、実行不可能なアプリケーションの無理な実行によるシステムダウンの可能性を最小限に抑えることができるという効果を奏する。
【００４４】
また、実行不可能なアプリケーションのインストールによる不要な外部記憶装置の資源の消費を節約できるという効果を奏する。
【００４５】
さらに、実行不可能なアプリケーションを無条件にインストールさせないというだけでなく、何故インストールできないかという原因をユーザに通知し、その原因によっては、インストールしても良いという選択肢をユーザに提供するので、インストール後にシステム資源を追加して実行条件を満たせばアプリケーションを起動することができるようになり、その結果、組込み機器の拡張性、汎用性が向上するという効果を奏する。
【００４６】
【第２の実施形態】
前記第１の実施形態では、ネットワーク上のＰＣやＷＳからアプリケーションをインストールする場合のインストール処理プログラムの処理について説明したが、本発明のインストール処理プログラムにより実行可能な機能はこれに限られない。本実施形態では、組込み機器上の操作をうけ、自らインターネットやイントラネットなどのネットワークからアプリケーションをダウンロードしてインストールする機能について説明する。
【００４７】
以下、本発明の第２の実施形態を図７乃至図８を参照しながら説明する。
【００４８】
図７は、インストール処理機能を示すブロック図である。同図において２０１は、ネットワークからダウンロードされるアプリケーションであり、プロパティ２０２と実行モジュール２０３とを含んでいる。
【００４９】
２０２はプロパティで、アプリケーション２０１の実行に際して必要なシステム資源の情報が含まれている。
【００５０】
２０３は実行モジュールであり、アプリケーション２０１の実際のコードが含まれている。
【００５１】
７００は、本発明の第２の実施形態にかかるインストール処理プログラムのモジュール構成を示すものであり、後述する２０６乃至２０９、７０１、７０２の各種モジュールを含んでいる。
【００５２】
７０１は読込みモジュールで、ネットワークからダウンロードされたアプリケーション２０１を読み込む。
【００５３】
２０６は実行モジュール解析モジュールであり、読み込んだアプリケーション２０１の実行モジュール２０３の内容を解析してアプリケーション２０１の実行に必要なライブラリの一覧を解析すると共に、組込み機器１０１が実装しているライブラリの一覧を後述するシステム情報読込みモジュール２０７によって取得して比較し、必要とするライブラリが組込み機器１０１に実装されていない場合は、後述するエラー通知モジュール７０２にその結果を通知する。
【００５４】
２０７はシステム情報読込みモジュールであり、組込み機器１０１が実装しているライブラリの一覧や、主記憶装置の容量や実行可能なタスク数等のシステム資源の情報を後述するシステム情報記憶モジュール２０８から読み込む。
【００５５】
２０８はシステム情報記憶モジュールであり、組込み機器１０１が実装しているライブラリの一覧や、主記憶装置の容量や実行可能なタスク数等のシステム資源の情報を記憶する。
【００５６】
２０９はプロパティ解析モジュールであり、読み込んだアプリケーション２０１のプロパティ２０２の内容を解析してアプリケーション２０１の実行に必要なシステム資源を解析すると共に、組込み機器１０１が有するシステム資源の一覧をシステム情報読込みモジュール２０７によって取得して比較し、必要とするシステム資源を組込み機器１０１が有していない場合は、後述するエラー通知モジュール７０２にその結果を通知する。なお、実行モジュール解析モジュール２０６およびプロパティ解析モジュール２０９によってインストール可能（アプリケーションが組込み機器にて正常に動作する）と判断した場合は、アプリケーション２０１を組込み機器１０１の外部記憶装置１０６に格納する。
【００５７】
７０２はエラー通知モジュールであり、実行モジュール解析モジュール２０６およびプロパティ解析モジュール２０９によってインストールが不適当と判断された場合、表示装置１０４にその不適原因を表示しその後どう処理するかをユーザに促す。もし入力装置１０５から、それでもインストールすると指示された場合は、アプリケーション２０１を組込み機器１０１の外部記憶装置１０６に格納する。
【００５８】
図８は、本実施形態にかかるインストール処理プログラムの制御処理手順を示すフローチャートである。この処理プログラムのプログラムコードは主記憶装置１０３に格納されており、中央処理装置１０２がこのプログラムコードを実行することによって読込みモジュール７０１、実行モジュール解析モジュール２０６、システム情報読込みモジュール２０７、システム情報記憶モジュール２０８、プロパティ解析モジュール２０９、エラー通知モジュール７０２の各モジュールが機能する。
【００５９】
このプログラムコードは、アプリケーションをインストールするためにネットワークからアプリケーションをダウンロードし、ダウンロードしたアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較して判断し、アプリケーションの実行条件を満たす場合に、組込み機器の外部記憶装置に格納する、本実施形態にかかるインストール処理方法の制御手順に対応する。
【００６０】
本実施形態では、図８に示す組込み機器において、インストール処理プログラム７００が実行されることで、該組込み機器はネットワークからアプリケーションのダウンロードを開始し（ステップＳ８０１）、ダウンロードしたアプリケーションを読込みモジュール７０１によって主記憶装置１０３に読み込む（ステップＳ２）。
【００６１】
実行モジュール解析モジュール２０６は、読み込んだアプリケーション２０１の実行モジュール２０３の内容を解析してアプリケーション２０１の実行に必要なライブラリの一覧を解析する（ステップＳ３）。
【００６２】
次に、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のライブラリ情報をシステム情報読込みモジュール２０７によって獲得し（ステップＳ４）、ステップＳ３で解析したアプリケーションが必要とするライブラリ一覧とステップＳ４で獲得したシステム情報の中のライブラリ一覧とを比較する（ステップＳ５）。
【００６３】
ステップＳ５において、組込み機器１０１がライブラリをサポートしていると判断された場合、プロパティ解析モジュール２０９は、アプリケーション２０１に含まれるプロパティ２０２の内容を解析し（ステップＳ６）、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のシステム資源をシステム情報読込みモジュール２０７によって獲得し、ステップＳ６で解析したアプリケーション２０１が必要とするシステム資源と比較して、正常動作するために必要なシステム資源を満たしているかどうか判断する（ステップＳ７）。ステップＳ７において、システム資源を満たしていると判断された場合、組込み機器１０１の外部記憶装置１０６に格納する（ステップＳ８）。
【００６４】
一方、ステップＳ５において、組込み機器１０１がライブラリをサポートしていないと判断された場合や、ステップＳ７においてシステム資源を満たしていないと判断された場合、エラー通知モジュール７０２は、表示装置１０４にその不適原因を表示しその後どう処理するかをユーザに促す（ステップＳ８０２）。もし、図５のＥＲＲＯＲ２の様に状況によってはそれでもインストールするという指示が入力装置１０５からあった場合（ステップＳ８０３）、ステップＳ８に進みアプリケーションを外部記憶装置１０６に格納する処理を行う。ステップＳ８０３で、インストールしないという指示があった場合は、インストール処理を終了する。
【００６５】
以上説明したように、本実施形態にかかるインストール処理プログラムが実行されることで、組込み機器にインストールされるアプリケーションがネットワークからダウンロードされ、該組込み機器ではダウンロードしたアプリケーションを読み込み、読み込んだアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較してアプリケーションの実行条件を満たすかどうかを判断し、実行条件を満たす場合にのみ外部記憶装置に格納することが可能となり、その結果、実行不可能なアプリケーションの無理な実行によるシステムダウンの可能性を最小限に抑えることができるという効果を奏する。
【００６６】
また、実行不可能なアプリケーションのインストールによる不要な外部記憶装置の資源の消費を節約できるという効果を奏する。
【００６７】
さらに、実行不可能なアプリケーションを無条件にインストールさせないというだけでなく、何故インストールできないかという原因を表示装置に表示してユーザに示し、その原因によっては、インストールしても良いという選択肢をユーザに提供するので、インストール後にシステム資源を追加して実行条件を満たせば、その後アプリケーションを起動することができるようになり、その結果、組込み機器の拡張性、汎用性が向上するという効果を奏する。
【００６８】
【第３の実施形態】
前記第１及び第２の実施形態では、インストールするアプリケーションが、１つのプロパティと１つの実行モジュールとから構成されている場合について述べたが、複数のプロパティと複数の実行モジュールとから構成されているアプリケーションの場合であっても、本実施形態にかかるインストール処理プログラムが実行されることで、本願発明の目的を達成することができる。
【００６９】
以下、本発明の第３の実施形態を図９乃至図１０を参照しながら説明する。
【００７０】
図９は、本実施形態においてインストールされるアプリケーションの例であり、複数のプロパティと複数の実行モジュールとから構成されている。
【００７１】
同図において９０１は、複数のプロパティと複数の実行モジュールとから構成されるアプリケーションである。
【００７２】
９０２は第１のプロパティで、第１の実行モジュール９０３の実行に際して必要なシステム資源の情報が含まれている。
【００７３】
９０３は第１の実行モジュールであり、アプリケーション９０１の第１の実行モジュールの実際のコードが含まれている。
【００７４】
９０４は第２のプロパティで、第２の実行モジュール９０５の実行に際して必要なシステム資源の情報が含まれている。
【００７５】
９０５は第２の実行モジュールであり、アプリケーション９０１の第２の実行モジュールの実際のコードが含まれている。
【００７６】
図１０は、本実施形態にかかるインストール処理プログラムの制御処理手順を示すフローチャートである。この処理プログラムのプログラムコードは主記憶装置１０３に格納されており、中央処理装置１０２がこのプログラムコードを実行することによって読込みモジュール２０５、実行モジュール解析モジュール２０６、システム情報読込みモジュール２０７、システム情報記憶モジュール２０８、プロパティ解析モジュール２０９、エラー通知モジュール２１０の各モジュールが機能する。
【００７７】
このプログラムコードは、アプリケーションをインストールするためにネットワーク上のＰＣやＷＳから転送されるアプリケーションを受け取り、受け取ったアプリケーションの複数の実行モジュールおよびその実行モジュールに対応する複数のプロパティ情報と組込み機器のシステム情報とを比較して判断し、実行条件を満たさない場合は資源不足のため複数の実行モジュールを同時には実行できないことを通知し、それでもインストールするという応答があった場合に組込み機器の外部記憶装置に格納する、本実施形態にかかるインストール処理方法の制御手順に対応する。
【００７８】
図１０に示すように、本実施形態にかかるインストール処理プログラムが実行されることにより、組込み機器ではネットワーク上のＰＣやＷＳから転送されるアプリケーションを受信し（ステップＳ１）、受信したアプリケーションを読込みモジュール２０５によって主記憶装置１０３に読み込む（ステップＳ２）。実行モジュール解析モジュール２０６は、読み込んだアプリケーション９０１の実行モジュール９０３および９０５の内容を解析してアプリケーション９０１の実行に必要なライブラリの一覧を解析する（ステップＳ１００１）。
【００７９】
次に、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のライブラリの一覧をシステム情報読込みモジュール２０７によって獲得し（ステップＳ４）、ステップＳ１００１で解析したアプリケーションが必要とするライブラリ一覧とステップＳ４で獲得したシステム情報の中のライブラリの一覧とを比較する（ステップＳ５）。もし、ステップＳ５において、組込み機器１０１がライブラリをサポートしていないと判断された場合、エラー通知モジュール２１０は、インストールしようとしたネットワーク上のＰＣやＷＳにその不適原因の情報を送り返し（ステップＳ９）、インストール処理を終了する。
【００８０】
一方、ステップＳ５において、組込み機器１０１がライブラリをサポートしていると判断された場合、プロパティ解析モジュール２０９は、アプリケーション９０１に含まれる最初のプロパティ９０２の内容を解析し（ステップＳ６）、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のシステム資源をシステム情報読込みモジュール２０７によって獲得し、ステップＳ６で解析した実行モジュール９０３が必要とするシステム資源と比較して、正常動作するために必要なシステム資源を満たしているかどうか判断する（ステップＳ７）。ステップＳ７において、システム資源を満たしていると判断された場合、アプリケーション９０１に含まれる全てのプロパティをチェックしたかを判断し（ステップＳ１００２）、まだチェックしていないプロパティがあればステップＳ６に戻り、次のプロパティを解析する処理を行う。ステップＳ１００２において、アプリケーション９０１に含まれる全てのプロパティをチェックし、かつ全ての実行モジュールが正常動作するために必要なシステム資源を満たしていると判断された場合、アプリケーション９０１を組込み機器１０１の外部記憶装置１０６に格納し（ステップＳ８）、インストール処理を終了する。
【００８１】
一方、ステップＳ７において、ある１つの実行モジュールが正常動作するために必要なシステム資源を満たしていないと判断された場合、エラー通知モジュール２１０は、インストールしようとしたネットワーク上のＰＣやＷＳに資源不足のため同時に実行できない旨の情報を送り返す（ステップＳ１００３）。もし、それでもインストールするという応答がＰＣやＷＳからあった場合（ステップＳ１０）、ステップＳ８に進みアプリケーションを外部記憶装置１０６に格納する処理を行う。ステップＳ１０で、インストールしないという応答があった場合は、インストール処理を終了する。
【００８２】
以上説明したように、インストールのためネットワーク上のＰＣやＷＳから複数のプロパティと複数の実行モジュールとから構成されているアプリケーションが組込み機器に転送された場合においても、本実施形態にかかるインストール処理プログラムが該組込み機器上で実行されることで、該組込み機器では転送されたアプリケーションを受け取り、受け取ったアプリケーションの複数の実行モジュールおよびその実行モジュールに対応する複数のプロパティ情報と組込み機器のシステム情報とを比較してアプリケーションの実行条件を満たすかどうかを判断し、実行条件を満たさないと判断された場合は資源不足のため複数の実行モジュールを同時には実行できないことを通知し、それでもインストールするという応答があった場合に組込み機器の外部記憶装置に格納することが可能となり、その結果、実行不可能なアプリケーションの無理な実行によるシステムダウンの可能性を最小限に抑えることができるという効果を奏する。
【００８３】
また、実行不可能なアプリケーションのインストールによる不要な外部記憶装置の資源の消費を節約できるという効果を奏する。
【００８４】
さらに、実行不可能なアプリケーションを無条件にインストールさせないというだけでなく、資源不足であることをユーザに通知し、それでもインストールを希望する場合には、インストールを実行できるという選択肢をユーザに提供するので、インストール後にシステム資源を追加して実行条件を満たせばアプリケーションを起動することができるようになり、その結果、組込み機器の拡張性、汎用性が向上するという効果を奏する。
【００８５】
【第４の実施形態】
本実施形態では、アプリケーションを正常に実行するためのシステム資源が不足している場合のインストール処理プログラムの処理について説明する。具体的には、本実施形態にかかるインストール処理プログラムが実行されることにより、かかる場合にシステム資源不足が解消されるまで一時的な記憶領域に当該アプリケーションを格納しておくことが可能となる。
【００８６】
以下、本発明の第４の実施形態を図１１を参照しながら説明する。図１１は、本実施形態にかかるインストール処理プログラムの制御処理手順を示すフローチャートである。この処理プログラムのプログラムコードは主記憶装置１０３に格納されており、中央処理装置１０２がこのプログラムコードを実行することによって読込みモジュール２０５、実行モジュール解析モジュール２０６、システム情報読込みモジュール２０７、システム情報記憶モジュール２０８、プロパティ解析モジュール２０９、エラー通知モジュール２１０によって処理が行われる。
【００８７】
このプログラムコードは、アプリケーションをインストールするためにネットワーク上のＰＣやＷＳから転送されるアプリケーションを受け取り、受け取ったアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較して判断し、アプリケーションが正常に実行できるためのシステム資源が不足している場合には、システム資源不足が解消されるまで一時的な記憶領域に格納し、システム資源が解消された後に組込み機器の外部記憶装置に格納する、本実施形態にかかるインストール処理方法の制御手順に対応する。
【００８８】
図１１に示すように、本実施形態にかかるインストール処理プログラムが実行されることにより、組込み機器ではネットワーク上のＰＣやＷＳから転送されるアプリケーションを受信し（ステップＳ１）、受信したアプリケーションを読込みモジュール２０５によって主記憶装置１０３に読み込む（ステップＳ２）。実行モジュール解析モジュール２０６は、読み込んだアプリケーション２０１の実行モジュール２０３の内容を解析してアプリケーション２０１の実行に必要なライブラリの一覧を解析する（ステップＳ３）。
【００８９】
次に、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のライブラリの一覧をシステム情報読込みモジュール２０７によって獲得し（ステップＳ４）、ステップＳ３で解析したアプリケーションが必要とするライブラリ一覧とステップＳ４で獲得したシステム情報の中のライブラリの一覧とを比較する（ステップＳ５）。ステップＳ５において、組込み機器１０１がライブラリをサポートしていると判断された場合、プロパティ解析モジュール２０９は、アプリケーション２０１に含まれるプロパティ２０２の内容を解析し（ステップＳ６）、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のシステム資源をシステム情報読込みモジュール２０７によって獲得し、ステップＳ６で解析したアプリケーション２０１が必要とするシステム資源と比較して、正常動作するために必要なシステム資源を満たしているかどうか判断する（ステップＳ７）。ステップＳ７において、システム資源を満たしていると判断された場合、組込み機器１０１の外部記憶装置１０６に格納し（ステップＳ８）、インストール処理を終了する。
【００９０】
一方、ステップＳ７において、システム資源を満たしていないと判断された場合、アプリケーションを主記憶装置１０３の一時的な領域やハードディスク内の一時的な記憶領域に格納し（ステップＳ１１０１）、エラー通知モジュール２１０は、インストールしようとしたネットワーク上のＰＣやＷＳに一時的に格納したことを通知する（ステップＳ１１０２）。この場合、一時的に格納したアプリケーションは、実行可能なアプリケーションとはまだ認識されていない。その後、システム資源不足が解消されたかどうかを監視し（ステップＳ１１０３）、システム資源不足が解消されたと判断された場合はネットワーク上のＰＣやＷＳにシステム資源不足が解消されたことを通知するとともに（ステップＳ１１０４）、インストールするかどうかの応答を待ち（ステップＳ１０）、インストールするという応答があった場合は一時的に格納したアプリケーションを外部記憶装置１０６に格納して（ステップＳ１１０５）インストール処理を終了する。一方、ステップＳ１０においてインストールしないという応答があった場合は、一時的に格納したアプリケーションを削除して（ステップＳ１１０６）インストール処理を終了する。
【００９１】
また、ステップＳ５において、組込み機器１０１がライブラリをサポートしていないと判断された場合、エラー通知モジュール２１０は、インストールしようとしたネットワーク上のＰＣやＷＳにその不適原因の情報を送り返して（ステップＳ９）、インストール処理を終了する。
【００９２】
以上説明したように、アプリケーションのインストールのためネットワーク上のＰＣやＷＳからアプリケーションが組込み機器に転送された場合において、本実施形態にかかるインストール処理プログラムが該組込み機器上で実行されることで、該組込み機器では転送されたアプリケーションを受け取り、受け取ったアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較してアプリケーションの実行条件を満たすかどうかを判断し、アプリケーションが正常に実行できるためのシステム資源が不足している場合には、システム資源不足が解消されるまで一時的な記憶領域に格納し、システム資源が解消された後に組込み機器の外部記憶装置に格納することが可能となり、その結果、実行不可能なアプリケーションの無理な実行によるシステムダウンの可能性を最小限に抑えることができるという効果を奏する。
【００９３】
また、システム資源が不足している場合には、システム資源不足が解消されるまで一時的な記憶領域に格納しておくので、システム資源が解消された後に、再びＰＣやＷＳからアプリケーションのインストール処理を繰り返す必要がなくなるという効果を奏する。
【００９４】
【第５の実施形態】
本実施形態では、アプリケーションを正常に実行するためのシステム資源が不足している場合における、インストール処理プログラムによる他の処理について説明する。具体的には、本実施形態にかかるインストール処理プログラムが実行されることにより、かかる場合にシステム資源不足が解消されるまで実行不可という状態で組込み機器の外部記憶装置に格納し、システム資源不足が解消された後に実行可能状態に切り替えるということが可能となる。
【００９５】
以下、本発明の第５の実施形態を図１２を参照しながら説明する。図１２は、本実施形態にかかるインストール処理プログラムの制御処理手順を示すフローチャートである。この処理プログラムのプログラムコードは主記憶装置１０３に格納されており、中央処理装置１０２がこのプログラムコードを実行することによって読込みモジュール２０５、実行モジュール解析モジュール２０６、システム情報読込みモジュール２０７、システム情報記憶モジュール２０８、プロパティ解析モジュール２０９、エラー通知モジュール２１０の各モジュールが機能する。
【００９６】
このプログラムコードは、アプリケーションをインストールするためにネットワーク上のＰＣやＷＳから転送されるアプリケーションを受け取り、受け取ったアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較して判断し、アプリケーションが正常に実行できるためのシステム資源が不足していると判断された場合には、システム資源不足が解消されるまで実行不可という状態で組込み機器の外部記憶装置に格納し、システム資源不足が解消された後に実行可能状態にする、本実施形態にかかるインストール処理方法の制御手順に対応する。
【００９７】
図１２に示すように、本実施形態にかかるインストール処理プログラムが実行されることで、組込み機器ではネットワーク上のＰＣやＷＳから転送されるアプリケーションを受信し（ステップＳ１）、受信したアプリケーションを読込みモジュール２０５によって主記憶装置１０３に読み込む（ステップＳ２）。実行モジュール解析モジュール２０６は、読み込んだアプリケーション２０１の実行モジュール２０３の内容を解析してアプリケーション２０１の実行に必要なライブラリの一覧を解析する（ステップＳ３）。
【００９８】
次に、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のライブラリの一覧をシステム情報読込みモジュール２０７によって獲得し（ステップＳ４）、ステップＳ３で解析したアプリケーションが必要とするライブラリ一覧とステップＳ４で獲得したシステム情報の中のライブラリの一覧とを比較する（ステップＳ５）。ステップＳ５において、組込み機器１０１がライブラリをサポートしていると判断された場合、プロパティ解析モジュール２０９は、アプリケーション２０１に含まれるプロパティ２０２の内容を解析し（ステップＳ６）、システム情報記憶モジュール２０８によって保持されている組込み機器１０１のシステム資源をシステム情報読込みモジュール２０７によって獲得し、ステップＳ６で解析したアプリケーション２０１が必要とするシステム資源と比較して、正常動作するために必要なシステム資源を満たしているかどうか判断する（ステップＳ７）。ステップＳ７において、システム資源を満たしていると判断された場合、組込み機器１０１の外部記憶装置１０６に格納し（ステップＳ８）、インストール処理を終了する。
【００９９】
一方、ステップＳ７において、メモリが不足している場合などシステム資源を満たしていないと判断された場合、システム資源不足で実行不可であるというフラグをセットするとともに（ステップＳ１２０１）、組込み機器１０１の外部記憶装置１０６に格納し（ステップＳ１２０２）、エラー通知モジュール２１０は、インストールしようとしたネットワーク上のＰＣやＷＳにシステム資源不足で実行不可であるということを通知する（ステップＳ１２０３）。この場合、実行不可であるというフラグがセットされたアプリケーションは、実行可能なアプリケーションとは認識されない。この具体的な例として、アイコンのダブルクリックによってアプリケーションを起動するシステムでは、アイコンが非表示となるか、表示されてもダブルクリック不可状態で表示されることとなる。また、メニューの選択によってアプリケーションを起動するシステムでは、メニュー項目が非表示となるか、表示されても選択不可状態で表示されこととなる。
【０１００】
その後、システム資源不足が解消されたかどうかを監視し（ステップＳ１１０３）、システム資源不足が解消されたと判断された場合は、システム資源不足で実行不可であるというフラグをクリアして（ステップＳ１２０４）インストール処理を終了する。システム資源不足が解消される一例としては、起動中の別のアプリケーションが終了した事によりシステム資源が解放された場合や、物理的なメモリの追加などが挙げられる。また、実行不可であるというフラグをクリアした場合、アイコンのダブルクリックによってアプリケーションを起動するシステムでは、非表示であったアイコンが表示され、ダブルクリック不可状態で表示されていたアイコンはダブルクリック可能状態となる。また、メニューの選択によってアプリケーションを起動するシステムでは、非表示であったメニュー項目は表示され、選択不可状態で表示されていたメニュー項目は選択可能状態となる。
【０１０１】
一方、ステップＳ５において、組込み機器１０１がライブラリをサポートしていないと判断された場合、エラー通知モジュール２１０は、インストールしようとしたネットワーク上のＰＣやＷＳにその不適原因の情報を送り返して（ステップＳ９）、インストール処理を終了する。
【０１０２】
以上説明したように、インストールのためネットワーク上のＰＣやＷＳからアプリケーションが組込み機器に転送された場合において、本実施形態にかかるインストール処理プログラムが該組込み機器上で実行されることで、該組込み機器では転送されたアプリケーションを受け取り、受け取ったアプリケーションの実行モジュールおよびプロパティ情報と組込み機器のシステム情報とを比較してアプリケーションの実行条件を満たすかどうかを判断し、アプリケーションが正常に実行するためのシステム資源が不足していると判断された場合には、システム資源不足が解消されるまで実行不可という状態で組込み機器の外部記憶装置に格納し、システム資源不足が解消された後に実行可能状態に切り替えるということが可能となり、その結果、実行不可能なアプリケーションの無理な実行によるシステムダウンの可能性を最小限に抑えることができるという効果を奏する。
【０１０３】
また、システム資源が不足している場合には、あらかじめ組込み機器の外部記憶装置に格納しておくので、不足していたシステム資源を追加するだけで実行可能になり、再びＰＣやＷＳからアプリケーションのインストール処理を繰り返す必要がなくなるという効果を奏する。
【０１０４】
【他の実施形態】
尚、上記各実施形態では、上記図６、図８、図１０、図１１及び図１２に示すプログラムコード群を主記憶装置１０３に格納していたが、外部記憶装置１０６の記憶媒体または内部の記憶資源に図６、図８、図１０、図１１及び図１２に示すプログラムコード群を記憶させ、この記憶媒体から中央処理装置（ＣＰＵ）１０２がプログラムコードを読み出して実行するようにしてもよい。
【０１０５】
図１３はＣＰＵで読み出し可能な各種制御プログラムのプログラムコード群を格納する記憶媒体のメモリマップを示す図である。この記憶媒体には、例えば図６のフローチャートに示すプログラムコード、すなわち、第１の実施形態におけるプログラムコードが、第１の制御プログラムに対応するプログラムコード群として格納されている。また、例えば第２の実施形態におけるプログラムコードが第２の制御プログラムに対応するプログラムコード群として格納されている。
【０１０６】
特に図示しないが、この記憶媒体には、記憶されるプログラム群を管理する情報、例えばバージョン情報、作成者等を記憶し、かつプログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等を記憶するようにしてもよい。
【０１０７】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合、解凍するプログラム等を記憶するようにしてもよい。
【０１０８】
また、図６、図８、図１０、図１１及び図１２に示すプログラムコード群の機能が、外部からインストールされるプログラムによって本システムにより遂行されてもよい。この場合、ＣＤ−ＲＯＭやフラッシュメモリ、ＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体からプログラムを含む情報群を本システムに供給することが可能である。
【０１０９】
このように、本実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（ＣＰＵやＭＭＵ）が記憶媒体に格納されたプログラムコードを読み出して実行することによっても、本発明の目的が達成される。
【０１１０】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１１】
プログラムコードを供給するための媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ等を用いることができる。
【０１１２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているオペレーティングシステム等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれる。
【０１１３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれる。
【０１１４】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。さらに、本発明を達成するためのソフトウェアによって表されるプログラムを、システムあるいは装置がネットワーク上のデータベースから通信プログラムによりダウンロードして読み出すことによっても、本発明の効果を享受することができる。
【０１１５】
【発明の効果】
以上説明したように本発明によれば、組込み機器へアプリケーションをインストールするにあたり、該組込み機器において該アプリケーションが正常に動作するか否かを事前に判断することで、不要なアプリケーションのインストールおよび実行を防止することが可能となる。
【図面の簡単な説明】
【図１】本発明の各実施形態にかかるインストール処理方法を実現可能なシステムの一構成例を示す図である。
【図２】インストール処理機能を説明するブロック図である。
【図３】アプリケーションに含まれるプロパティ情報の一例を示す図である。
【図４】組込み機器が有するシステム情報の一例を示す図である。
【図５】エラー情報の一例を示す図である。
【図６】本発明の第１の実施形態にかかるインストール処理プログラムの制御手順の一例を示すフローチャートである。
【図７】本発明の第２のインストール処理機能を説明するブロック図である。
【図８】本発明の第２の実施形態にかかるインストール処理プログラムの制御手順の一例を示すフローチャートである。
【図９】本発明の第２の実施形態にかかるインストール処理プログラムにより、インストールされるアプリケーションの例を示す図である。
【図１０】本発明の第３の実施形態にかかるインストール処理プログラムの制御手順の一例を示すフローチャートである。
【図１１】本発明の第４の実施形態にかかるインストール処理プログラムの制御手順の一例を示すフローチャートである。
【図１２】本発明の第５の実施形態にかかるインストール処理プログラムの制御手順の一例を示すフローチャートである。
【図１３】ＣＰＵで読み出し可能な各種制御プログラムのプログラムコード群を格納する記憶媒体のメモリマップを示す図である。
【符号の説明】
１０１　組込み機器
１０２　中央処理装置
１０３　主記憶装置
１０４　表示装置
１０５　入力装置
１０６　外部記憶装置
１０７　バス
１０８　パーソナルコンピュータ又はワークステーション
１０９　ネットワーク
【図１】
2004005419.tif 000003
【図２】
2004005419.tif 000004
【図３】
2004005419.tif 000005
【図４】
2004005419.tif 000006
【図５】
2004005419.tif 000007
【図６】
2004005419.tif 000008
【図７】
2004005419.tif 000009
【図８】
2004005419.tif 000010
【図９】
2004005419.tif 000011
【図１０】
2004005419.tif 000012
【図１１】
2004005419.tif 000013
【図１２】
2004005419.tif 000014
【図１３】
2004005419.tif 000015