JP2005346473A - 情報処理方法、情報処理装置、撮像装置 - Google Patents
情報処理方法、情報処理装置、撮像装置 Download PDFInfo
- Publication number
- JP2005346473A JP2005346473A JP2004166138A JP2004166138A JP2005346473A JP 2005346473 A JP2005346473 A JP 2005346473A JP 2004166138 A JP2004166138 A JP 2004166138A JP 2004166138 A JP2004166138 A JP 2004166138A JP 2005346473 A JP2005346473 A JP 2005346473A
- Authority
- JP
- Japan
- Prior art keywords
- program
- information
- program information
- input
- external storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】 メモリカード等の記録媒体に格納されているプログラムに係る処理を簡便に行うこと。
【解決手段】 記録媒体から入力したプログラム情報に関連付けたプログラムを記録媒体から読み出して、このプログラム情報と共に外部記憶装置106に格納するか否かを、このプログラム情報に基づいて判断し、格納すると判断した場合に、入力したプログラム情報に関連付けたプログラムを記録媒体から読み出し、入力したプログラム情報と共に外部記憶装置106に格納する。
【選択図】 図1
【解決手段】 記録媒体から入力したプログラム情報に関連付けたプログラムを記録媒体から読み出して、このプログラム情報と共に外部記憶装置106に格納するか否かを、このプログラム情報に基づいて判断し、格納すると判断した場合に、入力したプログラム情報に関連付けたプログラムを記録媒体から読み出し、入力したプログラム情報と共に外部記憶装置106に格納する。
【選択図】 図1
Description
本発明は、記録媒体とのデータ通信技術に関するものである。
従来、PDAなどの携帯機器においては、機器内にインストールされていないアプリケーションプログラムを起動する場合、アプリケーションプログラムが格納されたCompact FlashメモリカードやSDメモリカード等のメモリカードを機器に装着し、メモリカードに格納されているアプリケーションプログラムを機器内の主記憶メモリに読み込み、読み込んだアプリケーションプログラムを起動するようになっていた。
或いは、メモリカードに格納されているアプリケーションプログラムを機器内のハードディスクや不揮発性メモリに一旦コピーし、コピーされたアプリケーションプログラムを実行するようになっていた(例えば、特許文献1を参照)。
特開平11−242596号公報
しかしながら、上記従来例のメモリカードに格納されているアプリケーションプログラムを機器内の主記憶メモリに読み込み、読み込んだアプリケーションプログラムを起動する方法では、起動したアプリケーションプログラムを終了するとオペレーティングシステム(OS)は主記憶メモリ内に読込まれたアプリケーションプログラムを無効にする。このため、アプリケーションプログラムを再度実行する場合は、再びメモリカードからアプリケーションプログラムを機器内の主記憶メモリに読込む必要がある。しかし、メモリカードのアクセススピードは主記憶メモリのアクセススピードより遅いため、結果的にアプリケーションプログラムの起動速度が遅いという欠点があった。
また、メモリカードに格納されているアプリケーションプログラムを機器内のハードディスクや不揮発性メモリに一旦コピーし、コピーされたアプリケーションプログラムを実行する方法では、機器内のハードディスクや不揮発性メモリにアプリケーションを格納するための操作が煩雑であり、また、格納したアプリケーションが不要になった時に削除する操作も煩雑であるという欠点があった。
本発明は以上の問題に鑑みてなされたものであり、メモリカード等の記録媒体に格納されているプログラムに係る処理を簡便に行うことを目的とする。
本発明の目的を達成するために、例えば本発明の情報処理装置は以下の構成を備える。
すなわち、プログラム、及び当該プログラムに関するプログラム情報を関連付けて記録した記録媒体とのデータ通信が可能な情報処理装置であって、
前記記録媒体からプログラム情報を入力する入力手段と、
前記入力手段が入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出して、前記入力手段が入力したプログラム情報と共に所定のメモリに格納するか否かを、前記入力手段が入力したプログラム情報に基づいて判断する第1の判断手段と、
前記第1の判断手段が格納すると判断した場合に、前記入力手段が入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出し、前記入力手段が入力したプログラム情報と共に前記メモリに格納する格納制御手段と
を備えることを特徴とする。
前記記録媒体からプログラム情報を入力する入力手段と、
前記入力手段が入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出して、前記入力手段が入力したプログラム情報と共に所定のメモリに格納するか否かを、前記入力手段が入力したプログラム情報に基づいて判断する第1の判断手段と、
前記第1の判断手段が格納すると判断した場合に、前記入力手段が入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出し、前記入力手段が入力したプログラム情報と共に前記メモリに格納する格納制御手段と
を備えることを特徴とする。
本発明の目的を達成するために、例えば本発明の情報処理方法は以下の構成を備える。
すなわち、プログラム、及び当該プログラムに関するプログラム情報を関連付けて記録した記録媒体とのデータ通信が可能な情報処理装置の制御方法であって、
前記記録媒体からプログラム情報を入力する入力工程と、
前記入力工程で入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出して、前記入力工程で入力したプログラム情報と共に所定のメモリに格納するか否かを、前記入力工程で入力したプログラム情報に基づいて判断する第1の判断工程と、
前記第1の判断工程で格納すると判断した場合に、前記入力工程で入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出し、前記入力工程で入力したプログラム情報と共に前記メモリに格納する格納制御工程と
を備えることを特徴とする。
前記記録媒体からプログラム情報を入力する入力工程と、
前記入力工程で入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出して、前記入力工程で入力したプログラム情報と共に所定のメモリに格納するか否かを、前記入力工程で入力したプログラム情報に基づいて判断する第1の判断工程と、
前記第1の判断工程で格納すると判断した場合に、前記入力工程で入力したプログラム情報に関連付けたプログラムを前記記録媒体から読み出し、前記入力工程で入力したプログラム情報と共に前記メモリに格納する格納制御工程と
を備えることを特徴とする。
本発明の構成により、メモリカード等の記録媒体に格納されているプログラムに係る処理を簡便に行うことができる。
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
[第1の実施形態]
図1は、本実施形態に係る情報処理装置として機能するコンピュータの基本構成を示す図である。以下、このコンピュータをプログラム実行装置と呼称する場合がある。
図1は、本実施形態に係る情報処理装置として機能するコンピュータの基本構成を示す図である。以下、このコンピュータをプログラム実行装置と呼称する場合がある。
101はコンピュータ本体を示し、以下説明する各部を備える。
102は中央処理装置(以下、CPU)で、主記憶装置103に格納されているプログラム、データを用いてコンピュータ101全体の制御、後述する各処理を行うと共に、コンピュータ101と外部記憶媒体スロット109を介して接続される外部記憶媒体108とのデータ通信を制御する。
103はRAMなどにより構成されている主記憶装置で、この主記憶装置103は、外部記憶装置106からロードされるプログラムやデータを一時的に記録するためのエリアを備えると共に、外部記憶媒体108から外部記憶媒体スロット109を介してコンピュータ101内に入力されるプログラムやデータを一時的に記録するためのエリアを備える。また、主記憶装置103は、CPU102が各種の処理を行う際に使用するワークエリアを備える。
104は表示装置で、CRTや液晶画面などにより構成されており、各種プログラムの実行中の画面の表示などを行うために利用される。
105は例えばボタン群により構成される入力装置であって、CPU102に対して各種の指示を入力することができる。なお、表示装置104がタッチパネル形式のものである場合には、入力装置105は表示装置104と一体化されたものとなる。
106は外部記憶装置で、ここにOS(オペレーティングシステム)やCPU102に後述する各処理を実行させるために必要なプログラムやデータが保存されている。また、外部記憶媒体108から外部記憶媒体スロット109を介してコンピュータ101内に入力されるプログラムやデータを保存することもできる。
109は外部記憶媒体スロットで、コンピュータ101が外部記憶媒体108とのデータ通信を行うためのI/Fとして機能するものであり、本実施形態では外部記憶媒体108を外部記憶媒体スロット109に接続することで、コンピュータ101はこの外部記憶媒体スロット109を介して外部記憶媒体108とのデータ通信を行うことができるのであるが、外部記憶装置106によっては無線通信を行うものも想定可能であるので、その場合には外部記憶媒体スロット109は、無線信号でもってコンピュータ101と外部記憶媒体108とのデータ通信を行うためのI/Fとして機能するものとなる。これは外部記憶媒体108が有線通信を行う場合も同様である。
108はメモリカード等の外部記憶媒体で、この外部記憶媒体108には、各種のアプリケーションソフトウェアのプログラム、及び各プログラムに対応するプログラム情報が格納されている。プログラム情報については詳しくは後述する。
上記構成を有するコンピュータ101では、外部記憶媒体108を外部記憶媒体スロット109に装着(接続)すると、本コンピュータ101のCPU102は外部記憶媒体108に格納されているプログラム情報を基にプログラムを読み出し、外部記憶装置106に格納するとともに、そのプログラムを主記憶装置103に読み出して実行する。また、プログラム実行中の画面は表示装置104に表示されると共に、実行中のプログラムに対する入力は、入力装置106によって行なわれる。
図2は、コンピュータ101、及び外部記憶媒体108の機能構成を示す図である。
先ず外部記憶媒体108の機能構成について説明する。同図において201は外部記憶媒体108内のプログラム情報管理部であり、プログラム格納部204に格納されているそれぞれのプログラム205,206に関する情報が記述されたプログラム情報202、203を含んでいる。なお、同図では2組(1組とはプログラムとプログラム情報とのセットを指す)を示しているが、以下の説明は2組に限定するものではない。
202は第1のプログラム情報であり、対応するプログラム(同図では第1のプログラム205)が動作可能な機器固有のID(機器ID)、このプログラムのID(プログラムID)、常時起動フラグ、使用回数、最終起動日時、及び削除フラグから構成されている。
203は第2のプログラム情報であり、第1のプログラム情報202と同じ構成を有するが、プログラムIDは第1のプログラム情報202とは異なり、ID=2である。
204は外部記憶媒体108内のプログラム格納部であり、第1のプログラム205、第2のプログラム206を含んでいる。
第1のプログラム205のプログラム情報は、第1のプログラム情報202で記述されている。第2のプログラム206のプログラム情報は、第2のプログラム情報203で記述されている。このように、プログラムとプログラム情報とはプログラムIDでもって互いに関連付けられて外部記憶媒体108内で管理されている。
次に、コンピュータ101の機能構成について説明する。同図において208はプログラム情報読込み部であり、外部記憶媒体108内のプログラム情報管理部201に格納されているプログラム情報202、203を読込む。
209はプログラム情報解析部であり、プログラム情報読込み部208によって読込まれたプログラム情報を解析する。
210は機器情報取得部であり、コンピュータ101固有のIDをコンピュータ101内から取得する。
211はプログラム読込み部であり、外部記憶媒体108内のプログラム格納部204に格納されているプログラム205、206を読込む。
212はプログラム格納部であり、プログラム情報解析部209によって解析されたプログラム情報内の常時起動フラグがTRUEの場合には、このプログラム情報に対応するプログラムを外部記憶媒体108からプログラム読込み部211によって読込み、このプログラム情報と共に外部記憶装置106に格納する。さらに、プログラム情報内の削除フラグがTRUEの場合に機器から外部記憶媒体108が取出された時は、このプログラム情報、及びこのプログラム情報に対応するプログラムが外部記憶装置106に格納されている場合には、このプログラム、及びプログラム情報を削除する。
213はプログラム実行部であり、プログラム情報解析部209によって解析されたプログラム情報内の常時起動フラグがTRUEの場合は、このプログラム情報に対応するプログラムを外部記憶装置106から主記憶装置103に読み込んで実行し、一方、常時起動フラグがFALSEの場合は、プログラムを実行するよう指示がなされた時にこのプログラム情報に対応するプログラムを外部記憶装置106から主記憶装置103に読み込んで実行する。
214はプログラム情報変更部であり、プログラム情報内のデータを変更し、変更後のデータを外部記憶媒体108内のプログラム情報管理部201、及び外部記憶装置106に上書きして格納する。
図3は、外部記憶媒体108内のプログラム情報管理部201に格納されているプログラム情報202、203の一例を示す図である。同図において301は、外部記憶媒体108内のプログラム格納部204に格納されているプログラム(プログラムIDが1のプログラム)が実行可能な機器IDは”Device 10”であることを示しており、これは即ち、”Device 10”という機器IDを有する機器では動作可能であるが、それ以外の機器では実行出来ないことを意味する。実行できない理由の1つとして、プログラムが機器特有のハードウェア資源やソフトウェアを使用するため、それをサポートしていない他の機器では実行できないことが上げられる。
302はプログラム格納部204に格納されているプログラムを識別するためのプログラムIDであり、この例では1を示している。すなわち、同図のプログラム情報は、プログラムIDが1のプログラムに対応するものであることを示している。
303は常時起動フラグであり、この例ではTRUEを示している。この常時起動フラグがTRUEの場合は、外部記憶媒体108が機器に装着された場合に、外部記憶媒体108内のプログラム、プログラム情報を外部記憶装置106に格納後、格納したプログラムを実行することを意味している。一方、常時起動フラグがFALSEの場合は、外部記憶媒体108内のプログラム、プログラム情報を機器内の外部記憶装置106に格納せず、プログラムを実行するよう指示がなされた時に外部記憶媒体108内のプログラムを直接実行することを意味している。
304は使用回数であり、プログラムが今までに何回起動されたかを示し、この例では今までに30回起動されたことを示している。常時起動フラグ303がTRUEの場合、プログラム、プログラム情報を外部記憶装置106に格納するが、この時、外部記憶装置106に空き容量がない場合には、どのプログラム、プログラム情報を削除するかを決定するための1つの指標としてこの使用回数が使用される。なお、この使用回数はプログラムが実行される度にプログラム情報変更部214によって1つカウントアップされる。
305は最終起動日時であり、プログラムが最後に起動された日時を示し、この例では2003/02/19の15:30に起動されたことを示している。常時起動フラグ303がTRUEの場合、プログラム、プログラム情報を外部記憶装置106に格納するが、この時、外部記憶装置106に空き容量がない場合には、どのプログラム、プログラム情報を削除するかを決定するための1つの指標としてこの最終起動日時が使用される。使用回数304の情報を基に削除するか、最終起動日時305の情報を基に削除するか、あるいは使用回数と最終起動日時の組合せによって削除するかは、選択できるものとする。なお、この最終起動日時はプログラムが実行される度にプログラム情報変更部214によって更新される。
306は削除フラグであり、この例ではFALSEを示している。この削除フラグがFALSEの場合は、機器から外部記憶媒体108が取出された時に外部記憶装置106に格納されているプログラム、プログラム情報は削除しないことを意味している。一方、削除フラグがTRUEの場合は、機器から外部記憶媒体108が取出された時に外部記憶装置106に格納されているプログラム、プログラム情報を削除することを意味している。
図4は、外部記憶媒体108内のプログラム情報管理部201に格納されているプログラム情報202、203の他の一例を示す図である。同図において401は、外部記憶媒体108内のプログラム格納部204に格納されているプログラム(プログラムIDが2のプログラム)が実行可能な機器IDは”*”であることを示しており、これはプログラムが標準のソフトウェアのみを使用しており、機器特有のハードウェア資源やソフトウェアを使用していないため、任意の機器で動作可能であることを意味している。
402はプログラム格納部204に格納されているプログラムを識別するためのプログラムIDであり、この例では2を示している。すなわち、同図のプログラム情報は、プログラムIDが2のプログラムに対応するものであることを示している。
403は常時起動フラグであり、この例ではTRUEなので、外部記憶媒体108が機器に装着された時、外部記憶媒体108内のプログラム、プログラム情報を機器内の外部記憶装置106に格納後、格納したプログラムを実行することを意味している。
404は使用回数であり、プログラムが今までに何回起動されたかを示し、この例では今までに5回起動されたことを示している。
405は最終起動日時であり、プログラムが最後に起動された日時を示し、この例では2002/05/01の09:20に起動されたことを示している。
406は削除フラグであり、この例ではTRUEなので、機器から外部記憶媒体108が取出された時に機器内の外部記憶装置106に格納されているプログラム、プログラム情報を削除することを意味している。
図5は、コンピュータ101の外部記憶媒体スロット109に外部記憶媒体108を装着したときに、コンピュータ101のCPU102が実行する処理のフローチャートである。なお、同図のフローチャートに従った処理をCPU102に実行させるためのプログラムは外部記憶装置106から主記憶装置103にロードされているものとする。
また、このプログラムは、図2に示したプログラム情報読込み部208、プログラム情報解析部209、機器情報取得部210、プログラム読込み部211、プログラム格納部212、プログラム実行部213、プログラム情報変更部214の各部の機能をCPU102によって実行させるためのものである。
また、このプログラムは、コンピュータ101の外部記憶媒体スロット109に外部記憶媒体108(以下では例としてメモリカードとする)が装着された時に、この外部記憶媒体108内のプログラム情報に基づいてプログラムを読み込み、起動するまでの制御手順に対応する。
CPU102は、外部記憶媒体スロット109にメモリカードが挿入されたか否かを常に監視している(ステップS1)。そして外部記憶媒体スロット109にメモリカードが挿入されると、外部記憶媒体スロット109からその旨の信号がCPU102に通知されるので、CPU102はこれを検知し、「メモリカードが挿入された」と判断し、処理をステップS1からステップS2に進める。
そして、メモリカード内のプログラム情報管理部201に保持されているプログラム情報を読み込み、主記憶装置103に一時的に記憶させる(ステップS2)。次に、外部記憶装置106から主記憶装置103に予めロードされている「コンピュータ101の機器ID」と、ステップS2で主記憶装置103に読み込んだプログラム情報内の機器IDとを参照し(ステップS3)、両方の機器IDを比較して、ステップS2で読み込んだプログラム情報に関連付けられたプログラムが、コンピュータ101でもって動作可能なものであるか否かを判断する(ステップS4)。
この判断処理では、例えばコンピュータ101の機器IDとステップS2で読み込んだプログラム情報内の機器IDとが一致する、もしくはステップS2で読み込んだプログラム情報内の機器IDが「*」である場合には、ステップS2で読み込んだプログラム情報に関連付けられたプログラムは、コンピュータ101でもって動作可能なものであると判断する。
このような判断処理により、ステップS2で読み込んだプログラム情報に関連付けられたプログラムが、コンピュータ101でもって動作可能なものではないと判断された場合には処理をステップS11に進める。
一方、ステップS2で読み込んだプログラム情報に関連付けられたプログラムが、コンピュータ101でもって動作可能なものであると判断された場合には処理をステップS5に進め、ステップS2で読み込んだプログラム情報中の常時起動フラグを参照し(ステップS5)、常時起動フラグがTRUEであるか否かをチェックする(ステップS6)。
常時起動フラグがTRUEではない場合には処理をステップS11に進める。一方、常時起動フラグがTRUEである場合には処理をステップS7に進め、ステップS2で読み込んだプログラム情報に関連付けられたプログラムが外部記憶装置106に既にコピー済かどうかを判断し(ステップS7)、コピー済みの場合には処理をステップS9に進める。一方、まだコピーされていない場合には処理をステップS8に進め、このプログラムを外部記憶媒体108から読み出し、このプログラムに関連付けられたプログラム情報(すなわちステップS2で読み込んだプログラム情報)と共に外部記憶装置106にコピーする処理を行う(ステップS8)。ステップS8における処理の詳細については後述する。
そしてコピー後、CPU102はこのプログラムを、プログラム実行部213のプログラムでもって実行し(ステップS9)、実行後、実行したプログラムのプログラム情報(ステップS2で読み込んだプログラム情報)を、プログラム情報更新部214のプログラムを実行することで更新する(ステップS10)。更新の内容は、使用回数(使用した回数に更新する)や最終起動日時(現在日時に更新する)などの情報である。そして更新後のプログラム情報は、外部記憶媒体スロット109を介して外部記憶媒体108に出力され、上書き保存される。また、更新したプログラム情報は外部記憶装置106にも出力され、保存される。
次に、メモリカード内に含まれる全てのプログラムについてステップS3からステップS10の処理が行われたかどうかを判断し(ステップS11)、全て処理されたた場合には同図のフローチャートに従った処理を終了するのであるが、まだ全て処理されていない場合には処理をステップS3に戻し、以降の処理を行う。
なお、同図のフローチャートではステップS6にて常時起動フラグがFALSEの場合には、ステップS11の全てのプログラムについて処理が終わったかどうか判断する処理に移行しているが、ステップS2で読み込んだプログラム情報に対応するプログラムに対して入力装置105から実行指示が入力された場合にこのプログラムを実行するようにしても良い。
図6は、上記ステップS8における、ステップS2で読み込んだプログラム情報、及びこのプログラム情報に関連付けているプログラムを外部記憶装置106にコピーする処理の詳細を示すフローチャートである。
先ず、CPU102は、ステップS2で読み込んだプログラム情報に対応するプログラムを外部記憶媒体108から主記憶装置103に読み出し(ステップS101)、読み出したプログラム、及びステップS2で読み込んだプログラム情報を保持するために必要な空き容量が外部記憶装置106内に存在するか否かをチェックする(ステップS102)。
空き領域がある場合には処理をステップS105に進め、CPU102は、ステップS101で主記憶装置103に読み出したプログラム、及びステップS2で読み込んだプログラム情報を外部記憶装置106にコピーする(ステップS105)。
一方、空き容量がない場合には処理をステップS103に進め、外部記憶装置106に保存されている各プログラムのうち、実行中でないものの中から、関連付けているプログラム情報内の使用回数が最も少ないものを選択する(ステップS103)。すなわち外部記憶装置106に保存されているプログラムのうち、最も使用回数が少ないプログラムを、各プログラムに関連付けているプログラム情報中の「使用回数」を参照することにより特定する。
そしてステップS103で選択(特定)したプログラム、及びこのプログラムに関連付けているプログラム情報を外部記憶装置106から削除する処理を行う(ステップS104)。そして削除処理後、再び処理をステップS102に戻し、再度、外部記憶装置106に空き容量があるか否かを判断する。このようにステップS102からステップS104までの各処理を、「外部記憶装置106に空き容量が存在する」まで行うことにより、外部記憶装置106内に、ステップS2で読み込んだプログラム情報、及びこのプログラム情報に関連付けているプログラムを保存することができる状態を設定することができる。
なお、同図のフローチャートに従った処理では、外部記憶装置106内に空き容量が無い場合には、使用回数が少ない順にプログラム、及びこのプログラムに関連付けられたプログラム情報を削除することにより対処しているが、この対処方法はこれに限定されるものではなく、例えばステップS103では、外部記憶装置106に保存されている各プログラムのうち、実行中でないものの中から、対応するプログラム情報内の最終起動日時が最も古いものを選択するようにする。そしてステップS104において、ステップS103で選択(特定)したプログラム、及びこのプログラムに関連付けられたプログラム情報を外部記憶装置106から削除する処理を行う。
このように、外部記憶装置106内の空き容量を増大させるための対処方法についてはプログラムの使用回数に限定されるものではない。また、各プログラムに対する重要度(本実施形態では使用回数、最終起動日時)をプログラム情報に含ませておけば、ステップS103ではこの重要度を参照し、重要度が最も低い(本実施形態では使用回数が最も少ない、最終起動日時が最も古い)プログラムを選択するようにすればよく、ステップS104ではステップS103で選択したプログラム、及びこのプログラムに関連付けられたプログラム情報を削除するようにすればよい。
図7は、外部記憶媒体スロット109からメモリカードが取り外された場合に、コンピュータ101のCPU102が行う処理のフローチャートである。なお、同図のフローチャートに従った処理をCPU102に実行させるためのプログラムは外部記憶装置106から主記憶装置103にロードされているものとする。
CPU102は、外部記憶媒体スロット109にメモリカードが装着されている場合、このメモリカードが取り外されたか否かを常に監視している(ステップS201)。そして外部記憶媒体スロット109からメモリカードが取り外されると、外部記憶媒体スロット109からその旨の信号がCPU102に通知されるので、CPU102はこれを検知し、「メモリカードが取り外された」と判断し、処理をステップS201からステップS202に進める。
取り外された場合には、CPU102は、外部記憶装置106が保持する各プログラム情報中の削除フラグを参照し(ステップS202)、参照した削除フラグがTRUEであるか否かをチェックする(ステップS203)。
削除フラグがTRUEである場合には処理をステップS204に進め、ステップS202で参照した削除フラグを含むプログラム情報、及びこのプログラム情報に関連付けられたプログラムを外部記憶装置106から削除する処理を行う(ステップS204)。
そして、外部記憶装置106が保持する全てのプログラム情報中の削除フラグを参照したか否かをチェックし、全てについてチェックしていない場合には処理をステップS202に戻し、以降の処理を繰り返す。
以上の説明のとおり、本実施形態によれば、ユーザの操作を介さずにメモリカードに記録されているプログラムをコンピュータ内の記憶装置に格納して実行することができる。
また、コンピュータから外部記憶媒体が取り出された場合に削除したいプログラムがあれば、このプログラムに対応するプログラム情報中の削除フラグをTRUEにしておくことで、ユーザの操作を介さずにコンピュータ内の記憶装置からこのプログラムを削除できる。これにより、例えば他人がこのコンピュータを使用する場合、このコンピュータの所有者にのみライセンスされているプログラムが他人に無断で使用されるのを防ぐことができるという効果がある。
さらに、プログラム情報内の機器IDとコンピュータの機器IDと比較し、記憶媒体内のプログラムがコンピュータで動作できないと判断した場合は、プログラムをコンピュータ記憶装置に格納しないと同時に実行もしないので、無駄に記憶装置を使用しないと共に無駄な実行を防ぐことができるという効果がある。
[第2の実施形態]
第1の実施形態では、プログラム情報内の常時起動フラグがTRUEの場合は、このプログラム情報と外部記憶媒体108内のプログラムとを外部記憶装置106に格納した後でプログラムを実行していたが、プログラム情報内にプログラムの使用上限回数、又は使用可能最終日時を設定しておくことで、このプログラムが例えば評価版やデモ版のプログラムであった場合に、このプログラムに対する使用制限を設けることも可能になる。
第1の実施形態では、プログラム情報内の常時起動フラグがTRUEの場合は、このプログラム情報と外部記憶媒体108内のプログラムとを外部記憶装置106に格納した後でプログラムを実行していたが、プログラム情報内にプログラムの使用上限回数、又は使用可能最終日時を設定しておくことで、このプログラムが例えば評価版やデモ版のプログラムであった場合に、このプログラムに対する使用制限を設けることも可能になる。
図8は、本実施形態に係るプログラム情報の構成例を示す図である。同図において図3と同じ部分については同じ番号を付けており、その説明を省略する。本実施形態に係るプログラム情報は、第1の実施形態に係るプログラム情報の構成に、新たに使用上限回数801を加えた構成を備える。使用上限回数801は、プログラムが起動できる上限の回数を示し、この例では35回まで起動できることを意味している。同図では、使用回数304の回数が30回なので、あと5回起動できることになる。
図9は、本実施形態に係るプログラム情報の別の構成例を示す図である。同図に示したプログラム情報は、図3に示した構成に使用可能最終日時901を加えた構成を備える。使用可能最終日時901はプログラムが起動できる最終日時を示し、この例では2003/02/25の00:00まで起動できることを意味している。
このように、本実施形態に係るプログラム情報は、対応するプログラム(同図ではプログラムIDが1のプログラム)に対して使用期限を設定することができる。なお、使用期限を示す情報(図8では使用上限回数、図9では使用可能最終日時)はこれに限定されるものではない。
なお、図8、図9に示したプログラム情報では、外部記憶媒体108がコンピュータ101から取り出された時、削除フラグがFALSEなので外部記憶装置106からプログラム、及びプログラム情報を削除しないが、別の例として、使用上限回数や使用可能最終日時の制限により起動できないと判断された場合は、たとえ削除フラグがFALSEであったとしても外部記憶装置106からプログラムを削除してもよい。
図10は、コンピュータ101の外部記憶媒体スロット109に外部記憶媒体108を装着したときに、コンピュータ101のCPU102が実行する、本実施形態に係る処理のフローチャートである。なお、同図のフローチャートに従った処理をCPU102に実行させるためのプログラムは外部記憶装置106から主記憶装置103にロードされているものとする。
また、このプログラムは、図2に示したプログラム情報読込み部208、プログラム情報解析部209、機器情報取得部210、プログラム読込み部211、プログラム格納部212、プログラム実行部213、プログラム情報変更部214の各部の機能をCPU102によって実行させるためのものである。
また、このプログラムは、コンピュータ101の外部記憶媒体スロット109に外部記憶媒体108(以下では例としてメモリカードとする)が装着された時に、この外部記憶媒体108内のプログラム情報に基づいてプログラムを読み込み、起動するまでの制御手順に対応する。
CPU102は、外部記憶媒体スロット109にメモリカードが挿入されたか否かを常に監視している(ステップS301)。そして外部記憶媒体スロット109にメモリカードが挿入されると、外部記憶媒体スロット109からその旨の信号がCPU102に通知されるので、CPU102はこれを検知し、「メモリカードが挿入された」と判断し、処理をステップS301からステップS302に進める。
そして、メモリカード内のプログラム情報管理部201に保持されているプログラム情報を読み込み、主記憶装置103に一時的に記憶させておく(ステップS302)。次に、外部記憶装置106から主記憶装置103に予めロードされている「コンピュータ101の機器ID」と、ステップS302で主記憶装置103に読み込んだプログラム情報内の機器IDとを参照し(ステップS303)、両方の機器IDを比較して、ステップS302で読み込んだプログラム情報に関連付けられたプログラムが、コンピュータ101でもって動作可能なものであるか否かを判断する(ステップS304)。この判断処理は第1の実施形態と同様にして行う。
このような判断処理により、ステップS302で読み込んだプログラム情報に対応するプログラムが、コンピュータ101でもって動作可能なものではないと判断された場合には処理をステップS313に進める。
一方、ステップS302で読み込んだプログラム情報に対応するプログラムが、コンピュータ101でもって動作可能なものであると判断された場合には処理をステップS305に進め、ステップS302で読み込んだプログラム情報中の「使用回数」と「使用上限回数」とを参照し(ステップS305)、「使用回数」が「使用上限回数」に達しているか否かを判断する(ステップS306)。
達している場合には処理をステップS313に進める。一方、達していない場合には処理をステップS307に進め、ステップS302で読み込んだプログラム情報中の常時起動フラグを参照し(ステップS307)、常時起動フラグがTRUEであるか否かをチェックする(ステップS308)。
常時起動フラグがTRUEではない場合には処理をステップS313に進める。一方、常時起動フラグがTRUEである場合には処理をステップS309に進め、ステップS302で読み込んだプログラム情報に対応するプログラムが外部記憶装置106に既にコピー済かどうかを判断し(ステップS309)、コピー済みの場合には処理をステップS311に進める。一方、まだコピーされていない場合には処理をステップS310に進め、このプログラムを外部記憶媒体108から読み出し、このプログラムに関連付けられたプログラム情報(すなわちステップS302で読み込んだプログラム情報)と共に外部記憶装置106にコピーする処理を行う(ステップS310)。ステップS310における処理は上記ステップS8と同様にして行う。
そしてコピー後、CPU102はこのプログラムを、プログラム実行部213のプログラムでもって実行し(ステップS311)、実行後、実行したプログラムのプログラム情報(ステップS302で読み込んだプログラム情報)を、プログラム情報更新部214のプログラムを実行することで更新する(ステップS312)。更新の内容は、使用回数(プログラムを使用した回数に更新する)や最終起動日時(現在日時に更新する)などの情報などの情報である。そして更新後のプログラム情報は、外部記憶媒体スロット109を介して外部記憶媒体108に出力され、上書き保存される。また、更新したプログラム情報は外部記憶装置106にも出力され、保存される。
次に、メモリカード内に含まれる全てのプログラムについてステップS303からステップS312の処理が行われたかどうかを判断し(ステップS313)、全て処理された場合には同図のフローチャートに従った処理を終了するのであるが、まだ全て処理されていない場合には処理をステップS303に戻し、以降の処理を行う。
なお同図のフローチャートは、プログラム情報が図8に示したように、図3に示した構成に使用上限回数が含まれている構成である場合のものであったが、プログラム情報が図9に示すような構成である場合、ステップS305では「最終起動日時」と「使用可能最終日時」とを参照し、ステップS306では、「最終起動日時」が「使用可能最終日時」よりも過去の日時であるか否かを判断する処理を行う。そして「最終起動日時」が「使用可能最終日時」よりも過去の日時である場合には処理をステップS307に進め、「最終起動日時」が「使用可能最終日時」よりも過去の日時ではない場合には処理をステップS313に進めるようにすればよい。
また、上述のように、使用期限を示す情報はこれに限定されるものではないので、ステップS503では使用期限をチェックするための情報を参照し、ステップS306では参照した結果、使用期限を満たす(使用回数が使用上限回数よりも少ない、最終起動日時が使用可能最終日時よりも過去の日時等)か否かを判断すればよい。
また、同図のフローチャートではステップS308にて常時起動フラグがFALSEの場合には、ステップS313の全てのプログラムについて処理が終わったかどうか判断する処理に移行しているが、ステップS302で読み込んだプログラム情報に対応するプログラムに対して入力装置105から実行指示が入力された場合にこのプログラムを実行するようにしても良い。
以上の説明のように、本実施形態によって、プログラム情報内にプログラムの使用上限回数、又は使用可能最終日時を設定しておくので、プログラムの実行を無条件に許可するのではなく、評価版やデモ版のプログラムに対して使用制限を設けることができる。
[第3の実施形態]
第1の実施形態では、プログラムを外部記憶装置106にコピーする処理の手順において、コピーするために必要な空き領域がない場合は、外部記憶装置106にコピー済のプログラムで、かつ実行中でないものの中から使用回数が一番少ないものを無条件に選択してプログラム情報と共に削除し、それからコピーを行っていたが、空き領域がない場合にコピー処理を行うか行わないかのフラグをプログラム情報内に設けることで、空き領域領域がない場合はコピーしないという柔軟さを与えることも可能になる。
第1の実施形態では、プログラムを外部記憶装置106にコピーする処理の手順において、コピーするために必要な空き領域がない場合は、外部記憶装置106にコピー済のプログラムで、かつ実行中でないものの中から使用回数が一番少ないものを無条件に選択してプログラム情報と共に削除し、それからコピーを行っていたが、空き領域がない場合にコピー処理を行うか行わないかのフラグをプログラム情報内に設けることで、空き領域領域がない場合はコピーしないという柔軟さを与えることも可能になる。
図11は、本実施形態に係るプログラム情報の構成例を示す図である。同図において図3と同じ部分については同じ番号を付けており、その説明を省略する。本実施形態に係るプログラム情報は、第1の実施形態に係るプログラム情報の構成に、新たに空き領域がない場合のコピー処理フラグ1101を加えた構成を備える。フラグ1101は、空き領域がない場合のコピー処理フラグであり、空き領域がない場合には無条件にプログラムを選択して削除し、それからコピーを行うかどうかを示し、この例ではFALSEなのでコピー処理を行わないことを意味している。
コンピュータ101の外部記憶媒体スロット109に外部記憶媒体108を装着したときに、コンピュータ101のCPU102が実行する処理のフローチャートは第1の実施形態と同じであるが、ステップS8における処理の詳細のみが第1の実施形態とは異なる。
図12は、本実施形態に係るステップS8における処理の詳細を示すフローチャートである。
先ず、CPU102は、ステップS2で読み込んだプログラム情報に対応するプログラムを外部記憶媒体108から主記憶装置103に読み出し(ステップS401)、読み出したプログラム、及びステップS2で読み込んだプログラム情報を保持するために必要な空き容量が外部記憶装置106内に存在するか否かをチェックする(ステップS402)。
空き領域がある場合には処理をステップS407に進め、CPU102は、ステップS101で主記憶装置103に読み出したプログラム、及びステップS2で読み込んだプログラム情報を外部記憶装置106にコピーする(ステップS407)。
一方、空き容量がない場合には処理をステップS403に進め、ステップS2で読み込んだプログラム情報中の上記コピー処理フラグを参照し(ステップS403)、コピー処理フラグがTRUEであるか否かをチェックする(ステップS404)。
コピー処理フラグがTRUEの場合には処理をステップS405に進め、外部記憶装置106に保存されている各プログラムのうち、実行中でないものの中から、対応するプログラム情報内の使用回数が最も少ないものを選択する(ステップS405)。すなわち外部記憶装置106に保存されているプログラムのうち、最も使用回数が少ないプログラムを、各プログラムに対応するプログラム情報中の「使用回数」を参照することにより特定する。
そしてステップS405で選択(特定)したプログラム、及びこのプログラムに対応するプログラム情報を外部記憶装置106から削除する処理を行う(ステップS406)。そして削除処理後、再び処理をステップS402に戻し、再度、外部記憶装置106に空き容量があるか否かを判断する。このようにステップS402からステップS406までの各処理を、「外部記憶装置106に空き容量が存在する」まで行うことにより、外部記憶装置106内に、ステップS2で読み込んだプログラム情報、及びこのプログラム情報に関連付けられたプログラムを保存することができる状態を設定することができる。
なお、同図のフローチャートに従った処理では、外部記憶装置106内に空き容量が無い場合には、使用回数が少ない順にプログラム、及びこのプログラム情報を削除することにより対処しているが、この対処方法はこれに限定されるものではなく、例えばステップS405では、外部記憶装置106に保存されている各プログラムのうち、実行中でないものの中から、対応するプログラム情報内の最終起動日時が最も古いものを選択するようにする。そしてステップS406において、ステップS405で選択(特定)したプログラム、及びこのプログラムに対応するプログラム情報を外部記憶装置106から削除する処理を行う。
このように、外部記憶装置106内の空き容量を増大させるための対処方法についてはプログラムの使用回数に限定されるものではない。また、各プログラムに対する重要度(本実施形態では使用回数、最終起動日時)をプログラム情報に含ませておけば、ステップS103ではこの重要度を参照し、重要度が最も低い(本実施形態では使用回数が最も少ない、最終起動日時が最も古い)プログラムを選択するようにすればよく、ステップS104ではステップS103で選択したプログラム、及びこのプログラムに対応するプログラム情報を削除するようにすればよい。
以上説明したように、本実施形態によって、空き領域がない場合のコピー処理フラグをプログラム情報内に設定しておくので、コピー済のプログラムを無条件に選択して削除するのではなく、空き領域領域がない場合はコピーしないという柔軟さを与えることができる。
[第4の実施形態]
上記第3の実施形態では、空き領域がない場合にコピー処理を行うか行わないかのフラグをプログラム情報内に設け、コピー処理を行う場合は、第1の実施形態と同様に、外部記憶装置106にコピー済のプログラムで、かつ実行中でないものの中から使用回数が一番少ないものを無条件に選択して削除していたが、本実施形態では、未実行のプログラムの一覧を表示装置104の表示画面上に表示することで、どのプログラムを削除するかをコンピュータ101の使用者に入力装置105でもって選択してもらう。
上記第3の実施形態では、空き領域がない場合にコピー処理を行うか行わないかのフラグをプログラム情報内に設け、コピー処理を行う場合は、第1の実施形態と同様に、外部記憶装置106にコピー済のプログラムで、かつ実行中でないものの中から使用回数が一番少ないものを無条件に選択して削除していたが、本実施形態では、未実行のプログラムの一覧を表示装置104の表示画面上に表示することで、どのプログラムを削除するかをコンピュータ101の使用者に入力装置105でもって選択してもらう。
コンピュータ101の外部記憶媒体スロット109に外部記憶媒体108を装着したときに、コンピュータ101のCPU102が実行する処理のフローチャートは第1の実施形態と同じであるが、ステップS8における処理の詳細のみが第1の実施形態とは異なる。
図13は、本実施形態に係るステップS8における処理の詳細を示すフローチャートである。
先ず、CPU102は、ステップS2で読み込んだプログラム情報に対応するプログラムを外部記憶媒体108から主記憶装置103に読み出し(ステップS501)、読み出したプログラム、及びステップS2で読み込んだプログラム情報を保持するために必要な空き容量が外部記憶装置106内に存在するか否かをチェックする(ステップS502)。
空き領域がある場合には処理をステップS508に進め、CPU102は、ステップS501で主記憶装置103に読み出したプログラム、及びステップS2で読み込んだプログラム情報を外部記憶装置106にコピーする(ステップS508)。
一方、空き容量がない場合には処理をステップS503に進め、ステップS2で読み込んだプログラム情報中の上記コピー処理フラグを参照し(ステップS503)、コピー処理フラグがTRUEであるか否かをチェックする(ステップS504)。
コピー処理フラグがTRUEの場合には処理をステップS505に進め、外部記憶装置106に保存されている各プログラムのうち、実行中でないものの一覧を表示装置104の表示画面上に表示する(ステップS505)。表示すべき情報としては、例えば、プログラムのファイル名や、このプログラムに関連付けられたプログラム情報が含む情報の一部もしくは全部である。
コンピュータ101の操作者はこの画面を見て、削除しても良いプログラムを選択する。この選択には入力装置105を用いて行う。選択方法としては、例えば、「削除しても良いプログラム」を1つ選択してから入力装置105に割り当てられた決定ボタンを押下することで、削除指示をCPU102に送信するようにしても良いし、複数「削除しても良いプログラム」を選択してから決定ボタンを押下して、削除指示をCPU102に送信するようにしても良い。
いずれにせよCPU102は入力装置105を用いての「削除しても良いプログラム」の選択指示、及び削除指示を検知すると(ステップS506)、ステップS505で選択(特定)したプログラム、及びこのプログラムに対応するプログラム情報を外部記憶装置106から削除する処理を行う(ステップS507)。そして削除処理後、再び処理をステップS502に戻し、再度、外部記憶装置106に空き容量があるか否かを判断する。このようにステップS502からステップS507までの各処理を、「外部記憶装置106に空き容量が存在する」まで行うことにより、外部記憶装置106内に、ステップS2で読み込んだプログラム情報、及びこのプログラム情報に関連付けられたプログラムを保存することができる状態を設定することができる。
以上説明したように、本実施形態によって、外部記憶装置に空き領域がない場合、未実行のプログラムの一覧を表示することで、どのプログラムを削除するかを使用者が選択することが可能になる。また、例えプログラム情報内の使用回数が一番少ないものでも削除したくないということがあるため、使用者に選択してもらうことで柔軟な対応が可能になる。
[第5の実施形態]
第4の実施形態では、外部記憶装置に空き領域がない場合に未実行のプログラムの一覧を表示し、どのプログラムを削除するかを使用者に選択してもらう例であったが、本実施形態では、選択されたプログラムを削除してプログラムのコピーが可能になった場合に、コンピュータ101のシステム状況を調べる処理を追加することで、さらに安全にコピー処理を行う。
第4の実施形態では、外部記憶装置に空き領域がない場合に未実行のプログラムの一覧を表示し、どのプログラムを削除するかを使用者に選択してもらう例であったが、本実施形態では、選択されたプログラムを削除してプログラムのコピーが可能になった場合に、コンピュータ101のシステム状況を調べる処理を追加することで、さらに安全にコピー処理を行う。
コンピュータ101の外部記憶媒体スロット109に外部記憶媒体108を装着したときに、コンピュータ101のCPU102が実行する処理のフローチャートは第1の実施形態と同じであるが、ステップS8における処理の詳細のみが第1の実施形態とは異なる。
図14は、本実施形態に係るステップS8における処理の詳細を示すフローチャートである。
先ず、CPU102は、ステップS2で読み込んだプログラム情報に対応するプログラムを外部記憶媒体108から主記憶装置103に読み出し(ステップS601)、読み出したプログラム、及びステップS2で読み込んだプログラム情報を保持するために必要な空き容量が外部記憶装置106内に存在するか否かをチェックする(ステップS602)。
空き領域がある場合には処理をステップS608に進め、コンピュータ101の状態がコピー可能な状態であるか否かをチェックする(ステップS608)。コピー可能でない状況の例として、コピーするプログラムがプログラムで共通に使われるライブラリの更新を伴うものであり、他の実行中のプログラムがそのライブラリを使用中である場合などが挙げられる。
そしてコピー可能な状況であった場合には処理をステップS609に進め、CPU102は、ステップS601で主記憶装置103に読み出したプログラム、及びステップS2で読み込んだプログラム情報を外部記憶装置106にコピーする(ステップS609)。
一方、空き容量がない場合には処理をステップS603に進め、ステップS2で読み込んだプログラム情報中の上記コピー処理フラグを参照し(ステップS603)、コピー処理フラグがTRUEであるか否かをチェックする(ステップS604)。
コピー処理フラグがTRUEの場合には処理をステップS605に進め、外部記憶装置106に保存されている各プログラムのうち、実行中でないものの一覧を表示装置104の表示画面上に表示する(ステップS605)。表示すべき情報としては、例えば、プログラムのファイル名や、このプログラムに関連付けられたプログラム情報が含む情報の一部もしくは全部である。
コンピュータ101の操作者はこの画面を見て、削除しても良いプログラムを選択する。この選択には入力装置105を用いて行う。選択方法としては、例えば、「削除しても良いプログラム」を1つ選択してから入力装置105に割り当てられた決定ボタンを押下することで、削除指示をCPU102に送信するようにしても良いし、複数「削除しても良いプログラム」を選択してから決定ボタンを押下して、削除指示をCPU102に送信するようにしても良い。
いずれにせよCPU102は入力装置105を用いての「削除しても良いプログラム」の選択指示、及び削除指示を検知すると(ステップS606)、ステップS605で選択(特定)したプログラム、及びこのプログラムに対応するプログラム情報を外部記憶装置106から削除する処理を行う(ステップS607)。そして削除処理後、再び処理をステップS602に戻し、再度、外部記憶装置106に空き容量があるか否かを判断する。このようにステップS602からステップS607までの各処理を、「外部記憶装置106に空き容量が存在する」まで行うことにより、外部記憶装置106内に、ステップS2で読み込んだプログラム情報、及びこのプログラム情報に関連付けられたプログラムを保存することができる状態を設定することができる。
以上説明したように、本実施形態によって、プログラム、プログラム情報のコピーを行っても良い状況であるかどうかを調べる処理が追加されているため、さらに安全にコピー処理を行うことが可能になるという効果がある。
[第6の実施形態]
上記第1の乃至5の実施形態のそれぞれにおいて説明した処理をCPU102に実行させるためのプログラムを外部記憶装置106に記憶させておき、操作者が入力装置105でもってその内の1つを主記憶装置103にロードさせる指示を入力し、CPU102がこの指示を検知して指示されたプログラムを主記憶装置103にロードさせるようにしても良い。
上記第1の乃至5の実施形態のそれぞれにおいて説明した処理をCPU102に実行させるためのプログラムを外部記憶装置106に記憶させておき、操作者が入力装置105でもってその内の1つを主記憶装置103にロードさせる指示を入力し、CPU102がこの指示を検知して指示されたプログラムを主記憶装置103にロードさせるようにしても良い。
図15は、第1乃至5の実施形態のそれぞれにおいて説明した処理をCPU102に実行させるためのプログラム群を格納する外部記憶装置106内の記録エリアの構成例を示す図である。
同図において「第1の制御プログラムに対応するプログラムコード群」は、第1の実施形態において説明した処理をCPU102に実行させるためのプログラムのコード群を示し、「第2の制御プログラムに対応するプログラムコード群」は、第2の実施形態において説明した処理をCPU102に実行させるためのプログラムのコード群を示し、「第3の制御プログラムに対応するプログラムコード群」は、第3の実施形態において説明した処理をCPU102に実行させるためのプログラムのコード群を示し、「第4の制御プログラムに対応するプログラムコード群」は、第4の実施形態において説明した処理をCPU102に実行させるためのプログラムのコード群を示し、「第5の制御プログラムに対応するプログラムコード群」は、第5の実施形態において説明した処理をCPU102に実行させるためのプログラムのコード群を示す。
また特に図示しないが、同図の記録エリアには、記憶されるプログラム群を管理する情報、例えばバージョン情報、作成者等を記憶し、かつプログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等を記憶するようにしてもよい。
さらに、各種プログラムに従属するデータも管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合、解凍するプログラム等を記憶するようにしてもよい。また、上記各実施形態は適宜組み合わせても良く、例えばプログラム情報の構成や、その構成に伴う処理内容を適宜複数の実施形態を組み合わせて適用しても良い。
以上の実施形態によって、以下のような効果がある。
先ず、プログラムが格納された外部記憶媒体をコンピュータに装着するだけで、常時起動するよう指定されたプログラムは自動的にコンピュータ内の外部記憶装置に格納され、実行されるので、煩雑なユーザ操作が不要になるという効果がある。
また、既にコンピュータ内の外部記憶装置に格納してあるプログラムは、次回からは比較的低速な外部記憶媒体からプログラムを読み込む必要がないので高速に実行できるという効果がある。
また、コンピュータから外部記憶媒体が取り出された時、外部記憶装置内から削除するよう指定されたプログラムは自動的に削除されるので、操作者による煩雑な操作が不要になるだけでなく、このコンピュータをこの操作者以外の他人が使用する場合、このコンピュータの所有者にのみライセンスされているプログラムが他人に無断で使用されるのを防ぐことができるという効果がある。
さらに、プログラム情報内の機器IDとコンピュータ本体の機器IDと比較し、プログラムが本コンピュータで動作できない場合は、プログラムをコンピュータ内の外部記憶装置に格納しないと同時に実行もしないので、無駄に外部記憶装置を使用しないと共に無駄な実行を防ぐことができるという効果がある。
また、プログラム情報内にプログラムの使用上限回数、又は使用可能最終日時を設定しておくので、評価版やデモ版のプログラムに対して使用制限を設けることができるという効果がある。
一方、外部記憶装置に空き領域がない場合、コピー処理を行うのかどうかのフラグをプログラム情報内に設定できるので、コピー済のプログラムを無条件に選択して削除するのではなく、コピーしないという柔軟さも与えることができるという効果がある。
また、未実行のプログラムの一覧を表示することで、どのプログラムを削除するかをコンピュータの操作者が選択できるので、さらに柔軟な対応も可能になるという効果がある。
さらには、プログラムのコピー時に、コピーを行っても良いシステム状態であるかどうかを事前に調べるので、安全にコピー処理が行えるという効果がある。
[その他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャート(機能構成)に対応するプログラムコードが格納されることになる。
Claims (12)
- プログラム、及び当該プログラムに関するプログラム情報を関連付けて記録した記録媒体とのデータ通信が可能な情報処理装置であって、
前記記録媒体からプログラム情報を入力する入力手段と、
前記入力手段が入力したプログラム情報に関連付けられたプログラムを前記記録媒体から読み出して、前記入力手段が入力したプログラム情報と共に所定のメモリに格納するか否かを、前記入力手段が入力したプログラム情報に基づいて判断する第1の判断手段と、
前記第1の判断手段が格納すると判断した場合に、前記入力手段が入力したプログラム情報に関連付けられたプログラムを前記記録媒体から読み出し、前記入力手段が入力したプログラム情報と共に前記メモリに格納する格納制御手段と
を備えることを特徴とする情報処理装置。 - 前記第1の判断手段は、プログラム情報中のフラグ値を参照し、当該フラグ値に応じて、当該プログラム情報、及び当該プログラム情報に関連付けられたプログラムを前記メモリに格納するか否かを判断することを特徴とする請求項1に記載の情報処理装置。
- 更に、
前記記録媒体とのデータ通信を終了する旨を検知した場合に、前記メモリに格納されているプログラム情報に基づいて、当該プログラム情報、及び当該プログラム情報に関連付けているプログラムを前記メモリから削除するか否かを判断する第2の判断手段と、
前記第2の判断手段が削除すると判断したプログラム、及び当該プログラムに関連付けられているプログラム情報を前記メモリから削除する削除手段と
を備えることを特徴とする請求項1に記載の情報処理装置。 - 前記プログラム情報には当該プログラム情報に関連付けられているプログラムが使用された回数を示す回数情報が含まれており、
前記格納制御手段は、前記記録媒体から入力したプログラム、及び当該プログラムに関連付けられているプログラム情報を格納するだけの充分な容量が前記メモリにはない場合には、
前記メモリに格納されているそれぞれのプログラムに関連付けられているプログラム情報中の回数情報を参照し、最も少ない使用回数を示す回数情報を含むプログラム情報、及び当該プログラム情報に関連付けられているプログラムを削除する処理を少なくとも1回行うことで、前記メモリに前記充分な容量を確保し、
確保後、前記記録媒体から入力したプログラム、及び当該プログラムに関連付けられているプログラム情報を前記メモリに格納することを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。 - 前記プログラム情報には更に、当該プログラム情報に関連付けられているプログラムの使用上限回数を示す期限情報が含まれており、
前記格納制御手段は、前記入力手段が入力したプログラム情報中の前記回数情報が示す回数が前記使用上限回数に達している場合には、前記入力手段が入力したプログラム情報、及び当該プログラム情報に関連付けられているプログラムを前記メモリに格納しないことを特徴とする請求項4に記載の情報処理装置。 - 前記削除手段は、前記使用上限回数に達している回数を示す回数情報を含むプログラム情報、及び当該プログラム情報に関連付けられているプログラムを前記メモリから削除することを特徴とする請求項5に記載の情報処理装置。
- 前記プログラム情報には当該プログラム情報に関連付けられているプログラムが最後に使用された日時を示す最終日時情報が含まれており、
前記格納制御手段は、前記記録媒体から入力したプログラム、及び当該プログラムに関連付けられているプログラム情報を格納するだけの充分な容量が前記メモリにはない場合には、
前記メモリに格納されているそれぞれのプログラムに関連付けられているプログラム情報中の最終日時情報を参照し、最も古い日時を示す最終日時情報を含むプログラム情報、及び当該プログラム情報に関連付けているプログラムを削除する処理を1回以上行うことで、前記メモリに前記充分な容量を確保し、
確保後、前記記録媒体から入力したプログラム、及び当該プログラムに関連付けられているプログラム情報を前記メモリに格納することを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。 - 前記プログラム情報には更に、前記プログラム情報に関連付けられているプログラムの使用可能最終日時を示す期限情報が含まれており、
前記格納制御手段は、前記入力手段が入力したプログラム情報中の前記最終日時情報が前記使用可能最終日時よりも最近の日時を示している場合には、前記入力手段が入力したプログラム情報、及び当該プログラム情報に関連付けられているプログラムは前記メモリに格納しないことを特徴とする請求項7に記載の情報処理装置。 - 前記削除手段は、前記使用可能最終日時よりも最近の日時を示す最終日時情報を含むプログラム情報、及び当該プログラム情報に関連付けられているプログラムを前記メモリから削除することを特徴とする請求項8に記載の情報処理装置。
- プログラム、及び当該プログラムに関するプログラム情報を関連付けて記録した記録媒体とのデータ通信が可能な情報処理装置の制御方法であって、
前記記録媒体からプログラム情報を入力する入力工程と、
前記入力工程で入力したプログラム情報に関連付けられたプログラムを前記記録媒体から読み出して、前記入力工程で入力したプログラム情報と共に所定のメモリに格納するか否かを、前記入力工程で入力したプログラム情報に基づいて判断する第1の判断工程と、
前記第1の判断工程で格納すると判断した場合に、前記入力工程で入力したプログラム情報に関連付けられたプログラムを前記記録媒体から読み出し、前記入力工程で入力したプログラム情報と共に前記メモリに格納する格納制御工程と
を備えることを特徴とする情報処理装置の制御方法。 - コンピュータに請求項10に記載の制御方法を実行させることを特徴とするプログラム。
- 請求項11に記載のプログラムを格納することを特徴とする、コンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004166138A JP2005346473A (ja) | 2004-06-03 | 2004-06-03 | 情報処理方法、情報処理装置、撮像装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004166138A JP2005346473A (ja) | 2004-06-03 | 2004-06-03 | 情報処理方法、情報処理装置、撮像装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005346473A true JP2005346473A (ja) | 2005-12-15 |
Family
ID=35498781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004166138A Withdrawn JP2005346473A (ja) | 2004-06-03 | 2004-06-03 | 情報処理方法、情報処理装置、撮像装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005346473A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009237930A (ja) * | 2008-03-27 | 2009-10-15 | Kddi Technology Corp | アプリケーション移動システム、アプリケーションの移動方法およびプログラム |
WO2012020802A1 (ja) * | 2010-08-12 | 2012-02-16 | 株式会社コナミデジタルエンタテインメント | ゲームシステム及びそのプレイ内容の閲覧制御方法 |
JP2012142034A (ja) * | 2012-04-27 | 2012-07-26 | Canon Inc | 情報処理装置及びその制御方法 |
JP2016126419A (ja) * | 2014-12-26 | 2016-07-11 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法およびプログラム |
JP2019192118A (ja) * | 2018-04-27 | 2019-10-31 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
-
2004
- 2004-06-03 JP JP2004166138A patent/JP2005346473A/ja not_active Withdrawn
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009237930A (ja) * | 2008-03-27 | 2009-10-15 | Kddi Technology Corp | アプリケーション移動システム、アプリケーションの移動方法およびプログラム |
WO2012020802A1 (ja) * | 2010-08-12 | 2012-02-16 | 株式会社コナミデジタルエンタテインメント | ゲームシステム及びそのプレイ内容の閲覧制御方法 |
JP2012040042A (ja) * | 2010-08-12 | 2012-03-01 | Konami Digital Entertainment Co Ltd | ゲームシステム及びそのプレイ内容の閲覧制御方法 |
CN103079659A (zh) * | 2010-08-12 | 2013-05-01 | 科乐美数码娱乐株式会社 | 游戏系统及其游戏内容的浏览控制方法 |
JP2012142034A (ja) * | 2012-04-27 | 2012-07-26 | Canon Inc | 情報処理装置及びその制御方法 |
JP2016126419A (ja) * | 2014-12-26 | 2016-07-11 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法およびプログラム |
JP2019192118A (ja) * | 2018-04-27 | 2019-10-31 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
JP7163613B2 (ja) | 2018-04-27 | 2022-11-01 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8365180B2 (en) | Information terminal, computer resource managing method, and virtual machine execution switching method | |
US20100037224A1 (en) | Application platform | |
JP2001521254A (ja) | モバイル・デバイスのアプリケーション・インストール管理システムおよび方法 | |
JP6006399B2 (ja) | プログラマブル表示器、そのプログラム | |
JP2011164968A (ja) | 主記憶装置へのアクセスを高速化する方法および記憶装置システム | |
JP6237230B2 (ja) | メモリ管理プログラム、メモリ管理方法、及びメモリ管理装置 | |
JP2005346473A (ja) | 情報処理方法、情報処理装置、撮像装置 | |
JP2009265877A (ja) | 電子機器 | |
JP6033394B2 (ja) | プログラマブル表示器、そのプログラム | |
JPH07271562A (ja) | データ処理装置及びアプリケーションソフト起動方法 | |
JP2004171371A (ja) | 情報処理装置およびキーへの機能割り当て方法 | |
JPH0675774A (ja) | Cad処理方法および装置 | |
JP2008152400A (ja) | アプリケーション管理システム及びその制御方法 | |
US20090049058A1 (en) | Information processing apparatus, information processing method, and information processing program | |
JP5870214B2 (ja) | プログラマブルコントローラシステム、そのプログラマブル表示器、支援装置、プログラム | |
JP6580920B2 (ja) | 情報処理装置、情報処理装置の動作環境設定情報を更新する方法、及び、情報処理装置の動作環境設定情報を更新するプログラム | |
JP2006285404A (ja) | 情報処理装置および記憶媒体の制御方法 | |
US7702890B2 (en) | Information processing apparatus and program | |
JP5229855B2 (ja) | メモリシステム及びコンピュータシステム | |
EP0867811A1 (en) | Accounting-information outputting device | |
JP6783616B2 (ja) | 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法 | |
JP6767229B2 (ja) | 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法 | |
JP2911667B2 (ja) | プログラマブルコントローラのプログラミング装置 | |
JP3064823B2 (ja) | データ処理装置 | |
JP2015103134A (ja) | 情報処理装置、情報処理方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070807 |