(57)【特許請求の範囲】
【請求項１】
複数のアプリケーションと、アプリケーション毎に起動させるための設定が格納された設定情報と、媒体に固有の媒体識別情報と、を格納する外部記憶媒体を接続する接続受付手段と、
任意のアプリケーションから抽出された固有な情報と、当該任意のアプリケーションの格納先である外部記憶媒体を識別する前記媒体識別情報と、を組み合わせた当該アプリケーション用許可情報を、アプリケーション毎に記憶する記憶手段と、
前記接続受付手段により接続された前記外部記憶媒体に格納された複数のアプリケーションそれぞれについて、当該外部記憶媒体に格納された前記媒体識別情報と、当該アプリケーションから抽出された固有の情報と、前記記憶手段に記憶された前記アプリケーション用許可情報と、に基づいて、当該アプリケーションを実行するか否かを判断する判断手段と、
前記外部記憶媒体に格納された前記複数のアプリケーションのうち、前記判断手段により実行すると判断された前記アプリケーションについて、当該アプリケーションを起動させるための前記設定情報を用いて起動するアプリケーション起動手段と、
を備えたことを特徴とするアプリケーション実行装置。
【請求項２】
読み書き可能な一時記憶手段と、
前記判断手段により前記アプリケーションを実行すると判断された場合に、前記アプリケーションを実行するために必要な領域を前記一時記憶手段に確保する確保手段と、を備え、
前記アプリケーション起動手段は、前記判断手段により前記アプリケーションを実行すると判断された場合に、前記確保手段により確保された前記領域から前記アプリケーションを実行すること、
を特徴とする請求項１に記載のアプリケーション実行装置。
【請求項３】
読み書き可能な一時記憶手段と、
前記接続受付手段により接続された前記外部記憶媒体に格納された前記アプリケーションを実行するために必要な領域を、前記一時記憶手段に確保する確保手段と、を備え、
前記アプリケーション起動手段は、前記判断手段により前記アプリケーションを実行すると判断された場合に、前記確保手段により確保された領域から前記アプリケーションを実行すること、
を特徴とする請求項１に記載のアプリケーション実行装置。
【請求項４】
前記記憶手段に記憶された前記アプリケーション用許可情報を、前記接続受付手段により接続された外部記憶媒体に書き出す処理を行う許可情報書出手段と、
を備えたことを特徴とする請求項１乃至３のいずれか一つに記載のアプリケーション実行装置。
【請求項５】
前記記憶手段に記憶された前記アプリケーション用許可情報に対して暗号化処理を施す暗号化処理手段をさらに備え、
前記許可情報書出手段は、前記暗号化処理手段により暗号化処理が施された前記アプリケーション用許可情報を前記接続受付手段により接続された外部記憶媒体に書き出す処理を行うこと、
を特徴とする請求項４に記載のアプリケーション実行装置。
【請求項６】
前記許可情報書出手段により書き出し処理が行われた前記アプリケーション用許可情報を、前記記憶手段に書き戻す許可情報書戻手段と、
を備えたことを特徴とする請求項４又は５に記載のアプリケーション実行装置。
【請求項７】
前記外部記憶媒体に暗号化処理を施された上で記憶された前記アプリケーション用許可情報に対して復号化処理を施す復号化処理手段をさらに備え、
前記許可情報書戻手段は、前記復号化処理手段により復号化処理が施された前記アプリケーション用許可情報を、前記記憶手段に書き戻す処理を行うこと、
を特徴とする請求項６に記載のアプリケーション実行装置。
【請求項８】
一方の前記接続受付手段により接続を受け付けた前記外部記憶媒体に格納された前記アプリケーションを、他方の前記接続受付手段により接続を受け付けた他の外部記憶媒体に移動させる移動処理手段と、
前記移動処理手段により移動された前記アプリケーションと対応付けられた前記アプリケーション用許可情報を、移動先の前記他の外部記憶媒体において実行を許可するように更新処理を行う更新手段と、
をさらに備えたこと特徴とする請求項１乃至７のいずれか一つに記載のアプリケーション実行装置。
【請求項９】
アプリケーション実行装置で実行されるアプリケーション実行方法であって、
前記アプリケーション実行装置は、任意のアプリケーションから抽出された固有な情報と、当該任意のアプリケーションの格納先である外部記憶媒体を識別する前記媒体識別情報と、を組み合わせた当該アプリケーション用許可情報を、アプリケーション毎に記憶する記憶手段を備え、
複数のアプリケーションと、アプリケーション毎に起動させるための設定が格納された設定情報と、媒体に固有の媒体識別情報と、を格納する外部記憶媒体を接続する接続受付ステップと、
前記接続受付ステップにより接続された前記外部記憶媒体に格納された複数のアプリケーションそれぞれについて、当該外部記憶媒体に格納された前記媒体識別情報と、当該アプリケーションから抽出された固有の情報と、前記記憶手段に記憶された前記アプリケーション用許可情報と、に基づいて、当該アプリケーションを実行するか否かを判断する判断ステップと、
前記外部記憶媒体に格納された前記複数のアプリケーションのうち、前記判断ステップにより実行すると判断された前記アプリケーションについて、当該アプリケーションを起動させるための前記設定情報を用いて起動するアプリケーション起動ステップと、
を有することを特徴とするアプリケーション実行方法。
【請求項１０】
前記判断ステップにより前記アプリケーションを実行すると判断された場合に、前記アプリケーションを実行するために必要な領域を、読み書き可能な一時記憶手段に確保する確保ステップと、を有し、
前記アプリケーション起動ステップは、前記判断ステップにより前記アプリケーションを実行すると判断された場合に、前記確保ステップにより確保された前記領域から前記アプリケーションを実行すること、
を特徴とする請求項９に記載のアプリケーション実行方法。
【請求項１１】
前記接続受付ステップにより接続された前記外部記憶媒体に格納された前記アプリケーションを実行するために必要な領域を、読み書き可能な一時記憶手段に確保する確保ステップと、を有し、
前記アプリケーション起動ステップは、前記判断ステップにより前記アプリケーションを実行すると判断された場合に、前記確保ステップにより確保された領域から前記アプリケーションを実行すること、
を特徴とする請求項９又は１０に記載のアプリケーション実行方法。
【請求項１２】
前記記憶手段に記憶された前記アプリケーション用許可情報を、前記接続受付ステップにより接続された外部記憶媒体に書き出す処理を行う許可情報書出ステップと、
を備えたことを特徴とする請求項９乃至１１のいずれか一つに記載のアプリケーション実行方法。
【請求項１３】
前記記憶手段に記憶された前記アプリケーション用許可情報に対して暗号化処理を施す暗号化処理ステップをさらに有し、
前記許可情報書出ステップは、前記暗号化処理ステップにより暗号化処理が施された前記アプリケーション用許可情報を前記接続受付ステップにより接続された外部記憶媒体に書き出す処理を行うこと、
を特徴とする請求項１２に記載のアプリケーション実行方法。
【請求項１４】
前記許可情報書出ステップにより書き出し処理が行われた前記アプリケーション用許可情報を、前記記憶手段に書き戻す許可情報書戻ステップと、
を有することを特徴とする請求項１２又は１３に記載のアプリケーション実行方法。
【請求項１５】
前記外部記憶媒体に暗号化処理を施された上で記憶された前記アプリケーション用許可情報に対して復号化処理を施す復号化処理ステップをさらに有し、
前記許可情報書戻ステップは、前記復号化処理ステップにより復号化処理が施された前記アプリケーション用許可情報を、前記記憶手段に書き戻す処理を行うこと、
を特徴とする請求項１４に記載のアプリケーション実行方法。
【請求項１６】
一方の前記接続受付ステップにより接続を受け付けた前記外部記憶媒体に格納された前記アプリケーションを、他方の前記接続受付ステップにより接続を受け付けた他の外部記憶媒体に移動させる移動処理ステップと、
前記移動処理ステップにより移動された前記アプリケーションと対応付けられた前記アプリケーション用許可情報を、移動先の前記他の外部記憶媒体において実行を許可するように更新処理を行う更新ステップと、
をさらに有すること特徴とする請求項９乃至１５のいずれか一つに記載のアプリケーション実行方法。
【請求項１７】
請求項９乃至１６のいずれか一つに記載されたアプリケーション実行方法をコンピュータに実行させることを特徴とするアプリケーション実行プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション実行装置、アプリケーション実行方法及びアプリケーション実行プログラムに関するものであり、外部メディアに格納されたプログラムの実行を制御する技術に関するものである。
【背景技術】
【０００２】
近年、画像形成装置の複合化及び機能の拡張化が著しい。これにより画像形成装置は、予め本体に格納されたアプリケーションのみならず、ネットワーク先のコンピュータ又は記憶媒体に格納されたアプリケーションを用いて処理を行うことも可能となった。
【０００３】
このような状況により、利用者が、管理者が想定していない用途で画像形成装置を使用することも考えられる。しかしながら、管理者は、予め格納されていないアプリケーションであっても利用者の不正な使用を抑止する必要がある。
【０００４】
このような状況を鑑みて、画像形成装置に対して不正な使用を防止する技術がいくつか提案されている。例えば、特許文献１では、ハードウェアキーが装着されている場合に限り初期設定を行うことを可能としている。
【０００５】
他の例としては、特許文献２では、アプリケーションを格納した場所が示されている選択情報を参照し、画像形成装置内部及び外部の記憶媒体に格納されたプログラムを選択的に実行する技術である。これにより、必要なプログラムを選択して実行することができる。
【０００６】
【特許文献１】特開２００１−３０６１７０号公報
【特許文献２】特開２００４−１１０７７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１及び２に記載された技術は、複数の画像形成装置が備えられている場合や、プログラムが格納された記憶媒体が複数の画像形成装置で使い回される場合等が想定されていない。
【０００８】
具体的には、特許文献１に記載された技術を複数の画像形成装置に適用した場合、画像形成装置毎に異なるハードウェアキーを用いる又は画像形成装置で共通のハードウェアキーを用いる等が考えられるが、このような状況が想定されていないため、例えば一つの記憶媒体で画像形成装置毎に異なるアプリケーションを実行させる等の処理が困難になるという問題がある。
【０００９】
また、引用文献２で記載された技術では、異なる記憶媒体に設定のみ異なる同一プログラムが収納されている場合、一つの画像形成装置においてこれら同一プログラムの各々に対して適切な制限を行うことはできないという問題がある。
【００１０】
本発明は、上記に鑑みてなされたものであって、外部記憶媒体に格納されたアプリケーションを、当該外部記憶媒体が装着可能な装置毎に適切に実行を制御するアプリケーション実行装置、アプリケーション実行方法及びアプリケーション実行プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、複数のアプリケーションと、アプリケーション毎に起動させるための設定が格納された設定情報と、媒体に固有の媒体識別情報と、を格納する外部記憶媒体を接続する接続受付手段と、任意のアプリケーションから抽出された固有な情報と、当該任意のアプリケーションの格納先である外部記憶媒体を識別する前記媒体識別情報と、を組み合わせた当該アプリケーション用許可情報を、アプリケーション毎に記憶する記憶手段と、前記接続受付手段により接続された前記外部記憶媒体に格納された複数のアプリケーションそれぞれについて、当該外部記憶媒体に格納された前記媒体識別情報と、当該アプリケーションから抽出された固有の情報と、前記記憶手段に記憶された前記アプリケーション用許可情報と、に基づいて、当該アプリケーションを実行するか否かを判断する判断手段と、前記外部記憶媒体に格納された前記複数のアプリケーションのうち、前記判断手段により実行すると判断された前記アプリケーションについて、当該アプリケーションを起動させるための前記設定情報を用いて起動するアプリケーション起動手段と、を備えたことを特徴とする。
【００１４】
また、請求項２にかかる発明は、請求項１にかかる発明において、読み書き可能な一時記憶手段と、前記判断手段により前記アプリケーションを実行すると判断された場合に、前記アプリケーションを実行するために必要な領域を前記一時記憶手段に確保する確保手段と、を備え、前記アプリケーション起動手段は、前記判断手段により前記アプリケーションを実行すると判断された場合に、前記確保手段により確保された前記領域から前記アプリケーションを実行すること、を特徴とする。
【００１５】
また、請求項３にかかる発明は、請求項１にかかる発明において、読み書き可能な一時記憶手段と、前記接続受付手段により接続された前記外部記憶媒体に格納された前記アプリケーションを実行するために必要な領域を、前記一時記憶手段に確保する確保手段と、を備え、前記アプリケーション起動手段は、前記判断手段により前記アプリケーションを実行すると判断された場合に、前記確保手段により確保された領域から前記アプリケーションを実行すること、を特徴とする。
【００１６】
また、請求項４にかかる発明は、請求項１乃至３のいずれか一つにかかる発明において、前記記憶手段に記憶された前記アプリケーション用許可情報を、前記接続受付手段により接続された外部記憶媒体に書き出す処理を行う許可情報書出手段と、を備えたことを特徴とする。
【００１７】
また、請求項５にかかる発明は、請求項４にかかる発明において、前記記憶手段に記憶された前記アプリケーション用許可情報に対して暗号化処理を施す暗号化処理手段をさらに備え、前記許可情報書出手段は、前記暗号化処理手段により暗号化処理が施された前記アプリケーション用許可情報を前記接続受付手段により接続された外部記憶媒体に書き出す処理を行うこと、を特徴とする。
【００１８】
また、請求項６にかかる発明は、請求項４又は５にかかる発明において、前記許可情報書出手段により書き出し処理が行われた前記アプリケーション用許可情報を、前記記憶手段に書き戻す許可情報書戻手段と、を備えたことを特徴とする。
【００１９】
また、請求項７にかかる発明は、請求項６にかかる発明において、前記外部記憶媒体に暗号化処理を施された上で記憶された前記アプリケーション用許可情報に対して復号化処理を施す復号化処理手段をさらに備え、前記許可情報書戻手段は、前記復号化処理手段により復号化処理が施された前記アプリケーション用許可情報を、前記記憶手段に書き戻す処理を行うこと、を特徴とする。
【００２０】
また、請求項８にかかる発明は、請求項１乃至７のいずれか一つにかかる発明において、一方の前記接続受付手段により接続を受け付けた前記外部記憶媒体に格納された前記アプリケーションを、他方の前記接続受付手段により接続を受け付けた他の外部記憶媒体に移動させる移動処理手段と、前記移動処理手段により移動された前記アプリケーションと対応付けられた前記アプリケーション用許可情報を、移動先の前記他の外部記憶媒体において実行を許可するように更新処理を行う更新手段と、をさらに備えたことを特徴とする。
【００２１】
また、請求項９にかかる発明は、アプリケーション実行装置で実行されるアプリケーション実行方法であって、前記アプリケーション実行装置は、任意のアプリケーションから抽出された固有な情報と、当該任意のアプリケーションの格納先である外部記憶媒体を識別する前記媒体識別情報と、を組み合わせた当該アプリケーション用許可情報を、アプリケーション毎に記憶する記憶手段を備え、複数のアプリケーションと、アプリケーション毎に起動させるための設定が格納された設定情報と、媒体に固有の媒体識別情報と、を格納する外部記憶媒体を接続する接続受付ステップと、前記接続受付ステップにより接続された前記外部記憶媒体に格納された複数のアプリケーションそれぞれについて、当該外部記憶媒体に格納された前記媒体識別情報と、当該アプリケーションから抽出された固有の情報と、前記記憶手段に記憶された前記アプリケーション用許可情報と、に基づいて、当該アプリケーションを実行するか否かを判断する判断ステップと、前記外部記憶媒体に格納された前記複数のアプリケーションのうち、前記判断ステップにより実行すると判断された前記アプリケーションについて、当該アプリケーションを起動させるための前記設定情報を用いて起動するアプリケーション起動ステップと、を有することを特徴とする。
【００２４】
また、請求項１０にかかる発明は、請求項９のいずれか一つにかかる発明において、前記判断ステップにより前記アプリケーションを実行すると判断された場合に、前記アプリケーションを実行するために必要な領域を、読み書き可能な一時記憶手段に確保する確保ステップと、を有し、前記アプリケーション起動ステップは、前記判断ステップにより前記アプリケーションを実行すると判断された場合に、前記確保ステップにより確保された前記領域から前記アプリケーションを実行すること、を特徴とする。
【００２５】
また、請求項１１にかかる発明は、請求項９又は１０にかかる発明において、前記接続受付ステップにより接続された前記外部記憶媒体に格納された前記アプリケーションを実行するために必要な領域を、読み書き可能な一時記憶手段に確保する確保ステップと、を有し、前記アプリケーション起動ステップは、前記判断ステップにより前記アプリケーションを実行すると判断された場合に、前記確保ステップにより確保された領域から前記アプリケーションを実行すること、を特徴とする。
【００２６】
また、請求項１２にかかる発明は、請求項９乃至１１のいずれか一つにかかる発明において、前記記憶手段に記憶された前記アプリケーション用許可情報を、前記接続受付ステップにより接続された外部記憶媒体に書き出す処理を行う許可情報書出ステップと、を備えたことを特徴とする。
【００２７】
また、請求項１３にかかる発明は、請求項１２にかかる発明において、前記記憶手段に記憶された前記アプリケーション用許可情報に対して暗号化処理を施す暗号化処理ステップをさらに有し、前記許可情報書出ステップは、前記暗号化処理ステップにより暗号化処理が施された前記アプリケーション用許可情報を前記接続受付ステップにより接続された外部記憶媒体に書き出す処理を行うこと、を特徴とする。
【００２８】
また、請求項１４にかかる発明は、請求項１２又は１３にかかる発明において、前記許可情報書出ステップにより書き出し処理が行われた前記アプリケーション用許可情報を、前記記憶手段に書き戻す許可情報書戻ステップと、を有することを特徴とする。
【００２９】
また、請求項１５にかかる発明は、請求項１４にかかる発明において、前記外部記憶媒体に暗号化処理を施された上で記憶された前記アプリケーション用許可情報に対して復号化処理を施す復号化処理ステップをさらに有し、前記許可情報書戻ステップは、前記復号化処理ステップにより復号化処理が施された前記アプリケーション用許可情報を、前記記憶手段に書き戻す処理を行うこと、を特徴とする。
【００３０】
また、請求項１６にかかる発明は、請求項９乃至１５のいずれか一つにかかる発明において、一方の前記接続受付ステップにより接続を受け付けた前記外部記憶媒体に格納された前記アプリケーションを、他方の前記接続受付ステップにより接続を受け付けた他の外部記憶媒体に移動させる移動処理ステップと、前記移動処理ステップにより移動された前記アプリケーションと対応付けられた前記アプリケーション用許可情報を、移動先の前記他の外部記憶媒体において実行を許可するように更新処理を行う更新ステップと、をさらに有すること特徴とする。
【００３１】
また、請求項１７にかかる発明は、請求項９乃至１６のいずれか一つに記載されたアプリケーション実行方法をコンピュータに実行させることを特徴とする。
【発明の効果】
【００３２】
請求項１にかかる発明によれば、複数のアプリケーションそれぞれについて、当該外部記憶媒体に格納された前記媒体識別情報と、当該アプリケーションから抽出された固有の情報と、前記記憶手段に記憶された前記アプリケーション用許可情報と、に基づいて、当該アプリケーションを実行するか否か判断することで、外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００３５】
また、請求項２にかかる発明によれば、判断部によりアプリケーションを実行する場合に、アプリケーションを実行するために必要な領域を一時記憶手段に確保するので、外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００３６】
また、請求項３にかかる発明によれば、判断部によりアプリケーションを実行する場合に、一時記憶領域に確保された領域からアプリケーションを実行するので、外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００３７】
また、請求項４にかかる発明によれば、アプリケーション用許可情報を外部記憶媒体に書き出す処理を行うことで、記憶手段に障害が発生した場合でも、記憶手段を交換することで元の状態を回復することができるという効果を奏する。
【００３８】
また、請求項５にかかる発明によれば、暗号化を施した後にアプリケーション用許可情報を外部記憶媒体に書き出すことで、当該アプリケーション用許可情報を他の装置に書き込むことで、不正にアプリケーションを実行することを防止できるという効果を奏する。
【００３９】
また、請求項６にかかる発明によれば、記憶手段を交換した場合に外部記憶媒体に格納されていたアプリケーション用許可情報を、記憶手段に書き戻すことで、記憶手段を交換する前と同様にアプリケーションの実行を制御できるという効果を奏する。
【００４０】
また、請求項７にかかる発明によれば、復号化処理を施した後に、記憶手段に書き戻すため、暗号化処理が施されているアプリケーション用許可情報を他の装置に対して書き戻す処理を抑止できるので、他の装置により不正にアプリケーションを実行することを防止できるという効果を奏する。
【００４１】
また、請求項８にかかる発明によれば、他の記憶媒体を装着した際に、移動させたアプリケーションの実行を制御することができるので、利用者の要求に応じてアプリケーションを所望する外部記憶媒体に移動させた場合でも、他の外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００４２】
また、請求項９にかかる発明によれば、複数のアプリケーションそれぞれについて、当該外部記憶媒体に格納された前記媒体識別情報と、当該アプリケーションから抽出された固有の情報と、前記記憶手段に記憶された前記アプリケーション用許可情報と、に基づいて、当該アプリケーションを実行するか否か判断することで、外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００４５】
また、請求項１０にかかる発明によれば、判断部によりアプリケーションを実行する場合に、アプリケーションを実行するために必要な領域を一時記憶手段に確保するので、外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００４６】
また、請求項１１にかかる発明によれば、判断部によりアプリケーションを実行する場合に、一時記憶領域に確保された領域からアプリケーションを実行するので、外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００４７】
また、請求項１２にかかる発明によれば、アプリケーション用許可情報を外部記憶媒体に書き出す処理を行うことで、記憶手段に障害が発生した場合でも、記憶手段を交換することで元の状態を回復することができるという効果を奏する。
【００４８】
また、請求項１３にかかる発明によれば、暗号化を施した後にアプリケーション用許可情報を外部記憶媒体に書き出すことで、当該アプリケーション用許可情報を他の装置に書き込むことで、不正にアプリケーションを実行することを防止できるという効果を奏する。
【００４９】
また、請求項１４にかかる発明によれば、記憶手段を交換した場合に外部記憶媒体に格納されていたアプリケーション用許可情報を、記憶手段に書き戻すことで、記憶手段を交換する前と同様にアプリケーションの実行を制御できるという効果を奏する。
【００５０】
また、請求項１５にかかる発明によれば、復号化処理を施した後に、記憶手段に書き戻すため、暗号化処理が施されているアプリケーション用許可情報を他の装置に対して書き戻す処理を抑止できるので、他の装置により不正にアプリケーションを実行することを防止できるという効果を奏する。
【００５１】
また、請求項１６にかかる発明によれば、他の記憶媒体を装着した際に、移動させたアプリケーションの実行を制御することができるので、利用者の要求に応じてアプリケーションを所望する外部記憶媒体に移動させた場合でも、他の外部記憶媒体に格納されたアプリケーションを装置毎に適切に実行の制御ができるという効果を奏する。
【００５２】
また、請求項１７にかかる発明によれば、請求項９乃至１６のいずれか１つに記載のアプリケーション実行方法をコンピュータに実行させることができるアプリケーション実行プログラムを提供できるという効果を奏する。
【発明を実施するための最良の形態】
【００５３】
以下に添付図面を参照して、この発明にかかるアプリケーション実行装置、アプリケーション実行方法及びアプリケーション実行プログラムを複合機に適用した場合の最良な実施の形態を詳細に説明する。
【００５４】
（第１の実施の形態）
図１は、本実施の形態にかかる複合機１００のハードウェア構成を示すブロック図である。本図に示すように、この複合機１００は、コントローラ１０とエンジン部（Engine）６０とをＰＣＩ（Peripheral Component Interconnect）バスで接続した構成となる。コントローラ１０は、複合機１００全体の制御と描画、通信、操作部２０からの入力を制御するコントローラである。エンジン部６０は、ＰＣＩバスに接続可能なプリンタエンジン等であり、たとえば白黒プロッタ、１ドラムカラープロッタ、４ドラムカラープロッタ、スキャナまたはファックスユニット等である。なお、このエンジン部６０には、プロッタ等のいわゆるエンジン部分に加えて、誤差拡散やガンマ変換等の画像処理部分が含まれる。なお、操作部２０には操作パネル等が含まれているものとする。
【００５５】
コントローラ１０は、ＣＰＵ１１と、ブリッジ（ＢＲＩＤＧＥ）１３と、システムメモリ（ＭＥＭ−Ｐ）１２と、ローカルメモリ（ＭＥＭ−Ｃ）１７と、ＡＳＩＣ（Application Specific Integrated Circuit）１６と、ハードディスクドライブ（ＨＤＤ）１８と、ＦＣＵ（Fax Control Unit）３０、ＵＳＢ（Universal Serial Bus）４０、ＩＥＥＥ１３９４（the Institute of Electrical and Electronics Engineers 1394）インターフェース５０とを有している。
【００５６】
そして、ブリッジ（ＢＲＩＤＧＥ）１３とＡＳＩＣ１６との間をＡＧＰ（Accelerated Graphics Port）バス１５で接続した構成となり、またＡＳＩＣ１６とＦＣＵ（Fax Control Unit）３０、ＵＳＢ（Universal Serial Bus）４０及びＩＥＥＥ１３９４（the Institute of Electrical and Electronics Engineers 1394）インターフェース５０との間をＰＣＩバスで接続されている。
【００５７】
また、ＭＥＭ−Ｐ１２は、ＲＯＭ（Read Only Memory）１２ａと、ＲＡＭ（Random Access Memory）１２ｂと、をさらに有する。
【００５８】
ＣＰＵ１１は、複合機１００の全体制御をおこなうものであり、ＢＲＩＤＧＥ１３及びＭＥＭ−Ｐ１２からなるチップセットを有し、このチップセットを介して他の機器と接続される。
【００５９】
ＢＲＩＤＧＥ１３は、ＣＰＵ１１とＭＥＭ−Ｐ１２、ＡＧＰ１５とを接続するためのブリッジであり、ＭＥＭ−Ｐ１２に対する読み書き等を制御するメモリコントローラと、ＰＣＩマスタ及びＡＧＰターゲットとを有する。
【００６０】
ＭＥＭ−Ｐ１２は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリ等として用いるシステムメモリであり、ＲＯＭ１２ａとＲＡＭ１２ｂとからなる。ＲＯＭ１２ａは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリであり、ＲＡＭ１２ｂは、プログラムやデータの展開用メモリ、プリンタの描画用メモリ等として用いる書き込み及び読み出し可能なメモリである。
【００６１】
ＡＳＩＣ１６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣ（Integrated Circuit）であり、ＡＧＰ１５、ＰＣＩバス、ＨＤＤ１８及びＭＥＭ−Ｃ１７をそれぞれ接続するブリッジの役割を有する。このＡＳＩＣ１６は、ＰＣＩターゲット及びＡＧＰマスタと、ＡＳＩＣ１６の中核をなすアービタ（ＡＲＢ）と、ＭＥＭ−Ｃ１７を制御するメモリコントローラと、ハードウェアロジック等により画像データの回転等をおこなう複数のＤＭＡＣ（Direct Memory Access Controller）と、エンジン部６０との間でＰＣＩバスを介したデータ転送をおこなうＰＣＩユニットとからなる。
【００６２】
また、ＡＳＩＣ１６は、ＮＶＲＡＭコントローラ１６ａと、メモリーカードコントローラ１６ｂとを備えている。
【００６３】
ＮＶＲＡＭコントローラ１６ａは、ＮＶＲＡＭ１４に対して１ビット毎に情報の読み書きの制御を行う。また、メモリーカードコントローラ１６ｂは、メモリーカードＩ／Ｆ１９を介して接続されたメモリーカードに対して情報の読み書きの制御を行う。
【００６４】
ＮＶＲＡＭ１４は、１ビット毎に読み込み及び書き込み可能なデータの格納用メモリである。なお、ＮＶＲＡＭに格納されるデータについては後述する。
【００６５】
メモリーカードＩ／Ｆ１９は、着脱可能な不揮発性記憶媒体であるメモリーカード（例えば、ＳＤ（Secure Digital）カードなど）へのインターフェースまたは挿入スロットを示す。このスロットにメモリーカードを挿入した際、電圧の変化等で、メモリーカードが挿入されているかどうかを認識できる。また、複合機１００では、このような挿入スロットが複数設けられ、複数のメモリーカード（例えば、メモリーカードＭ１及びメモリーカードＭ２）を同時に装着し、それぞれに対して読み書きを制御することができる。
【００６６】
ＭＥＭ−Ｃ１７は、コピー用画像バッファ、符号バッファとして用いるローカルメモリであり、ＨＤＤ（Hard Disk Drive）１８は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。
【００６７】
ＡＧＰ１５は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、ＭＥＭ−Ｐ１２に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にするものである。
【００６８】
図２は、第１の実施の形態である複合機１００の構成を示すブロック図である。本実施の形態にかかる複合機１００は、当該複合機１００の出荷後に顧客、サードベンダなどの第三者により開発された外部アプリケーションを格納したメモリーカードＭ１等が装着された際、外部アプリケーションが実行可能か判断し、実行可能と判断された場合に当該外部アプリケーションをＲＡＭ１２ｂにマウントし、当該外部アプリケーションを起動するものである。
【００６９】
図２に示すように、複合機１００は、白黒ラインプリンタ（B&W LP）１０１と、カラーラインプリンタ（Color LP）１０２と、ハードディスク装置（ＨＤＤ）１０３と、ＮＶＲＡＭ１４と、ＲＡＭ１２ｂと、スキャナ、ファクシミリ、メモリ、ネットワークインタフェースなどのハードウェアリソース１０４とソフトウェア群１１０と、複合機起動部１４０とを有するように構成される。また、ソフトウェア群１１０は、プラットフォーム１２０と、アプリケーション１３０とを有するように構成される。
【００７０】
プラットフォーム１２０は、アプリケーション１３０からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、１つ以上のハードウェア資源の管理を行ってコントロールサービスからの獲得要求を調停するシステムリソースマネージャ（以下、ＳＲＭという）１２３と、オペレーティングシステム（以下、ＯＳという）１２１とを有するように構成されている。
【００７１】
コントロールサービスは、システムコントロールサービス（以下、ＳＣＳという）１２２、エンジンコントロールサービス（以下、ＥＣＳという）１２４、メモリコントロールサービス（以下、ＭＣＳという）１２５、オペレーションパネルコントロールサービス（以下、ＯＣＳという）１２６、ファックスコントロールサービス（以下、ＦＣＳという）１２７、ネットワークコントロールサービス（以下、ＮＣＳという）１２８、ユーザ情報管理サービス（以下、ＵＣＳという）１２９など一つ以上のサービスモジュールを有するように構成されている。
【００７２】
なお、プラットフォーム１２０は予め定義されている関数によりアプリケーション１３０からの処理要求を受信可能とするアプリケーションプログラムインターフェース（以下、ＡＰＩという）を有するように構成されている。
【００７３】
ＯＳ１２１は、ＵＮＩＸ（登録商標）などの汎用オペレーティングシステムであって、プラットフォーム１２０及びアプリケーション１３０の各ソフトウェアをプロセスとして並列実行する。
【００７４】
ＳＲＭ１２３のプロセスは、ＳＣＳ１２２と共にシステムの制御およびリソースの管理を行うものである。例えば、ＳＲＭ１２３のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、ハードディスク装置（ＨＤＤ）ファイル、ホストＩ／Ｏ（セントロインターフェース、ネットワークインターフェース、ＩＥＥＥ１３９４インターフェース、ＲＳ２３２Ｃインターフェースなど）のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
【００７５】
具体的には、ＳＲＭ１２３は、要求されたハードウェア資源が利用可能であるか（他の要求により利用されていないかどうか）を判定し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、ＳＲＭ１２３は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、例えばプリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成などの要求内容を直接実施している。
【００７６】
ＳＣＳ１２２のプロセスは、アプリ管理、操作部制御、システム画面表示、ＬＥＤ表示、リソース管理、割り込みアプリ制御などを行う。なお、本実施の形態においてＳＣＳ１２２が行う具体的な処理については、後述する。
【００７７】
ＥＣＳ１２４のプロセスは、白黒ラインプリンタ（B&W LP）１０１、カラーラインプリンタ（Color LP）１０２、ＨＤＤ１０３、ＮＶＲＡＭ１４、ＲＡＭ１２ｂ、スキャナ、ファクシミリなどからなるハードウェアリソース１０４のエンジンの制御を行う。
【００７８】
ＭＣＳ１２５のプロセスは、画像メモリの取得および解放、ハードディスク装置（ＨＤＤ）の利用、画像データの圧縮および伸張などを行う。ＯＣＳ１２６のプロセスは、オペレータと本体制御との間の情報伝達手段となる操作パネルの制御を行う。
【００７９】
図３は、ＯＣＳ１２６が制御する操作パネル３００の一例を示した図である。本図に示したように、かかる操作パネル３００は、初期設定キー３０１、コピーキー３０２、コピーサーバーキー３０３、プリンタキー３０４、送信キー３０５、テンキー３０６、クリア／ストップキー３０７、スタートキー３０８、予熱キー３０９、リセットキー３１０および液晶タッチパネル３２０を有する。
【００８０】
初期設定キー３０１をタッチすると、液晶タッチパネル３２０に初期設定用のメニューが表示され、かかるメニューにおいては、収納される用紙サイズなどを設定することができる。また、コピーをしたい場合にはコピーキー３０２を、コピー結果を複合機１に蓄積したい場合にはコピーサーバーキー３０３を、プリンタに係る操作をおこないたい場合には、プリンタキー３０４を、ファックスや蓄積画像などの送信をしたい場合には送信キー３０５を、それぞれタッチすると、液晶タッチパネル３２０に対応したメニューが表示される。なお、このような構成を有する操作パネル３００に表示される画面例などは後述する。
【００８１】
図２に戻り、ＦＣＳ１２７のプロセスは、システムコントローラの各アプリケーション層からＰＳＴＮまたはＩＳＤＮ網を利用したファクシミリ送受信、ＢＫＭ（バックアップＳＲＡＭ）で管理されている各種ファクシミリデータの登録／引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのアプリケーションを提供する。
【００８２】
ＮＣＳ１２８のプロセスは、ネットワークＩ／Ｏを必要とするアプリケーションに対し、共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。
【００８３】
ＮＣＳ１２８のプロセスは、ネットワークＩ／Ｏを必要とするアプリケーションに対し、共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。
【００８４】
ＵＣＳ１２９のプロセスは、ユーザ情報の管理を行うものであり、要求に応じたユーザ情報が格納されている記憶装置を判定し、判定した記憶装置からユーザ情報を取得して各アプリケーションに供給する。
【００８５】
また、アプリケーション１３０は、ページ記述言語（ＰＤＬ）、ＰＣＬおよびポストスクリプト（ＰＳ）を有するプリンタ用のアプリケーションであるプリンタアプリ１１１と、コピー用アプリケーションであるコピーアプリ１１２と、ファクシミリ用アプリケーションであるファックスアプリ１１３と、スキャナ用アプリケーションであるスキャナアプリ１１４と、ネットワークファイル用アプリケーションであるネットファイルアプリ１１５と、工程検査用アプリケーションである工程検査アプリ１１６とを有している。
【００８６】
アプリケーション１３０の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。
【００８７】
このように、実施の形態１にかかる複合機１００には、複数のアプリケーション１３０および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一つ以上のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション１３０に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。
【００８８】
また、複合機１００は、メモリーカードＭ１が装着された際、当該メモリーカードＭ１に格納されている外部アプリケーション１１７を、コントロールサービス層の上のアプリケーション層に搭載し、実行することが可能となっている。図２では、メモリーカードＭ１が装着されており、外部アプリケーション１１７が搭載された例を示している。
【００８９】
複合機起動部１４０は、複合機１００の電源投入時に最初に実行され、アプリケーション１３０やプラットフォーム１２０を起動するものである。例えば複合機起動部１４０は、コントロールサービスやアプリケーションのプログラムをＨＤＤ１０３から読み出し、読み出した各プログラムをＳＲＡＭまたはＳＤＲＡＭ上に確保したメモリ領域に転送して起動するものである。また、その際、複合機起動部１４０は、メモリーカードＭ１に格納された外部アプリケーション１１７を起動させるか否か判断する。
【００９０】
次に、複合機起動部１４０の外部アプリケーションを起動させるための構成について説明する。図４は、本実施の形態にかかる複合機１００の複合機起動部１４０及びＳＣＳ１２２の機能的構成を示すブロック図である。複合機起動部１４０は、接続受付部４０１と、判断部４０２と、ＮＶＲＡＭ管理部４０３と、確保部４０４と、外部アプリ起動部４０５とから構成され、複合機１００の初期化時にメモリーカードＩ／Ｆ１９に装着されたメモリーカードＭ１に格納された外部アプリケーション１１７を、ＮＶＲＡＭ１４に格納された許可情報に従って起動させる処理を行う。まずは、メモリーカードＭ１及びＮＶＲＡＭ１４の構成について説明する。
【００９１】
図５は、メモリーカードＭ１に格納されたデータの例を示すブロック図である。メモリーカードＭ１は、ヘッダ５０１と、アプリケーション毎のデータ（例えばアプリケーションＡデータ５０２、アプリケーションＢデータ５０３）とから構成されている。
【００９２】
ヘッダ５０１には、メモリーカードＩＤが含まれている。このメモリーカードＩＤは、メモリーカード毎にユニークなＩＤとし、複合機１００がメモリーカードを特定する際に用いられる。
【００９３】
本図に示すように、メモリーカードＭ１に格納されたアプリケーション毎のデータには、外部アプリケーション１１７のモジュール本体（例えば、アプリケーションＡモジュール本体５０４とアプリケーションＢモジュール本体５０６）と、アプリケーション用の設定ファイル（例えば、アプリケーションＡ用設定ファイル５０５とアプリケーションＢ用設定ファイル５０７）とが含まれている。
【００９４】
また、この外部アプリケーション１１７毎の設定ファイルには、ＲＡＭ１２ｂにモジュール本体をマウントする際のマウントポイントや、起動オプション、当該モジュールを起動させる際の優先度等の設定が格納されている。
【００９５】
これらモジュール本体及び設定ファイルには電子署名が付されている。この電子署名は
、メモリーカード毎にユニークな署名とする。
【００９６】
そして、後述する接続受付部４０１は、メモリーカードＭ１の接続を受け付けた際、これらモジュール本体及び設定ファイルに対して、付されている電子署名を用いて照合を行う。これにより、メモリーカードＭ１に格納されていたファイルのすり替え等を防ぐことが可能となる。また、電子署名が付されていることで、上述したモジュール本体及び設定ファイルの改ざん等も検出することも可能となる。これにより、管理者が想定していない不正な使用を防止することができる。
【００９７】
本実施の形態とは異なるが、これらモジュール本体及び設定ファイルに対して暗号化処理を施し、電子署名により照合が行われた場合に限り、復号化処理を行うことにしても良い。これにより、電子署名で照合を行うことができない画像形成装置で、メモリーカードＭ１に格納されたアプリケーションの実行を抑止することが可能となる。
【００９８】
図６は、ＮＶＲＡＭ１４に格納されたデータの例を示すブロック図である。ＮＶＲＡＭ１４は、ヘッダ６０１と、アプリケーション毎の許可情報とから構成されている。この許可情報は、管理者により起動が許可されたアプリケーション毎に保持している。
【００９９】
ヘッダ６０１には、複合機１００で使用される設定情報が格納されている。この設定情報の例としては、外部アプリケーション１１７を起動する際に用いられるアプリケーション制御モードのフラグ等がある。なお、アプリケーション制御モードのフラグ等については後述する。
【０１００】
次に、ＮＶＲＡＭ１４に格納された情報を、外部アプリケーション１１７となるアプリケーションＡの場合について説明する。ＮＶＲＡＭ１４は、図６に示したようにアプリケーションＡの許可情報として、アプリケーションＡ許可基準情報６０２、現メモリーカードＩＤ６０３及び元メモリーカードＩＤ６０４を格納している。アプリケーションＡ許可基準情報６０２は、メモリーカードに格納されたアプリケーションＡの情報とメモリーカードＭ１の情報とを合成した情報とする。なお、メモリーカードの情報は、メモリーカード毎にユニークな情報とする。また、アプリケーションの情報は、アプリケーション毎にユニークな情報とする。次に、メモリーカードの情報と、アプリケーションの情報の詳細について説明する。
【０１０１】
本実施の形態において、メモリーカードの情報は、メモリーカード毎にユニークなメモリーカードＩＤとする。また、アプリケーションの情報は、ファイル名、当該ファイルの更新日時、最終アクセス日時及びモジュール本体及び設定ファイルからハッシュ関数等を用いて抽出されたメッセージ・ダイジェストなどとする。
【０１０２】
これにより、メモリーカードＭ１が装着された際、メモリーカードＭ１に格納されたアプリケーションＡの情報とメモリーカードＭ１の情報を取得し、取得した情報を合成し、合成した情報とアプリケーションＡ許可基準情報６０２とを比較することで、起動が許可されたアプリケーションか否か判断することができる。次に、許可されない例について説明する。例えば、メモリーカードＭ１に格納されている情報を全て他のメモリーカードに複写した場合、複写先のメモリーカードと複写元のメモリーカードとでは、当然にメモリーカードの情報（つまりメモリーカードＩＤ）が異なることになる。このため、複写先のメモリーカードでは、当該メモリーカードの情報とアプリケーションＡの情報とを合成しても、アプリケーションＡ許可基準情報６０２と一致しないので、アプリケーションＡの起動が許可されないことになる。
【０１０３】
また、図示しないが、ＮＶＲＡＭ１４は、装着されるメモリーカード毎に、電子署名の照合に用いられる公開鍵を格納している。これにより、メモリーカードに格納されたモジュール本体及び設定ファイルに付与された電子署名の認証を行うことができる。
【０１０４】
なお、本実施の形態では、これらの各データをＮＶＲＡＭ１４に格納しているが、不揮発性メモリ又はＨＤＤを問わず、他の記憶媒体に格納するように構成しても良い。
【０１０５】
図４に戻り、接続受付部４０１は、メモリーカードＩ／Ｆ１９を介して接続されたメモリーカードの受付処理を行う。そして、この接続受付部４０１により、メモリーカードが接続されたと判断された場合に、後述する処理が行われる。
【０１０６】
また、接続受付部４０１は、メモリーカードの受付処理を行う際、メモリーカードのモジュール本体及び設定ファイルに付与された電子署名を、ＮＶＲＡＭ１４に格納された当該メモリーカードに対応する公開鍵を用いて認証をおこなう。そして、適正に認証が行われた場合に限り、後述する処理を行うこととする。これにより、モジュール本体及び設定ファイルのすり替えを防止することができる。
【０１０７】
ＮＶＲＡＭ管理部４０３は、ＮＶＲＡＭ１４に格納されているデータの設定内容の読み出し、および書き込みを行うものである。具体的には、ＮＶＲＡＭ管理部４０３は、ＮＶＲＡＭ１４のヘッダのアプリケーション制御モードのフラグを読み込み、外部アプリケーション１１７の起動を抑止するか否かを判断する。
【０１０８】
アプリケーション制御モードのフラグには、３種類のモードから選択された１つのモードを示すフラグが格納されている。これら３種類のモードは、「全指定」、「自動指定」、「指定なし」とする。「全指定」は、メモリ−カードに格納されている全てのアプリケーションに対して、ＮＶＲＡＭ１４に格納された許可情報に従い、アプリケーション毎に起動するか否か判断するモードとする。また、「自動設定」は、全てのアプリケーションに対して定められた起動設定レベルと、管理者により設定された起動許可レベルを比較し、起動設定レベルが起動許可レベルより高いアプリケーションに対して起動を許可するモードとする。「指定なし」は、全てのアプリケーションに対して起動を許可するモードとする。
【０１０９】
また、アプリケーション制御モード及び起動許可レベルは、ＮＶＲＡＭ１４のヘッダ情報として格納されている。そして、アプリケーション毎の起動設定レベルは、メモリーカードのアプリケーション毎の設定ファイルに格納されている。
【０１１０】
図７は、アプリケーション毎の設定ファイルの記載例を示した図である。本図に示すように、設定ファイルには、モジュール７０１をマウントする際に行われるコマンドが記載されており、当該コマンドのオプション７０２に起動設定レベルが設定されている。
【０１１１】
図４に戻り、ＮＶＲＡＭ管理部４０３は、アプリケーション制御モードのフラグが「指定なし」の場合、メモリーカードＭ１に格納された全てのアプリケーションをマウントするように、確保部４０４に指示する。
【０１１２】
また、ＮＶＲＡＭ管理部４０３は、アプリケーション制御モードのフラグが「自動設定」の場合、ＮＶＲＡＭ１４のヘッダに格納された起動許可レベルを読み込んだ後、メモリーカードＭ１のアプリケーション毎の設定ファイルを参照し、起動許可レベルより高い起動設定レベルが設定されたアプリケーションを特定し、特定されたアプリケーションをマウントするように、確保部４０４に指示する。
【０１１３】
また、ＮＶＲＡＭ管理部４０３は、アプリケーション制御モードのフラグが「全指定」の場合、判断部４０２に対してマウントするアプリケーションを判断するように指示する。この際、ＮＶＲＡＭ１４に格納されている許可情報を、判断部４０２に出力する。
【０１１４】
なお、アプリケーション制御モードのフラグや、起動許可レベルの設定は、ＳＣＳ１２２により行われる。このＳＣＳ１２２による設定するまでの手順については後述する。
【０１１５】
判断部４０２は、比較部４１１を備え、ＮＶＲＡＭ管理部４０３から指示を受け付けた場合に、マウントするアプリケーションを判断する。まず、判断部４０２は、メモリーカードＭ１に格納されているメモリーカードＩＤ及びアプリケーション毎に固有の情報となるアプリケーションの情報を取得する。そして、判断部４０２は、ＮＶＲＡＭ管理部４０３から入力された許可情報と、取得したメモリーカードＩＤ及びアプリケーションの情報とを比較部４１１に出力する。その後、判断部４０２は、比較部４１１により行われた比較結果に基づいて、アプリケーション毎にマウントを許可するか否かを判断する。
【０１１６】
比較部４１１は、アプリケーション毎に、取得したメモリーカードＩＤ及びアプリケーション情報を合成した情報を生成し、当該合成した情報と入力された許可情報に含まれているアプリケーション許可基準情報とを比較する。そして、比較部４１１は、比較結果を判断部４０２に出力する。
【０１１７】
そして、判断部４０２は、比較部４１１の比較結果で一致した場合にマウントを許可して良いと判断し、当該アプリケーションをマウントするように確保部４０４に指示する。
【０１１８】
確保部４０４は、判断部４０２又はＮＶＲＡＭ管理部４０３からマウントするよう指示されたアプリケーションをＲＡＭ１２ｂ上にマウントする処理を行う。また、確保部４０４は、マウントする際にマウントするアプリケーションの設定ファイルを、メモリーカードＭ１から読み込み、当該設定ファイルで設定されたマウントポイント等に従ってマウント処理を行う。
【０１１９】
また、確保部４０４は、判断部４０２及びＮＶＲＡＭ管理部４０３からの指示とは関係なく、メモリーカードＭ１に格納された全てのアプリケーションの詳細情報等をＲＡＭ１２ｂ上に展開する。これにより、メモリーカードＭ１に格納されている全てのアプリケーション及び当該アプリケーションの説明を操作パネル３００上に表示することができる。これにより、管理者は、操作パネル３００を参照及び操作することで、ＳＣＳ１２２により、どのアプリケーションの起動を許可するのか設定することができる。なお、この際に表示される画面例などについては後述する。
【０１２０】
外部アプリ起動部４０５は、確保部４０４によりマウントされた全てのアプリケーションを起動する処理を行う。
【０１２１】
本実施の形態の複合機１００は、上述した構成を備えたことで、ＮＶＲＡＭ１４に格納された許可情報により、外部アプリケーション１１７の起動を抑止することが可能となった。
【０１２２】
図８は、本実施の形態によりメモリーカードＭ１に格納されたアプリケーションＡの起動制御の例を示した説明図である。本図に示すように、メモリーカードＭ１に格納されたアプリケーションＡは、複合機１００においては、管理者ＡがアプリケーションＡを許可する旨の設定がなされているため、アプリケーションＡの許可情報がＮＶＲＡＭ１４に格納されている。このため、ユーザがメモリーカードＭ１を複合機１００に装着した場合、アプリケーションＡを使用することができる。
【０１２３】
これに対して、複合機８０１では、メモリーカードＭ１に格納されたアプリケーションＡを許可する旨を管理者Ｂが行っていない。このため、アプリケーションＡの許可情報が複合機８０１のＮＶＲＡＭ１４に格納されていない。このため、ユーザがメモリーカードＭ１を複合機８０１に装着した場合、アプリケーションＡを使用することはできない。このように、本実施の形態においては複合機毎に管理者の設定に従い、アプリケーションを起動させることができる。
【０１２４】
図４に戻り、ＳＣＳ１２２は、詳細画面表示制御部４５１と、起動情報設定処理部４５２と、アプリ移動処理部４５３と、を備えている。
【０１２５】
詳細画面表示制御部４５１は、操作パネル３００にアプリケーション制御モードを変更する画面や、現在複合機１００に装着されているメモリーカードＭ１に格納されているアプリケーション毎に起動するか否かを設定する画面を表示する制御を行う。
【０１２６】
起動情報設定処理部４５２は、詳細画面表示制御部４５１により表示された画面で利用者により行われた設定を、ＮＶＲＡＭ１４等に対して更新する処理を行う。
【０１２７】
図９は、詳細画面表示制御部４５１により液晶タッチパネル３２０に表示される画面の遷移を示した説明図である。図９（Ａ）においては、管理者が複合機１００にログインした際の画面例を示している。そして、管理者が本画面例の「アプリ抑制モード」ボタン９０１を押下した場合に、詳細画面表示制御部４５１は、アプリ抑制モードの変更画面を表示する。
【０１２８】
図９（Ｂ）は、詳細画面表示制御部４５１が表示するアプリ抑制モードの変更する際の画面例を示している。管理者は、図９（Ｂ）に示された３種類のモード（全指定、自動設定、なし）からいずれか一つを選択する。「なし」ボタン９０４が押下された場合、起動情報設定処理部４５２は、メモリーカードに格納された全てのアプリケーションの起動が許可するように、ＮＶＲＡＭ１４に格納されたアプリケーション制御モードのフラグを変更する処理を行う。
【０１２９】
そして、図９（Ｂ）で「全指定」ボタン９０２が押下された場合、詳細画面表示制御部４５１は、図９（Ｃ）で示したＮＶＲＡＭ１４に格納されたアプリケーションの一覧画面を表示する。そして、管理者が表示されたアプリケーションにおいて「起動する」を選択した場合、起動情報設定処理部４５２が、当該アプリケーションの許可情報を生成し、ＮＶＲＡＭ１４に格納する。また、起動情報設定処理部４５２は、アプリケーション制御モードのフラグを「全指定」に更新する処理も行う。なお、管理者が所定のアプリケーションにおいて「起動する」から「しない」に変更した場合、起動情報設定処理部４５２が、当該アプリケーションの許可情報を、ＮＶＲＡＭ１４から削除する。
【０１３０】
そして、図９（Ｂ）で「自動設定」ボタン９０３が押下された場合、詳細画面表示制御部４５１は、図９（Ｄ）で示したアプリケーションを起動する際の起動許可レベルの設定画面を表示する。そして、起動情報設定処理部４５２は、管理者が設定された起動許可レベルで更新する処理及びアプリケーション制御モードを「自動設定」に更新する処理をＮＶＲＡＭ１４に対して行う。
【０１３１】
図４に戻り、アプリ移動処理部４５３は、移動処理部４６１と、移動先情報取得部４６２と、情報更新部４６３と、ＮＶＲＡＭ制御部４６４とを備え、一方のメモリーカードに格納されていたアプリケーションを、他のメモリーカードに移動させる処理を行う。この場合、複合機１００のメモリーカードＩ／Ｆ１９に２つのメモリーカードが装着されているものとする。なお、以下の説明では、メモリーカードＭ１からメモリーカードＭ２にアプリケーションを移動させる場合について説明する。
【０１３２】
移動処理部４６１は、メモリーカードＭ１に格納されていたアプリケーションの情報（モジュール本体と設定ファイル）を取得し、取得したアプリケーションの情報をメモリーカードＭ２に書き込む処理を行う。移動先情報取得部４６２は、書込先となるメモリーカードＭ２のメモリーカードＩＤを取得する。
【０１３３】
ＮＶＲＡＭ制御部４６４は、移動対象となるアプリケーションの許可情報を、ＮＶＲＡＭ１４から読み込む処理を行う。そして、ＮＶＲＡＭ制御部４６４は、後述する情報更新部４６３により更新された許可情報を、ＮＶＲＡＭ１４に書き込む処理を行う。
【０１３４】
情報更新部４６３は、ＮＶＲＡＭ１４から読み込まれた許可情報を、移動されたアプリケーションで用いられるように変更する処理を行う。具体的には、許可情報として格納された現メモリーカードＩＤを、移動先の移動メモリーカードＩＤに変更する処理を行う。そして、元のメモリーカードＩＤは、許可情報に格納されている元メモリーカードＩＤとして格納する。また、アプリケーション許可基準情報は、移動先のメモリーカードＩＤを用いて新たに生成する。変更された許可情報が、ＮＶＲＡＭ制御部４６４により当該移動したアプリケーションの許可情報として書き込まれる。
【０１３５】
これにより、アプリケーションが異なるメモリーカードに移動させた場合でも、当該アプリケーションに対して起動の抑止の有無を制御することができる。つまり、利用者の要求に応じて外部アプリケーションを所望する他のメモリーカードに移動させた場合でも、他のメモリーカードに格納された外部アプリケーションを装置毎に適切に実行を制御できる。
【０１３６】
そして、上述した設定が行われた後、複合機１００が再起動を行うことで、設定が反映された状態で複合機１００は処理を行うことを可能とする。
【０１３７】
また、このようにアプリケーションが移動した後、接続受付部４０１は当該アプリケーションに付与された電子署名の認証を行いたい場合、元のメモリーカードに対応する公開鍵を用いて認証処理を行う。これは、移動させる際に、複合機１００は、秘密鍵を保持していないため、電子署名を変更させることはできないためである。しかしながら、図６に示すように、ＮＶＲＡＭ１４においてアプリケーション毎に元メモリーカードＩＤを保持しているので、接続受付部４０１は、認証に用いる公開鍵を特定することができる。
【０１３８】
次に、以上のように構成された本実施の形態にかかる複合機１００におけるメモリーカードＭ１の装着からメモリーカードＭ１に格納されていたアプリケーションを実行するまでの処理について説明する。図１０は、本実施の形態にかかる複合機１００における上述した処理の手順を示すフローチャートである。
【０１３９】
まず、接続受付部４０１は、利用者により装着されたメモリーカードＭ１の受付処理を行う（ステップＳ１００１）。
【０１４０】
そして、ＮＶＲＡＭ管理部４０３は、ＮＶＲＡＭ１４のヘッダに格納されたアプリ制御モードのフラグの読み込み処理を行う（ステップＳ１００２）。次に、ＮＶＲＡＭ管理部４０３は、読み込まれたアプリケーション制御モードのフラグが「全指定」であるか否かを判断する（ステップＳ１００３）。
【０１４１】
そして、ＮＶＲＡＭ管理部４０３は、アプリケーション制御モードのフラグが「全指定」であると判断した場合（ステップＳ１００３：Ｙｅｓ）、判断部４０２は、ＮＶＲＡＭ管理部４０３からの許可情報の入力処理を行う（ステップＳ１００４）。なお、この許可情報は、ＮＶＲＡＭ管理部４０３がＮＶＲＡＭ１４から取得したものとする。
【０１４２】
そして、判断部４０２は、装着されたメディアカードＭ１から、メディアカードＩＤ及び格納されたアプリケーション毎に、アプリケーションの情報（例えば、アプリケーション名、更新日時、最終アクセス日時、モジュール本体及び設定ファイルから生成したメッセージ・ダイジェスト等）を取得する（ステップＳ１００５）。
【０１４３】
次に、比較部４１１は、取得したメディアカードＩＤとアプリケーションの情報の合成処理を行う（ステップＳ１００６）。そして、比較部４１１は、合成処理した情報と、当該アプリケーションに対応付けられた許可情報に含まれている許可基準情報が一致するか否か比較を行う（ステップＳ１００７）。
【０１４４】
比較部４１１の比較結果が一致した場合（ステップＳ１００７：Ｙｅｓ）、判断部４０２は、確保部４０４に対して当該アプリケーションをマウントするように指示する（ステップＳ１００８）。これにより、確保部４０４は、指示された当該アプリケーションの設定ファイルに従い、ＲＡＭ１２ｂ上に当該アプリケーションをマウントする（ステップＳ１００９）。
【０１４５】
比較部４１１の比較結果が一致しなかった場合（ステップＳ１００７：Ｎｏ）、判断部４０２は、当該アプリケーションの起動を抑止するために、当該アプリケーションのマウント処理は行わない。なお、図示していないが、ステップＳ１００５〜ステップＳ１００９間での処理は、メディアカードＭ１に格納されているアプリケーションの数だけ繰り返される。これにより、メディアカードＭ１に格納されている全てのアプリケーションに対して、起動するか否かの確認がなされる。
【０１４６】
また、ＮＶＲＡＭ管理部４０３は、アプリケーション制御モードのフラグが「全指定」ではないと判断した場合（ステップＳ１００３：Ｎｏ）、アプリケーション制御モードのフラグに応じて、確保部４０４に対してメディアカードＭ１に格納されているアプリケーションをマウントするように指示する（ステップＳ１０１０）。具体的には、アプリケーション制御モードが「指定なし」の場合に、メディアカードＭ１に格納されている全てのアプリケーションをマウントするように指示する。
【０１４７】
また、アプリケーション制御モードが「自動選択」の場合、ＮＶＲＡＭ管理部４０３は、ＮＶＲＡＭ１４に格納されている起動許可レベルを参照した後、メディアカードＭ１に格納されているアプリケーション毎の設定ファイルを参照する。そして、ＮＶＲＡＭ管理部４０３は、設定ファイルに記載されている起動設定レベルが、起動許可レベルより高い場合に限り、当該設定ファイルで特定されるアプリケーションをマウントするように、確保部４０４に指示する。
【０１４８】
そして、確保部４０４は、ＮＶＲＡＭ管理部４０３に指示されたアプリケーションを、当該アプリケーションの設定ファイルに従い、ＲＡＭ１２ｂ上にマウントする（ステップＳ１０１１）。
【０１４９】
そして、外部アプリ起動部４０５は、ＲＡＭ１２ｂ上にマウントされたアプリケーションを起動する処理を行う（ステップＳ１０１２）。
【０１５０】
このような処理を行うことで、管理者が行った設定に従い、メディアカード毎に設定されたアプリケーションのみを起動させることができる。
【０１５１】
なお、本実施の形態では、メモリーカードを識別する情報としてメモリーカードＩＤを使用したが、メモリーカード等の外部記憶媒体を個別に識別する情報であれば、どのような情報を用いても良い。
【０１５２】
上述した実施の形態においては、上述した構成を備え、アプリケーション制御モードが「全指定」の場合に、メディアカードＩＤとアプリケーションの情報を合成処理した情報と、許可基準情報が一致した場合に限り、当該アプリケーションの領域がＲＡＭ１２ｂ上に確保され、その後実行されるので、メモリーカードに格納された外部アプリケーションを装置毎に適切に実行を制御できる。
【０１５３】
また、上述した実施の形態においては、実行が許可されない外部アプリケーションについては、ＲＡＭ１２ｂにマウントされないため、ＲＡＭ１２ｂのメモリ領域が有効に使用できる。
【０１５４】
また、アプリケーション制御モードが「自動設定」の場合に、アプリケーション毎に設定された起動設定レベルに応じて、実行されるか否か判断されるので、アプリケションの性質に従って適切に起動を制御できる。
【０１５５】
（第２の実施の形態）
第１の実施の形態については、メモリーカードに記憶されたアプリケーションの起動をマウントする段階で抑止していた。しかしながら、マウントする段階に抑止することに限るものではない。そこで、本実施の形態においては異なる段階で起動を抑止する場合について説明する。
【０１５６】
図１１は、第２の実施の形態にかかる複合機１１００の複合機起動部１１０１及びＳＣＳ１２２の構成を示すブロック図である。上述した実施の形態に係る複合機１００とは、複合機起動部１４０とは処理が異なる複合機起動部１１０１に変更された構成を有している点で異なる。以下の説明では、第１の実施の形態と同様の構成についてその説明を省略する。また、上述した第１の実施の形態と同一の構成要素には同一の符号を付している。
【０１５７】
図１１に示すように、複合機起動部１１０１は、上述した第１の実施の形態にかかる複合機起動部１４０とは、ＮＶＲＡＭ管理部４０３とは処理が異なるＮＶＲＡＭ管理部１１０２に変更され、判断部４０２とは処理が異なる判断部１１０３に変更され、確保部４０４とは処理が異なる確保部１１０５に変更され、外部アプリ起動部４０５とは処理が異なる外部アプリ起動部１１０４に変更された構成を有している点で異なる。
【０１５８】
確保部１１０５は、複合機起動部１１０１に装着されたメモリーカードＭ１に格納されている全てのアプリケーションをマウントする処理を行う。これは、複合機起動部１１０１で実行させるものであるか否かを問わず行われる。なお、接続受付部４０１による電子署名を用いた認証で、正当なものと認証されなかったアプリケーションについてはマウントする処理をしなくても良い。なお、確保部１１０５は、他の処理については確保部４０４と同様なので説明を省略する。
【０１５９】
ＮＶＲＡＭ管理部１１０２は、ＮＶＲＡＭ管理部４０３とは、メモリーカードが装着された際にＮＶＲＡＭ１４のヘッダに格納されているアプリケーション制御モードのフラグを読み込み、当該フラグが「自動指定」、「指定なし」の場合に外部アプリ起動部１１０４に対して指示を行う点が異なる。また、ＮＶＲＡＭ管理部１１０２は、アプリケーション制御モードを示すフラグが「全指定」の場合は判断部１１０３を呼び出す等の他の処理についてはＮＶＲＡＭ管理部４０３と同様なので説明を省略する。
【０１６０】
判断部１１０３は、比較部４１１により第１の実施の形態と同様に行われるアプリケーション毎の比較処理の後、比較結果で一致したアプリケーションを実行するように外部アプリ起動部１１０４に指示する。
【０１６１】
外部アプリ起動部１１０４は、ＲＡＭ１２ｂ上にマウントされたアプリケーションのうち、ＮＶＲＡＭ管理部４０３又は判断部４０２により指示されたアプリケーションのみを起動する処理を行う。
【０１６２】
次に、以上のように構成された本実施の形態にかかる複合機１００におけるメモリーカードＭ１の装着からメモリーカードＭ１に格納されていたアプリケーションを実行するまでの処理について説明する。図１２は、本実施の形態にかかる複合機１１００における上述した処理の手順を示すフローチャートである。
【０１６３】
まず、接続受付部４０１は、利用者により装着されたメモリーカードＭ１の受付処理を行う（ステップＳ１２０１）。
【０１６４】
そして、確保部１１０５は、メモリーカードＭ１に格納された全てのアプリケーションを、アプリケーション毎に格納された設定ファイルに従い、ＲＡＭ１２ｂ上にマウントする（ステップＳ１２０２）。
【０１６５】
そして、ＮＶＲＡＭ管理部１１０２は、ＮＶＲＡＭ１４のヘッダに格納されたアプリ制御モードのフラグの読み込み処理を行う（ステップＳ１２０３）。次に、ＮＶＲＡＭ管理部１１０２は、読み込まれたアプリケーション制御モードのフラグが「全指定」であるか否かを判断する（ステップＳ１２０４）。
【０１６６】
そして、ＮＶＲＡＭ管理部１１０２は、アプリケーション制御モードのフラグが「全指定」であると判断した場合（ステップＳ１２０４：Ｙｅｓ）、判断部１１０３は、ＮＶＲＡＭ管理部１１０２からの許可情報の入力処理を行う（ステップＳ１２０５）。
【０１６７】
そして、判断部１１０３は、装着されたメディアカードＭ１から、メディアカードＩＤ及び格納されたアプリケーション毎に、アプリケーションの情報を取得する（ステップＳ１２０６）。
【０１６８】
次に、比較部４１１は、取得したメディアカードＩＤとアプリケーションの情報の合成処理を行う（ステップＳ１２０７）。そして、比較部４１１は、合成処理した情報と、当該アプリケーションに対応付けられた許可情報に含まれている許可基準情報が一致するか否か比較を行う（ステップＳ１２０８）。
【０１６９】
比較部４１１の比較結果が一致した場合（ステップＳ１２０８：Ｙｅｓ）、判断部１１０３は、外部アプリ起動部１１０４に対して当該アプリケーションを実行するように指示する（ステップＳ１２０９）。
【０１７０】
また、比較部４１１の比較結果が一致しなかった場合（ステップＳ１２０８：Ｎｏ）、判断部１１０３は、当該アプリケーションの起動を抑止するために、当該アプリケーションのマウント処理は行わない。なお、図示していないが、ステップＳ１２０６〜ステップＳ１２０９間での処理は、メディアカードＭ１に格納されているアプリケーションの数だけ繰り返される。
【０１７１】
また、ＮＶＲＡＭ管理部１１０２は、アプリケーション制御モードのフラグが「全指定」ではないと判断した場合（ステップＳ１２０４：Ｙｅｓ）、アプリケーション制御モードのフラグに応じて、外部アプリ起動部１１０４に対してメディアカードＭ１に格納されているアプリケーションを実行するように指示する（ステップＳ１２１０）。実行するアプリケーションの特定する手順は、第１の実施の形態のステップＳ１０１０のマウントするアプリケーションを特定する手順と同様なので説明を省略する。
【０１７２】
そして、外部アプリ起動部１１０４は、実行を指示されたアプリケーションを起動する処理を行う（ステップＳ１２１１）。
【０１７３】
このような処理を行うことで、管理者が行った設定に従い、メディアカード毎に設定されたアプリケーションのみを起動させることができる。また、本実施の形態は、メディアカード毎に設定されたアプリケーションのみ実行することができるので、第１の実施の形態と同様の効果を得ることができる。
【０１７４】
（第３の実施の形態）
上述した実施の形態において、複合機１００に含まれているＮＶＲＡＭが交換になった場合、交換されたＮＶＲＡＭには許可情報が格納されていないため、メモリーカードに格納されたアプリケーションの起動が実施できなくなる。そこで、第３の実施の形態においては許可情報をメモリーカードにバックアップする場合について説明する。
【０１７５】
図１３は、第３の実施の形態にかかる複合機１３００のハードウェア構成を示すブロック図である。本実施の形態に係る複合機１３００は、第１の実施の形態の複合機１００とは、コントローラ１０にＴＰＭ(Trusted Platform Module)１３０２が追加されたコントローラ１３０１に変更された構成を有している点で異なる。以下の説明では、第１の実施の形態と同一の構成要素にはその説明を省略する。なお、同一の構成要素には同一の符号を付しておく。
【０１７６】
ＴＰＭ１３０２は、暗号鍵を格納するセキュリティチップであり、ＢＲＩＤＥ１３とＬＰＣ(LowPin Count)又はＩ２Ｃ(Inter-Integrated Circuit)を介して接続されている。具体的には、ＴＰＭ１３０２は、ＮＶＲＡＭ１４に格納された許可情報等に対して暗号鍵を用いて暗号化処理や、バックアップ先のメモリーカードから許可情報を書き戻すときに暗号鍵を用いた復号化処理を行う。つまり暗号に関する処理がＴＰＭ１３０２内で完結しているため、暗号鍵など書き戻し等に用いられる情報の漏洩を防止することができる。
【０１７７】
つまり、ＴＰＭ１３０２で暗号化処理が施された情報は、同一のＴＰＭ１３０２でのみ復号化処理を施すことができる。また、複合機１３００の構成は、第１の実施の形態の複合機１００の構成とは、図２において、ＳＣＳ１２２と処理が異なるＳＣＳ１４０１に変更された点のみが異なる。
【０１７８】
図１４は、本実施の形態にかかる複合機１３００の複合機起動部１４０及びＳＣＳ１４０１の機能的構成を示すブロック図である。ＳＣＳ１４０１は、第１の実施の形態のＳＣＳ１２２に、暗号化処理部１４１１と、許可情報書出部１４１２と、復号化処理部１４１３と、許可情報書戻部１４１４とが追加された構成となる。
【０１７９】
暗号化処理部１４１１は、ＮＶＲＡＭ１４に格納された情報（例えば、許可情報や、公開鍵情報）を取得し、取得した情報に対して暗号化処理を施す。具体的には、暗号化処理部１４１１はＮＶＲＡＭ１４から情報を読み込んだ後、当該情報をＴＰＭ１３０２に暗号化処理を施す旨と共に出力し、ＴＰＭ１３０２で暗号化処理が施された後、ＴＰＭ１３０２から暗号化処理が施された情報を取得する。
【０１８０】
許可情報書出部１４１２は、暗号化処理部１４１１で暗号化処理が施された情報（許可情報や公開鍵情報を含む）を、複合機１３００に装着されているメモリーカードＭ１に書き出す処理を行う。これによりＮＶＲＡＭ１４に格納されていた情報がバックアップされたことになる。
【０１８１】
復号化処理部１４１３は、ＮＶＲＡＭ１４が交換された場合、バックアップデータが格納されたメモリーカードＭ１から、暗号化処理が施されているバックアップデータを取得し、取得した情報に対して復号化処理を施す。具体的には、復号化処理部１４１３はメモリーカードＭ１からバックアップデータを読み込んだ後、当該バックアップデータをＴＰＭ１３０２に復号化処理を施す旨と共に出力し、ＴＰＭ１３０２で復号化処理が施された後、ＴＰＭ１３０２から復号化処理が施された情報を取得する。
【０１８２】
許可情報書戻部１４１４は、復号化処理部１４１３で復号化処理が施された情報（許可情報や公開鍵情報を含む）を、複合機１３００で新たに交換されたＮＶＲＡＭ１４に書き戻す処理を行う。メモリーカードＭ１に格納されていたバックアップデータから、以前ＮＶＲＡＭ１４に格納されていた情報が復元されたことになる。
【０１８３】
図１５は、本実施の形態の複合機１００でバックアップされたメモリーカードＭ１を他の複合機１５００で書き戻しを行った場合の概念を示した説明図である。本図に示すように、複合機１３００でメモリーカードＭ１にバックアップされた情報は、同一のＴＰＭ１３０２を用いることで復号化処理を施して、ＮＶＲＡＭ１４に展開することができる。
【０１８４】
複合機１３００でメモリーカードＭ１にバックアップされた情報を、他の複合機１５００のＮＶＲＡＭ１５０１に展開しようとした場合、ＴＰＭ１５０３では復号化処理を施すことができない。これはＴＰＭで暗号化処理が施された情報は、同一のチップに限り、復号化処理を施すことができるためである。これにより、バックアップデータから複合機１５００のＮＶＲＡＭ１５０１への情報の展開を抑止することができる。
【０１８５】
つまり、許可情報等の他の複合機に複写することを防止ことで、所定の複合機でのみ起動が許可されたメモリーカードに格納されたアプリケーションを、他の複合機で不正に起動されることを抑止することが可能となった。
【０１８６】
次に、以上のように構成された本実施の形態にかかる複合機１３００におけるＮＶＲＡＭ１４に格納された情報を読み出して、メモリーカードＭ１にバックアップするまでの処理について説明する。図１６は、本実施の形態にかかる複合機１３００における上述した処理の手順を示すフローチャートである。
【０１８７】
まず、暗号化処理部１４１１は、ＮＶＲＡＭ１４に格納されている情報（許可情報及び公開鍵）の読み込み処理を行う（ステップＳ１６０１）。
【０１８８】
そして、暗号化処理部１４１１は、読み込まれた情報に対してＴＰＭ１３０２を用いて暗号化処理を施す（ステップＳ１６０２）。
【０１８９】
次に、許可情報書出部１４１２が、暗号化処理が施された情報をメモリーカードＭ１に書き出す処理を行う（ステップＳ１６０３）。
【０１９０】
上述した処理を複合機１３００が行うことにより、ＮＶＲＡＭ１４に格納されていた情報に対して暗号化処理を施した上で、バックアップすることが可能となる。
【０１９１】
次に、以上のように構成された本実施の形態にかかる複合機１３００における、メモリーカードＭ１に格納されたバックアップデータを読み出して、ＮＶＲＡＭ１４に書き戻すまでの処理について説明する。図１７は、本実施の形態にかかる複合機１３００における上述した処理の手順を示すフローチャートである。
【０１９２】
まず、復号化処理部１４１３は、メモリーカードＭ１に格納されているバックアップデータの読み込み処理を行う（ステップＳ１７０１）。
【０１９３】
そして、復号化処理部１４１３は、読み込まれたバックアップデータに対してＴＰＭ１３０２を用いて復号化処理を施す（ステップＳ１７０２）。
【０１９４】
次に、許可情報書戻部１４１４が、復号化処理が施されたバックアップデータをＮＶＲＡＭ１４に書き戻す処理を行う（ステップＳ１７０３）。
【０１９５】
上述した処理を複合機１３００が行うことにより、バックアップデータに対して復号化処理を施した上で、書き戻すことが可能となる。
【０１９６】
本実施の形態は、上述した第１及び第２の実施の形態で示した効果の他、さらにＮＶＲＡＭ１４に格納されていた許可情報等をバックアップできるので、ＮＶＲＡＭ１４に障害が発生した場合でも、ＮＶＲＡＭ１４を交換して、バックアップされた許可情報などを書き戻すことで、元の状態に復元できる。
【０１９７】
また、バックアップする際に、暗号化処理を施し、書き戻す際に復号化処理を施すので、他の複合機に許可情報を書き戻すことを防げるので、メモリーカードに格納された外部アプリケーションを他の複合機で不正に実行されるのを防ぐことができる。
【産業上の利用可能性】
【０１９８】
以上のように、本発明にかかるアプリケーション実行装置、アプリケーション実行方法及びアプリケーション実行プログラムは、外部記憶媒体に格納されたアプリケーションの起動させる技術に有用であり、特に、管理者が設定したアプリケーションに限り起動を許可する技術に適している。
【図面の簡単な説明】
【０１９９】
【図１】第１の実施の形態にかかる複合機のハードウェア構成を示すブロック図である。
【図２】第１の実施の形態である複合機の構成を示すブロック図である。
【図３】第１の実施の形態である複合機のＯＣＳが制御する操作パネルの一例を示した図である。
【図４】第１の実施の形態にかかる複合機の複合機起動部及びＳＣＳの機能的構成を示すブロック図である。
【図５】メモリーカードに格納されたデータの例を示すブロック図である。
【図６】第１の実施の形態にかかる複合機のＮＶＲＡＭ１４に格納されたデータの例を示すブロック図である。
【図７】メモリーカードに格納されたアプリケーション毎の設定ファイルの記載例を示した図である。
【図８】第１の実施の形態によりメモリーカードに格納されたアプリケーションＡの起動制御の例を示した説明図である。
【図９】第１の実施の形態の複合機のＳＣＳの詳細画面表示制御部により液晶タッチパネルに表示される画面の遷移を示した説明図である。
【図１０】第１の実施の形態にかかる複合機におけるメモリーカードの装着からメモリーカードに格納されていたアプリケーションを実行するまでの処理の手順を示すフローチャートである。
【図１１】第２の実施の形態にかかる複合機の複合機起動部及びＳＣＳの構成を示すブロック図である。
【図１２】第２の実施の形態にかかる複合機におけるメモリーカードの装着からメモリーカードに格納されていたアプリケーションを実行するまでの処理の手順を示すフローチャートである。
【図１３】第３の実施の形態にかかる複合機のハードウェア構成を示すブロック図である。
【図１４】第３の実施の形態にかかる複合機の複合機起動部及びＳＣＳの機能的構成を示すブロック図である。
【図１５】第３の実施の形態の複合機でバックアップされたメモリーカードを他の複合機で書き戻しを行った場合の概念を示した説明図である。
【図１６】第３の実施の形態にかかる複合機におけるＮＶＲＡＭに格納された情報を読み出して、メモリーカードにバックアップするまでの処理の手順を示すフローチャートである。
【図１７】第３の実施の形態にかかる複合機におけるメモリーカードに格納されたバックアップデータを読み出して、ＮＶＲＡＭに書き戻すまでの処理の手順を示すフローチャートである。
【符号の説明】
【０２００】
１０、１３０１  コントローラ
１１  ＣＰＵ
１２  ＭＥＭ−Ｐ
１２ａ  ＲＯＭ
１２ｂ  ＲＡＭ
１３  ＢＲＩＤＧＥ
１４  ＮＶＲＡＭ
１５  ＡＧＰバス
１６  ＡＳＩＣ
１６ａ  コントローラ
１６ｂ  メモリーカードコントローラ
１７  ＭＥＭ−Ｃ
１８  ＨＤＤ
１９  メモリーカードＩ／Ｆ
２０  操作部
３０  ＦＣＵ
４０  ＵＳＢ
５０  ＩＥＥＥ１３９４インターフェース
６０  エンジン部
１００、１１００、１３００、１５００  複合機
１０１  白黒ラインプリンタ（B&W LP）
１０２  カラーラインプリンタ（Color LP）
１０３  ＨＤＤ１０３
１０４  その他ハードウェアリソース
１１０  ソフトウェア群
１１１  プリンタアプリ
１１２  コピーアプリ
１１３  ファックスアプリ
１１４  スキャナアプリ
１１５  ネットファイルアプリ
１１６  工程検査アプリ
１１７  外部アプリケーション
１２０  プラットフォーム
１３０  アプリケーション
１４０、１１０１  複合機起動部
３００  操作パネル
３０１  初期設定キー
３０２  コピーキー
３０３  コピーサーバーキー
３０４  プリンタキー
３０５  送信キー
３０６  テンキー
３０７  ストップキー
３０８  スタートキー
３０９  予熱キー
３１０  リセットキー
３２０  液晶タッチパネル
４０１  接続受付部
４０２、１１０３  判断部
４０３、１１０２  ＮＶＲＡＭ管理部
４０４、１１０５  確保部
４０５、１１０４  外部アプリ起動部
４１１  比較部
４５１  詳細画面表示制御部
４５２  起動情報設定処理部
４５３  アプリ移動処理部
４６１  移動処理部
４６２  移動先情報取得部
４６３  情報更新部
４６４  ＮＶＲＡＭ制御部
５０１  ヘッダ
５０２  アプリケーションＡデータ
５０３  アプリケーションＢデータ
５０４  アプリケーションＡモジュール本体
５０５  アプリケーションＡ用設定ファイル
５０６  アプリケーションＢモジュール本体
５０７  アプリケーションＢ用設定ファイル
６０１  ヘッダ
６０２  アプリケーションＡ許可基準情報
６０３  現メモリーカードＩＤ
６０４  元メモリーカードＩＤ
８０１  複合機
９０１  「アプリ抑制モード」ボタン
９０２  「全指定」ボタン
９０３  「自動設定」ボタン
９０４  「なし」ボタン
１４１１  暗号化処理部
１４１２  許可情報書出部
１４１３  復号化処理部
１４１４  許可情報書戻部
【図１】
0004848190.tif 000002
【図２】
0004848190.tif 000003
【図３】
0004848190.tif 000004
【図４】
0004848190.tif 000005
【図５】
0004848190.tif 000006
【図６】
0004848190.tif 000007
【図７】
0004848190.tif 000008
【図８】
0004848190.tif 000009
【図９】
0004848190.tif 000010
【図１０】
0004848190.tif 000011
【図１１】
0004848190.tif 000012
【図１２】
0004848190.tif 000013
【図１３】
0004848190.tif 000014
【図１４】
0004848190.tif 000015
【図１５】
0004848190.tif 000016
【図１６】
0004848190.tif 000017
【図１７】
0004848190.tif 000018