(57)【特許請求の範囲】
【請求項１】
画像を処理する画像処理手段と、
前記画像処理手段が前記処理を行うためのプログラムであり、実行可能なプログラムが異なる複数種類のモデル機で使用される複数のプログラムを記憶する記憶手段と、
記憶媒体を挿抜可能な記憶媒体挿抜手段と、
前記記憶媒体挿抜手段に挿入された記憶媒体に記憶された情報であり、前記複数のプログラムのうち起動対象のプログラムに係る設定情報、当該設定情報と前記記憶媒体を一意に識別可能な記憶媒体識別情報とを用いて作成された電子署名情報及び前記記憶媒体識別情報を読み出す読出手段と、
前記読出手段が読み出した前記記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動する起動手段とを備える
ことを特徴とする画像処理装置。
【請求項２】
前記記憶媒体挿抜手段に対する記憶媒体の挿抜を監視する状態監視手段を更に備え、
前記起動手段は、前記記憶媒体挿抜手段への記憶媒体の挿入が前記状態監視手段から通知されると、前記記憶媒体に記憶された前記設定情報、前記電子署名情報及び前記記憶媒体識別情報を前記読出手段に読み出させ、当該読出手段が読み出した前記記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動する
ことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記設定情報は、前記起動対象のプログラムのマウントを命令するマウント命令と、前記起動対象のプログラムの起動を命令する起動命令とを含み、
前記起動手段は、前記認証が成功した場合に、前記設定情報に含まれる前記マウント命令に応じて前記起動対象のプログラムをマウントし、前記設定情報に含まれる前記起動命令に応じて当該起動対象のプログラムを起動する
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記起動手段は、前記認証が成功した場合に、前記設定情報に含まれる前記マウント命令に応じて前記起動対象のプログラムをマウントするときに、当該起動対象のプログラムの認証チェックを行い、当該認証が成功した場合に、前記起動対象のプログラムをマウントし、前記起動命令に応じて当該起動対象のプログラムを起動する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記電子署名情報は、暗号鍵により暗号化され、
前記暗号鍵を記憶する鍵記憶手段を更に備え、
前記起動手段は、前記鍵記憶手段に記憶された前記暗号鍵を読み出し、前記読出手段が読み出した前記電子署名情報を前記暗号鍵により復号化し、復号化した電子署名情報及び前記記憶媒体識別情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記起動対象のプログラムを前記記憶手段から読み出して起動する
ことを特徴とする請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
第１の記憶媒体に記憶された前記設定情報、前記電子署名情報及び第１の記憶媒体を一意に識別可能な第１の記憶媒体識別情報を第２の記憶媒体に記憶させる記憶制御手段と、
前記第１の記憶媒体に記憶された前記設定情報を無効化する無効化手段とを更に備え、
前記読出手段は、前記記憶媒体挿抜手段に挿入された第２の記憶媒体に記憶された前記設定情報、前記電子署名情報及び当該第２の記憶媒体を一意に識別可能な第２の記憶媒体識別情報を読み出し、
前記読出手段が読み出した前記第２の記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が失敗した場合、前記第１の記憶媒体識別情報を前記読出手段に前記第２の記憶媒体から読み出させ、当該読出手段が読み出した第１の記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動する
ことを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
第１の記憶媒体に記憶された前記設定情報を第２の記憶媒体に記憶させる第１記憶制御手段と、
前記設定情報及び前記第２の記憶媒体を一意に識別可能な第２の記憶媒体識別情報を用いて前記電子署名情報を作成する作成手段と、
前記作成手段が作成した前記電子署名情報を第２の記憶媒体に記憶させる第２記憶制御手段とを更に備える
ことを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項８】
前記記憶手段は、ＮＡＮＤ ＦｌａｓｈＲＯＭである
ことを特徴とする請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項９】
画像を処理する画像処理手段と、前記画像処理手段が前記処理を行うためのプログラムであり、実行可能なプログラムが異なる複数種類のモデル機で使用される複数のプログラムを記憶する記憶手段と、記憶媒体を挿抜可能な記憶媒体挿抜手段と、読出手段と、起動手段とを備えた画像処理装置において実現される画像処理方法であって、
前記読出手段が、前記記憶媒体挿抜手段に挿入された記憶媒体に記憶された情報であり、前記複数のプログラムのうち起動対象のプログラムに係る設定情報、当該設定情報と前記記憶媒体を一意に識別可能な記憶媒体識別情報とを用いて作成された電子署名情報及び前記記憶媒体識別情報を読み出す読出ステップと、
前記起動手段が、前記読出手段が読み出した前記記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動する起動ステップとを含む
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、挿抜可能な記憶媒体を用いてプログラムを起動する画像処理装置及び画像処理方法に関するものである。
【背景技術】
【０００２】
近年、デジタルカメラの高画素化や携帯型デジタル音楽プレイヤーの小型化により、大容量でアクセス速度の速いＮＡＮＤ型フラッシュを使用した記憶媒体の需要が高まっている。また、近年の融合機は高機能化が進み、機器を制御するファームウェアは増大の一途をたどっている。そのため、今日では融合機に内蔵される記憶媒体として、小容量で高価なＮＯＲ型フラッシュではなく、大容量でメモリ単価の安いＮＡＮＤ型フラッシュを使うようになってきている。従来では、ＮＯＲ型フラッシュにファームウェアなどのソフトウェアが収まりきらないことがあるため、融合機においてオプションのソフトウェアとして使用されるオプションソフトをＳＤカードなどの可搬型記憶媒体に記憶させ、これを記憶媒体から読み出して実行する技術が提案されていた（例えば、特許文献１〜５参照）。
【０００３】
【特許文献１】特開２００５−２０２９３５号公報
【特許文献２】特開２００５−１７４２００号公報
【特許文献３】特開２００５−１７４１９９号公報
【特許文献４】特開２００５−１４８９３４号公報
【特許文献５】特開２００４−２８７８４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このような融合機においても、可搬型記憶媒体に記憶させていたオプションソフトをＮＡＮＤ型フラッシュに記憶させることにより、オプションソフトを記憶した可搬型記憶媒体の生産に係るコストを軽減することや、データ転送速度の向上が期待されている。一方で、オプションソフトがＮＡＮＤ型フラッシュに不正に複製される恐れもあり、オプションソフトが不正に使用されることのない仕組みも期待されている。
【０００５】
また、一般的にメーカーは一系統の融合機に対していくつかのモデル機を用意し、ユーザが希望する機能や価格にあった機器の提供を行っている。このとき、従来の融合機に対して、物理的なオプションとして例えばＨＤＤやネットワークカードといったハードウェアの追加によりモデル機として生産する場合がある。このようなモデル機に対しては生産上の部品管理を比較的行い易い。しかし、ファームウェアの有無によりモデル機が相違する場合、モデル機毎に、ファームウェアのインストールによるコントローラボードの作り分けが必要となる。このため、搭載されるファームウェアが違うだけのモデル機の数が増加すると、生産時には、見た目の同じ部品が増え、コントローラボードの組み付け間違いが起こりうる。
【０００６】
本発明は、上記に鑑みてなされたものであって、生産時のコントローラボードの組み付け間違いを抑制可能にすると共に、コントローラボード上のＮＡＮＤ型フラッシュに記憶されるオプションソフトが不正に使用されることを防ぐことが可能な画像処理装置及び画形成方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、画像を処理する画像処理手段と、前記画像処理手段が前記処理を行うためのプログラムであり、実行可能なプログラムが異なる複数種類のモデル機で使用される複数のプログラムを記憶する記憶手段と、記憶媒体を挿抜可能な記憶媒体挿抜手段と、前記記憶媒体挿抜手段に挿入された記憶媒体に記憶された情報であり、前記複数のプログラムのうち起動対象のプログラムに係る設定情報、当該設定情報と前記記憶媒体を一意に識別可能な記憶媒体識別情報とを用いて作成された電子署名情報及び前記記憶媒体識別情報を読み出す読出手段と、前記読出手段が読み出した前記記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動する起動手段とを備えることを特徴とする。
【０００８】
請求項２にかかる発明は、請求項１にかかる発明において、前記記憶媒体挿抜手段に対する記憶媒体の挿抜を監視する状態監視手段を更に備え、前記起動手段は、前記記憶媒体挿抜手段への記憶媒体の挿入が前記状態監視手段から通知されると、前記記憶媒体に記憶された前記設定情報、前記電子署名情報及び前記記憶媒体識別情報を前記読出手段に読み出させ、当該読出手段が読み出した前記記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動することを特徴とする。
【０００９】
請求項３にかかる発明は、請求項１又は２にかかる発明において、前記設定情報は、前記起動対象のプログラムのマウントを命令するマウント命令と、前記起動対象のプログラムの起動を命令する起動命令とを含み、前記起動手段は、前記認証が成功した場合に、前記設定情報に含まれる前記マウント命令に応じて前記起動対象のプログラムをマウントし、前記設定情報に含まれる前記起動命令に応じて当該起動対象のプログラムを起動することを特徴とする。
【００１０】
請求項４にかかる発明は、請求項３にかかる発明において、前記起動手段は、前記認証が成功した場合に、前記設定情報に含まれる前記マウント命令に応じて前記起動対象のプログラムをマウントするときに、当該起動対象のプログラムの認証チェックを行い、当該認証が成功した場合に、前記起動対象のプログラムをマウントし、前記起動命令に応じて当該起動対象のプログラムを起動することを特徴とする。
【００１１】
請求項５にかかる発明は、請求項１乃至４のいずれか一項にかかる発明において、前記電子署名情報は、暗号鍵により暗号化され、前記暗号鍵を記憶する鍵記憶手段を更に備え、前記起動手段は、前記鍵記憶手段に記憶された前記暗号鍵を読み出し、前記読出手段が読み出した前記電子署名情報を前記暗号鍵により復号化し、復号化した電子署名情報及び前記記憶媒体識別情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記起動対象のプログラムを前記記憶手段から読み出して起動することを特徴とする。
【００１２】
請求項６にかかる発明は、請求項１乃至５のいずれか一項にかかる発明において、第１の記憶媒体に記憶された前記設定情報、前記電子署名情報及び第１の記憶媒体を一意に識別可能な第１の記憶媒体識別情報を第２の記憶媒体に記憶させる記憶制御手段と、前記第１の記憶媒体に記憶された前記設定情報を無効化する無効化手段とを更に備え、前記読出手段は、前記記憶媒体挿抜手段に挿入された第２の記憶媒体に記憶された前記設定情報、前記電子署名情報及び当該第２の記憶媒体を一意に識別可能な第２の記憶媒体識別情報を読み出し、前記読出手段が読み出した前記第２の記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が失敗した場合、前記第１の記憶媒体識別情報を前記読出手段に前記第２の記憶媒体から読み出させ、当該読出手段が読み出した第１の記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動することを特徴とする。
【００１３】
請求項７にかかる発明は、請求項１乃至５のいずれか一項にかかる発明において、第１の記憶媒体に記憶された前記設定情報を第２の記憶媒体に記憶させる第１記憶制御手段と、前記設定情報及び前記第２の記憶媒体を一意に識別可能な第２の記憶媒体識別情報を用いて前記電子署名情報を作成する作成手段と、前記作成手段が作成した前記電子署名情報を第２の記憶媒体に記憶させる第２記憶制御手段とを更に備えることを特徴とする。
【００１４】
請求項８にかかる発明は、請求項１乃至７のいずれか一項にかかる発明において、前記記憶手段は、ＮＡＮＤ  ＦｌａｓｈＲＯＭであることを特徴とする。
【００１５】
請求項９にかかる発明は、画像を処理する画像処理手段と、前記画像処理手段が前記処理を行うためのプログラムであり、実行可能なプログラムが異なる複数種類のモデル機で使用される複数のプログラムを記憶する記憶手段と、記憶媒体を挿抜可能な記憶媒体挿抜手段と、読出手段と、起動手段とを備えた画像処理装置において実現される画像処理方法であって、前記読出手段が、前記記憶媒体挿抜手段に挿入された記憶媒体に記憶された情報であり、前記複数のプログラムのうち起動対象のプログラムに係る設定情報、当該設定情報と前記記憶媒体を一意に識別可能な記憶媒体識別情報とを用いて作成された電子署名情報及び前記記憶媒体識別情報を読み出す読出ステップと、前記起動手段が、前記読出手段が読み出した前記記憶媒体識別情報及び前記電子署名情報を用いて前記設定情報の認証チェックを行い、当該認証が成功した場合に、前記設定情報に応じて、前記起動対象のプログラムを前記記憶手段から読み出して起動する起動ステップとを含むことを特徴とする。
【発明の効果】
【００１６】
本発明によれば、生産時のコントローラボードの組み付け間違いを抑制可能になると共に、コントローラボード上のＮＡＮＤ型フラッシュに記憶されるオプションソフトが不正に使用されることを防ぐことが可能になる。
【発明を実施するための最良の形態】
【００１７】
以下に添付図面を参照して、この発明にかかる画像処理装置及び画像処理方法の最良な実施の形態を詳細に説明する。
【００１８】
[第１の実施の形態]
（１）構成
図１は、本実施の形態にかかる融合機のハードウェア構成を例示する図である。融合機１は、コントローラ６０と，オペレーションパネル８０と，ＦＣＵ８１と，エンジン部８２とを含む。コントローラ６０は、ＣＰＵ６１と，システムメモリ６２と，ノースブリッジ（ＮＢ）６３と，サウスブリッジ（ＳＢ）６４と，ＡＳＩＣ６６と，ローカルメモリ６７と，ＨＤＤ６８と、ネットワークインターフェースカード（ＮＩＣ）６９と，ＳＤカード用スロット７０と，ＵＳＢデバイス７１と，ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５と、ＩＥＥＥ１３９４デバイス７２と，セントロニクス７３と、ＮＶＲＡＭ７６と、ＴＰＭ７７とを含む。
【００１９】
オペレーションパネル８０は、コントローラ６０のＡＳＩＣ６６に接続されている。また、ＦＣＵ８１およびエンジン部８２は、コントローラ６０のＡＳＩＣ６６にＰＣＩバス８３で接続されている。
【００２０】
コントローラ６０は、ＡＳＩＣ６６にローカルメモリ６７，ＨＤＤ６８などが接続されると共に、ＣＰＵ６１とＡＳＩＣ６６とがＣＰＵチップセットのＮＢ６３を介して接続されている。コントローラ６０は、ＮＢ６３を介してＣＰＵ６１とＡＳＩＣ６６とを接続することにより、ＣＰＵ６１のインターフェースが公開されていない場合に対応する。なお、ＡＳＩＣ６６とＮＢ６３とはＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ  ）６５を介して接続されている。このように、ＡＳＩＣ６６とＮＢ６３とを低速のＰＣＩバスでなくＡＧＰ６５を介して接続することで、パフォーマンスの低下を防いでいる。
【００２１】
ＮＢ６３は、ＣＰＵ６１，システムメモリ６２，ＳＢ６４，ＡＳＩＣ６６，ＮＩＣ６９，ＳＤカード用スロット７０，ＵＳＢデバイス７１，ＩＥＥＥ１３９４デバイス７２およびセントロニクス７３を接続するためのブリッジである。
【００２２】
ＳＢ６４，ＮＩＣ６９，ＳＤカード用スロット７０，ＵＳＢデバイス７１，ＩＥＥＥ１３９４デバイス７２およびセントロニクス７３は、ＰＣＩバス７４を介してＮＢ６３に接続されている。なお、ＳＢ６４は、ＰＣＩバス７４とＲＯＭや周辺デバイス等とを接続するためのブリッジである。
【００２３】
ＣＰＵ６１は、ＳＢ６４を介して接続されるＲＯＭやＨＤＤ６８やＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶された各種ソフトウェアを読み出してこれを起動し、融合機１全体を制御すると共に、各種機能を実現させる。
【００２４】
システムメモリ６２は、融合機１の描画用メモリなどとして用いるメモリである。ローカルメモリ６７はコピー用画像バッファ，符号バッファとして用いるメモリである。
【００２５】
ＡＳＩＣ６６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣである。ＨＤＤ６８は、画像データや、文書データや、各種ソフトウェアや、フォントデータフォームなどを記憶する補助記憶装置である。
【００２６】
ＮＩＣ６９は、融合機１をネットワークに接続するインターフェース機器である。ＳＤカード用スロット７０はＳＤカードを挿抜可能なものであり、ＳＤカードの挿入または抜き出しに応じた割り込みを後述するＳＤカードアクセスドライバに対して行う。ＵＳＢデバイス７１，ＩＥＥＥ１３９４デバイス７２およびセントロニクス７３は、夫々の規格に準じたインターフェースである。ここではＵＳＢデバイス７１には、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５が接続される。ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５には、各種ソフトウェアが記憶される。ソフトウェアには、融合機１において必須となる必須ソフトと、オプションとして融合機１に組み込まれるオプションソフトとがある。ＮＶＲＡＭ７６は、ＣＰＵ６１が各種ソフトウェアを実行する際の各種データや各種ソフトウェアを記憶する。ＴＰＭ７７は、後述する電子署名ファイルを復号化するための暗号鍵を記憶する。
【００２７】
オペレーションパネル８０は、オペレータからの入力操作を受け付けると共に、オペレータに向けた表示を行う。エンジン部８２は、画像を処理する画像処理手段として、白黒レーザープリンタ（Ｂ＆Ｗ  ＬＰ）１１と，カラーレーザープリンタ（ＣｏｌｏｒＬＰ）１２と，スキャナ１３とを有する。ＦＣＵ８１は、ファクシミリ通信を制御するユニットであり、図示しないメモリを有する。このメモリは、例えば融合機１の電源がＯＦＦのときに受信したファクシミリデータを一時的に格納するために利用される。
【００２８】
図２は、融合機１のソフトウェア構成を例示する図である。融合機１は、ソフトウェア群２０と，融合機起動部５０とを有する。ソフトウェア群２０はアプリケーション３０とプラットフォーム４０とを有する。これらの実体は、ＲＯＭやＨＤＤ６８やＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶された各種ソフトウェアである。ＣＰＵ６１がこれらの各種ソフトウェアを読み出して実行することにより、以下に示す各種機能が実現される。
【００２９】
融合機起動部５０は、融合機１の電源投入時に最初に実行され、プラットフォーム４０やアプリケーション３０を起動する。アプリケーション３０は、プリンタ，コピー，ファクシミリおよびスキャナなどの画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うものである。
【００３０】
アプリケーション３０は、ページ記述言語（ＰＤＬ，ＰＣＬ）およびポストスクリプト（ＰＳ）を有するプリンタ用のソフトウェアであるプリンタアプリ３１と，コピー用のソフトウェアであるコピーアプリ３２と，ファクシミリ用ソフトウェアであるファックスアプリ３３と，スキャナ用ソフトウェアであるスキャナアプリ３４と，ネットワークファイル用ソフトウェアであるネットファイルアプリ３５とを有している。
【００３１】
また、プラットフォーム４０は、アプリケーション３０からの処理要求を解釈してハードウェア資源の獲得要求を発生するコントロールサービスと、Ｂ＆Ｗ  ＬＰ１１，ＣｏｌｏｒＬＰ１２及びスキャナ１３のうち１つ以上の管理を行ってコントロールサービスからの獲得要求を調停するシステムリソースマネージャ（以下、ＳＲＭという）４３と、オペレーティングシステム（以下、ＯＳという）４１とを有するように構成されている。
【００３２】
コントロールサービスは、システムコントロールサービス（以下、ＳＣＳという）４２，エンジンコントロールサービス（以下、ＥＣＳという）４４，メモリコントロールサービス（以下、ＭＣＳという）４５，オペレーションパネルコントロールサービス（以下、ＯＣＳという）４６，ファックスコントロールサービス（以下、ＦＣＳという）４７，ネットワークコントロールサービス（以下、ＮＣＳという）４８など、一つ以上のサービスモジュールを有するように構成されている。
【００３３】
なお、プラットフォーム４０は予め定義されている関数によりアプリケーション３０からの処理要求を受信可能とするソフトウェアプログラムインターフェース（以下、ＡＰＩという）を有するように構成されている。ＯＳ４１は、ＵＮＩＸ（登録商標）等であって、プラットフォーム４０およびアプリケーション３０の各ソフトウェアをプロセスとして並列実行する。
【００３４】
ＳＲＭ４３のプロセスは、ＳＣＳ４２と共にシステムの制御およびハードウェア資源の管理を行うものである。例えばＳＲＭ４３のプロセスは、エンジン，メモリ，ＨＤＤファイル，ホストＩ／Ｏ（セントロＩ／Ｆ，ネットワークＩ／Ｆ，ＩＥＥＥ１３９４  Ｉ／Ｆ，ＲＳ２３２Ｃ  Ｉ／Ｆなど）のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
【００３５】
具体的に、ＳＲＭ４３は要求されたハードウェア資源が利用可能であるか（他の要求により利用されていないかどうか）を判定し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に通知する。また、ＳＲＭ４３は上位層からの要求に対してハードウェア資源を利用するためのスケジューリングを行い、要求内容（例えば、プリンタエンジンによる紙搬送と作像動作，メモリ確保，ファイル生成など）を直接実施している。
【００３６】
ＳＣＳ４２のプロセスは、ソフトウェアの管理，オペレーションパネル８０の制御及び画面表示，ＬＥＤ表示，ハードウェア資源の管理，割り込みソフトウェア制御などの処理を行う。ＥＣＳ４４のプロセスは、白黒レーザープリンタ１１，カラーレーザープリンタ１２，スキャナ１３などのエンジンの制御を行う。
【００３７】
ＭＣＳ４５のプロセスは、画像メモリの取得および解放，ＨＤＤ６８の利用，画像データの圧縮および伸張などのメモリ制御を行う。ＯＣＳ４６のプロセスは、オペレーションパネル８０の制御を行う。
【００３８】
ＦＣＳ４７のプロセスは、システムコントローラの各ソフトウェア層からＰＳＴＮまたはＩＳＤＮ網を利用したファクシミリ送受信，バックアップ用のメモリで管理されている各種ファクシミリデータの登録／引用，ファクシミリ読み取り，ファクシミリ受信印刷，融合送受信を行うためのＡＰＩを提供する。
【００３９】
ＮＣＳ４８のプロセスは、ネットワークＩ／Ｏを必要とするソフトウェアに対して共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルによって受信したデータを各ソフトウェアに振り分けたり、各ソフトウェアからのデータをネットワーク側に送信する際の仲介を行う。
【００４０】
例えばＮＣＳ４８は、ネットワークを介して接続されるネットワーク機器とのデータ通信をｈｔｔｐｄ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｄａｅｍｏｎ）により、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）で制御する。
【００４１】
融合機１は、各ソフトウェアで共通的に必要な処理をプラットフォーム４０で一元的に処理することができる。このような融合機１のＣＰＵ６１は、ＯＳ４１上にＳＣＳ４２，ＳＲＭ４３，ＥＣＳ４４，ＭＣＳ４５，ＯＣＳ４６，ＦＣＳ４７及びＮＣＳ４８をそれぞれプロセスとして起動して実行させると共に、アプリケーション３０を形成するプリンタアプリ３１，コピーアプリ３２，ファックスアプリ３３，スキャナアプリ３４，ネットファイルアプリ３５を適宜起動して実行させることにより、各種機能を実現させる。
【００４２】
図３は、融合機起動部５０の構成を例示する図である。融合機起動部５０は、ＲＯＭモニタ５１と，プログラム起動部５２とを有する。ＢＩＯＳおよびブートローダとしてのＲＯＭモニタ５１は電源投入時に実行されるものであり、ハードウェアの初期化，コントローラ６０の診断，ソフトウェアの初期化などを行う。ＲＯＭモニタ５１は、カーネルおよびルートファイルシステムをシステムメモリ６２上に展開してカーネルを起動する。そして、カーネルはルートファイルシステムをマウントする。
【００４３】
アプリ／サービス起動プログラムとしてのプログラム起動部５２は、カーネルから呼び出されるものであり、システムメモリ６２及びローカルメモリ６７上にメモリ領域を確保する。プログラム起動部５２は、融合機１で最初に起動されるプロセスであって、所定の設定ファイルに従ってファイルシステムをマウントする。プログラム起動部５２は、融合機１の動作に必要なアプリケーション３０およびプラットフォーム４０のプログラムを所定の設定ファイル(設定情報)に従ってＲＯＭやＨＤＤ６８やＮＡＮＤ  ＦｌａｓｈＲＯＭ７５などから読み出し、読み出した各プログラムをシステムメモリ６２及びローカルメモリ６７上に確保したメモリ領域に展開してアプリケーション３０およびプラットフォーム４０のプロセスを起動するものである。
【００４４】
具体的には、プログラム起動部５２は、起動時に所定のマスタ設定ファイルを読み込み、読み込んだマスタ設定ファイルに従ってファイルシステムのマウントおよびプロセスの起動を行う。例えば図４に例示されるファイルツリーの場合、プログラム起動部５２はマスタ設定ファイルとして「／ｅｔｃ／＋ｉｎｉｔ．ｃｏｎｆ」を起動時に読み込む。
【００４５】
プログラム起動部５２は、読み込んだマスタ設定ファイルにマウントの記述が存在した場合、そのマウントの記述に従ってマウント処理を実行する。例えば図５に例示されるマスタ設定ファイルの場合、プログラム起動部５２はマウントの記述に従ってＳＤカード０〜３上のファイルシステムのマウント処理を行う。
【００４６】
また、プログラム起動部５２はマウントしたファイルシステムのルートに所定の設定ファイルが存在する場合、又はマウントしたファイルシステムのルートに所定の拡張子のファイルを含む所定のディレクトリが存在する場合、所定の設定ファイル又は所定の拡張子のファイルを読み込んでファイルシステムのマウント処理を行う。
【００４７】
例えばマウントしたＳＤカードファイルシステムのルートに図６に例示されるディレクトリ「ｉｎｉｔ．ｄ」が存在し、そのディレクトリに拡張子「ｃｏｎｆ」又は「ｃｎｆ」のファイルが含まれる場合、プログラム起動部５２はそのファイルに存在するマウントの記述に従ってマウント処理を実行する。
【００４８】
例えばマウントしたＳＤカードファイルシステムのルートに図７に例示される設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」や図８に示される設定ファイル「ｓｃａｎｎｅｒ．ｃｎｆ」が存在する場合、プログラム起動部５２は設定ファイルに存在するマウントの記述に従ってマウント処理を実行する。
【００４９】
なお、プログラム起動部５２がマウントできるファイルシステムは、図５に例示される「ｇｚｒｏｍｆｓ」などがある。このファイルシステム「ｇｚｒｏｍｆｓ」は、ｇｚｉｐ圧縮されたＲＯＭＦＳ形式のファイルを、システムメモリ６２やローカルメモリ６７やＮＶＲＡＭ７６などに確保されたメモリ領域上に展開してマウントする。
【００５０】
図９は、以上のような構成の融合機１において、ＳＤカードの挿入を契機に上述のオプションソフトを起動する機能の構成を例示する図である。ＳＤカード１２６は融合機１の電源を投入したままの状態で、いわゆる活線挿抜が可能である。ＳＤカード用スロット７０は、ＳＤカード１２６を挿抜可能なものであり、ＳＤカード１２６の挿入または抜き出しに応じた割り込みをＳＤカードアクセスドライバ１２４に対して行う。
【００５１】
ＳＤカードアクセスドライバ１２４は、ＳＤカード１２６に対するアクセス制御を行うものであり、ＳＤカード用スロット７０からの割り込みに応じてＳＤカード１２６の挿入または抜き出しをＳＤカードステータスモニタドライバ１２３に通知する。
【００５２】
ＳＤカードステータスモニタドライバ１２３は、ＳＤカード１２６の挿入，抜き出し，マウントなど、ＳＤカード１２６のステータス情報を管理するものであり、ＳＤカード１２６のステータス情報をプログラム起動部５２に通知する。
【００５３】
プログラム起動部５２は、ＳＤカードステータスモニタドライバ１２３からのＳＤカード１２６のステータス情報に応じてＳＤカードチェックプログラム１２１を起動する。また、プログラム起動部５２は、ＳＤカード１２６に記憶された後述の設定ファイルを用いて、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶されたオプションソフトのモジュールを読み出しこれを起動する。
【００５４】
ＳＤカードチェックプログラム１２１は、ＳＤカード１２６についてパーティションが正しいか，ファイルシステムの状態が正しいかをチェックし、ファイルシステム１２２として使用可能な状態にするためのものである。ＳＤカードチェックプログラム１２１は、例えばＳＤカード１２６のチェック機能，マウント機能，アンマウント機能，状態通知機能などを有している。
【００５５】
尚、ＳＤカードチェックプログラム１２１、ＳＤカードステータスモニタドライバ１２３及びＳＤカードアクセスドライバ１２４は、例えばＲＯＭやＨＤＤ６８に記憶されている。
【００５６】
図１０は、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶される各種ソフトウェアのファイル構成と、ＳＤカード１２６におけるファイル構成とを模式的に示す図である。「ｎｅｔｂｓｄ」は、融合機１として機能するためのオペレーティングシステム（ＯＳ４１）を表す。「ｎｅｔｂｓｄ．ｍａｃ」は、ＯＳ４１の認証チェックに利用する電子署名ファイルを表す。「ｒｏｏｔｆｓ」は、ＯＳ４１のルートファイルシステムを表す。「ｒｏｏｔｆｓ．ｍａｃ」は、ＯＳ４１のルートファイルシステムの認証チェックに利用する電子署名ファイルを表す。
【００５７】
必須ソフトのファイル構成においては、「必須ソフト.ｍｏｄ」と、「必須ソフト.ｍａｃ」と、「必須ソフト.ｃｎｆ」と、「必須ソフト.ｌｉｃ」とを含む。「必須ソフト.ｍｏｄ」は、必須ソフトのモジュールを表す。「必須ソフト.ｍａｃ」は、必須ソフトのモジュールの認証チェックに利用する電子署名ファイルを表す。「必須ソフト.ｃｎｆ」は、必須ソフトに係る設定ファイルを表す。「必須ソフト.ｌｉｃ」は、設定ファイル「必須ソフト.ｃｎｆ」の認証チェックに利用する電子署名ファイルを表す。
【００５８】
オプションソフトのファイル構成においては、「オプションソフト.ｍｏｄ」と、「オプションソフト.ｍａｃ」と、「オプションソフト.ｃｎｆ」と、「オプションソフト.ｌｉｃ」とを含む。本実施の形態においては、「オプションソフト.ｍｏｄ」と、「オプションソフト.ｍａｃ」とがＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶され、「オプションソフト.ｃｎｆ」と、「オプションソフト.ｌｉｃ」とがＳＤカード１２６に記憶される。また、ＳＤカード１２６には、当該ＳＤカード１２６を一意に識別可能な「ＳＤＩＤ」が付与され記憶されている。
【００５９】
「オプションソフト.ｍｏｄ」は、オプションソフトのモジュールを表す。「オプションソフト.ｍａｃ」は、オプションソフトのモジュールの認証チェックに利用する電子署名ファイルを表す。「オプションソフト.ｃｎｆ」は、オプションソフトに係る設定ファイルを表す。「オプションソフト.ｌｉｃ」は、設定ファイル「オプションソフト.ｃｎｆ」の認証チェックに利用する電子署名ファイルであり、当該設定ファイル及びＳＤカードのＳＤＩＤのメッセージダイジェスト（以下、ＭＤという）から作成された電子署名ファイル（電子署名情報）を表す。
【００６０】
尚、必須ソフト及びオプションソフトは各々複数存在しえるが、ここでは簡略化のために各々１つを例示している。また、必須ソフトとは、例えば、上述のＳＣＳ４２，ＳＲＭ４３，ＭＣＳ４５，ＯＣＳ４６，コピーアプリ３２などである。オプションソフトとは、例えば、プリンタアプリ３１，ファックスアプリ３３，スキャナアプリ３４，ネットファイルアプリ３５などのうち少なくとも１つである。
【００６１】
（２）動作
＜起動処理＞
次に、本実施の形態にかかる融合機１が行うオプションソフトの起動処理の手順について説明する。融合機１のプログラム起動部５２は、融合機１のアプリケーション３０およびプラットフォーム４０のプロセスを起動したあと、イベント待ち状態となる。図１１は、イベント待ち処理の手順を示すフローチャートである。ステップＳ１では、プログラム起動部５２が、イベントの発生有無を判定する。イベントの発生が無いと判定すると（ステップＳ１：ＮＯ）、プログラム起動部５２はステップＳ１の処理を繰り返す。イベントの発生が有ると判定すると（ステップＳ１：ＹＥＳ）、プログラム起動部５２はステップＳ２に進む。
【００６２】
例えばＳＤカード１２６がＳＤカード用スロット７０に挿入されると、ＳＤカードアクセスドライバ１２４はＳＤカード用スロット７０からの割り込みに応じてＳＤカード１２６の挿入をＳＤカードステータスモニタドライバ１２３に通知する。そして、ＳＤカードステータスモニタドライバ１２３は、ＳＤカード１２６の挿入をプログラム起動部５２に通知する。プログラム起動部５２は、ＳＤカードステータスモニタドライバ１２３からＳＤカード１２６の挿入が通知されたときにイベントの発生があると判定する。
【００６３】
また、ＳＤカード１２６がＳＤカード用スロット７０から抜き出されると、ＳＤカードアクセスドライバ１２４はＳＤカード用スロット７０からの割り込みに応じてＳＤカード１２６の抜き出しをＳＤカードステータスモニタドライバ１２３に通知する。そして、ＳＤカードステータスモニタドライバ１２３は、ＳＤカード１２６の抜き出しをプログラム起動部５２に通知する。プログラム起動部５２は、ＳＤカードステータスモニタドライバ１２３からＳＤカード１２６の抜き出しが通知されたときにイベントの発生があると判定する。
【００６４】
ステップＳ２では、プログラム起動部５２が、イベントの内容を判定する。イベントの内容がＳＤカード１２６の挿入検知である場合、プログラム起動部５２はステップＳ３に進み、ＳＤカード挿入検知処理を行う。図１２は、ＳＤカード挿入検知処理の手順を示すフローチャートである。ステップＳ２１では、プログラム起動部５２が、ＳＤカードチェックプログラム１２１を起動させる。ステップＳ２１に続いてステップＳ２２に進み、ＳＤカードチェックプログラム１２１はＳＤカード１２６のマウントを行い、ＳＤカード１２６のマウントを行った旨をＳＤカードステータスモニタドライバ１２３に通知して処理を停止する。尚、このとき、ＳＤカード１２６のＳＤＩＤもマウントされる。
【００６５】
次いで、ステップＳ２３では、プログラム起動部５２は、マウントされたＳＤカード１２６から設定ファイルを検索する。そして、マウントされたＳＤカード１２６に設定ファイルが存在すれば（ステップＳ２４：ＹＥＳ）、ステップＳ２５に進む。なお、マウントされたＳＤカード１２６に設定ファイルが存在しなければ（ステップＳ２４：ＮＯ）、ステップＳ３０に進む。ステップＳ２５では、プログラム起動部５２が、電子認証チェック用ライブラリを用いて設定ファイルの認証チェックを行う。図１３は、設定ファイルの認証チェックの処理の手順を示すフローチャートである。
【００６６】
ステップＳ３１では、プログラム起動部５２が、ＳＤカード１２６に設定ファイルの認証チェックに利用する対象ファイルが存在するか否かを判定する。設定ファイルの認証チェックに利用する対象ファイルは、設定ファイルと、設定ファイルおよびＳＤカード１２６のＳＤＩＤのＭＤから作成された電子署名ファイルとを含む。
【００６７】
図１４は、ＳＤカード１２６に記憶された対象ファイルの一例のイメージ図である。ここでは、オプションソフトとしてプリンタアプリ３１に係る対象ファイルを例示する。同図においては、「ｐｒｉｎｔｅｒ．ｃｎｆ」がプリンタアプリ３１の設定ファイルを表す。「ｐｒｉｎｔｅｒ．ｌｉｃ」が「ｐｒｉｎｔｅｒ．ｃｎｆ」の認証チェックに利用する電子署名ファイルを表す。
【００６８】
プログラム起動部５２は、設定ファイルの認証チェックに利用する対象ファイルが存在すると判定すると（ステップＳ３１：ＹＥＳ）、ＳＤカード１２６から設定ファイルおよび設定ファイルの認証チェックに利用する電子署名ファイルを取得してステップＳ３２に進む。
【００６９】
ステップＳ３２では、プログラム起動部５２が、ＳＤカード１２６のＳＤＩＤをＳＤカード１２６から取得する。ステップＳ３３に進み、プログラム起動部５２はステップＳ３１で取得した設定ファイルと、ステップＳ３２で取得したＳＤカード１２６のＳＤＩＤとのＭＤ１を作成する。ステップＳ３３に続いてステップＳ３４に進み、プログラム起動部５２は、ＴＰＭ７７に記憶された暗号鍵を読み出しこれを用いて、ステップＳ３１で取得した電子署名ファイルを復号化してＭＤ２を作成する。
【００７０】
ステップＳ３５に進み、プログラム起動部５２はステップＳ３３で作成したＭＤ１とステップＳ３４で作成したＭＤ２とが等しいか否かを判定する。ＭＤ１とＭＤ２とが等しいと判定すると（ステップＳ３５：ＹＥＳ）、プログラム起動部５２はステップＳ３６に進み、設定ファイルの認証チェックがＯＫと判定する。
【００７１】
一方、ＭＤ１とＭＤ２とが等しくないと判定すると（ステップＳ３５：ＮＯ）、プログラム起動部５２はステップＳ３７に進み、設定ファイルの認証チェックがＮＧと判定する。ＭＤ１とＭＤ２とが等しくなければ、ＳＤカード１２６に記憶されているファイルは不正にコピーされた可能性が高いためである。
【００７２】
なお、設定ファイルの認証チェックに利用する対象ファイルが存在しないと判定すると（ステップＳ３１：ＮＯ）、プログラム起動部５２はステップＳ３７に進み、設定ファイルの認証チェックがＮＧと判定する。
【００７３】
図１２に戻り、プログラム起動部５２は設定ファイルの認証チェックがＯＫであれば（ステップＳ２５：ＹＥＳ）、ステップＳ２６に進み、図１５に例示される設定ファイルの解析を行う。なお、プログラム起動部５２は設定ファイルの認証チェックがＮＧであれば（ステップＳ２５：ＮＯ）、ステップＳ２３に進む。
【００７４】
図１５は、設定ファイルの一例のイメージ図である。設定ファイルは、対象のモジュールの読み出しを命令する読出命令と、対象野モジュールの起動を命令する起動命令とを含む。同図に示される１行目のデータはマウント命令を表し、ｇｚｉｐ圧縮されたＲＯＭＦＳ形式のファイルであり、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５にある「ｒｏｍｏｐｔ／ｐｒｉｎｔｅｒ．ｍｏｄ」を、マウントポイント「／ａｒｃｈ／ｐｒｉｎｔｅｒ」へマウントする命令を表している。「ｐｒｉｎｔｅｒ．ｍｏｄ」はプリンタアプリ３１を起動するためのモジュールを表す。同図に示される２行目のデータは起動命令を表し、マウント命令によりマウントしたモジュールを起動する命令を表している。
【００７５】
ステップＳ２６に続いてステップＳ２７に進み、ＥＯＦ（Ｅｎｄ  Ｏｆ  Ｆｉｌｅ）を検索したか否かを判定する。ＥＯＦを検索したと判定すると（ステップＳ２７：ＹＥＳ）、ステップＳ２３に戻る。一方、ＥＯＦを検索していないと判定すると（ステップＳ２７：ＮＯ）、ステップＳ２８に進む。
【００７６】
ステップＳ２８では、プログラム起動部５２が、設定ファイルにマウントの記述があれば、電子認証チェック用ライブラリを用いてマウント対象のモジュールの認証チェックを行う。図１６は、マウント対象モジュールの認証チェックの処理の手順を示すフローチャートである。
【００７７】
ステップＳ４１では、プログラム起動部５２が、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５にマウント対象モジュールの認証チェックに利用する対象ファイルが存在するか否かを判定する。マウント対象モジュールの認証チェックに利用する対象ファイルは、マウント対象のモジュールと、モジュールのＭＤから作成された電子署名ファイルとを含む。
【００７８】
マウント対象モジュールの認証チェックに利用する対象ファイルが存在すると判定すると（ステップＳ４１：ＹＥＳ）、プログラム起動部５２はＮＡＮＤ  ＦｌａｓｈＲＯＭ７５からマウント対象のモジュールおよびマウント対象のモジュールの認証チェックに利用する電子署名ファイルを取得してステップＳ４３に進む。
【００７９】
ステップＳ４３に進み、プログラム起動部５２はステップＳ４１で取得したモジュールのＭＤ１を作成する。ステップＳ４４に進み、プログラム起動部５２はステップＳ４１で取得した電子署名ファイルを暗号鍵で復号化してＭＤ２を作成する。
【００８０】
ステップＳ４５に進み、プログラム起動部５２はステップＳ４３で作成したＭＤ１とステップＳ４４で作成したＭＤ２とが等しいか否かを判定する。ＭＤ１とＭＤ２とが等しいと判定すると（ステップＳ４５：ＹＥＳ）、プログラム起動部５２はステップＳ４６に進み、マウント対象モジュールの認証チェックがＯＫと判定する。
【００８１】
一方、ＭＤ１とＭＤ２とが等しくないと判定すると（ステップＳ４５：ＮＯ）、プログラム起動部５２はステップＳ４７に進み、マウント対象モジュールの認証チェックがＮＧと判定する。ＭＤ１とＭＤ２とが等しくなければ、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶されているファイルはコピーや改竄などの不正を受けた可能性が高いためである。
【００８２】
なお、マウント対象モジュールの認証チェックに利用する対象ファイルが存在しないと判定すると（ステップＳ４１：ＮＯ）、プログラム起動部５２はステップＳ４７に進み、マウント対象モジュールの認証チェックがＮＧと判定する。
【００８３】
図１２に戻り、プログラム起動部５２はマウント対象モジュールの認証チェックがＯＫであれば（ステップＳ２８：ＹＥＳ）、ステップＳ２９に進み、マウント対象モジュールをマウントしてステップＳ２６に戻る。なお、プログラム起動部５２はＳＤカード１２６に記憶されている全ての設定ファイルの認証チェックを行うまで、ステップＳ２３〜Ｓ２９の処理を繰り返す。
【００８４】
ＳＤカード１２６に記憶されている全ての設定ファイルの認証チェックを行ったあと、プログラム起動部５２はマウントされたＳＤカード１２６に設定ファイルが存在しないと判定して（ステップＳ２４：ＮＯ）、ステップＳ３０に進む。ステップＳ３０では、プログラム起動部５２が、ステップＳ２９でマウントしたモジュールを実行する。なお、マウント対象モジュールの認証チェックがＮＧであるモジュールは、ステップＳ２９でマウントされないため、ステップＳ３０で実行されない。
【００８５】
従って、以上のような構成よれば、ＳＤカード１２６の挿入を契機に、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶されたオプションソフトを安全に起動することができる。このため、オプションソフトを複製して不正に使用することを抑制することができる。また、融合機１に内蔵されるＮＡＮＤ  ＦｌａｓｈＲＯＭ７５からオプションソフトを読み出して起動することにより、ＳＤカードから読み出して起動するより高速に起動することができるため、ユーザの利便性を向上させることができる。また、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に各種のオプションソフトを記憶させることができるため、実行可能なオプションソフトが異なるモデル機として生産される融合機１について、生産時におけるコントローラボードの組み付け間違いのリスクを軽減することもできる。
【００８６】
[変形例]
なお、本発明は前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。また、以下に例示するような種々の変形が可能である。
【００８７】
＜変形例１＞
上述の実施の形態においては、オプションソフトとして、図２に示したプリンタアプリ３１について説明したが、オプションソフトは、これに限らず、例えば、コピーアプリ３２、ファックスアプリ３３、スキャナアプリ３４、ネットファイルアプリ３５などであっても良い。
【００８８】
また、上述の実施の形態においては、画像処理装置として、画像を処理する画像処理手段を複数有する融合機を取り扱った。しかし、画像処理装置は、画像を処理する画像処理手段を少なくとも１つ有するコピー装置、スキャナ装置、ファックス装置などであっても良い。
【００８９】
＜変形例２＞
上述の実施の形態においては、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５は、ＵＳＢデバイス７１に接続されるのではなく、ＰＣＩバス７４に直接接続されるように構成しても良い。
【００９０】
また、上述の実施の形態においては、暗号鍵をＴＰＭ７７に記憶させるように構成したが、融合機１はＴＰＭ７７を備えず、暗号鍵をＮＶＲＡＭ７６やＨＤＤ６８やＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶させるように構成しても良い。
【００９１】
＜変形例３＞
上述の実施の形態の図１４においては、１つのオプションソフトに係る設定ファイル及び電子署名ファイルがＳＤカード１２６に記憶される例を示したが、複数の異なるオプションソフトに係る設定ファイル及び電子署名ファイルがＳＤカード１２６に記憶されるようにしても良い。このような構成においては、オプションソフトのライセンスキーとして機能する記憶媒体を一つの記憶媒体に集約することができる。このため、記憶媒体を挿抜可能な拡張スロットを必要最低限に抑えることができ、コストも低減できる。
【００９２】
＜変形例４：移動処理＞
上述の実施の形態においては、ＳＤカード１２６に記憶された上述の設定ファイル及び電子署名ファイルを他のＳＤカードに移動可能にしても良い。この場合、融合機１は、例えば、ＳＤカード用スロットを２つ以上有する。１つのＳＤカード用スロットに挿入されたＳＤカード１２６に記憶された上述の設定ファイル及び電子署名ファイルを、他のＳＤカードスロットに挿入された他のＳＤカードに移動させるための構成は、例えば、特開２００５−１７４１９９号公報、特開２００５−１７４２００号公報に記載されているため、ここではその詳細な説明を省略する。尚、本実施の形態においては、プログラムデータとして例えば「ｐｒｉｎｔｅｒ．ｍｏｄ」及びモジュール電子認証として例えば「ｐｒｉｎｔｅｒ．ｍａｃ」が予めＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶されており、ライセンスデータとして設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」及びライセンス電子署名として電子署名ファイル「ｐｒｉｎｔｅｒ．ｌｉｃ」がＳＤカード１２６に記憶されているものとする。そして、例えば、図１７に例示されるＳＤカード１２６及びＳＤカード１２７が挿入された融合機１のＳＣＳ４２が、ＳＤカード１２６に記憶された設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」、電子署名ファイル「ｐｒｉｎｔｅｒ．ｌｉｃ」及びＳＤカード１２６のＳＤＩＤを取得し、これらをＳＤカード１２７に記憶させる。また、ＳＣＳ４２は、ＳＤカード１２６に記憶された電子署名ファイル「ｐｒｉｎｔｅｒ．ｌｉｃ」を削除したり、ＳＤカード１２６に記憶された設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」に対して無効化フラグを付与したりして、ＳＤカード１２６に記憶された設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」を無効化する。
【００９３】
そして、融合機１は、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶された「ｐｒｉｎｔｅｒ．ｍｏｄ」を起動する場合に、上述の図１２に示したステップＳ２５において、ＳＤカード１２７に記憶された設定ファイルの認証チェックの処理を行う際、図１８のフローチャートに例示された手順に従う。この処理を行うのは、ＳＣＳ４２でも良いが、ここではプログラム起動部５２が行うものとする。
【００９４】
プログラム起動部５２は、まず、ＳＤカード１２７に記憶された設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」について、当該ＳＤカード１２７を一意に識別可能なＳＤＩＤ（オリジナルＳＤＩＤという）を用いて当該設定ファイルの電子認証を行う（ステップＳ３５１）。すなわち、オリジナルＳＤＩＤと設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」とを例えばメッセージダイジェストによって数値化し、その値と電子署名ファイル「ｐｒｉｎｔｅｒ．ｌｉｃ」との値を比較する。
【００９５】
ステップＳ３５１に続いてステップＳ３５２に進み、プログラム起動部５２は、認証に成功したか（比較した値が一致したか）を判断する。認証に成功したと判断した場合は、プログラム起動部５２は、そのまま設定ファイルの認証処理を正常終了させる。認証対象に係る設定ファイルが、ＳＤカード１２７以外のＳＤカードから移動されたものでない場合はこのようなケースに該当する。
【００９６】
一方、ステップＳ３５２において認証に失敗したと判断した場合はステップＳ３５３に進み、プログラム起動部５２は、ＳＤカード１２７に、オリジナルＳＤＩＤ以外のＳＤカードのＳＤＩＤ（以下、「他のＳＤＩＤ」という。）が書き込まれていないか否かを確認する。他のＳＤＩＤが書き込まれていない場合は、プログラム起動部５２は、設定ファイルは不正なものとして認証処理を異常終了させる。認証対象の設定ファイルが、移動されたものではないが改竄されたものであるような場合がこのようなケースに該当する。
【００９７】
他のＳＤＩＤがＳＤカード１２７に書き込まれている場合はステップＳ３５４に進み、プログラム起動部５２は、他のＳＤＩＤに基づいて設定ファイルの認証を行う。そして、ステップＳ３５５で認証に成功したと判断した場合は、プログラム起動部５２は、設定ファイルの認証処理を正常終了させる。認証対象の設定ファイルが他のＳＤカードより移動されたものである場合がこのようなケースに該当する。上述の例では、設定ファイルがＳＤカード１２６からＳＤカード１２７に移動されているので、このケースに該当する。
【００９８】
尚、ステップＳ３５５で認証に失敗したと判断した場合は、プログラム起動部５２は、更に別の「他のＳＤＩＤ」がある場合は、それらに基づいて認証処理を繰り返し、認証された場合には正常終了させ、いずれの「他のＳＤＩＤ」によっても認証されなかった場合は異常終了させる。
【００９９】
以降、プログラム起動部５２は、上述の図１２に示した処理の手順に従って処理を行う。このような構成によれば、ＳＤカード１２６に記憶された設定ファイル及び電子署名ファイルを他のＳＤカード１２７に移動させた場合であっても、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶されたオプションソフトを安全にマウントし実行することが可能になる。
【０１００】
尚、移動元のＳＤカード（ＳＤカード１２６）のＳＤＩＤは、必ずしも、移動先のＳＤカード１２７に記憶させる必要はなく、融合機１が参照可能な記憶領域、例えば、ＨＤＤ６８やＮＡＮＤ  ＦｌａｓｈＲＯＭ７５などに記憶させるようにしても良い。
【０１０１】
また、融合機１は、移動元のＳＤカード１２６のＳＤＩＤを設定情報の認証に用いないようにしても良く、例えば、移動先のＳＤカード１２７のＳＤＩＤを用いて、設定ファイルに係る電子署名ファイルを新たに作成するようにしても良い。例えば、ＳＤカード１２６及びＳＤカード１２７が挿入された融合機１のＳＣＳ４２が、ＳＤカード１２６に記憶された設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」、電子署名ファイル「ｐｒｉｎｔｅｒ．ｌｉｃ」及びＳＤカード１２６のＳＤＩＤを取得した後、電子署名ファイル「ｐｒｉｎｔｅｒ．ｌｉｃ」をＳＤカード１２６から削除する。次いで、ＳＣＳ４２は、設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」をＳＤカード１２７に記憶させ、当該設定ファイルと、ＳＤカード１２７のＳＤＩＤとを用いて生成し暗号鍵を用いて暗号化した電子署名ファイル「ｐｒｉｎｔｅｒ．ｌｉｃ」をＳＤカード１２７に記憶させる。このような構成によれば、融合機１は、上述の実施の形態と同様にして、図１２に示したステップＳ２５の処理を行うことができる。この結果、ＳＤカード１２６に記憶された設定ファイルを他のＳＤカード１２７に移動させた場合であっても、ＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶されたオプションソフトを安全にマウントし実行することが可能になる。
【図面の簡単な説明】
【０１０２】
【図１】本実施の形態にかかる融合機のハードウェア構成を例示する図である。
【図２】同実施の形態にかかる融合機１のソフトウェア構成を例示する図である。
【図３】同実施の形態にかかる融合機起動部５０の構成を例示する図である。
【図４】同実施の形態にかかるファイルツリーの一例のイメージ図である。
【図５】同実施の形態にかかるマスタ設定ファイルの一例のイメージ図である。
【図６】同実施の形態にかかる設定ファイル「ｐｒｉｎｔｅｒ．ｃｎｆ」の一例のイメージ図である。
【図７】同実施の形態にかかる設定ファイル「ｓｃａｎｎｅｒ．ｃｎｆ」の一例のイメージ図である。
【図８】同実施の形態にかかるＳＤカードのファイルツリーの一例のイメージ図である。
【図９】同実施の形態にかかるＳＤカードの挿入を契機に上述のオプションソフトを起動する機能の構成を例示する図である。
【図１０】同実施の形態にかかるＮＡＮＤ  ＦｌａｓｈＲＯＭ７５に記憶される各種ソフトウェアのファイル構成と、ＳＤカード１２６におけるファイル構成とを模式的に示す図である。
【図１１】同実施の形態にかかるイベント待ち処理の手順を示すフローチャートである。
【図１２】同実施の形態にかかるＳＤカード挿入検知処理の手順を示すフローチャートである。
【図１３】同実施の形態にかかる設定ファイルの認証チェックの処理の手順を示すフローチャートである。
【図１４】同実施の形態にかかるＳＤカード１２６に記憶された対象ファイルの一例のイメージ図である。
【図１５】同実施の形態にかかる設定ファイルの一例のイメージ図である。
【図１６】同実施の形態にかかるマウント対象モジュールの認証チェックの処理の手順を示すフローチャートである。
【図１７】同実施の形態の一変形例にかかる設定ファイル及び電子署名ファイルを他のＳＤカードに移動させる形態を模式的に示す図である。
【図１８】同変形例にかかる設定ファイルの認証処理の手順を示すフローチャートである。
【符号の説明】
【０１０３】
１    融合機
１１    白黒レーザープリンタ
１２    カラーレーザープリンタ
１３    スキャナ
２０    ソフトウェア群
３０    アプリケーション
３１    プリンタアプリ
３２    コピーアプリ
３３    ファックスアプリ
３４    スキャナアプリ
３５    ネットファイルアプリ
４０    プラットフォーム
４１    オペレーティングシステム（ＯＳ）
４２    システムコントロールサービス（ＳＣＳ）（記憶制御手段、無効化手段、第１記憶制御手段、第２記憶制御手段、作成手段）
４３    システムリソースマネージャ（ＳＲＭ）
４４    エンジンコントロールサービス（ＥＣＳ）
４５    メモリコントロールサービス（ＭＣＳ）
４６    オペレーションパネルコントロールサービス（ＯＣＳ）
４７    ファックスコントロールサービス（ＦＣＳ）
４８    ネットワークコントロールサービス（ＮＣＳ）
５０    融合機起動部
５１    ＲＯＭモニタ
５２    プログラム起動部（起動手段）
６２    システムメモリ
６７    ローカルメモリ
６８    ハードディスク装置（ＨＤＤ）
７０    ＳＤカード用スロット（記憶媒体挿抜手段）
７５    ＮＡＮＤ  ＦｌａｓｈＲＯＭ（記憶手段）
７６    ＮＶＲＡＭ
７７    ＴＰＭ（鍵記憶手段）
８０    オペレーションパネル
８２    エンジン部
１２１    ＳＤカードチェックプログラム
１２２    ファイルシステム
１２３    ＳＤカードステータスモニタドライバ（状態監視手段）
１２４    ＳＤカードアクセスドライバ（読出手段）
１２６    ＳＤカード（記憶媒体）
１２７    ＳＤカード（記憶媒体）
【図１】
0005095325.tif 000002
【図２】
0005095325.tif 000003
【図３】
0005095325.tif 000004
【図４】
0005095325.tif 000005
【図５】
0005095325.tif 000006
【図６】
0005095325.tif 000007
【図７】
0005095325.tif 000008
【図８】
0005095325.tif 000009
【図９】
0005095325.tif 000010
【図１０】
0005095325.tif 000011
【図１１】
0005095325.tif 000012
【図１２】
0005095325.tif 000013
【図１３】
0005095325.tif 000014
【図１４】
0005095325.tif 000015
【図１５】
0005095325.tif 000016
【図１６】
0005095325.tif 000017
【図１７】
0005095325.tif 000018
【図１８】
0005095325.tif 000019