(57)【要約】【課題】主記憶手段の使用効率を向上することができる制御端末を提供する。【解決手段】主記憶装置（主記憶手段）１０１に記憶されているデバイスの制御用プログラムがコンピュータ（制御端末）１０上で最後に使用されてからの経過時間（未使用時間）を経過時間計測手段１０２で計測して、未使用時間が予め設定された閾値以上になる制御用プログラムを主記憶装置１０１から自動的にアンロードする。【選択図】図２
2006318145.tif 000002
【特許請求の範囲】
【請求項１】
１つまたは複数の周辺機器と接続可能な接続手段と、前記接続手段に接続する周辺機器の制御用プログラムを記憶する主記憶手段とを備え、前記主記憶手段が記憶した制御用プログラムを用いて周辺機器を制御する制御端末であって、
前記主記憶手段が記憶している制御用プログラムそれぞれの未使用時間を計測する未使用時間計測手段と、
前記主記憶手段が記憶しているデータ量を計測するデータ量計測手段と、
制御用プログラムの未使用時間に対する閾値と前記主記憶手段が記憶するデータ量に対する閾値を設定する閾値設定手段と、
前記未使用時間計測手段により計測された未使用時間ないし前記データ量計測手段により計測されたデータ量と前記閾値設定手段により設定された閾値との比較結果を基に、前記主記憶手段へロードする制御用プログラムまたは前記主記憶手段からアンロードする制御用プログラムを判定する判定手段と、
前記判定手段の判定結果を基に、前記主記憶手段へ制御用プログラムをロードするロード手段と、
前記判定手段の判定結果を基に、前記主記憶手段から制御用プログラムをアンロードするアンロード手段と、
を具備することを特徴とする制御端末。
【請求項２】
請求項１記載の制御端末において、
前記判定手段は、前記未使用時間計測手段により計測された未使用時間を前記閾値設定手段により設定された未使用時間に対する閾値と比較して、未使用時間が閾値以上の制御用プログラムもしくは未使用時間が閾値を越える制御用プログラムをアンロードする判定を行う
ことを特徴とする制御端末。
【請求項３】
請求項２記載の制御端末において、
前記判定手段は、予め設定された所定の監視間隔ごとに、上記した未使用時間と閾値との比較による、アンロードする制御用プログラムの判定処理を実行する
ことを特徴とする制御端末。
【請求項４】
請求項１ないし３のいずれかに記載の制御端末であって、
周辺機器の接続状況を検知するデバイス検知手段をさらに具備し、
前記判定手段は、未使用時間が閾値以上の制御用プログラムもしくは未使用時間が閾値を越える制御用プログラムを用いて制御される周辺機器が前記接続手段に接続していることを前記デバイス検知手段が検知している場合には、当該制御用プログラムのアンロードを判定せず、その周辺機器が取り外されたことが前記デバイス検知手段により検知されるとアンロードを判定する
ことを特徴とする制御端末。
【請求項５】
請求項４記載の制御端末において、
前記閾値設定手段は、前記主記憶手段が記憶するデータ量に対する閾値として上限値を設定し、
前記判定手段は、前記デバイス検知手段により接続が検知された周辺機器の制御用プログラムが前記アンロード手段によりアンロードされていると、その周辺機器の制御用プログラムのデータ量を前記データ量計測手段により計測されたデータ量に加算して前記閾値設定手段により設定された上限値と比較する処理を繰り返して、その加算したデータ量が上限値以下となるまで、もしくは上限値を下回るまで、前記未使用時間計測手段により計測された未使用時間が最も長い制御用プログラムをアンロードする判定を行い、加算したデータ量が上限値以下となると、もしくは上限値を下回ると、接続が検知された周辺機器の制御用プログラムをロードする判定を行う
ことを特徴とする制御端末。
【請求項６】
請求項１記載の制御端末において、
前記閾値設定手段は、前記主記憶手段が記憶するデータ量に対する閾値として上限値を設定し、
前記判定手段は、前記データ量計測手段により計測されたデータ量を前記閾値設定手段により設定された上限値と比較する処理を繰り返して、データ量が上限値以下となるまで、もしくは上限値を下回るまで、前記未使用時間計測手段により計測された未使用時間が最も長い制御用プログラムをアンロードする判定を行う
ことを特徴とする制御端末。
【請求項７】
請求項６記載の制御端末において、
前記判定手段は、予め設定された所定の監視間隔ごとに、上記したデータ量と上限値との比較による、アンロードする制御用プログラムの判定処理を実行する
ことを特徴とする制御端末。
【請求項８】
請求項６もしくは７のいずれかに記載の制御端末であって、
周辺機器の接続状況を検知するデバイス検知手段をさらに具備し、
前記判定手段は、前記デバイス検知手段により接続が検知された周辺機器の制御用プログラムが前記アンロード手段によりアンロードされていると、その周辺機器の制御用プログラムのデータ量を前記データ量計測手段により計測されたデータ量に加算して前記閾値設定手段により設定された上限値と比較する処理を繰り返して、その加算したデータ量が上限値以下となるまで、もしくは上限値を下回るまで、前記未使用時間計測手段により計測された未使用時間が最も長い制御用プログラムをアンロードする判定を行い、加算したデータ量が上限値以下となると、もしくは上限値を下回ると、接続が検知された周辺機器の制御用プログラムをロードする判定を行う
ことを特徴とする制御端末。
【請求項９】
請求項１記載の制御端末であって、
前記アンロード手段によりアンロードされた制御用プログラムの識別情報を最後にアンロードした制御用プログラムが判別できるように所定の記憶領域へ格納するアンロードプログラム情報格納手段をさらに具備し、
前記閾値設定手段は、前記主記憶手段が記憶するデータ量に対する閾値として下限値を設定し、
前記判定手段は、前記データ量計測手段により計測されたデータ量と前記閾値設定手段により設定された下限値とを比較する処理を繰り返して、データ量が下限値以上となるまで、もしくは下限値を上回るまで、前記アンロードプログラム情報格納手段が格納した情報を基に、最後にアンロードした制御用プログラムをロードする判定を行う
ことを特徴とする制御端末。
【請求項１０】
請求項９記載の制御端末において、
前記判定手段は、予め設定された所定の監視間隔ごとに、上記したデータ量と下限値との比較による、ロードする制御用プログラムの判定処理を実行する
ことを特徴とする制御端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つまたは複数のデバイス（周辺機器）と接続可能で、接続したデバイスの制御をそのデバイスの制御用プログラムを用いて実行する制御端末に関する。
【背景技術】
【０００２】
コンピュータ（制御端末）におけるプログラム処理は、主記憶装置にプログラムをロードした後、ＣＰＵ（中央演算装置）によって実行される。主記憶装置の記憶容量は有限であるので、複数のプログラムを主記憶装置へロードする場合は、必要なプログラムのみを主記憶装置に格納しておくなどの主記憶管理が必要である。
【０００３】
そこで、従来より、主記憶装置にプログラムをロードする際に主記憶装置の空き容量をチェックする機構を設け、チェックの結果から主記憶装置に格納可能なプログラムを判断して格納することにより、複雑な管理機構を用いることなく主記憶装置を効率的に管理する管理方式が提案されている（例えば、特許文献１参照。）。
【０００４】
しかしながら、この従来の主記憶装置の管理方式では、主記憶装置の空き容量に格納可能なプログラムをロードすることになるので、コンピュータに取り外し自在なデバイスの制御用プログラムを主記憶装置へロードする際に、そのロードする制御用プログラムのデータ量よりも主記憶装置の空き容量が小さいと、制御用プログラムをロードできず、デバイスを使用できないという問題があった。
【０００５】
一例を挙げると、一般的なコンピュータでは、デバイスを取り外してから長時間使用していない、いわゆる使用頻度の低いデバイスの制御用プログラムも主記憶装置に格納し続けており、その使用頻度の低いデバイスの制御用プログラムのために主記憶装置の記憶容量が余分に消費されている。そのため、この余分なプログラム容量のために、新規のデバイスをコンピュータに接続するために制御用プログラムを新たにロードする際に主記憶装置の空き容量が制御用プログラムのデータ量を下回り、デバイスが使用できないという問題があった。
【特許文献１】特開平１−２２３５３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、上記問題点に鑑み、主記憶装置（主記憶手段）に記憶されているデバイス（周辺機器）の制御用プログラムがコンピュータ（制御端末）上で最後に使用されてからの経過時間（未使用時間）ないし主記憶装置が記憶しているデータ量（メモリ使用量）を計測して、それらの値によっては主記憶装置から制御用データをアンロードすることにより、主記憶装置の空き容量に余裕を持たせることができ、主記憶装置の使用効率を向上することができる制御端末を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の請求項１記載の制御端末は、１つまたは複数の周辺機器と接続可能な接続手段と、前記接続手段に接続する周辺機器の制御用プログラムを記憶する主記憶手段とを備え、前記主記憶手段が記憶した制御用プログラムを用いて周辺機器を制御する制御端末であって、前記主記憶手段が記憶している制御用プログラムそれぞれの未使用時間を計測する未使用時間計測手段と、前記主記憶手段が記憶しているデータ量を計測するデータ量計測手段と、制御用プログラムの未使用時間に対する閾値と前記主記憶手段が記憶するデータ量に対する閾値を設定する閾値設定手段と、前記未使用時間計測手段により計測された未使用時間ないし前記データ量計測手段により計測されたデータ量と前記閾値設定手段により設定された閾値との比較結果を基に、前記主記憶手段へロードする制御用プログラムまたは前記主記憶手段からアンロードする制御用プログラムを判定する判定手段と、前記判定手段の判定結果を基に、前記主記憶手段へ制御用プログラムをロードするロード手段と、前記判定手段の判定結果を基に、前記主記憶手段から制御用プログラムをアンロードするアンロード手段と、を具備することを特徴とする。
【０００８】
また、本発明の請求項２記載の制御端末は、請求項１記載の制御端末において、前記判定手段が、前記未使用時間計測手段により計測された未使用時間を前記閾値設定手段により設定された未使用時間に対する閾値と比較して、未使用時間が閾値以上の制御用プログラムもしくは未使用時間が閾値を越える制御用プログラムをアンロードする判定を行うことを特徴とする。
【０００９】
また、本発明の請求項３記載の制御端末は、請求項２記載の制御端末において、前記判定手段が、予め設定された所定の監視間隔ごとに、上記した未使用時間と閾値との比較による、アンロードする制御用プログラムの判定処理を実行することを特徴とする。
【００１０】
また、本発明の請求項４記載の制御端末は、請求項１ないし３のいずれかに記載の制御端末であって、周辺機器の接続状況を検知するデバイス検知手段をさらに具備し、前記判定手段が、未使用時間が閾値以上の制御用プログラムもしくは未使用時間が閾値を越える制御用プログラムを用いて制御される周辺機器が前記接続手段に接続していることを前記デバイス検知手段が検知している場合には、当該制御用プログラムのアンロードを判定せず、その周辺機器が取り外されたことが前記デバイス検知手段により検知されるとアンロードを判定することを特徴とする。
【００１１】
また、本発明の請求項５記載の制御端末は、請求項４記載の制御端末において、前記閾値設定手段が、前記主記憶手段が記憶するデータ量に対する閾値として上限値を設定し、前記判定手段が、前記デバイス検知手段により接続が検知された周辺機器の制御用プログラムが前記アンロード手段によりアンロードされていると、その周辺機器の制御用プログラムのデータ量を前記データ量計測手段により計測されたデータ量に加算して前記閾値設定手段により設定された上限値と比較する処理を繰り返して、その加算したデータ量が上限値以下となるまで、もしくは上限値を下回るまで、前記未使用時間計測手段により計測された未使用時間が最も長い制御用プログラムをアンロードする判定を行い、加算したデータ量が上限値以下となると、もしくは上限値を下回ると、接続が検知された周辺機器の制御用プログラムをロードする判定を行うことを特徴とする。
【００１２】
また、本発明の請求項６記載の制御端末は、請求項１記載の制御端末において、前記閾値設定手段が、前記主記憶手段が記憶するデータ量に対する閾値として上限値を設定し、前記判定手段が、前記データ量計測手段により計測されたデータ量を前記閾値設定手段により設定された上限値と比較する処理を繰り返して、データ量が上限値以下となるまで、もしくは上限値を下回るまで、前記未使用時間計測手段により計測された未使用時間が最も長い制御用プログラムをアンロードする判定を行うことを特徴とする。
【００１３】
また、本発明の請求項７記載の制御端末は、請求項６記載の制御端末において、前記判定手段が、予め設定された所定の監視間隔ごとに、上記したデータ量と上限値との比較による、アンロードする制御用プログラムの判定処理を実行することを特徴とする。
【００１４】
また、本発明の請求項８記載の制御端末は、請求項６もしくは７のいずれかに記載の制御端末であって、周辺機器の接続状況を検知するデバイス検知手段をさらに具備し、前記判定手段が、前記デバイス検知手段により接続が検知された周辺機器の制御用プログラムが前記アンロード手段によりアンロードされていると、その周辺機器の制御用プログラムのデータ量を前記データ量計測手段により計測されたデータ量に加算して前記閾値設定手段により設定された上限値と比較する処理を繰り返して、その加算したデータ量が上限値以下となるまで、もしくは上限値を下回るまで、前記未使用時間計測手段により計測された未使用時間が最も長い制御用プログラムをアンロードする判定を行い、加算したデータ量が上限値以下となると、もしくは上限値を下回ると、接続が検知された周辺機器の制御用プログラムをロードする判定を行うことを特徴とする。
【００１５】
また、本発明の請求項９記載の制御端末は、請求項１記載の制御端末であって、前記アンロード手段によりアンロードされた制御用プログラムの識別情報を最後にアンロードした制御用プログラムが判別できるように所定の記憶領域へ格納するアンロードプログラム情報格納手段をさらに具備し、前記閾値設定手段が、前記主記憶手段が記憶するデータ量に対する閾値として下限値を設定し、前記判定手段が、前記データ量計測手段により計測されたデータ量と前記閾値設定手段により設定された下限値とを比較する処理を繰り返して、データ量が下限値以上となるまで、もしくは下限値を上回るまで、前記アンロードプログラム情報格納手段が格納した情報を基に、最後にアンロードした制御用プログラムをロードする判定を行うことを特徴とする。
【００１６】
また、本発明の請求項１０記載の制御端末は、請求項９記載の制御端末において、前記判定手段が、予め設定された所定の監視間隔ごとに、上記したデータ量と下限値との比較による、ロードする制御用プログラムの判定処理を実行することを特徴とする。
【発明の効果】
【００１７】
本発明によれば、主記憶手段に記憶されている周辺機器の制御用プログラムが制御端末上で最後に使用されてからの経過時間（未使用時間）ないし主記憶手段が記憶しているデータ量を計測して、それらの値によっては主記憶手段から制御用データをアンロードするので、主記憶装置の空き容量に余裕を持たせることができ、主記憶手段の使用効率を向上することができる。
【００１８】
また、制御端末上で最後に使用されてからの経過時間（未使用時間）が閾値以上となる又は閾値を越える制御用プログラムをアンロードすることができ、主記憶手段の使用効率を向上することができる。
【００１９】
また、主記憶手段が記憶するデータ量が上限値以上になると又は上限値を越えると、制御端末上で最後に使用されてからの経過時間（未使用時間）が最大の制御用プログラムをアンロードすることができる。つまり、ＬＲＵ（Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）のアルゴリズムによって主記憶手段の記憶領域を開放することができ、主記憶手段の使用効率を向上することができる。
【００２０】
このように、使用頻度の低い周辺機器の制御用プログラムをアンロードすることができるので、そのプログラム容量のために主記憶手段の記憶領域が余分に消費されることがなくなり、主記憶手段の空き容量に余裕を持たせることができ、使用したい周辺機器を制御端末に接続した際にその使用したい周辺機器が使用できないという問題の発生を回避することが可能となる。
【００２１】
さらに、アンロードした制御用プログラムを、主記憶手段が記憶するデータ量によっては再度ロードすることができるので、ユーザが制御端末に周辺機器を再度接続した際に、その周辺機器の制御用プログラムが主記憶手段上に格納されている可能性が高まり、周辺機器を使用するまでのロード時間を省くことが可能となる。
【００２２】
また、使用頻度の低い周辺機器の制御用プログラムのアンロード処理や、アンロードした制御用プログラムの再度のロード処理を自動で実行できるので、ユーザが全く意識することなく、主記憶手段の使用効率を向上することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態における制御端末について、図面を参照しながら具体的に説明する。
図１は本実施の形態におけるシステムの構成例を示す図である。
【００２４】
図１において、１０は制御端末であるコンピュータを示す。また、１１と１２はコンピュータの一例である携帯電話とＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｃｅ）を示す。
【００２５】
２０と３０はコンピュータ１０に接続可能なデバイス（周辺機器）の一例であるＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格に準拠した印刷機とマウスを示す。また、４０と５０はコンピュータ１０に接続可能なデバイスの一例であるＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）規格に準拠したフラッシュメモリカードと無線モジュール内蔵カードを示す。
【００２６】
このようにコンピュータ１０は、図示しないインタフェース（接続手段）により１つまたは複数のデバイスと接続可能であり、各デバイスの制御用プログラムを用いて各デバイスを制御することができる。また、これらのデバイスは、コンピュータ１０が動作している最中での接続／取り外しが可能である。
【００２７】
このコンピュータ１０の機能ブロックを図２に示す。
図２において、１０１は主記憶手段である主記憶装置を示す。主記憶装置１０１は、コンピュータ１０に接続する各デバイスの制御用プログラムを記憶する。また、主記憶装置１０１は、後述する経過時間情報Ｔ１や、メモリ使用量情報Ｔ２、監視間隔時間情報Ｔ３、閾値情報Ｔ４、アンロードプログラム情報Ｔ５などを記憶する。
【００２８】
経過時間情報Ｔ１は、主記憶装置１０１が記憶している各制御用プログラムがコンピュータ１０上で使用されなくなってからの経過時間（未使用時間）を表す情報である。図３に経過時間情報Ｔ１の一例を示す。経過時間情報Ｔ１は、例えば図３に示すように、各デバイスの識別子の情報（識別情報）Ｔ１ａと、それらのデバイスの制御用プログラムがコンピュータ１０上で使用されなくなってからの経過時間（未使用時間）の数値情報Ｔ１ｂからなり、コンピュータ１０に接続するデバイスが増加すると１、２、・・・、Ｎのように情報がキューイングされる。
【００２９】
メモリ使用量情報Ｔ２は、主記憶装置１０１が記憶しているデータ量（メモリ使用量）を表す情報である。図４にメモリ使用量情報Ｔ２の一例を示す。メモリ使用量情報Ｔ２は、例えば図４に示すように、メモリ使用量の数値情報Ｔ２ａからなる。
【００３０】
監視間隔時間情報Ｔ３は、制御用プログラムの未使用時間を監視する時間間隔（経過時間監視間隔時間）とメモリ使用量を監視する時間間隔（メモリ使用量監視間隔時間）を表す情報である。図５に監視間隔時間情報Ｔ３の一例を示す。監視間隔時間情報Ｔ３は、例えば図５に示すように、経過時間監視間隔時間の数値情報Ｔ３ａと、メモリ使用量監視間隔時間の数値情報Ｔ３ｂからなる。
【００３１】
閾値情報Ｔ４は、制御用プログラムの未使用時間に対する閾値と主記憶装置１０１が記憶するデータ量（メモリ使用量）に対する閾値を表す情報である。図６に閾値情報Ｔ４の一例を示す。閾値情報Ｔ４は、例えば図６に示すように、制御用プログラムの未使用時間に対する閾値である時間閾値の数値情報Ｔ４ａと、メモリ使用量に対する閾値である上限メモリ閾値と下限メモリ閾値の数値情報Ｔ４ｂ、Ｔ４ｃからなる。
【００３２】
アンロードプログラム情報Ｔ５は、アンロードした制御用プログラムを表す情報であり、最後にアンロードした制御用プログラムが判別できるように構成する。図７にアンロードプログラム情報Ｔ５の一例を示す。アンロードプログラム情報Ｔ５は、例えば図７に示すように、アンロードした制御用プログラムの識別子の情報（識別情報）Ｔ５ａからなり、アンロードした順にスタックされる。よって、最後に格納したアンロード制御用プログラム識別子Ｎは、その時点で直近にアンロードした制御用プログラム（最後にアンロードした制御用プログラム）の識別子となる。
【００３３】
１０２は未使用時間計測手段である経過時間計測手段を示す。経過時間計測手段１０２は、主記憶装置１０１が記憶している各制御用プログラムがコンピュータ１０上で使用されなくなってからの経過時間（未使用時間）をそれぞれ計測して経過時間情報Ｔ１を生成する。
【００３４】
１０３はデータ量計測手段であるメモリ使用量計測手段を示す。メモリ使用量計測手段１０３は、主記憶装置１０１が記憶しているデータ量（メモリ使用量）を計測してメモリ使用量情報Ｔ２を生成する。
【００３５】
１０４は閾値設定手段である閾値初期設定手段を示す。閾値初期設定手段１０４は、制御用プログラムの未使用時間に対する監視間隔（経過時間監視間隔時間の数値情報Ｔ３ａ）とメモリ使用量に対する監視間隔（メモリ使用量監視間隔時間の数値情報Ｔ３ｂ）を設定して監視間隔時間情報Ｔ３を生成する。
【００３６】
また、閾値初期設定手段１０４は、制御用プログラムの未使用時間に対する閾値（時間閾値の数値情報Ｔ４ａ）とメモリ使用量に対する閾値（上限メモリ閾値と下限メモリ閾値の数値情報Ｔ４ｂ、Ｔ４ｃ）を設定して閾値情報Ｔ４を生成する。これらの閾値は任意に設定できる。
【００３７】
１０５は判定手段を示す。判定手段１０５は、経過時間計測手段１０２により計測された経過時間（未使用時間）ないしメモリ使用量計測手段１０３により計測されたメモリ使用量と閾値初期設定手段１０４により設定された閾値との比較結果を基に、主記憶装置１０１へロードする制御用プログラムまたは主記憶装置１０１からアンロードする制御用プログラムを判定する。
【００３８】
１０６はロード手段を示す。ロード手段１０６は、判定手段１０５の判定結果を基に、主記憶装置１０１へ制御用プログラムをロードする。また、１０７はアンロード手段を示す。アンロード手段１０７は、判定手段１０５の判定結果を基に、主記憶装置１０１から制御用プログラムをアンロードする。
【００３９】
１０８はアンロードプログラム情報格納手段を示す。アンロードプログラム情報格納手段１０８は、アンロード手段１０７によりアンロードされた制御用プログラムの識別情報を最後にアンロードした制御用プログラムが判別できるように主記憶装置１０１の所定の記憶領域に格納してアンロードプログラム情報Ｔ５を生成する。具体的には、アンロードした制御用プログラムの識別子をアンロードした順にスタックする。また、１０９はデバイス検知手段を示す。デバイス検知手段１０９は、デバイスの接続状況を検知する。
【００４０】
コンピュータ１０は、経過時間情報Ｔ１ないしメモリ使用量情報Ｔ２と閾値情報Ｔ４とを基に判定手段１０５によりロードまたはアンロードする制御用プログラムを判定して、該当する制御用プログラムをロード手段１０６ないしアンロード手段１０７によりロードないしアンロードする。また、コンピュータ１０は、アンロード時には、アンロードする制御用プログラムに関する情報を所定の記憶領域に記憶する。
【００４１】
続いて、コンピュータ１０の動作について具体的に説明する。
まず、コンピュータ１０上で使用されなくなってからの経過時間（未使用時間）が時間閾値以上もしくは時間閾値を越える制御用プログラムをアンロードする処理動作について説明する。
【００４２】
コンピュータ１０は、印刷機２０や、マウス３０、フラッシュメモリカード４０、無線モジュール内蔵カード５０などのデバイスがコンピュータ１０上で使用停止状態になってからの経過時間（未使用時間）の数値情報Ｔ１ｂと時間閾値の数値情報Ｔ４ａの大小を判定し、判定の結果によっては、制御用プログラムをアンロード手段１０７でアンロードする。
【００４３】
例えば、コンピュータ１０は、図８に示すフローチャートに従う処理を行う。
ここでは、経過時間監視間隔時間の数値情報Ｔ３ａの周期ごとに、図８に示すフローチャートに従う処理を開始する。
【００４４】
まず、判定手段１０５が、経過時間情報Ｔ１を参照し（ステップＳ８０１）、閾値情報Ｔ４における時間閾値の数値情報Ｔ４ａを参照して（ステップＳ８０２）、各経過時間の数値情報Ｔ１ｂと時間閾値の数値情報Ｔ４ａとの比較を行い（ステップＳ８０３）、経過時間が時間閾値以上（経過時間≧時間閾値）となるデバイスの制御用プログラムをアンロードする判定を行う。一方、全ての経過時間が時間閾値よりも小さい場合（経過時間＜時間閾値）には、コンピュータ１０は判定手段１０５によるアンロードの判定を行うことなく本フローチャートの処理を終了する。
【００４５】
次に、アンロード手段１０７が、判定手段１０５によりアンロードが判定された制御用プログラムのアンロードを実行する（ステップＳ８０４）。制御用プログラムのアンロードが実行されると、アンロードプログラム情報格納手段１０８が、その制御用プログラムの識別子を主記憶装置１０１の所定の記憶領域へスタックして（ステップＳ８０５）、本フローチャートの処理を終了する。
【００４６】
また、経過時間が時間閾値以上（経過時間≧時間閾値）となるデバイスがコンピュータ１０に接続していることをデバイス検知手段１０９が検知している場合には、制御用プログラムをアンロードしてしまうとデバイスが使用できなくなるため、この場合、判定手段１０５は、すぐにはアンロードの判定を行わずに、該当デバイスが取り外されたことをデバイス検知部１０９が検知した直後にアンロードの判定を行う。
【００４７】
なお、ここでは経過時間≧時間閾値となる制御用プログラムをアンロードする場合について説明したが、無論、経過時間＞時間閾値となる制御用プログラムをアンロードするようにしてもよい。
【００４８】
以上の処理を実行することにより、コンピュータから取り外した後に長時間使用していないデバイスの制御用プログラム（今後使用される可能性が最も低い制御用プログラム）が記憶されている記憶領域を自動で開放することが可能となり、主記憶装置の使用効率の向上が実現可能となる。
【００４９】
例えば、コンピュータ１０からフラッシュメモリカード４０を取り外してからの経過時間が時間閾値以上になると、自動的にフラッシュメモリカード４０の制御用プログラムをアンロードすることが可能となり、主記憶装置１０１上にフラッシュメモリカード４０の制御用プログラムが記憶されていることで主記憶装置１０１の使用効率が低下してしまう問題を解決でき、主記憶装置１０１の使用効率を向上させることが可能となる。
【００５０】
続いて、メモリ使用量が上限メモリ閾値以上もしくは上限メモリ閾値を越えた場合の処理動作について説明する。コンピュータ１０は、メモリ使用量の数値情報Ｔ２ａと上限メモリ閾値の数値情報Ｔ４ｂの大小を判定し、判定の結果によっては、経過時間情報Ｔ１を参照して、経過時間が最も長い制御用プログラムをアンロード手段１０７でアンロードする。
【００５１】
例えば、コンピュータ１０は、図９に示すフローチャートに従う処理を行う。
ここでは、メモリ使用量監視間隔時間の数値情報Ｔ３ｂの周期ごとに、図９に示すフローチャートに従う処理を開始する。
【００５２】
まず、判定手段１０５が、メモリ使用量情報Ｔ２におけるメモリ使用量の数値情報Ｔ２ａを参照し（ステップＳ９０１）、閾値情報Ｔ４における上限メモリ閾値の数値情報Ｔ４ｂを参照して（ステップＳ９０２）、メモリ使用量の数値情報Ｔ２ａと上限メモリ閾値の数値情報Ｔ４ｂとの比較を行い（ステップＳ９０３）、メモリ使用量が上限メモリ閾値以上となる場合（メモリ使用量≧上限メモリ閾値）には、経過時間情報Ｔ１を参照して（ステップＳ９０４）、経過時間の数値情報Ｔ１ｂが最大となるデバイスの制御用プログラムをアンロードする判定を行う。一方、１回目のステップＳ９０３において、メモリ使用量が上限メモリ閾値よりも小さい場合（メモリ使用量＜上限メモリ閾値）には、コンピュータ１０は判定手段１０５によるアンロードの判定を行うことなく本フローチャートの処理を終了する。
【００５３】
次に、アンロード手段１０７が、判定手段１０５によりアンロードが判定された制御用プログラムのアンロードを実行する（ステップＳ９０５）。制御用プログラムのアンロードが実行されると、アンロードプログラム情報格納手段１０８が、その制御用プログラムの識別子を主記憶装置１０１の所定の記憶領域へスタックする（ステップＳ９０６）。
【００５４】
次に、ステップＳ９０３へ戻り、メモリ使用量が上限メモリ閾値を下回るまで（メモリ使用量＜上限メモリ閾値）、上記の処理（ステップＳ９０３〜Ｓ９０６）を繰り返し実行して、本フローチャートの処理を終了する。
【００５５】
なお、ここではメモリ使用量≧上限メモリ閾値となる場合に制御用プログラムをアンロードする場合について説明したが、無論、メモリ使用量＞上限メモリ閾値となる場合に制御用プログラムをアンロードするようにしてもよい。
【００５６】
以上の処理を実行することにより、例えばアプリケーションプログラムの実行などによって主記憶装置のメモリ使用量が逼迫した場合に、その時点でロードされている制御用プログラムの中で未使用時間が最長の制御用プログラム（今後使用される可能性が最も低い制御用プログラム）をアンロードすることにより、アプリケーションプログラム実行の阻害を回避することができ、主記憶装置の使用効率の向上が実現可能となる。
【００５７】
続いて、メモリ使用量が下限メモリ閾値以下もしくは下限メモリ閾値を下回る場合の処理動作について説明する。コンピュータ１０は、メモリ使用量の数値情報Ｔ２ａと、下限メモリ閾値の数値情報Ｔ４ｃの大小を判定し、判定の結果によっては、アンロードプログラム情報Ｔ５を参照して、スタック最上位にある識別子の制御用プログラム（最後にアンロードした制御用プログラム）をロード手段１０６でロードする。
【００５８】
例えば、コンピュータ１０は、図１０に示すフローチャートに従う処理を行う。
ここでは、メモリ使用量監視間隔時間の数値情報Ｔ３ｂの周期ごとに、図１０に示すフローチャートに従う処理を開始する。
【００５９】
まず、判定手段１０５が、メモリ使用量情報Ｔ２におけるメモリ使用量の数値情報Ｔ２ａを参照し（ステップＳ１００１）、閾値情報Ｔ４における下限メモリ閾値の数値情報Ｔ４ｃを参照して（ステップＳ１００２）、メモリ使用量の数値情報Ｔ２ａと下限メモリ閾値の数値情報Ｔ４ｃとの比較を行い（ステップＳ１００３）、メモリ使用量が下限メモリ閾値を下回る場合（メモリ使用量＜下限メモリ閾値）には、アンロードプログラム情報Ｔ５のスタック最上位にある識別子を読み出して（ステップＳ１００４）、該当する制御用プログラム（アンロードされてからの経過時間が最も短い制御用プログラム）をロードする判定を行う。一方、１回目のステップＳ１００３において、メモリ使用量が下限メモリ閾値以上の場合（メモリ使用量≧下限メモリ閾値）には、コンピュータ１０は判定手段１０５によるロードの判定を行うことなく本フローチャートの処理を終了する。また、ステップＳ１００４においてアンロードプログラム情報Ｔ５が空である場合も、本フローチャートの処理を終了する。なお、判定手段１０５がスタック最上位にあるアンロード制御用プログラム識別子を読み出すと、スタック・ポインタは移動する。
【００６０】
次に、ロード手段１０６が、判定手段１０５によりロードが判定された制御用プログラムのロードを実行する（ステップＳ１００５）。次に、ステップＳ１００３へ戻り、メモリ使用量が下限メモリ閾値以上となるまで（メモリ使用量≧下限メモリ閾値）、上記の処理（ステップＳ１００３〜Ｓ１００５）を繰り返し実行して、本フローチャートの処理を終了する。
【００６１】
なお、ここではメモリ使用量＜下限メモリ閾値となる場合に制御用プログラムをロードする場合について説明したが、無論、メモリ使用量≦上限メモリ閾値となる場合に制御用プログラムをロードするようにしてもよい。
【００６２】
以上の処理を実行することにより、アンロードした制御用プログラムを、主記憶装置のメモリ使用量に余裕が出てきた場合に再度ロードすることが可能となり、主記憶装置の使用効率の向上が実現できるとともに、ユーザがコンピュータにデバイスを再度接続した際に、該当する制御用プログラムが主記憶装置上に格納されている可能性が高まるため、デバイスを使用するまでのロード時間を省くことが可能となる。
【００６３】
続いて、コンピュータ１０に接続されたデバイスの制御用プログラムがアンロード手段１０７によりアンロードされている場合の処理動作について説明する。コンピュータ１０は、印刷機２０や、マウス３０、フラッシュメモリカード４０、無線モジュール内蔵カード５０などがコンピュータ１０に接続したことをデバイス検知部１０９が検知して制御用プログラムをロードする際に、その時点でのメモリ使用量とロードする制御用プログラムのデータ量とを加算した値によっては、経過時間情報Ｔ１を参照して、経過時間が最も長い制御用プログラムをアンロード手段１０７でアンロードし、所望の制御用プログラムをロード手段１０６でロードする。
【００６４】
例えば、コンピュータ１０は、図１１に示すフローチャートに従う処理を行う。
ここでは、コンピュータ１０に接続されたデバイスをデバイス検知部１０６が検知した場合に、図１１に示すフローチャートに従う処理を開始する。
【００６５】
デバイス検知部１０６が接続を検知したデバイスの制御用プログラムがアンロード手段１０７によりアンロードされていると、まず、判定手段１０５が、メモリ使用量情報Ｔ２におけるメモリ使用量の数値情報Ｔ２ａを参照し（ステップＳ１１０１）、接続されたデバイスの制御用プログラムのデータ量（以下、プログラム容量と称す。）の数値情報Ｔ６ａを参照し（ステップＳ１１０２）、閾値情報Ｔ４における上限メモリ閾値の数値情報Ｔ４ｂを参照する（ステップＳ１１０３）。なお、アンロード手段１０７がアンロードした制御用プログラムは、主記憶装置以外の記憶領域へ退避されており、コンピュータ１０はそのプログラム容量の数値情報Ｔ６ａを参照することができる。
【００６６】
次に、判定手段１０５が、メモリ使用量の数値情報Ｔ２ａにプログラム容量の数値情報Ｔ６ａを加算した値（メモリ使用量＋プログラム容量）と上限メモリ閾値の数値情報Ｔ４ｂとの比較を行い（ステップＳ１１０４）、メモリ使用量にプログラム容量を加算した値が上限メモリ閾値以上となる場合（（メモリ使用量＋プログラム容量）≧上限メモリ閾値）には、経過時間情報Ｔ１を参照して（ステップＳ１１０５）、経過時間の数値情報Ｔ１ｂが最大となるデバイスの制御用プログラムをアンロードする判定を行う。一方、メモリ使用量にプログラム容量を加算した値が上限メモリ閾値よりも小さい場合（（メモリ使用量Ｔ９ａ＋プログラム容量Ｔ１２ａ）＜上限メモリ閾値Ｔ６ｂ）には、判定手段１０５が、コンピュータ１０に接続されたデバイスの制御用プログラムをロードする判定を行い、ロード手段１０６が、判定手段１０５によりロードが判定された制御用プログラムのロードを実行して（ステップＳ１１０８）、本フローチャートの処理を終了する。
【００６７】
次に、アンロード手段１０７が、判定手段１０５によりアンロードが判定された制御用プログラムのアンロードを実行する（ステップＳ１１０６）。制御用プログラムのアンロードが実行されると、アンロードプログラム情報格納手段１０８が、その制御用プログラムの識別子を主記憶装置１０１の所定の記憶領域へスタックする（ステップＳ１１０７）。
【００６８】
次に、ステップＳ１１０４へ戻り、メモリ使用量にプログラム容量を加算した値が上限メモリ閾値を下回るまで（（メモリ使用量＋プログラム容量）＜上限メモリ閾値）、上記の処理（ステップＳ１１０４〜Ｓ１１０７）を繰り返し実行する。
【００６９】
そして、メモリ使用量にプログラム容量を加算した値が上限メモリ閾値を下回ると（（メモリ使用量＋プログラム容量）＜上限メモリ閾値）、判定手段１０５が、コンピュータ１０に再度接続されたデバイスの制御用プログラムをロードする判定を行い、ロード手段１０６が、判定手段１０５によりロードが判定された制御用プログラムのロードを実行して（ステップＳ１１０８）、本フローチャートの処理を終了する。
【００７０】
以上の処理を実行することにより、使用したいデバイスをコンピュータに接続した際に、主記憶装置のメモリ使用量が逼迫していることが原因で制御用プログラムがロードできずにデバイスが使用できない、という問題を回避できる。つまり、主記憶装置にロードされている制御用プログラムの中で未使用時間が最も長い制御用プログラム（今後使用される可能性が最も低い制御用プログラム）を自動的にアンロードして、代わりに所望の制御用プログラムをロードすることができる。
【００７１】
以上のように、本実施の形態によれば、使用頻度の低いデバイスの制御用プログラムをアンロード処理して主記憶装置の記憶領域に余裕を持たせることができるので、システムの起動中にデバイスの取り外しが自在なコンピュータシステムに有用である。特に、デバイスとの接続数が増加傾向にあり、かつコストを重視して主記憶装置の記憶容量が制約される移動端末装置などの組み込みコンピュータシステムに有用である。
【産業上の利用可能性】
【００７２】
本発明にかかる制御端末は、主記憶装置の使用効率を向上することができ、システムの起動中にデバイスの取り外しが自在なコンピュータシステム、特にデバイスとの接続数が増加傾向にあり、かつコストを重視して主記憶装置の記憶容量が制約される移動端末装置などの組み込みコンピュータシステムに有用である。
【図面の簡単な説明】
【００７３】
【図１】本発明の実施の形態におけるシステムの構成例を示す図
【図２】本発明の実施の形態におけるコンピュータの機能ブロック図
【図３】本発明の実施の形態における経過時間情報の一例を示す図
【図４】本発明の実施の形態におけるメモリ使用量情報の一例を示す図
【図５】本発明の実施の形態における監視間隔時間情報の一例を示す図
【図６】本発明の実施の形態における閾値情報の一例を示す図
【図７】本発明の実施の形態におけるアンロードプログラム情報の一例を示す図
【図８】本発明の実施の形態におけるコンピュータの動作フローを示す図（経過時間と時間閾値の比較判定）
【図９】本発明の実施の形態におけるコンピュータの動作フローを示す図（メモリ使用量と上限メモリ閾値の比較判定）
【図１０】本発明の実施の形態におけるコンピュータの動作フローを示す図（メモリ使用量と下限メモリ閾値の比較判定）
【図１１】本発明の実施の形態におけるコンピュータの動作フローを示す図（メモリ使用量に所望の制御用プログラムのデータ量を加算した値と上限メモリ閾値の比較判定）
【符号の説明】
【００７４】
１０      コンピュータ
１１      携帯電話
１２      ＰＤＡ
２０      印刷機
３０      マウス
４０      フラッシュメモリカード
５０      無線モジュール内蔵カード
１０１      主記憶装置
１０２      経過時間計測手段
１０３      メモリ使用量計測手段
１０４      閾値初期設定手段
１０５      判定手段
１０６      ロード手段
１０７      アンロード手段
１０８      アンロードプログラム情報格納手段
１０９      デバイス検知手段
Ｔ１        経過時間情報
Ｔ１ａ      デバイス識別子
Ｔ１ｂ      経過時間の数値情報
Ｔ２        メモリ使用量情報
Ｔ２ａ      メモリ使用量の数値情報
Ｔ３        監視間隔時間情報
Ｔ３ａ      経過時間監視間隔時間の数値情報
Ｔ３ｂ      メモリ使用量監視間隔時間の数値情報
Ｔ４        閾値情報
Ｔ４ａ      時間閾値の数値情報
Ｔ４ｂ      上限メモリ閾値の数値情報
Ｔ４ｃ      下限メモリ閾値の数値情報
Ｔ５        アンロードプログラム情報
Ｔ５ａ      アンロード制御用プログラム識別子
【図１】
2006318145.tif 000003
【図２】
2006318145.tif 000004
【図３】
2006318145.tif 000005
【図４】
2006318145.tif 000006
【図５】
2006318145.tif 000007
【図６】
2006318145.tif 000008
【図７】
2006318145.tif 000009
【図８】
2006318145.tif 000010
【図９】
2006318145.tif 000011
【図１０】
2006318145.tif 000012
【図１１】
2006318145.tif 000013