(57)【要約】  【課題】  ソフトウェアコンポーネント間の関係を考慮した適切なソフトウェアコンポーネントの削除が可能な情報処理システム及びソフトウェアコンポーネント削除制御方法を提供する。  【解決手段】  ＭＦシステム１００は、ソフトウェアコンポーネントが他のソフトウェアコンポーネントを利用し得るものであって、所定のソフトウェアコンポーネントを記憶する主記憶装置１６０と、所定のソフトウェアコンポーネントと、その所定のソフトウェアコンポーネントを利用する他のソフトウェアコンポーネントとの関係を表す利用関係情報を管理し、この利用関係情報に基づいて、所定のソフトウェアコンポーネントが他のソフトウェアコンポーネントに利用されているか否かを判定し、利用されていない場合に所定のソフトウェアコンポーネントの主記憶装置１６０からの削除を許諾するコンポーネント管理機構１４０とを有する。【選択図】  図１
2006092172.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアコンポーネントが他のソフトウェアコンポーネントを利用し得る情報処理システムであって、
第１のソフトウェアコンポーネントを記憶する記憶手段と、
前記第１のソフトウェアコンポーネントと、該第１のソフトウェアコンポーネントを利用する１又は複数の第２のソフトウェアコンポーネントとの関係を表す利用状況を管理する利用状況管理手段と、
前記利用状況管理手段により管理される利用状況に基づいて、前記第１のソフトウェアコンポーネントが他のソフトウェアコンポーネントに利用されているか否かを判定し、利用されていない場合に前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾する削除許諾手段とを有することを特徴とする情報処理システム。
【請求項２】
前記第２のソフトウェアコンポーネントの数を保持するとともに、前記第２のソフトウェアコンポーネントの増減に応じて、保持する数を増減させるカウント手段を有し、
前記削除許諾手段は、前記カウント手段に保持される数が０である場合に、前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記利用状況管理手段によって管理される利用状況と、前記カウント手段によって保持される数の整合を図る整合手段を有することを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記整合手段は、前記利用状況管理手段によって管理される利用状況に基づいて、前記カウント手段によって保持される数を再設定することを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記整合手段は、前記第２のソフトウェアコンポーネントによる前記第１のソフトウェアコンポーネントの利用が終了した時に、前記カウント手段によって保持される数が０である場合に、前記利用状況管理手段によって管理される利用状況に基づいて、前記カウント手段によって保持される数を再設定することを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記整合手段は、所定の時間周期で、前記利用状況管理手段により管理される利用状況と、前記カウント手段により保持される数の整合を図ることを特徴とする請求項３乃至５のいずれかに記載の情報処理システム。
【請求項７】
ソフトウェアコンポーネントが他のソフトウェアコンポーネントを利用し得る情報処理システムにおけるソフトウェアコンポーネント削除制御方法であって、
記憶手段に記憶される第１のソフトウェアコンポーネントと、該第１のソフトウェアコンポーネントを利用する１又は複数の第２のソフトウェアコンポーネントとの関係を表す利用状況を管理する利用状況管理ステップと、
前記利用状況管理ステップにおいて管理される利用状況に基づいて、前記第１のソフトウェアコンポーネントが他のソフトウェアコンポーネントに利用されているか否かを判定し、利用されていない場合に前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾する削除許諾ステップとを有することを特徴とするソフトウェアコンポーネント削除制御方法。
【請求項８】
前記第２のソフトウェアコンポーネントの数をカウンタに保持させるとともに、前記第２のソフトウェアコンポーネントの増減に応じて、前記カウンタに保持される数を増減させるカウントステップを有し、
前記削除許諾ステップは、前記カウントステップにおいて前記カウンタに保持される数が０である場合に、前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾することを特徴とする請求項７に記載のソフトウェアコンポーネント削除制御方法。
【請求項９】
前記利用状況管理ステップにおいて管理される利用状況と、前記カウントステップにおいて前記カウンタに保持される数の整合を図る整合ステップを有することを特徴とする請求項８に記載のソフトウェアコンポーネント削除制御方法。
【請求項１０】
前記整合ステップは、前記利用状況管理ステップにおいて管理される利用状況に基づいて、前記カウントステップにおいて前記カウンタに保持される数を再設定することを特徴とする請求項９に記載のソフトウェアコンポーネント削除制御方法。
【請求項１１】
前記整合ステップは、前記第２のソフトウェアコンポーネントによる前記第１のソフトウェアコンポーネントの利用が終了した時に、前記カウントステップにおいて前記カウンタに保持される数が０である場合に、前記利用状況管理ステップにおいて管理される利用状況に基づいて、前記カウントステップにおいて前記カウンタに保持される数を再設定することを特徴とする請求項１０に記載のソフトウェアコンポーネント削除制御方法。
【請求項１２】
前記整合ステップは、所定の時間周期で、前記利用状況管理ステップにおいて管理される利用状況と、前記カウントステップにおいて前記カウンタに保持される数の整合を図ることを特徴とする請求項９乃至１１のいずれかに記載のソフトウェアコンポーネント削除制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアコンポーネントが他のソフトウェアコンポーネントを利用し得る情報処理システム、及び、当該情報処理システムにおけるソフトウェアコンポーネントの削除制御方法に関する。
【背景技術】
【０００２】
従来から、様々なソフトウェアコンポーネントを組み合わせて情報処理を行う情報処理システムが提供されている。このような情報処理システムは、機能の追加や変更等がなされる場合に、システムの変更範囲の局所化が可能であるという利点を有する。例えば、いわゆる組込み制御系の情報処理システムでは、高機能化及びネットワーク化等に伴い、市場導入後においてもソフトウェアコンポーネントを必要に応じて入れ替えることが要求され、様々な入れ替え方法が提供されている（例えば、特許文献１及び２参照）。
【特許文献１】特開平１０−１４３３７７号公報
【特許文献２】特開２００１−２９０６３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来のソフトウェアコンポーネントの入れ替え方法では、ソフトウェアコンポーネントが他のソフトウェアコンポーネントを利用する場合、その利用されるソフトウェアコンポーネントが単に削除されてしまうと、その削除されたソフトウェアコンポーネントを利用するソフトウェアコンポーネントの実行が停止してしまう等の不具合が生じる場合がある。
【０００４】
本発明は、前述したような従来の問題を解決するためになされたもので、ソフトウェアコンポーネント間の関係を考慮した適切なソフトウェアコンポーネントの削除が可能な情報処理システム及びソフトウェアコンポーネント削除制御方法を提供するものである。
【課題を解決するための手段】
【０００５】
本発明の情報処理システムは、ソフトウェアコンポーネントが他のソフトウェアコンポーネントを利用し得るものであって、第１のソフトウェアコンポーネントを記憶する記憶手段と、前記第１のソフトウェアコンポーネントと、該第１のソフトウェアコンポーネントを利用する１又は複数の第２のソフトウェアコンポーネントとの関係を表す利用状況を管理する利用状況管理手段と、前記利用状況管理手段により管理される利用状況に基づいて、前記第１のソフトウェアコンポーネントが他のソフトウェアコンポーネントに利用されているか否かを判定し、利用されていない場合に前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾する削除許諾手段とを有する。
【０００６】
この構成により、ソフトウェアコンポーネント間の利用関係が管理され、ソフトウェアコンポーネントが他のソフトウェアコンポーネントに利用されている場合には、利用されるソフトウェアコンポーネントは削除されないため、他のソフトウェアコンポーネントの実行が停止してしまう等の不具合が生じることがなく、適切なソフトウェアコンポーネントの削除が可能となる。
【０００７】
また、本発明の情報処理システムは、前記第２のソフトウェアコンポーネントの数を保持するとともに、前記第２のソフトウェアコンポーネントの増減に応じて、保持する数を増減させるカウント手段を有し、前記削除許諾手段が、前記カウント手段に保持される数が０である場合に、前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾する。
【０００８】
この構成により、ソフトウェアコンポーネントを利用する他のソフトウェアコンポーネントの数が管理され、その数が０の場合にのみ、利用されるソフトウェアコンポーネントが削除されるため、適切なソフトウェアコンポーネントの削除が可能となる。
【０００９】
また、本発明の情報処理システムは、前記利用状況管理手段によって管理される利用状況と、前記カウント手段によって保持される数の整合を図る整合手段を有する。
【００１０】
ソフトウェアコンポーネントを利用する他のソフトウェアコンポーネントが異常終了したような場合には、利用状況管理手段によって管理される利用状況と、カウント手段によって保持される数とに不整合が生じる場合がる。従って、このような場合には、管理される利用状況と、カウント手段によって保持される数の整合を図ることにより、当該カウント手段によって保持される数に基づく適切なソフトウェアコンポーネントの削除が可能となる。
【００１１】
また、本発明の情報処理システムは、前記整合手段が、前記利用状況管理手段によって管理される利用状況に基づいて、前記カウント手段によって保持される数を再設定する。
【００１２】
また、本発明の情報処理システムは、前記整合手段が、前記第２のソフトウェアコンポーネントによる前記第１のソフトウェアコンポーネントの利用が終了した時に、前記カウント手段によって保持される数が０である場合に、前記利用状況管理手段によって管理される利用状況に基づいて、前記カウント手段によって保持される数を再設定する。
【００１３】
また、本発明の情報処理システムは、前記整合手段が、所定の時間周期で、前記利用状況管理手段により管理される利用状況と、前記カウント手段により保持される数の整合を図る。
【００１４】
また、本発明のソフトウェアコンポーネント削除制御方法は、ソフトウェアコンポーネントが他のソフトウェアコンポーネントを利用し得る情報処理システムにおけるものであって、記憶手段に記憶される第１のソフトウェアコンポーネントと、該第１のソフトウェアコンポーネントを利用する１又は複数の第２のソフトウェアコンポーネントとの関係を表す利用状況を管理する利用状況管理ステップと、前記利用状況管理ステップにおいて管理される利用状況に基づいて、前記第１のソフトウェアコンポーネントが他のソフトウェアコンポーネントに利用されているか否かを判定し、利用されていない場合に前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾する削除許諾ステップとを有する。
【００１５】
また、本発明のソフトウェアコンポーネント削除制御方法は、前記第２のソフトウェアコンポーネントの数をカウンタに保持させるとともに、前記第２のソフトウェアコンポーネントの増減に応じて、前記カウンタに保持される数を増減させるカウントステップを有し、前記削除許諾ステップが、前記カウントステップにおいて前記カウンタに保持される数が０である場合に、前記第１のソフトウェアコンポーネントの前記記憶手段からの削除を許諾する。
【００１６】
また、本発明のソフトウェアコンポーネント削除制御方法は、前記利用状況管理ステップにおいて管理される利用状況と、前記カウントステップにおいて前記カウンタに保持される数の整合を図る整合ステップを有する。
【００１７】
また、本発明のソフトウェアコンポーネント削除制御方法は、前記整合ステップが、前記利用状況管理ステップにおいて管理される利用状況に基づいて、前記カウントステップにおいて前記カウンタに保持される数を再設定する。
【００１８】
また、本発明のソフトウェアコンポーネント削除制御方法は、前記整合ステップが、前記第２のソフトウェアコンポーネントによる前記第１のソフトウェアコンポーネントの利用が終了した時に、前記カウントステップにおいて前記カウンタに保持される数が０である場合に、前記利用状況管理ステップにおいて管理される利用状況に基づいて、前記カウントステップにおいて前記カウンタに保持される数を再設定する。
【００１９】
また、本発明のソフトウェアコンポーネント削除制御方法は、前記整合ステップが、所定の時間周期で、前記利用状況管理ステップにおいて管理される利用状況と、前記カウントステップにおいて前記カウンタに保持される数の整合を図る。
【発明の効果】
【００２０】
本発明によれば、ソフトウェアコンポーネントを利用する他のソフトウェアコンポーネントの実行が停止してしまうことを防止し、適切なソフトウェアコンポーネントの削除が可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態の情報処理システムについて、図面を用いて説明する。
【００２２】
図１は、本実施形態の情報処理システムとしてのマルチファンクションシステム（ＭＦシステム）の構成を示す図である。図１に示すＭＦシステム１００は、例えば、プリント機能、コピー機能、スキャナ機能等を有するいわゆるデジタル複合機であり、コントローラ１１０、主記憶装置１６０、不揮発記憶装置１７０、スキャナデバイス１８０及びＩＯＴデバイス１９０及び操作部２１０を有する。
【００２３】
これらのうち、コントローラ１１０は、複数のソフトウェアコンポーネント（以下、単に「コンポーネント」と称する）Ａ乃至Ｎを有する。例えば、コンポーネントＭは、スキャナデバイス１８０を動作させるためのものであり、コンポーネントＮは、ＩＯＴデバイス１９０を動作させるためのものである。また、コントローラ１１０は、コンポーネントＡ乃至ＮをＭＦシステム１００にインストールするためのコンポーネントインストーラ１３０と、これらコンポーネントＡ乃至Ｎを管理して様々な処理を行うコンポーネント管理機構１４０と、コンポーネントＡ乃至Ｎ間の通信を制御するコンポーネント通信機構１５０とを有する。
【００２４】
図２は、不揮発記憶装置１７０の格納状態を示す図である。図２に示す不揮発記憶装置１７０には、コンポーネント管理情報１７２が格納されている。
【００２５】
コンポーネント管理情報１７２は、各コンポーネントを特定するためのコンポーネント情報登録テーブルと、コンポーネント毎に構成され、コンポーネントに関する情報を含むコンポーネント情報テーブルと、コンポーネント毎に構成され、コンポーネントが他のコンポーネントを利用する場合に必要となる起動用インタフェース（ＩＦ）モジュール及び応答用ＩＦモジュールへのポインタを含むインタフェース（ＩＦ）情報テーブルと、コンポーネントが他のコンポーネントを利用する場合に、その２つのコンポーネントの関係を表す情報を含む利用状況情報テーブルとにより構成される。
【００２６】
コンポーネントのインストール時には、コンポーネント情報登録テーブル及びコンポーネント情報テーブルが作成される。具体的には、コンポーネント管理機構１４０は、インストール対象のコンポーネントに対応するコンポーネント情報テーブルを１つ作成し、インストール対象のコンポーネントのＩＤ（コンポーネントＩＤ）、インストール対象のコンポーネントが従うコンポーネントスペックのＩＤ（コンポーネントスペックＩＤ）を登録する。これらコンポーネントＩＤ及びコンポーネントスペックＩＤは、コンポーネントインストーラ１３０から入力されるコンポーネント定義記述情報の内容に対応するものが登録される。
【００２７】
次に、コンポーネント管理機構１４０は、コンポーネント情報登録テーブルに新たにエントリを１つ追加し、新規に作成したコンポーネント情報テーブルへのポインタ（コンポーネント情報テーブルのアドレス）を登録する。更に、コンポーネント管理機構１４０は、コンポーネントインストーラ１３０から入力されるコンポーネントプログラムコードを不揮発記憶装置１７０に格納し、その格納場所を新規に作成したコンポーネント情報テーブルに登録する。
【００２８】
また、コンポーネントのロード時には、ＩＦ情報テーブルが作成される。具体的には、コンポーネント管理機構１４０は、コンポーネントインストーラ１３０から入力されるロード対象のコンポーネントのプログラムコードを主記憶装置１６０に格納すると、ロード対象のコンポーネントに対応するＩＦ情報テーブルを作成し、コンポーネント定義記述情報の内容に対応する起動用ＩＦモジュール及び応答用ＩＦモジュールへのポインタ（起動用ＩＦモジュール及び応答用ＩＦモジュールのアドレス）を登録する。更に、コンポーネント管理機構１４０は、ＩＦ情報テーブルのアドレスを、ロード対象のコンポーネントに対応するコンポーネント情報テーブルに登録する。
【００２９】
また、コンポーネントの実行時には、利用状況情報テーブルの作成や、コンポーネント情報テーブルへの情報の登録が行われる。図３は、コンポーネントの実行時の動作を示すフローチャートである。なお、以下においては、コンポーネントＡがコンポーネントＢを利用する場合を例に説明する。
【００３０】
コンポーネント管理機構１４０は、コンポーネントＡを起動する（Ｓ１０１）。次に、コンポーネント管理機構１４０は、コンポーネントＡがコンポーネントＢを利用することを認識する（Ｓ１０２）。例えば、コンポーネント管理機構１４０は、コンポーネントＡにコンポーネントＢを呼び出す命令が含まれている場合に、コンポーネントＡがコンポーネントＢを利用することを認識する。
【００３１】
次に、コンポーネント管理機構１４０は、不揮発記憶装置１７０内のコンポーネント管理情報１７２に、実行中のコンポーネントＡに対応する利用状況情報テーブルを作成し、その利用状況情報テーブルに、コンポーネントＡがコンポーネントＢを利用することを表す利用関係情報を登録する（Ｓ１０３）。利用関係情報は、例えば、コンポーネントのコンポーネントＩＤ（ここでは、コンポーネントＡのコンポーネントＩＤ）と、そのコンポーネントによって利用されるコンポーネントのコンポーネントＩＤ及び利用されるコンポーネント対応するコンポーネント情報テーブルへのポインタ（ここでは、コンポーネントＢのコンポーネントＩＤ及びコンポーネントＢに対応するコンポーネント情報テーブルへのポインタ）とによって構成される。
【００３２】
更に、コンポーネント管理機構１４０は、コンポーネントＡに対応するコンポーネント情報テーブルに、Ｓ１０３において作成したコンポーネントＡに対応する利用状況情報テーブルへのポインタを登録する（Ｓ１０４）。具体的には、コンポーネント管理機構１４０は、まず、コンポーネント情報登録テーブルを参照し、コンポーネントＡに対応するコンポーネント情報テーブルのアドレスを取得する。次に、コンポーネント通信機構１５０は、取得したアドレスに基づいて、コンポーネントＡに対応するコンポーネント情報テーブルを特定し、そのコンポーネント情報テーブルに利用状況情報テーブルへのポインタを登録する。これにより、コンポーネントＡに対応するコンポーネント情報テーブルと、利用状況情報テーブルとが関連付けられることになる。
【００３３】
次に、コンポーネント管理機構１４０は、コンポーネントＢに対応するコンポーネント情報テーブルにおけるカウンタを１増加させる（Ｓ１０５）。コンポーネント情報テーブルにおけるカウンタは、対応するコンポーネント（ここでは、コンポーネントＢ）を利用する他のコンポーネント（ここでは、コンポーネントＡ等）の数を示す。具体的には、コンポーネント管理機構１４０は、まず、コンポーネント情報登録テーブルを参照し、コンポーネントＢに対応するコンポーネント情報テーブルのアドレスを取得する。次に、コンポーネント管理機構１４０は、取得したアドレスに基づいて、コンポーネントＢに対応するコンポーネント情報テーブルを特定し、そのコンポーネント情報テーブルのカウンタを１増加させる。
【００３４】
このようにして、コンポーネントの実行において、当該コンポーネントに対応する利用状況情報テーブルが作成されて利用関係情報が登録されるとともに、当該コンポーネントによって利用される他のコンポーネントに対応するコンポーネント情報テーブル内のカウンタが更新されることにより、コンポーネント間の利用関係が示される。そして、コンポーネントによる他のコンポーネントの利用が終了した場合には、利用関係情報の削除とカウンタの更新が行われる。
【００３５】
図４は、コンポーネントによる他のコンポーネントの利用終了時の動作を示すフローチャートである。なお、以下においては、コンポーネントＡによるコンポーネントＢの利用が終了した場合を例に説明する。
【００３６】
コンポーネント管理機構１４０は、コンポーネントＡによるコンポーネントＢの利用終了を認識すると（Ｓ２０１）、コンポーネントＡに対応する利用状況情報テーブルからコンポーネントＡがコンポーネントＢを利用することを表す利用関係情報を削除する（Ｓ２０２）。具体的には、コンポーネント管理機構１４０は、まず、コンポーネント情報登録テーブルを参照し、コンポーネントＡに対応するコンポーネント情報テーブルのアドレスを取得する。次に、コンポーネント管理機構１４０は、取得したアドレスに基づいて、コンポーネントＡに対応するコンポーネント情報テーブルを参照し、コンポーネントＡに対応する利用状況情報テーブルのアドレスを取得する。更に、コンポーネント管理機構１４０は、取得したアドレスに基づいて、コンポーネントＡに対応する利用状況情報テーブルを特定し、コンポーネントＡがコンポーネントＢを利用することを表す利用関係情報を削除する。
【００３７】
次に、コンポーネント管理機構１４０は、コンポーネントＢに対応するコンポーネント情報テーブルのカウンタが０であるか否かを判定する（Ｓ２０３）。コンポーネントＢに対応するコンポーネント情報テーブルのカウンタが０でない場合（正の値である場合）には、コンポーネント管理機構１４０は、コンポーネントＢに対応するコンポーネント情報テーブルのカウンタを１減少させる（Ｓ２０４）。このように、コンポーネントＡがコンポーネントＢを利用することを表す利用関係情報が削除され、コンポーネントＢを利用する他のコンポーネントの数を示すカウンタの値が１減少することにより、コンポーネントＡによるコンポーネントＢの利用が終了した場合においても、コンポーネント間の利用関係が正確に示されることになる。
【００３８】
一方、コンポーネントＢに対応するコンポーネント情報テーブルのカウンタが０である場合には、既にカウンタの数値がコンポーネントＢを利用する他のコンポーネントが存在しないことを示しているにもかかわらず、Ｓ２０１においてコンポーネントＡによるコンポーネントＢの利用終了が認識されており、コンポーネントＢについての利用関係の整合性がとれていない。例えば、コンポーネントＡが異常終了したような場合には、このように、コンポーネントＢについての利用関係に不整合が生じる場合がある。このため、コンポーネントＢに対応するコンポーネント情報テーブルのカウンタが０である場合には、コンポーネントＢについて、後述する利用関係の整合性の処理へ移行する。
【００３９】
図５は、利用関係の整合を図る動作を示すフローチャートである。この動作は、図４のＳ２０３において、他のコンポーネントに利用されるコンポーネントに対応するコンポーネント情報テーブルのカウンタが０であると判断された場合や、予めシステム情報として設定された所定時間周期で行われる。
【００４０】
コンポーネント管理機構１４０は、コンポーネント毎に作成された各利用情報テーブルに登録されている、整合対象のコンポーネントを利用することを表す利用関係情報の合計数をカウントする（Ｓ３０１）。
【００４１】
次に、コンポーネント管理機構１４０は、整合対象のコンポーネントに対応するコンポーネント情報テーブルのカウンタに、Ｓ４０１において求めたカウント値を設定する（Ｓ３０２）。これにより、整合対象のコンポーネントに対応するコンポーネント情報テーブルのカウンタの値は、整合対象のコンポーネントを利用することを表す利用関係情報の合計数と一致することになり、両者の整合が図られる。
【００４２】
次に、コンポーネントのアンロード時の動作を説明する。図６は、コンポーネントのアンロード時の動作を示すフローチャートである。なお、以下においては、コンポーネントＢがアンロードされる場合を例に説明する。
【００４３】
コンポーネント管理機構１４０は、利用者が操作部２１０を操作して、コンポーネントＢの削除指示を行うと、その削除指示を受け付ける（Ｓ４０１）。次に、コンポーネント管理機構１４０は、コンポーネントＢに対応するコンポーネント情報テーブルのカウンタが０であるか否かを判定する（Ｓ４０２）。コンポーネントＢに対応するコンポーネント情報テーブルのカウンタが０でない場合には、コンポーネントＢを利用する他のコンポーネントが存在するということである。従って、この場合には、コンポーネントＢの主記憶装置１６０からの削除は中止される（Ｓ４０３）。
【００４４】
一方、コンポーネントＢに対応するコンポーネント情報テーブルのカウンタが０の場合には、コンポーネントＢを利用する他のコンポーネントが存在しないということであり、当該コンポーネントＢが主記憶装置１６０から削除されても、他のコンポーネントの実行が停止する等の不具合は生じない。従って、この場合には、コンポーネント管理機構１４０は、不揮発記憶装置１７０からコンポーネントＢに関する情報の削除、具体的には、コンポーネントＢに対応する利用状況情報テーブル及びＩＦ情報テーブルの削除や、コンポーネントＢに対応するコンポーネント情報テーブルの利用状況情報テーブルへのポインタの削除を行う。更に、コンポーネント管理機構１４０は、主記憶装置１６０からコンポーネントＢを削除する（Ｓ４０４）。
【００４５】
このように、ＭＦシステム１００では、コンポーネント毎に、当該コンポーネントが他のコンポーネントを利用することを表す利用関係情報と、当該コンポーネントを利用する他のコンポーネントの数を示すカウンタとを有し、これら利用関係情報とカウンタの値との整合が図られる。そして、カウンタの数値が０である場合にのみ、対応するコンポーネントは、他のコンポーネントに利用されなくなったものとみなされて、削除可能となる。従って、コンポーネントが他のコンポーネントに利用されている場合には、利用されるコンポーネントは削除されないため、他のコンポーネントの実行が停止してしまう等の不具合が生じることがなく、適切なコンポーネントの削除が可能となる。
【００４６】
なお、上述した実施形態では、情報処理システムとしてのＭＦシステム１００について説明したが、複数のソフトウェアコンポーネントが実装される他の情報処理システムにおいても、本発明を適用することができる。
【産業上の利用可能性】
【００４７】
以上、説明したように、本発明に係る情報処理システム及びソフトウェアコンポーネント削除制御方法は、ソフトウェアコンポーネント間の関係を考慮した適切なソフトウェアコンポーネントの削除が可能であり、情報処理システム及びソフトウェアコンポーネント削除制御方法として有用である。
【図面の簡単な説明】
【００４８】
【図１】ＭＦシステムの構成を示す図である。
【図２】不揮発記憶装置の格納状態を示す図である。
【図３】コンポーネント実行時の動作を示すフローチャートである。
【図４】コンポーネント利用終了時の動作を示すフローチャートである。
【図５】利用関係の整合を図る動作を示すフローチャートである。
【図６】コンポーネントアンロード時の動作を示すフローチャートである。
【符号の説明】
【００４９】
１００  ＭＦシステム
１１０  コントローラ
１３０  コンポーネントインストーラ
１４０  コンポーネント管理機構
１５０  コンポーネント通信機構
１６０  主記憶装置
１７０  不揮発記憶装置
１７２  コンポーネント管理情報
１７６  アクセス制御部
１８０  スキャナデバイス
１９０  ＩＯＴデバイス
２１０  操作部
【図１】
2006092172.tif 000003
【図２】
2006092172.tif 000004
【図３】
2006092172.tif 000005
【図４】
2006092172.tif 000006
【図５】
2006092172.tif 000007
【図６】
2006092172.tif 000008