装置、制御方法、およびプログラム。
【課題】 プリンタの故障時に中古ボードを装着し、現象が変わるどうかを確認する場合がある。中古ボード上のFlashにライセンス履歴が残っている場合、従来の復帰処理のアルゴリズムでは、中古のボードからFRAMにライセンス履歴が流れ込む可能性があり、ライセンスの不正利用に繋がる。
【解決手段】 ライセンス履歴に書かれているシリアル番号と、デバイスのシリアル番号を比較し、異なる場合、ライセンス履歴ファイルを削除してから、ライセンス履歴復帰処理を実行する。
【解決手段】 ライセンス履歴に書かれているシリアル番号と、デバイスのシリアル番号を比較し、異なる場合、ライセンス履歴ファイルを削除してから、ライセンス履歴復帰処理を実行する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ライセンス履歴を管理する装置、制御方法、およびプログラムに関する。
【背景技術】
【0002】
ネットワーク接続され、ライセンス付きアプリケーションがインストール可能な機器がある。このアプリケーションインストール時に、強誘電体メモリ(FRAM=Ferroelectric Random Access Memory)、ハードディスクドライブ/フラッシュメモリなどの複数の不揮発性領域にライセンス履歴を記憶する。このようにライセンス履歴を二重に管理することにより、一方のメモリから情報が削除されても、他方のメモリから情報を復帰させることが可能となる。例えば、ハードディスクドライブの故障により、ハードディスクを交換する必要がある時、FRAMに記憶されているライセンス履歴からハードディスクにライセンス履歴を書き戻すことが可能である。これにより正しいライセンス履歴を利用したライセンス管理が可能となり、正当な権限なきライセンスの利用を防止することが可能となる。以降、このライセンス履歴を書き戻す処理をライセンス履歴復帰処理と呼ぶ。このようなバックアップ方法を実行する装置が、特許文献1に開示されている。管理領域と実データ領域を物理的に分離して配置する構成を採るファイルシステムにおいて、一方が故障したなどの理由で交換された場合に、ファイルシステムの不整合を防止することを目的とした装置である。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−222581
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の場合、ファイルシステムの管理領域を高速な不揮発性メモリ装置上に配置し、実データをストレージ装置に格納するような構成である。あくまでファイルシステム上の不整合を防止することを目的としているのであって、ライセンス履歴などの実データに相当するデータの復帰処理を想定しているわけではない。よって、ライセンス履歴が不適切のため、適正なライセンスが使用できない可能性が高い。
本発明は、ライセンス履歴の整合性を保つためのライセンス履歴復帰処理を実施する装置を提供することをひとつの目的とする。
【課題を解決するための手段】
【0005】
本発明の一実施系に係る装置は、ライセンスを使用することで利用可能となるアプリケーションを保持可能な装置であって、前記アプリケーションがライセンスを使用することで利用可能となった場合、前記ライセンスを識別するためのライセンスIDを保持する第1のメモリと、前記第1のメモリに保持されたライセンスIDのバックアップを行うため、前記ライセンスIDを保持する第2のメモリと、前記第2のメモリに保持された、装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させ、一致しない場合、前記第2のメモリに既に保持されているライセンスIDを消去した後に、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させるよう制御することを特徴とする。
【発明の効果】
【0006】
本発明はライセンス履歴などの実データに相当するデータの復帰処理を想定した発明であり、ライセンス履歴の整合性を保つためのライセンス履歴復帰処理を実施することで、適切なライセンスが利用できない状態を防止することが可能になる。
【図面の簡単な説明】
【0007】
【図1】本発明における、画像形成システムの全体構成を示す図である。
【図2】本発明における、画像形成装置の全体構成を示す図である。
【図3】ライセンス管理におけるソフトウェアとハードウェア構成を示す図である。
【図4】ライセンス管理におけるライセンスインストール処理のフローを示す図である。
【図5】フラッシュメモリからFRAMにライセンス履歴を復帰させることを示すブロック図である。
【図6】FRAMからフラッシュメモリにライセンス履歴を復帰させることを示すブロック図である。
【図7】ライセンス管理におけるライセンス履歴復帰処理のフローを示す図である。
【図8】中古ボードがきたときの、ライセンス履歴を復帰させることを示すブロック図である。
【図9】中古ボードがきたときの、ライセンス履歴を復帰させることを示すブロック図である。
【図10】中古ボードがくることを想定した、ライセンス履歴復帰処理のフローを示す図である。
【図11】シリアル番号が特殊な番号で取得できるケースを示す図である。
【図12】図11における特別なシリアル番号が取得できた場合のことを考慮した、ライセンス履歴復帰処理のフローを示す図である。
【発明を実施するための形態】
【0008】
従来のライセンス履歴復帰処理は、ハードディスクなどの故障により、新品への交換を想定していた。これは、通常ハードディスクなどにはセキュリティの為の暗号化処理が施されており、一度他のデバイスで使用されたことがある中古のハードディスクをそのまま他のデバイスに取り付けるということが考えにくいという理由のためである。ところが、プリンタ(SFP)のような安価な機種の場合、ハードディスクの代わりに本体ボードにフラッシュメモリという不揮発性メモリを用いたハードウェア構成になることがある。このとき、サービスマンによるサービスとして、ユーザ先でプリンタに何か問題が起きた時、現象を確認するために、とりあえず他の現場で一度使用されたことがある中古の本体ボードをプリンタに組み込む。そして、中古ボードでテストを行い、プリンタを正常に戻すための対応方法を考えるという場合がある。
【0009】
このとき、上述の中古の本体ボードは上述のプリンタとは異なる顧客環境で利用されている場合があり、その中古の本体ボードに付随するフラッシュメモリに、その異なる顧客環境のプリンタで使用されていたアプリケーションのライセンス履歴が残っている可能性が考えられる。このようなケースの場合、ライセンス履歴復帰処理において、中古の本体ボードに残っていたライセンス履歴が、正規のライセンス情報のように扱われ、その結果、使用していないライセンスがライセンス履歴に残る可能性があり、以下のような不利益を生じる可能性がある
容量的にFRAMに残せるライセンス履歴情報には上限がある中、ユーザが利用していないライセンス履歴情報によって、ライセンス履歴を無駄に消費することになる。
【0010】
また、ライセンス履歴の数によっては、本来FRAMからのライセンス履歴復帰処理が動作する必要がある場合でもその処理が実施されない可能性がある。この状態で、FRAM上のライセンス履歴情報がなんらかの理由でクリアされてしまうと、本来ユーザが利用したライセンス履歴が残らないことになる。
【0011】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【実施例1】
【0012】
図1は、本発明の実施形態における画像形成装置を含む印刷システムの全体構成を示すブロック図である。本発明の実施形態においては、画像形成装置として具体的に後述される機能をもつ、複写機やプリンタや複合機などを用いるものとする。
【0013】
図1に示すように、画像形成装置110は、クライアントコンピュータ120、サーバコンピュータ130とともに、イーサネット(登録商標)などからなるLAN140に接続されている。ただし、本発明における印刷システムにおいては、システムに接続される機器はこれら接続数に限られることはない。
【0014】
画像形成装置110は、コピー機能、ファクシミリ機能、電子メール送信機能を有するとともに、原稿画像を読み取り、該読み取って得られた画像データをLAN140上の各装置に送信するデータ送信機能を有する。画像形成装置110は、後述するスキャナ部112などで読み取った画像や、LAN140上に接続されているコンピュータから指示されたデータを、画像形成装置110内のハードディスク、もしくはフラッシュメモリ204の特定領域に保存することが可能である。また原稿画像を読み取り、ハードディスク/フラッシュメモリ204にデジタル画像として保存することも可能である。またハードディスク領域に保存されたデジタル画像を印刷することが可能である。
【0015】
画像形成装置110は、画像入力デバイスであるスキャナ部112、画像出力デバイスであるプリンタ部113、画像形成装置110全体の動作制御を司るコントローラ200などから構成される。
【0016】
スキャナ部112は、原稿上の画像を露光走査して得られた反射光をCCDに入力することで画像の情報を電気信号に変換する。さらに電気信号をR,G,B各色からなる輝度信号に変換し、当該輝度信号を画像データとしてコントローラ200に対して出力する。なお、原稿は原稿フィーダにセットされる。ユーザが操作部111から読み取り開始を指示すると、コントローラ200からスキャナ部112に原稿読み取り指示が与えられる。スキャナ部112は、この指示を受けると原稿フィーダから原稿を1枚ずつフィードして、原稿の読み取り動作を行う。なお、原稿の読み取り方法は原稿フィーダによる自動送り方式ではなく、原稿を不図示のガラス面上に載せ、露光部を移動させることで原稿の走査を行う方法であってもよい。スキャナ部112はスキャンユニットに相当する。
【0017】
プリンタ部113は、コントローラ200から受取った画像データを用紙上に形成する画像形成デバイスである。プリンタ部113はプリントユニットに相当する。実施例1における画像形成装置は、スキャナ部112、およびプリンタ部113のいずれも有しているが、一方のみ有する画像形成装置であっても良い。即ち、スキャナ部112、および/またはプリンタ部113を有する装置に対し、本発明は適用可能である。
【0018】
サーバコンピュータ130は、オペレーティングシステム(以下OS)や各種のアプリケーションサービスプログラムがCPUにより実行され、OSの管理下で、アプリケーションサービスを実行することで種々のデータ処理を行う。クライアントコンピュータ120についても同様である。
【0019】
図2は、画像形成装置110のコントローラ200の構成を説明するためのブロック図である。 コントローラ200はスキャナ部112やプリンタ部113と電気的に接続されており、一方ではLAN140を介してクライアントコンピュータ120やサーバコンピュータ130と接続されている。これにより画像データやデバイス情報の入出力が可能となっている。
【0020】
CPU201は、ROM202に記憶された制御プログラム等に基づいて接続中の各種デバイスとのアクセスを統括的に制御すると共に、コントローラ内部で行われる各種処理についても統括的に制御する。なお、画像形成装置110の装着された各種ユニットは交換可能である。
【0021】
ROM202には装置のブートプログラムなどが格納されている。RAM203は、CPU201が動作するためのシステムワークメモリであり、かつ画像データを一時記憶するためのメモリでもある。このRAM203は、記憶した内容を電源off後も保持しておくFRAM、SRAM、電源off後には記憶した内容が消去されてしまうDRAMなどにより構成されている。
【0022】
HDD204は、システムソフトウェアや画像データを一時的、または半永久的に保持可能となっている。また、これはフラッシュメモリなどで代用することも可能である。操作部I/F205は、システムバス212と操作部111とを接続するためのインターフェース部である。この操作部I/F205は、操作部111に表示するための画像データをシステムバス212から受取り操作部111に出力すると共に、操作部111から入力された情報をシステムバス212へと出力する。
【0023】
ネットワークI/F206はLAN140及びシステムバス212に接続し、情報の入出力を行う。スキャナI/F208は、スキャナ部112から受取った画像データに対して、補正、加工、及び編集を行う。なお、スキャナI/F208は、受取った画像データがカラー原稿か白黒原稿か、文字原稿か写真原稿かなどを判定する。そして、その判定結果を画像データに付随させる。こうした付随情報を属性データと称する。
【0024】
画像形成部209は、画像データの方向変換、画像圧縮、伸張部などをおこなう。プリンタI/F210は、画像形成部209から送られた画像データを受取り、この画像データに付随させられている属性データを参照しながら画像データに画像形成を施す。画像形成後の画像データは、プリンタ部113に出力される。FAXI/F211は、画像形成部209から送られた画像データを、指定された送信先にFAX送信部114、及びLAN140(または、WAN250)を通じて送信される。
【0025】
電子メールI/F207は、画像形成部209から送られた画像データを、指定された送信先にメール送信部115及びLAN140(または、WAN250)を通じて送信される。なお、画像形成装置110に対するユーザ指示やユーザへの情報提示は、例えば、操作部111を介して行うようにしてもよいし、LAN140を介して接続されたクライアントコンピュータ120を介して行うようにしてもよい。
【0026】
図3は、ライセンス管理システムに関わるソフトウェア/ハードウェア構成とライセンス管理方法について述べる。ここで、ライセンスとは、デバイスにプリインストールされているアプリケーション、もしくは後入れのアプリケーションをアクティベートするためのものである。アクティベートすることで初めてアプリケーションは利用可能となる。画像形成装置110のような装置を一意に特定するための装置ID、即ち、識別番号(例えば、シリアル番号)を保持しているのがSoftID基板350であり、このSoftID基板350はハードウェアにより実現される。実施例1の場合、識別番号とはシリアル番号であり、図3はそのシリアル番号がAAAA1234567であることを示している。
【0027】
FRAM300には、記憶保持領域にライセンス履歴310を記憶している。これは、後述するライセンスインストール時に利用される。履歴の内容は、ライセンスを一意に特定するライセンスIDの履歴である。本体ボード320には、不揮発性のフラッシュメモリ330が載っており、FRAM300に保持されているライセンス履歴310と同じ内容をライセンスファイル340として保持されている。
【0028】
ここで、FRAM300は、第1のメモリであるRAM203に、フラッシュメモリ330は、第2のメモリであるHDD/フラッシュメモリ204に相当する。ライセンスファイル340は、このライセンスファイルが作成された時のデバイスの識別番号も併せて保持されている。このように、FRAMとフラッシュメモリに同じ内容を保持することにより、後述するそれぞれのパーツの交換が起きた時に、それぞれが互いが保持する情報をバックアップするため、情報を共有する機能が画像形成装置110には備わっている。ライセンスインストール処理部360は、図4で示すライセンスインストール、ライセンス履歴登録処理を実行するモジュールである。ライセンス履歴管理部370は、図7で示すライセンス履歴復帰処理を実行するモジュールである。これらライセンスインストール処理部360、ライセンス履歴管理部370は、図2におけるHDD/フラッシュメモリ204において保持され、その処理はメモリに展開され実行される。
【0029】
図4においてライセンスインストール処理部360がライセンス付きアプリケーションのインストールするときの流れを示す。S400において、アプリケーションとライセンスのインストールが開始する。次に、S410で、ライセンスIDがライセンス履歴に存在するかどうかの重複チェックを行う。ライセンスIDとは、ライセンスに一意に振られた番号である。ライセンス履歴とは、アプリケーションとライセンスのインストールが成功したときに登録しているインストールに成功したライセンスIDの履歴を指す。FRAM300、及びフラッシュメモリ320において同じ内容のものが保持される。
【0030】
このS410におけるチェックにおいて、ライセンスIDが重複しているということは、過去に同じライセンスをインストールした実績があることを示す。不正利用防止のため、一般的に1つのライセンスは1つのデバイスに1回しかインストールすることができないことが望ましい。よって、このチェックで重複があったときは、S440に進み、アプリケーション/ライセンスのインストールに失敗する。重複がないときは、S420に進み、アプリケーション/ライセンスのインストールを行う。インストール後、ライセンスIDの登録を行う。そして、S450においてインストールが完了する。
【0031】
<新品のFRAM/フラッシュメモリへの交換>
図5、6においてはFRAM/フラッシュメモリのパーツが新品に交換されるときのライセンス履歴復帰処理について説明する。
【0032】
図5は、FRAMが交換されるときの復帰処理のブロック図である。デバイスの状態550は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。この状態から新品のFRAMに交換され(FRAM交換500の動作に相当する)、デバイスの状態が状態560に遷移するときのことを考える。このとき、FRAM300は新品のFRAM510に交換される。新品のFRAM510に交換された状態でデバイスが起動すると、ライセンス履歴管理部370は、FRAM510に保持されているライセンス履歴520と、フラッシュメモリ330に保持されているライセンスファイル340のライセンス履歴と、を比較する。
【0033】
比較した結果、ライセンス履歴管理部370は、FRAM510の記憶保持領域がもつライセンス履歴520は0個、一方フラッシュメモリ330が保持するライセンスファイル340のライセンス履歴は2個であるため、フラッシュメモリ330が保持するライセンスファイル340のライセンス履歴の方が多いことが分かる。この際、ライセンス履歴を多く保持しているメモリから、保持しているライセンス履歴が少ないメモリへライセン履歴をコピーするという復帰処理が実施される。具体的に説明すると、フラッシュメモリ330からFRAM510にライセンス履歴をコピーするため、上述した復帰処理530が実施される。その結果、デバイスの状態は状態570に遷移し、FRAM510のライセンス履歴540にライセンスファイル340からのライセンス履歴がコピーされる。以上が、フラッシュメモリからFRAMへのライセンス履歴復帰処理の概要になる。
【0034】
図6は、フラッシュメモリが交換されるときの復帰処理のブロック図である。デバイスの状態660は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。
【0035】
この状態から新品の本体ボード320が交換され(本体ボード交換600の動作に相当する。)、デバイスの状態が状態670に遷移するときのことを考える。このとき、ボード320は新品の本体ボード610に交換され、フラッシュメモリ330は新品のフラッシュメモリ620に交換される。新品の本体ボード610に交換された状態でデバイスが起動すると、ライセンス履歴管理部370が、FRAM300に保持されているライセンス履歴310と、フラッシュメモリ620に保持されているライセンスファイル630のライセンス履歴を比較する。比較した結果、ライセンス管理部370は、フラッシュメモリ620が保持するライセンスファイル630のライセンス履歴は0個、一方のFRAM300が保持するライセンス履歴310は2個であるため、FRAM300が保持するライセンス履歴の方が多いことがわかる。
【0036】
この際、保持しているライセンス履歴の数が多いメモリから、保持しているライセンス履歴の数が少ないメモリへライセンス履歴をコピーするというライセンス復帰処理が実施される。具体的に説明すると、FRAM300がもつライセンス履歴310からフラッシュメモリ620にライセンス履歴をコピーするため、上述した復帰処理640が実施される。その結果、デバイスの状態は、状態680に遷移し、ライセンスファイル650の履歴にFRAM300からライセンス履歴がコピーされる。以上が、FRAMからフラッシュメモリへのライセンス履歴復帰処理の概要となる。
【0037】
図7は、図5、6のケースにおけるライセンス履歴管理部370が実行するライセンス履歴復帰処理のフローチャートを示す。
【0038】
S700においてデバイスが起動する。S710においてライセンス履歴管理部370がライセンス履歴の整合性チェックを行う。S720において、ライセンス履歴管理部370が、FRAMとフラッシュメモリに保持されているライセンス履歴の個数の比較を行う。このライセンス履歴の個数の比較のことをライセンス履歴の整合性チェックと呼ぶ。このときの個数が一致するときは、FRAMとフラッシュメモリの整合性は保たれているという判断の基、何も処理を実行せずにS730に進み復帰処理は終了する。
【0039】
一方、フラッシュメモリのライセンス履歴の数がFRAMのライセンス履歴の数より多いときは、S740に進み、フラッシュメモリからFRAMにライセンス履歴の内容を復帰させる。更に、S730において処理が終了する。逆に、FRAMのライセンス履歴の数がフラッシュメモリのライセンス履歴の数より多いときは、S750に進み、FRAMからフラッシュメモリにライセンス履歴の内容を復帰させる。更に、S730において処理が終了する。
【0040】
<中古ボードへの交換>
図8は、中古ボードに交換されるとき、図7のフローによって復帰処理が実施されるときのブロック図を示す。デバイスの状態860は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。この状態から中古の本体ボード810に交換され(ボード交換800の動作に相当する。)、デバイスの状態が状態870に遷移するときのことを考える。
【0041】
中古の本体ボード810は、フラッシュメモリ820を持つ。また、この中古ボード810は、シリアル番号BBBB9999999をもつ画像形成装置110とは異なる別の装置で利用されていたとする。よって、中古ボード810には、別の装置でアプリケーションがアクティベートした際に保持したライセンス履歴が含まれる。ライセンス履歴ファイル830には、ライセンス履歴として、uuid3、uuid4、uuid5の3つの履歴を含み、シリアル番号の情報BBBB9999999を保持している。状態870は、本体ボード320が、この中古の本体ボード810に交換された状態である。本体ボード810に交換された状態でデバイスが起動すると、ライセンス履歴管理部370は、FRAM300に保持されているライセンス履歴310と、フラッシュメモリ820に保持されているライセンスファイル830のライセンス履歴と、を比較する。
【0042】
比較した結果、ライセンス履歴管理部370は、フラッシュメモリ820が保持するライセンスファイル830のライセンス履歴は3個、一方のFRAM300が保持するライセンス履歴310は2個であるため、フラッシュメモリ820が保持するライセンスファイル830のライセンス履歴の方が多いことがわかる。この際、図7で示すライセンス履歴の復帰処理が実施される。具体的に説明すると、フラッシュメモリ820からFRAM300に復帰処理840が実施される。その結果、デバイスの状態は、状態880に遷移し、FRAM300のライセンス履歴は、ライセンス履歴850の状態になる。その結果、FRAMには本来のuudi1、uuid2というのに加えて、uuid3、4、5という3個の全く関係のないデバイスBBBB9999999のライセンス履歴が保持されるようになり、ライセンスファイル830のライセンス履歴との整合性も保たれない。この結果、以下のような問題が生じる。
【0043】
容量的にFRAMに残せるライセンス履歴情報には上限がある中、ユーザが利用していないライセンス履歴情報によって、ライセンス履歴を無駄に消費することになる。
【0044】
また、次回起動時においても、FRAMとフラッシュメモリのライセンス履歴の個数チェックの結果、今度はFRAMが保持するライセンス履歴がフラッシュメモリが保持するライセンス履歴より多くなるため、ライセンス履歴復帰処理が実施されることとなる。
【0045】
また、この実施例と異なり、FRAMとフラッシュメモリが保持するライセンス履歴の個数が同じだった場合を考える。その場合、ライセンス履歴の個数が同じ為、ライセンス履歴復帰処理が実施されない。つまり、本体ボードには中古ボードが保持していたライセンス履歴が残ったままになる。この状態で、FRAMが保持するライセンス履歴情報がクリアされてしまうと、ライセンス管理上、本来管理すべきユーザが利用したライセンス履歴uuid1、uuid2が削除される可能性がある。
【0046】
図9は、図8の状況を解消するため、中古ボードに対応したライセンス履歴復帰処理方法を示す。デバイスの状態950は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。この状態から中古の本体ボード810に交換され(ボード交換900の動作に相当する。)、デバイスの状態は状態870に遷移するときのことを考える。
【0047】
中古の本体ボード810は、フラッシュメモリ820を持つ。ここで、この中古ボード810は、シリアル番号BBBB9999999をもつデバイスで利用されていたとして、ライセンス履歴ファイル830は、ライセンス履歴として、uuid3、uuid4、uuid5の3つの履歴を含み、シリアル番号の情報BBBB9999999を保持している。状態960は、本体ボード320が、この中古の本体ボード810に交換された状態である。本体ボード810に交換された状態でデバイスが起動すると、ライセンス履歴管理部370は、フラッシュメモリ820のライセンスファイル830が保持するシリアル番号とデバイスのシリアル番号を比較する。
【0048】
このシリアル番号の値が異なる場合、中古のボードが付けられたという判断の基、ライセンスファイル830を削除する。ライセンスIDの消去処理による消去に相当する。実施例1の場合、それぞれBBBB9999999とAAAA1234567と異なるため、処理910においてライセンスファイル830は削除される。その結果、状態970となり、フラッシュメモリ820からライセンスファイル830は削除される。ライセンスファイル930は、実体のない空のファイルを示す。更にライセンス履歴管理部370は、FRAM300が保持するライセンス履歴310とフラッシュメモリ810が保存するライセンスファイル930がもつライセンス履歴を比較する。
【0049】
比較した結果、ライセンス履歴管理部370は、フラッシュメモリ810がもつ実体のないライセンスファイル930のライセンス履歴は0個、一方のFRAM300が保存するライセンス履歴310は2個であるため、FRAM300が保存するライセンス履歴310の方が多いことがわかる。このとき図7で示すライセンス履歴の復帰処理が実施されるものとすると、FRAM300が保存するライセンス履歴310からフラッシュメモリ810に復帰処理920が実施される。その結果、デバイスの状態は、状態980に遷移し、ライセンスファイル940の履歴にFRAM300からライセンス履歴が復帰される。この結果、図8の結果と異なり、FRAM310とライセンス履歴ファイル940の整合性は保たる。つまり、整合性が保たれることにより、その後ボード交換、またFRAM交換が実施されても、ライセンス履歴がクリアされてしまうことはなくなり、ライセンス管理システムとして問題ない。
【0050】
図10は、ライセンス履歴管理部370が実施する中古ボードを考慮したライセンス履歴復帰処理についてのフローチャートを示す。
【0051】
S1000においてデバイスが起動する。S1010において、デバイスのシリアル番号とライセンス履歴ファイルのシリアル番号が一致するかどうかの比較を行う。一致する場合、S1020に進み、ライセンス履歴管理部370が、ライセンス履歴の整合性チェックを行う。ここで、ライセンス履歴整合性チェックとは、FRAMとフラッシュメモリのライセンス履歴の個数のチェックのことを意味する。S1010において、このシリアル番号の値が一致しない場合、S1030に進み、ライセンス履歴ファイルの削除を行い、その後S1020に進む。
【0052】
S1040において、FRAMとフラッシュメモリのライセンス履歴の個数のチェックを行う。このときの個数が一致するときは、何もせずにS1050に進みライセンス履歴復帰処理は終了する。一方、フラッシュメモリのライセンス履歴の数がFRAMのライセンス履歴の数より多いときは、S1060に進み、フラッシュメモリからFRAMにライセンス履歴の内容を復帰させる。更に、S1050において処理が終了する。逆に、FRAMのライセンス履歴の数がフラッシュメモリのライセンス履歴の数より多いときは、S1070に進み、FRAMからフラッシュメモリにライセンス履歴の内容を復帰させる。更に、S1050において処理が終了する。
【0053】
<SoftID基板の交換の例>
図11は、SoftID基板の交換によりシリアル番号が変わる場合がある例を示す。図11のおける、デバイスの状態は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つの履歴をもつ状態である。
【0054】
この状態で何らかの理由によりSoftID基板が破損し(1100)、デバイスのシリアル番号が取得できなくなることがある(1110)。このとき、結果としてデバイスのシリアル番号はNULL値となる。
【0055】
あるいは、SoftID基板を交換するような対応を行ったときに(1120)、結果としてシリアル番号がサービスパーツ用の特別なシリアル番号になる(1130)ことがある。
【0056】
上記のような例の場合、図10のフローチャートの示す処理を実施すると、S1010において、シリアル番号の比較において、必ず一致しないことになり、結果として中古ボードという判定の基、ライセンスファイルが削除されてしまうことになる(S1030)。結果として、SoftID基板側に問題があったときに、ライセンスファイルの復帰処理が実施されることになり明らかに無駄な処理となる。そこで、このような特殊なシリアル番号を返すことを考慮した、フローチャートが図12である。S1200においてデバイス起動後、S1210においてデバイスのシリアル番号をチェックする。このとき、シリアル番号がNULL値、もしくは予め決められたサービスパーツ用の番号であったときは、特定の処理を施さずS1260に進みライセンス履歴復帰処理に入らないようにする。
【0057】
シリアル番号が上記以外の場合は、S1220へ進む。S1220において、デバイスのシリアル番号とライセンス履歴ファイルのシリアル番号が一致するかどうかの比較を行う。一致する場合、S1230に進み、ライセンス履歴管理部370が、ライセンス履歴の整合性チェックを行う。
【0058】
ここで、ライセンス履歴整合性チェックとは、FRAMとフラッシュメモリのライセンス履歴の個数のチェックのことを意味する。S1220において、このシリアル番号の値が一致しない場合、S1240に進み、ライセンス履歴ファイルの削除を行い、その後S1230に進む。S1250において、FRAMとフラッシュメモリのライセンス履歴の個数のチェックを行う。このときの個数が一致するときは、何もせずにS1260に進みライセンス履歴復帰処理は終了する。
【0059】
一方、フラッシュメモリのライセンス履歴の数がFRAMのライセンス履歴の数より多いときは、S1270に進み、フラッシュメモリからFRAMにライセンス履歴の内容を復帰させる。更に、S1260において処理が終了する。逆に、FRAMのライセンス履歴の数がフラッシュメモリのライセンス履歴の数より多いときは、S1280に進み、FRAMからフラッシュメモリにライセンス履歴の内容を復帰させる。更に、S1260において処理が終了する。
【符号の説明】
【0060】
810 中古ボード
820 中古ボードに付随するフラッシュメモリ
830 中古ボードのライセンス履歴ファイル
910 ライセンスシリアル番号比較とライセンス履歴ファイルの削除
930 削除されたライセンス履歴ファイル
【技術分野】
【0001】
本発明は、ライセンス履歴を管理する装置、制御方法、およびプログラムに関する。
【背景技術】
【0002】
ネットワーク接続され、ライセンス付きアプリケーションがインストール可能な機器がある。このアプリケーションインストール時に、強誘電体メモリ(FRAM=Ferroelectric Random Access Memory)、ハードディスクドライブ/フラッシュメモリなどの複数の不揮発性領域にライセンス履歴を記憶する。このようにライセンス履歴を二重に管理することにより、一方のメモリから情報が削除されても、他方のメモリから情報を復帰させることが可能となる。例えば、ハードディスクドライブの故障により、ハードディスクを交換する必要がある時、FRAMに記憶されているライセンス履歴からハードディスクにライセンス履歴を書き戻すことが可能である。これにより正しいライセンス履歴を利用したライセンス管理が可能となり、正当な権限なきライセンスの利用を防止することが可能となる。以降、このライセンス履歴を書き戻す処理をライセンス履歴復帰処理と呼ぶ。このようなバックアップ方法を実行する装置が、特許文献1に開示されている。管理領域と実データ領域を物理的に分離して配置する構成を採るファイルシステムにおいて、一方が故障したなどの理由で交換された場合に、ファイルシステムの不整合を防止することを目的とした装置である。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−222581
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の場合、ファイルシステムの管理領域を高速な不揮発性メモリ装置上に配置し、実データをストレージ装置に格納するような構成である。あくまでファイルシステム上の不整合を防止することを目的としているのであって、ライセンス履歴などの実データに相当するデータの復帰処理を想定しているわけではない。よって、ライセンス履歴が不適切のため、適正なライセンスが使用できない可能性が高い。
本発明は、ライセンス履歴の整合性を保つためのライセンス履歴復帰処理を実施する装置を提供することをひとつの目的とする。
【課題を解決するための手段】
【0005】
本発明の一実施系に係る装置は、ライセンスを使用することで利用可能となるアプリケーションを保持可能な装置であって、前記アプリケーションがライセンスを使用することで利用可能となった場合、前記ライセンスを識別するためのライセンスIDを保持する第1のメモリと、前記第1のメモリに保持されたライセンスIDのバックアップを行うため、前記ライセンスIDを保持する第2のメモリと、前記第2のメモリに保持された、装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させ、一致しない場合、前記第2のメモリに既に保持されているライセンスIDを消去した後に、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させるよう制御することを特徴とする。
【発明の効果】
【0006】
本発明はライセンス履歴などの実データに相当するデータの復帰処理を想定した発明であり、ライセンス履歴の整合性を保つためのライセンス履歴復帰処理を実施することで、適切なライセンスが利用できない状態を防止することが可能になる。
【図面の簡単な説明】
【0007】
【図1】本発明における、画像形成システムの全体構成を示す図である。
【図2】本発明における、画像形成装置の全体構成を示す図である。
【図3】ライセンス管理におけるソフトウェアとハードウェア構成を示す図である。
【図4】ライセンス管理におけるライセンスインストール処理のフローを示す図である。
【図5】フラッシュメモリからFRAMにライセンス履歴を復帰させることを示すブロック図である。
【図6】FRAMからフラッシュメモリにライセンス履歴を復帰させることを示すブロック図である。
【図7】ライセンス管理におけるライセンス履歴復帰処理のフローを示す図である。
【図8】中古ボードがきたときの、ライセンス履歴を復帰させることを示すブロック図である。
【図9】中古ボードがきたときの、ライセンス履歴を復帰させることを示すブロック図である。
【図10】中古ボードがくることを想定した、ライセンス履歴復帰処理のフローを示す図である。
【図11】シリアル番号が特殊な番号で取得できるケースを示す図である。
【図12】図11における特別なシリアル番号が取得できた場合のことを考慮した、ライセンス履歴復帰処理のフローを示す図である。
【発明を実施するための形態】
【0008】
従来のライセンス履歴復帰処理は、ハードディスクなどの故障により、新品への交換を想定していた。これは、通常ハードディスクなどにはセキュリティの為の暗号化処理が施されており、一度他のデバイスで使用されたことがある中古のハードディスクをそのまま他のデバイスに取り付けるということが考えにくいという理由のためである。ところが、プリンタ(SFP)のような安価な機種の場合、ハードディスクの代わりに本体ボードにフラッシュメモリという不揮発性メモリを用いたハードウェア構成になることがある。このとき、サービスマンによるサービスとして、ユーザ先でプリンタに何か問題が起きた時、現象を確認するために、とりあえず他の現場で一度使用されたことがある中古の本体ボードをプリンタに組み込む。そして、中古ボードでテストを行い、プリンタを正常に戻すための対応方法を考えるという場合がある。
【0009】
このとき、上述の中古の本体ボードは上述のプリンタとは異なる顧客環境で利用されている場合があり、その中古の本体ボードに付随するフラッシュメモリに、その異なる顧客環境のプリンタで使用されていたアプリケーションのライセンス履歴が残っている可能性が考えられる。このようなケースの場合、ライセンス履歴復帰処理において、中古の本体ボードに残っていたライセンス履歴が、正規のライセンス情報のように扱われ、その結果、使用していないライセンスがライセンス履歴に残る可能性があり、以下のような不利益を生じる可能性がある
容量的にFRAMに残せるライセンス履歴情報には上限がある中、ユーザが利用していないライセンス履歴情報によって、ライセンス履歴を無駄に消費することになる。
【0010】
また、ライセンス履歴の数によっては、本来FRAMからのライセンス履歴復帰処理が動作する必要がある場合でもその処理が実施されない可能性がある。この状態で、FRAM上のライセンス履歴情報がなんらかの理由でクリアされてしまうと、本来ユーザが利用したライセンス履歴が残らないことになる。
【0011】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【実施例1】
【0012】
図1は、本発明の実施形態における画像形成装置を含む印刷システムの全体構成を示すブロック図である。本発明の実施形態においては、画像形成装置として具体的に後述される機能をもつ、複写機やプリンタや複合機などを用いるものとする。
【0013】
図1に示すように、画像形成装置110は、クライアントコンピュータ120、サーバコンピュータ130とともに、イーサネット(登録商標)などからなるLAN140に接続されている。ただし、本発明における印刷システムにおいては、システムに接続される機器はこれら接続数に限られることはない。
【0014】
画像形成装置110は、コピー機能、ファクシミリ機能、電子メール送信機能を有するとともに、原稿画像を読み取り、該読み取って得られた画像データをLAN140上の各装置に送信するデータ送信機能を有する。画像形成装置110は、後述するスキャナ部112などで読み取った画像や、LAN140上に接続されているコンピュータから指示されたデータを、画像形成装置110内のハードディスク、もしくはフラッシュメモリ204の特定領域に保存することが可能である。また原稿画像を読み取り、ハードディスク/フラッシュメモリ204にデジタル画像として保存することも可能である。またハードディスク領域に保存されたデジタル画像を印刷することが可能である。
【0015】
画像形成装置110は、画像入力デバイスであるスキャナ部112、画像出力デバイスであるプリンタ部113、画像形成装置110全体の動作制御を司るコントローラ200などから構成される。
【0016】
スキャナ部112は、原稿上の画像を露光走査して得られた反射光をCCDに入力することで画像の情報を電気信号に変換する。さらに電気信号をR,G,B各色からなる輝度信号に変換し、当該輝度信号を画像データとしてコントローラ200に対して出力する。なお、原稿は原稿フィーダにセットされる。ユーザが操作部111から読み取り開始を指示すると、コントローラ200からスキャナ部112に原稿読み取り指示が与えられる。スキャナ部112は、この指示を受けると原稿フィーダから原稿を1枚ずつフィードして、原稿の読み取り動作を行う。なお、原稿の読み取り方法は原稿フィーダによる自動送り方式ではなく、原稿を不図示のガラス面上に載せ、露光部を移動させることで原稿の走査を行う方法であってもよい。スキャナ部112はスキャンユニットに相当する。
【0017】
プリンタ部113は、コントローラ200から受取った画像データを用紙上に形成する画像形成デバイスである。プリンタ部113はプリントユニットに相当する。実施例1における画像形成装置は、スキャナ部112、およびプリンタ部113のいずれも有しているが、一方のみ有する画像形成装置であっても良い。即ち、スキャナ部112、および/またはプリンタ部113を有する装置に対し、本発明は適用可能である。
【0018】
サーバコンピュータ130は、オペレーティングシステム(以下OS)や各種のアプリケーションサービスプログラムがCPUにより実行され、OSの管理下で、アプリケーションサービスを実行することで種々のデータ処理を行う。クライアントコンピュータ120についても同様である。
【0019】
図2は、画像形成装置110のコントローラ200の構成を説明するためのブロック図である。 コントローラ200はスキャナ部112やプリンタ部113と電気的に接続されており、一方ではLAN140を介してクライアントコンピュータ120やサーバコンピュータ130と接続されている。これにより画像データやデバイス情報の入出力が可能となっている。
【0020】
CPU201は、ROM202に記憶された制御プログラム等に基づいて接続中の各種デバイスとのアクセスを統括的に制御すると共に、コントローラ内部で行われる各種処理についても統括的に制御する。なお、画像形成装置110の装着された各種ユニットは交換可能である。
【0021】
ROM202には装置のブートプログラムなどが格納されている。RAM203は、CPU201が動作するためのシステムワークメモリであり、かつ画像データを一時記憶するためのメモリでもある。このRAM203は、記憶した内容を電源off後も保持しておくFRAM、SRAM、電源off後には記憶した内容が消去されてしまうDRAMなどにより構成されている。
【0022】
HDD204は、システムソフトウェアや画像データを一時的、または半永久的に保持可能となっている。また、これはフラッシュメモリなどで代用することも可能である。操作部I/F205は、システムバス212と操作部111とを接続するためのインターフェース部である。この操作部I/F205は、操作部111に表示するための画像データをシステムバス212から受取り操作部111に出力すると共に、操作部111から入力された情報をシステムバス212へと出力する。
【0023】
ネットワークI/F206はLAN140及びシステムバス212に接続し、情報の入出力を行う。スキャナI/F208は、スキャナ部112から受取った画像データに対して、補正、加工、及び編集を行う。なお、スキャナI/F208は、受取った画像データがカラー原稿か白黒原稿か、文字原稿か写真原稿かなどを判定する。そして、その判定結果を画像データに付随させる。こうした付随情報を属性データと称する。
【0024】
画像形成部209は、画像データの方向変換、画像圧縮、伸張部などをおこなう。プリンタI/F210は、画像形成部209から送られた画像データを受取り、この画像データに付随させられている属性データを参照しながら画像データに画像形成を施す。画像形成後の画像データは、プリンタ部113に出力される。FAXI/F211は、画像形成部209から送られた画像データを、指定された送信先にFAX送信部114、及びLAN140(または、WAN250)を通じて送信される。
【0025】
電子メールI/F207は、画像形成部209から送られた画像データを、指定された送信先にメール送信部115及びLAN140(または、WAN250)を通じて送信される。なお、画像形成装置110に対するユーザ指示やユーザへの情報提示は、例えば、操作部111を介して行うようにしてもよいし、LAN140を介して接続されたクライアントコンピュータ120を介して行うようにしてもよい。
【0026】
図3は、ライセンス管理システムに関わるソフトウェア/ハードウェア構成とライセンス管理方法について述べる。ここで、ライセンスとは、デバイスにプリインストールされているアプリケーション、もしくは後入れのアプリケーションをアクティベートするためのものである。アクティベートすることで初めてアプリケーションは利用可能となる。画像形成装置110のような装置を一意に特定するための装置ID、即ち、識別番号(例えば、シリアル番号)を保持しているのがSoftID基板350であり、このSoftID基板350はハードウェアにより実現される。実施例1の場合、識別番号とはシリアル番号であり、図3はそのシリアル番号がAAAA1234567であることを示している。
【0027】
FRAM300には、記憶保持領域にライセンス履歴310を記憶している。これは、後述するライセンスインストール時に利用される。履歴の内容は、ライセンスを一意に特定するライセンスIDの履歴である。本体ボード320には、不揮発性のフラッシュメモリ330が載っており、FRAM300に保持されているライセンス履歴310と同じ内容をライセンスファイル340として保持されている。
【0028】
ここで、FRAM300は、第1のメモリであるRAM203に、フラッシュメモリ330は、第2のメモリであるHDD/フラッシュメモリ204に相当する。ライセンスファイル340は、このライセンスファイルが作成された時のデバイスの識別番号も併せて保持されている。このように、FRAMとフラッシュメモリに同じ内容を保持することにより、後述するそれぞれのパーツの交換が起きた時に、それぞれが互いが保持する情報をバックアップするため、情報を共有する機能が画像形成装置110には備わっている。ライセンスインストール処理部360は、図4で示すライセンスインストール、ライセンス履歴登録処理を実行するモジュールである。ライセンス履歴管理部370は、図7で示すライセンス履歴復帰処理を実行するモジュールである。これらライセンスインストール処理部360、ライセンス履歴管理部370は、図2におけるHDD/フラッシュメモリ204において保持され、その処理はメモリに展開され実行される。
【0029】
図4においてライセンスインストール処理部360がライセンス付きアプリケーションのインストールするときの流れを示す。S400において、アプリケーションとライセンスのインストールが開始する。次に、S410で、ライセンスIDがライセンス履歴に存在するかどうかの重複チェックを行う。ライセンスIDとは、ライセンスに一意に振られた番号である。ライセンス履歴とは、アプリケーションとライセンスのインストールが成功したときに登録しているインストールに成功したライセンスIDの履歴を指す。FRAM300、及びフラッシュメモリ320において同じ内容のものが保持される。
【0030】
このS410におけるチェックにおいて、ライセンスIDが重複しているということは、過去に同じライセンスをインストールした実績があることを示す。不正利用防止のため、一般的に1つのライセンスは1つのデバイスに1回しかインストールすることができないことが望ましい。よって、このチェックで重複があったときは、S440に進み、アプリケーション/ライセンスのインストールに失敗する。重複がないときは、S420に進み、アプリケーション/ライセンスのインストールを行う。インストール後、ライセンスIDの登録を行う。そして、S450においてインストールが完了する。
【0031】
<新品のFRAM/フラッシュメモリへの交換>
図5、6においてはFRAM/フラッシュメモリのパーツが新品に交換されるときのライセンス履歴復帰処理について説明する。
【0032】
図5は、FRAMが交換されるときの復帰処理のブロック図である。デバイスの状態550は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。この状態から新品のFRAMに交換され(FRAM交換500の動作に相当する)、デバイスの状態が状態560に遷移するときのことを考える。このとき、FRAM300は新品のFRAM510に交換される。新品のFRAM510に交換された状態でデバイスが起動すると、ライセンス履歴管理部370は、FRAM510に保持されているライセンス履歴520と、フラッシュメモリ330に保持されているライセンスファイル340のライセンス履歴と、を比較する。
【0033】
比較した結果、ライセンス履歴管理部370は、FRAM510の記憶保持領域がもつライセンス履歴520は0個、一方フラッシュメモリ330が保持するライセンスファイル340のライセンス履歴は2個であるため、フラッシュメモリ330が保持するライセンスファイル340のライセンス履歴の方が多いことが分かる。この際、ライセンス履歴を多く保持しているメモリから、保持しているライセンス履歴が少ないメモリへライセン履歴をコピーするという復帰処理が実施される。具体的に説明すると、フラッシュメモリ330からFRAM510にライセンス履歴をコピーするため、上述した復帰処理530が実施される。その結果、デバイスの状態は状態570に遷移し、FRAM510のライセンス履歴540にライセンスファイル340からのライセンス履歴がコピーされる。以上が、フラッシュメモリからFRAMへのライセンス履歴復帰処理の概要になる。
【0034】
図6は、フラッシュメモリが交換されるときの復帰処理のブロック図である。デバイスの状態660は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。
【0035】
この状態から新品の本体ボード320が交換され(本体ボード交換600の動作に相当する。)、デバイスの状態が状態670に遷移するときのことを考える。このとき、ボード320は新品の本体ボード610に交換され、フラッシュメモリ330は新品のフラッシュメモリ620に交換される。新品の本体ボード610に交換された状態でデバイスが起動すると、ライセンス履歴管理部370が、FRAM300に保持されているライセンス履歴310と、フラッシュメモリ620に保持されているライセンスファイル630のライセンス履歴を比較する。比較した結果、ライセンス管理部370は、フラッシュメモリ620が保持するライセンスファイル630のライセンス履歴は0個、一方のFRAM300が保持するライセンス履歴310は2個であるため、FRAM300が保持するライセンス履歴の方が多いことがわかる。
【0036】
この際、保持しているライセンス履歴の数が多いメモリから、保持しているライセンス履歴の数が少ないメモリへライセンス履歴をコピーするというライセンス復帰処理が実施される。具体的に説明すると、FRAM300がもつライセンス履歴310からフラッシュメモリ620にライセンス履歴をコピーするため、上述した復帰処理640が実施される。その結果、デバイスの状態は、状態680に遷移し、ライセンスファイル650の履歴にFRAM300からライセンス履歴がコピーされる。以上が、FRAMからフラッシュメモリへのライセンス履歴復帰処理の概要となる。
【0037】
図7は、図5、6のケースにおけるライセンス履歴管理部370が実行するライセンス履歴復帰処理のフローチャートを示す。
【0038】
S700においてデバイスが起動する。S710においてライセンス履歴管理部370がライセンス履歴の整合性チェックを行う。S720において、ライセンス履歴管理部370が、FRAMとフラッシュメモリに保持されているライセンス履歴の個数の比較を行う。このライセンス履歴の個数の比較のことをライセンス履歴の整合性チェックと呼ぶ。このときの個数が一致するときは、FRAMとフラッシュメモリの整合性は保たれているという判断の基、何も処理を実行せずにS730に進み復帰処理は終了する。
【0039】
一方、フラッシュメモリのライセンス履歴の数がFRAMのライセンス履歴の数より多いときは、S740に進み、フラッシュメモリからFRAMにライセンス履歴の内容を復帰させる。更に、S730において処理が終了する。逆に、FRAMのライセンス履歴の数がフラッシュメモリのライセンス履歴の数より多いときは、S750に進み、FRAMからフラッシュメモリにライセンス履歴の内容を復帰させる。更に、S730において処理が終了する。
【0040】
<中古ボードへの交換>
図8は、中古ボードに交換されるとき、図7のフローによって復帰処理が実施されるときのブロック図を示す。デバイスの状態860は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。この状態から中古の本体ボード810に交換され(ボード交換800の動作に相当する。)、デバイスの状態が状態870に遷移するときのことを考える。
【0041】
中古の本体ボード810は、フラッシュメモリ820を持つ。また、この中古ボード810は、シリアル番号BBBB9999999をもつ画像形成装置110とは異なる別の装置で利用されていたとする。よって、中古ボード810には、別の装置でアプリケーションがアクティベートした際に保持したライセンス履歴が含まれる。ライセンス履歴ファイル830には、ライセンス履歴として、uuid3、uuid4、uuid5の3つの履歴を含み、シリアル番号の情報BBBB9999999を保持している。状態870は、本体ボード320が、この中古の本体ボード810に交換された状態である。本体ボード810に交換された状態でデバイスが起動すると、ライセンス履歴管理部370は、FRAM300に保持されているライセンス履歴310と、フラッシュメモリ820に保持されているライセンスファイル830のライセンス履歴と、を比較する。
【0042】
比較した結果、ライセンス履歴管理部370は、フラッシュメモリ820が保持するライセンスファイル830のライセンス履歴は3個、一方のFRAM300が保持するライセンス履歴310は2個であるため、フラッシュメモリ820が保持するライセンスファイル830のライセンス履歴の方が多いことがわかる。この際、図7で示すライセンス履歴の復帰処理が実施される。具体的に説明すると、フラッシュメモリ820からFRAM300に復帰処理840が実施される。その結果、デバイスの状態は、状態880に遷移し、FRAM300のライセンス履歴は、ライセンス履歴850の状態になる。その結果、FRAMには本来のuudi1、uuid2というのに加えて、uuid3、4、5という3個の全く関係のないデバイスBBBB9999999のライセンス履歴が保持されるようになり、ライセンスファイル830のライセンス履歴との整合性も保たれない。この結果、以下のような問題が生じる。
【0043】
容量的にFRAMに残せるライセンス履歴情報には上限がある中、ユーザが利用していないライセンス履歴情報によって、ライセンス履歴を無駄に消費することになる。
【0044】
また、次回起動時においても、FRAMとフラッシュメモリのライセンス履歴の個数チェックの結果、今度はFRAMが保持するライセンス履歴がフラッシュメモリが保持するライセンス履歴より多くなるため、ライセンス履歴復帰処理が実施されることとなる。
【0045】
また、この実施例と異なり、FRAMとフラッシュメモリが保持するライセンス履歴の個数が同じだった場合を考える。その場合、ライセンス履歴の個数が同じ為、ライセンス履歴復帰処理が実施されない。つまり、本体ボードには中古ボードが保持していたライセンス履歴が残ったままになる。この状態で、FRAMが保持するライセンス履歴情報がクリアされてしまうと、ライセンス管理上、本来管理すべきユーザが利用したライセンス履歴uuid1、uuid2が削除される可能性がある。
【0046】
図9は、図8の状況を解消するため、中古ボードに対応したライセンス履歴復帰処理方法を示す。デバイスの状態950は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つのライセンス履歴を含む。この状態から中古の本体ボード810に交換され(ボード交換900の動作に相当する。)、デバイスの状態は状態870に遷移するときのことを考える。
【0047】
中古の本体ボード810は、フラッシュメモリ820を持つ。ここで、この中古ボード810は、シリアル番号BBBB9999999をもつデバイスで利用されていたとして、ライセンス履歴ファイル830は、ライセンス履歴として、uuid3、uuid4、uuid5の3つの履歴を含み、シリアル番号の情報BBBB9999999を保持している。状態960は、本体ボード320が、この中古の本体ボード810に交換された状態である。本体ボード810に交換された状態でデバイスが起動すると、ライセンス履歴管理部370は、フラッシュメモリ820のライセンスファイル830が保持するシリアル番号とデバイスのシリアル番号を比較する。
【0048】
このシリアル番号の値が異なる場合、中古のボードが付けられたという判断の基、ライセンスファイル830を削除する。ライセンスIDの消去処理による消去に相当する。実施例1の場合、それぞれBBBB9999999とAAAA1234567と異なるため、処理910においてライセンスファイル830は削除される。その結果、状態970となり、フラッシュメモリ820からライセンスファイル830は削除される。ライセンスファイル930は、実体のない空のファイルを示す。更にライセンス履歴管理部370は、FRAM300が保持するライセンス履歴310とフラッシュメモリ810が保存するライセンスファイル930がもつライセンス履歴を比較する。
【0049】
比較した結果、ライセンス履歴管理部370は、フラッシュメモリ810がもつ実体のないライセンスファイル930のライセンス履歴は0個、一方のFRAM300が保存するライセンス履歴310は2個であるため、FRAM300が保存するライセンス履歴310の方が多いことがわかる。このとき図7で示すライセンス履歴の復帰処理が実施されるものとすると、FRAM300が保存するライセンス履歴310からフラッシュメモリ810に復帰処理920が実施される。その結果、デバイスの状態は、状態980に遷移し、ライセンスファイル940の履歴にFRAM300からライセンス履歴が復帰される。この結果、図8の結果と異なり、FRAM310とライセンス履歴ファイル940の整合性は保たる。つまり、整合性が保たれることにより、その後ボード交換、またFRAM交換が実施されても、ライセンス履歴がクリアされてしまうことはなくなり、ライセンス管理システムとして問題ない。
【0050】
図10は、ライセンス履歴管理部370が実施する中古ボードを考慮したライセンス履歴復帰処理についてのフローチャートを示す。
【0051】
S1000においてデバイスが起動する。S1010において、デバイスのシリアル番号とライセンス履歴ファイルのシリアル番号が一致するかどうかの比較を行う。一致する場合、S1020に進み、ライセンス履歴管理部370が、ライセンス履歴の整合性チェックを行う。ここで、ライセンス履歴整合性チェックとは、FRAMとフラッシュメモリのライセンス履歴の個数のチェックのことを意味する。S1010において、このシリアル番号の値が一致しない場合、S1030に進み、ライセンス履歴ファイルの削除を行い、その後S1020に進む。
【0052】
S1040において、FRAMとフラッシュメモリのライセンス履歴の個数のチェックを行う。このときの個数が一致するときは、何もせずにS1050に進みライセンス履歴復帰処理は終了する。一方、フラッシュメモリのライセンス履歴の数がFRAMのライセンス履歴の数より多いときは、S1060に進み、フラッシュメモリからFRAMにライセンス履歴の内容を復帰させる。更に、S1050において処理が終了する。逆に、FRAMのライセンス履歴の数がフラッシュメモリのライセンス履歴の数より多いときは、S1070に進み、FRAMからフラッシュメモリにライセンス履歴の内容を復帰させる。更に、S1050において処理が終了する。
【0053】
<SoftID基板の交換の例>
図11は、SoftID基板の交換によりシリアル番号が変わる場合がある例を示す。図11のおける、デバイスの状態は、図3で示したライセンス履歴の状態と同じである。デバイスのシリアル番号はAAAA1234567であり、ライセンス履歴310とライセンスファイル340は、uuid1とuuid2の2つの履歴をもつ状態である。
【0054】
この状態で何らかの理由によりSoftID基板が破損し(1100)、デバイスのシリアル番号が取得できなくなることがある(1110)。このとき、結果としてデバイスのシリアル番号はNULL値となる。
【0055】
あるいは、SoftID基板を交換するような対応を行ったときに(1120)、結果としてシリアル番号がサービスパーツ用の特別なシリアル番号になる(1130)ことがある。
【0056】
上記のような例の場合、図10のフローチャートの示す処理を実施すると、S1010において、シリアル番号の比較において、必ず一致しないことになり、結果として中古ボードという判定の基、ライセンスファイルが削除されてしまうことになる(S1030)。結果として、SoftID基板側に問題があったときに、ライセンスファイルの復帰処理が実施されることになり明らかに無駄な処理となる。そこで、このような特殊なシリアル番号を返すことを考慮した、フローチャートが図12である。S1200においてデバイス起動後、S1210においてデバイスのシリアル番号をチェックする。このとき、シリアル番号がNULL値、もしくは予め決められたサービスパーツ用の番号であったときは、特定の処理を施さずS1260に進みライセンス履歴復帰処理に入らないようにする。
【0057】
シリアル番号が上記以外の場合は、S1220へ進む。S1220において、デバイスのシリアル番号とライセンス履歴ファイルのシリアル番号が一致するかどうかの比較を行う。一致する場合、S1230に進み、ライセンス履歴管理部370が、ライセンス履歴の整合性チェックを行う。
【0058】
ここで、ライセンス履歴整合性チェックとは、FRAMとフラッシュメモリのライセンス履歴の個数のチェックのことを意味する。S1220において、このシリアル番号の値が一致しない場合、S1240に進み、ライセンス履歴ファイルの削除を行い、その後S1230に進む。S1250において、FRAMとフラッシュメモリのライセンス履歴の個数のチェックを行う。このときの個数が一致するときは、何もせずにS1260に進みライセンス履歴復帰処理は終了する。
【0059】
一方、フラッシュメモリのライセンス履歴の数がFRAMのライセンス履歴の数より多いときは、S1270に進み、フラッシュメモリからFRAMにライセンス履歴の内容を復帰させる。更に、S1260において処理が終了する。逆に、FRAMのライセンス履歴の数がフラッシュメモリのライセンス履歴の数より多いときは、S1280に進み、FRAMからフラッシュメモリにライセンス履歴の内容を復帰させる。更に、S1260において処理が終了する。
【符号の説明】
【0060】
810 中古ボード
820 中古ボードに付随するフラッシュメモリ
830 中古ボードのライセンス履歴ファイル
910 ライセンスシリアル番号比較とライセンス履歴ファイルの削除
930 削除されたライセンス履歴ファイル
【特許請求の範囲】
【請求項1】
ライセンスを使用することで利用可能となるアプリケーションを保持可能な装置であって、
前記アプリケーションがライセンスを使用することで利用可能となった場合、前記ライセンスを識別するためのライセンスIDを保持する第1のメモリと、
前記第1のメモリに保持されたライセンスIDのバックアップを行うため、前記ライセンスIDを保持する第2のメモリと、
前記第2のメモリに保持された、装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させ、一致しない場合、前記第2のメモリに既に保持されているライセンスIDを消去した後に、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させるよう制御する制御手段と、を有する装置。
【請求項2】
前記第2のメモリは前記装置とは異なる別の装置に装着されていたメモリであって、前記第2のメモリに既に保持されているライセンスIDとは前記別の装置で利用可能となったアプリケーションに対応するライセンスIDであり、前記装置IDとは前記別の装置の装置IDであることを特徴とする請求項1に記載の装置。
【請求項3】
前記制御手段は、前記ライセンスIDと共に前記第2のメモリに保持された装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、前記第2のメモリに対し消去処理を施すことなく、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持するよう制御することを特徴とする請求項1または2に記載の装置。
【請求項4】
前記装置とはプリントユニット、および/またはスキャンユニットを有する画像形成装置であって、
前記アプリケーションとは、前記プリントユニット、またはスキャンユニットを操作するためのアプリケーションであることを特徴とする請求項1乃至3の何れか1項に記載の装置。
【請求項5】
前記第1のメモリに保持されたライセンスIDを前記第2のメモリに保持する処理とは、保持されたライセンスIDの数が前記第2のメモリに保持されたライセンスIDの数よりも多い前記第1のメモリから、保持されたライセンスIDの数が前記第1のメモリよりも少ない前記第2のメモリにコピーするライセンス履歴復帰処理であることを特徴とする請求項1乃至4の何れか1項に記載の装置。
【請求項6】
ライセンスを使用することで利用可能となるアプリケーションを保持可能な装置を制御する制御方法であって、
第1のメモリは、前記アプリケーションがライセンスを使用することで利用可能となった場合、前記ライセンスを識別するためのライセンスIDを保持し、
第2のメモリは、前記第1のメモリに保存されたライセンスIDのバックアップを行うため、前記ライセンスIDを前記第1のメモリと同じく保持し、
制御手段は、前記第2のメモリに保持された装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持し、一致しない場合、前記第2のメモリに既に保持されているライセンスIDを消去した後に、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持するよう制御することを特徴とする装置を制御する制御方法。
【請求項7】
請求項6に記載の制御方法をコンピュータに実行させるためのプログラム。
【請求項1】
ライセンスを使用することで利用可能となるアプリケーションを保持可能な装置であって、
前記アプリケーションがライセンスを使用することで利用可能となった場合、前記ライセンスを識別するためのライセンスIDを保持する第1のメモリと、
前記第1のメモリに保持されたライセンスIDのバックアップを行うため、前記ライセンスIDを保持する第2のメモリと、
前記第2のメモリに保持された、装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させ、一致しない場合、前記第2のメモリに既に保持されているライセンスIDを消去した後に、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持させるよう制御する制御手段と、を有する装置。
【請求項2】
前記第2のメモリは前記装置とは異なる別の装置に装着されていたメモリであって、前記第2のメモリに既に保持されているライセンスIDとは前記別の装置で利用可能となったアプリケーションに対応するライセンスIDであり、前記装置IDとは前記別の装置の装置IDであることを特徴とする請求項1に記載の装置。
【請求項3】
前記制御手段は、前記ライセンスIDと共に前記第2のメモリに保持された装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、前記第2のメモリに対し消去処理を施すことなく、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持するよう制御することを特徴とする請求項1または2に記載の装置。
【請求項4】
前記装置とはプリントユニット、および/またはスキャンユニットを有する画像形成装置であって、
前記アプリケーションとは、前記プリントユニット、またはスキャンユニットを操作するためのアプリケーションであることを特徴とする請求項1乃至3の何れか1項に記載の装置。
【請求項5】
前記第1のメモリに保持されたライセンスIDを前記第2のメモリに保持する処理とは、保持されたライセンスIDの数が前記第2のメモリに保持されたライセンスIDの数よりも多い前記第1のメモリから、保持されたライセンスIDの数が前記第1のメモリよりも少ない前記第2のメモリにコピーするライセンス履歴復帰処理であることを特徴とする請求項1乃至4の何れか1項に記載の装置。
【請求項6】
ライセンスを使用することで利用可能となるアプリケーションを保持可能な装置を制御する制御方法であって、
第1のメモリは、前記アプリケーションがライセンスを使用することで利用可能となった場合、前記ライセンスを識別するためのライセンスIDを保持し、
第2のメモリは、前記第1のメモリに保存されたライセンスIDのバックアップを行うため、前記ライセンスIDを前記第1のメモリと同じく保持し、
制御手段は、前記第2のメモリに保持された装置を識別するための装置IDと、前記装置に割り当てられた装置IDとが一致する場合、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持し、一致しない場合、前記第2のメモリに既に保持されているライセンスIDを消去した後に、第1のメモリに保持されたライセンスIDを前記第2のメモリに保持するよう制御することを特徴とする装置を制御する制御方法。
【請求項7】
請求項6に記載の制御方法をコンピュータに実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−247925(P2012−247925A)
【公開日】平成24年12月13日(2012.12.13)
【国際特許分類】
【出願番号】特願2011−118140(P2011−118140)
【出願日】平成23年5月26日(2011.5.26)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FRAM
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年12月13日(2012.12.13)
【国際特許分類】
【出願日】平成23年5月26日(2011.5.26)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FRAM
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]