説明

情報処理装置、画像形成装置及びプログラムインストール方法

【課題】異なるプラットフォーム用プログラムへの対応が容易であり、開発効率が高く且つ拡張性が高い情報処理装置、画像形成装置及びプログラムインストール方法を提供することを目的とする。
【解決手段】異なるプラットフォーム用プログラムをインストールして実行可能にする情報処理装置1であって、異なるプラットフォーム毎に設けられ、プラットフォーム間の差異を吸収する互換機構部11,12を有し、互換機構部11,12はプラットフォーム間のインストール仕様の差異を吸収するインストール仕様定義部23,24と、プラットフォーム間のインターフェース仕様の差異を吸収するインターフェース仕様定義部25,26とを有することにより上記課題を解決する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、画像形成装置及びプログラムインストール方法に係り、特に異なるプラットフォーム用プログラムをインストールする情報処理装置、画像形成装置及びプログラムインストール方法に関する。
【背景技術】
【0002】
従来、プログラム開発の現場では、新しいプラットフォームの開発が完了すると古いプラットフォームの開発が打ち切られることが多かった。つまり、新しいプラットフォームの開発完了以降、古いプラットフォームのバージョンアップは発生しないことが多い。
【0003】
一方、新しいプラットフォームの開発に際し、効果を限定的に検証するためのパイロットプロジェクトを立ち上げ、プロトタイプを作成することで有効性を確認する手法は、プロジェクト成功のために有効であることが認知されはじめた。
【0004】
パイロットプロジェクトによる効果確認から本格展開までには、ある程度時間がかかることも多い。このため、新しいプラットフォームをパイロットプロジェクトとして開発している最中も、古いプラットフォームの開発は並行して実施し、市場に価値を提供し続ける必要がある。
【0005】
古いプラットフォームとの並行開発は、新しいプラットフォームの開発にとって大きな課題が発生する。なぜなら、古いプラットフォーム用に開発されたプログラムを、新しいプラットフォーム上でも動作させてほしいという、いわゆる上位互換性を求められることが多いからである。
【0006】
両方のプラットフォームを並行で開発してしまうと、古いプラットフォームで発生したインターフェース変更に対して、新しいプラットフォームは逐次追従する必要が発生してしまう。このため、追従コストの大きさにより、新しいプラットフォームの開発効率は大きく低下してしまう。従来は、フィルタフレームワークにより新しいソフトウェアの開発負荷を減少させる技術が知られていた(例えば特許文献1参照)。
【0007】
なお、新しいプラットフォームの開発効率が大きく低下してしまう理由は古いプラットフォームとの間で、差異の発生する箇所が多数存在するためである。プラットフォーム間ではインストールメディアのディレクトリ構成が異なるため、インストール方法の差異が存在する。また、プラットフォーム間ではプログラムパッケージを構成するファイルの形式が異なり、又、プログラムの正当性検証方法が異なるため、プログラム動作仕様の差異が存在する。
【0008】
このように、異なるプラットフォーム間では同一機能でもインターフェース仕様(使い方)が異なり、又、含まれている機能に差異があるため、そのままで同一ソフトウェアが動作しなかった。従来はバージョンの大小関係からプラットフォームに関する互換性を判別する技術が知られていた(例えば特許文献2参照)。
【0009】
図1は異なるプラットフォーム用プログラムをインストールする従来の情報処理装置の一例の構成図である。図1の情報処理装置1は、代表的なインストール方法として、インストールプログラムが格納されたインストールサーバ2,3からインストールプログラムをダウンロードしたり、SDカードなどのインストールメディア4,5を情報処理装置1に挿入したりすることでインストールを実施する。ここでは一例として、インストールメディア4,5を用いた方法について説明するが、インストールサーバ2,3を用いた方法も同様である。
【0010】
インストールメディア4,5に格納されているインストールプログラムは、情報処理装置1のプラットフォームソフトウェア(共通部)10のインストール処理部21を経由して情報処理装置内部にプラットフォームA用プログラムX又はプラットフォームB用プログラムYとしてインストールされる。プラットフォームA用プログラムX又はプラットフォームB用プログラムYは共通部10の機能提供部22を通して実行されていた。
【0011】
この際、インストール処理部21には異なるプラットフォーム間のインストール仕様の差異を吸収するための処理が全て含まれている。また、機能提供部22は異なるプラットフォーム間のインターフェース仕様(I/F仕様)の差異を吸収するための処理が全て含まれている。具体的には、機能提供部22は異なるプラットフォーム用I/Fの差分を吸収するために、想定される全てのプラットフォーム用I/Fを提供することで、プラットフォーム用I/Fの互換処理を実現していた。
【0012】
図2は異なるプラットフォーム用プログラムをインストールする従来の情報処理装置の一例のシーケンス図である。図3は異なるプラットフォーム用プログラムを実行する従来の情報処理装置の一例のシーケンス図である。
【0013】
図2では、ステップS1に進み、プラットフォームA用メディアであるインストールメディア4が情報処理装置1のスロット等に挿入される。インストール処理部21はインストール要求イベント(メディア挿入)を受け取る。
【0014】
ステップS2に進み、インストール処理部21はインストールメディア4に対し、インストールプログラムの有無チェックを行う。インストールメディア4にインストールプログラムが有れば、インストール処理部21はステップS3に進み、インストールメディア4からインストールプログラムを読み出す。
【0015】
ステップS4に進み、インストール処理部21は読み出したインストールプログラムのプログラム種別情報(ヘッダファイルなど)を解析することによるプログラム種類の識別を行う。ステップS5に進み、インストール処理部21は読み出したインストールプログラムを例えばハードディスク装置などの補助記憶装置中のプログラム格納エリアに格納する。ステップS6に進み、インストール処理部21はプログラム格納エリアに格納したインストールプログラムを情報処理装置1内で有効化することで、プラットフォームA用プログラムXを生成する。
【0016】
図3では、ステップS11に進み、プラットフォームA用プログラムXが、プログラム実行要求イベントを受け取る。ステップS12に進み、プラットフォームA用プログラムXは機能提供部22に対してI/F呼び出しを行う。ステップS13に進み、機能提供部22はプラットフォームA用プログラムXから呼び出されたI/Fに対応した機能を実行する。
【発明の概要】
【発明が解決しようとする課題】
【0017】
従来の情報処理装置1は新しいプラットフォームに対応するため、インストール処理部21及び機能提供部22全体を修正して、プラットフォームA,B間のインストール仕様及びI/F仕様の差異を吸収する必要があり、開発効率が低いという問題があった。
【0018】
例えばインストール処理部21及び機能提供部22に特定のプラットフォームに依存した部分を設けてしまうと、開発効率は上がる可能性がある。しかし、インストール処理部21及び機能提供部22に特定のプラットフォームに依存した部分を設けてしまうと、その後の拡張性が低下する懸念があった。
【0019】
なお、特許文献1はソフトウェアの拡張方法が述べられているもので、ソフトウェアの互換を維持する仕組みへの応用が考慮されていない。また、特許文献1は、述べられているソフトウェアの拡張方法もデータ変換処理に限定されており、インストールやI/F仕様など、互換を実現するために必要な他の要素への対応が考慮されていない。
【0020】
特許文献2はバージョンの大小関係から互換性を判別する仕組みにより、同一プラットフォームに関する互換性比較を行うものである。特許文献2は複数プラットフォームに関する互換性が考慮されておらず、比較方法のみが記述されており、互換を取る方法に関して言及されていない。
【0021】
本発明は、上記の点に鑑みなされたもので、異なるプラットフォーム用プログラムへの対応が容易であり、開発効率が高く且つ拡張性が高い情報処理装置、画像形成装置及びプログラムインストール方法を提供することを目的とする。
【課題を解決するための手段】
【0022】
上記課題を解決するため、本発明は、異なるプラットフォーム用プログラムをインストールして実行可能にする情報処理装置であって、異なるプラットフォーム用プログラムがインストール処理と実行処理とで共通に利用する共通部と、異なるプラットフォーム毎に設けられ、プラットフォーム間のインストール仕様及びインターフェース仕様の差異を吸収する互換機構部とを有し、前記互換機構部はプラットフォーム間のインストール仕様の差異を吸収するインストール仕様定義部と、プラットフォーム間のインターフェース仕様の差異を吸収するインターフェース仕様定義部とを有し、前記インストール仕様定義部は前記共通部からインストール処理要求のあったプラットフォーム用プログラムが自プラットフォームに対応するときに、インストール処理要求のあったプラットフォーム用プログラムのインストール処理を行い、前記インターフェース仕様定義部は前記プラットフォーム用プログラムから実行処理のために呼び出された固有インターフェースを、前記共通部が提供する共通インターフェースに変換し、前記共通部の提供する共通インターフェースを呼び出して前記共通部に前記共通インターフェースに対応した機能を実行させることを特徴とする。
【0023】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
【発明の効果】
【0024】
本発明によれば、異なるプラットフォーム用プログラムへの対応が容易であり、開発効率が高く且つ拡張性が高い情報処理装置、画像形成装置及びプログラムインストール方法を提供可能である。
【図面の簡単な説明】
【0025】
【図1】異なるプラットフォーム用プログラムをインストールする従来の情報処理装置の一例の構成図である。
【図2】異なるプラットフォーム用プログラムをインストールする従来の情報処理装置の一例のシーケンス図である。
【図3】異なるプラットフォーム用プログラムを実行する従来の情報処理装置の一例のシーケンス図である。
【図4】コンピュータシステムの一例のハードウェア構成図である。
【図5】複合機の一例のハードウェア構成図である。
【図6】複合機の一例のソフトウェア構成図である。
【図7】異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の一例の構成図である。
【図8】異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の一例のシーケンス図である。
【図9】異なるプラットフォーム用プログラムを実行する本発明の情報処理装置の一例のシーケンス図である。
【図10】本発明の情報処理装置におけるインストール処理部とプラットフォームAインストール仕様定義部とプラットフォームBインストール仕様定義部との詳細を説明する為の説明図である。
【図11】本発明の情報処理装置におけるプラットフォーム個別プログラムとプラットフォームAI/F仕様定義部と機能提供部との詳細を説明する為の説明図である。
【図12】異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の他の例のシーケンス図である。
【図13】異なるプラットフォーム用プログラムを実行する本発明の情報処理装置の他の例のシーケンス図である。
【図14】異なるプラットフォーム用プログラムを実行する本発明の情報処理装置の他の例のシーケンス図である。
【図15】異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の他の例のシーケンス図である。
【図16】異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の他の例のシーケンス図である。
【図17】異なるプラットフォーム間で発生するインストールメディアの構成の差異を表した説明図である。
【図18】異なるプラットフォーム間で発生するインストールメディアのプログラム格納方法の差異を表した説明図である。
【図19】異なるプラットフォーム間で発生するインストールプログラムのプログラム種別情報の差異を表した説明図である。
【図20】異なるプラットフォーム間で発生する暗号技術の差異を表した説明図である。
【図21】異なるプラットフォーム間で発生するI/Fの差異を表した説明図である。
【図22】異なるプラットフォーム間で発生する機能の差異を表した説明図である。
【発明を実施するための形態】
【0026】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。なお、本実施例では情報処理装置の一例としてサーバ装置やパーソナルコンピュータなどのコンピュータシステム、画像形成装置の一例として複合機(MFP)を例に説明するが、サーバ装置やパーソナルコンピュータなどのコンピュータシステム又は複合機に限定するものではない。本発明は、プラットフォーム型の機器全般に適用可能である。
【0027】
図4は、コンピュータシステムの一例のハードウェア構成図である。コンピュータシステム30は、それぞれバスBで相互に接続されている入力装置31,出力装置32,ドライブ装置33,補助記憶装置34,主記憶装置35,演算処理装置36およびインターフェース装置37を含む。
【0028】
キーボードやマウスなどの入力装置31は各種信号を入力するために用いられる。出力装置32はディスプレイ装置などであり、各種ウインドウやデータ等を表示するために用いられる。モデム,LANカードなどのインターフェース装置37は、ネットワークに接続する為に用いられる。
【0029】
本実施例のプラットフォーム互換機構を実現するプラットフォーム互換機構プログラムはコンピュータシステム30を制御する各種プログラムの少なくとも一部である。プラットフォーム互換機構プログラムは例えば記録媒体38の配布やネットワークからのダウンロードなどによって提供される。プラットフォーム互換機構プログラムを記録した記録媒体38は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【0030】
また、プラットフォーム互換機構プログラムを記録した記録媒体38がドライブ装置33にセットされると、プラットフォーム互換機構プログラムは記録媒体38からドライブ装置33を介して補助記憶装置34にインストールされる。ネットワークからダウンロードされたプラットフォーム互換機構プログラムは、インターフェース装置37を介して補助記憶装置34にインストールされる。
【0031】
補助記憶装置34はインストールされたプラットフォーム互換機構プログラムを格納すると共に、必要なファイル,データ等を格納する。主記憶装置35は、プラットフォーム互換機構プログラムの起動時に補助記憶装置34からプラットフォーム互換機構プログラムを読み出して格納する。そして、演算処理装置36は主記憶装置35に格納されたプラットフォーム互換機構プログラムに従って、後述するような各種処理を実現している。なお、後述の処理ブロックは図4のコンピュータシステム30の場合、演算処理装置36がプラットフォーム互換機構プログラム等を実行することにより実現されるものである。
【0032】
図5は、複合機の一例のハードウェア構成図である。複合機50は、大きく分けて、コントローラ51と、操作部52と、FAX制御ユニット53と、プロッタ54と、スキャナ55と、その他ハードウェアリソース56とを有し、画像データの入出力機能を複合して有する画像形成装置である。
【0033】
コントローラ51は、制御装置であるCPU61と、プロセッサ用の作業メモリとして機能するRAM62と、後述する各種ローカルインターフェースとがNB(North Bridge)63を介して接続されている。また、NB63は、特定用途向け制御回路として機能するASIC64とも接続されており、CPU61の制御をASIC64に伝える。ASIC64は、プロッタ54等の各種ハードウェアと接続される他、複合機50の不揮発性の記憶手段として機能するHDD65と接続される。なお、ASIC64は、回路用の作業メモリとして機能するRAM66との接続を有している。
【0034】
コントローラ51は、各種ローカルインターフェースを備え、接続される各種機器又はネットワークと通信を行う。ローカルインターフェースとしては、シリアルバス67,NIC(Network Interface Card)68,USB(Universal Serial Bus) I/F69,USBケーブルを介してICカードR/W装置57と接続されるUSBホスト70、メモリカードI/F71等であり、PCI−BUS72を介して接続されている。なお、ローカルインターフェースは、上記の例に限定されることはなく多様なインターフェースでも対応可能である。また、接続の態様はPCI−BUS72に限定されず、PCI−Express等でもよい。また、ICカードR/W装置57はICカード58に記録されているデータを読み出し、又はICカード58へデータを記録する。
【0035】
HDD65には、複合機50を制御するプログラムやアプリケーション等のソフトウェアが格納されている。HDD65に格納されているソフトウェアは、CPU61により読み出され、RAM62上に展開される。CPU61はRAM62上に展開されたソフトウェアに従って、後述するような各種処理を実現している。なお、後述の処理ブロックは図5の複合機50の場合、CPU61がプラットフォーム互換機構プログラム等を実行することにより実現されるものである。
【0036】
図6は複合機の一例のソフトウェア構成図である。図6の複合機50は、アプリケーションとして、コピーアプリケーション81,ファクスアプリケーション82,プリンタアプリケーション83,Webアプリケーション84を有する。
【0037】
また、アプリケーションプログラムインターフェース(API)85は、アプリケーションと共通システムサービスとの間の通信を行うためのものである。共通システムサービスは、アプリケーションに対して共通に利用できるサービスを提供するためのモジュール群である。共通システムサービスは、システム制御サービス(SCS)86,ファクス制御サービス(FCS)87,エンジン制御サービス(ECS)88,メモリ制御サービス(MCS)89,操作部制御サービス(OCS)90,ネットワーク制御サービス(NCS)91,認証制御サービス(CCS)92を有する。
【0038】
また、エンジンインターフェース(エンジンI/F)94は、エンジン制御ボード95とコントローラ51との間の通信を行うためのものである。エンジン制御ボード95はプロッタエンジン96,スキャナエンジン97,その他ハードウェアリソースのエンジン98の制御を行なうためのものである。なお、図6のソフトウェア構成図では共通システムサービスとOS93とがプラットフォームとなる。複合機50のハードウェア構成及びソフトウェア構成は周知であるため、ここでは詳細部分についての説明を省略する。
【実施例1】
【0039】
図7は異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の一例の構成図である。図7の情報処理装置1は、代表的なインストール方法として、インストールプログラムが格納されたインストールサーバ2,3からインストールプログラムをダウンロードしたり、SDカードなどのインストールメディア4,5を情報処理装置1のメモリカードI/F71等に挿入したりすることでインストールを実施する。本実施例では一例として、インストールメディア4,5を用いた方法について説明するが、インストールサーバ2,3を用いた方法も同様である。
【0040】
図7の情報処理装置1はプラットフォームA互換機構11とプラットフォームB互換機構12とを、プラットフォームソフトウェア(共通部)10から切り出して独立させている。プラットフォームA及びBのインストール仕様及びI/F仕様の差分はプラットフォームA互換機構11とプラットフォームB互換機構12とで吸収する。
【0041】
プラットフォームA互換機構11はプラットフォームAインストール仕様定義部23とプラットフォームAI/F仕様定義部25−1とプラットフォームAI/F仕様定義部25−2とを有している。また、プラットフォームB互換機構12はプラットフォームBインストール仕様定義部24とプラットフォームBI/F仕様定義部26−1とプラットフォームBI/F仕様定義部26−2とを有している。なお、I/F仕様定義部25−1,25−2,26−1,26−2はプラットフォームA,Bの並行開発(機能拡張)を考慮して、複数種類搭載できるように考慮されている。
【0042】
インストールメディア4に格納されているインストールプログラムは、情報処理装置1のプラットフォームソフトウェア(共通部)10のインストール処理部21及びプラットフォームA互換機構11のプラットフォームAインストール仕様定義部23を経由して情報処理装置1内部にプラットフォームA用プログラムXとしてインストールされる。
【0043】
インストールメディア5に格納されているインストールプログラムは、情報処理装置1のプラットフォームソフトウェア(共通部)10のインストール処理部21及びプラットフォームB互換機構12のプラットフォームBインストール仕様定義部24を経由して情報処理装置1内部にプラットフォームB用プログラムYとしてインストールされる。
【0044】
また、プラットフォームA用プログラムXはプラットフォームA互換機構11のプラットフォームAI/F仕様定義部25−1,25−2及び共通部10の機能提供部22を通して実行される。プラットフォームB用プログラムYはプラットフォームB互換機構12のプラットフォームBI/F仕様定義部26−1,26−2及び共通部10の機能提供部22を通して実行される。
【0045】
この際、プラットフォームAインストール仕様定義部23及びプラットフォームBインストール仕様定義部24には、異なるプラットフォームA,B間のインストール仕様の差異を吸収するための処理が全て含まれている。また、プラットフォームAI/F仕様定義部25−1,25−2と、プラットフォームBI/F仕様定義部26−1,26−2とには異なるプラットフォームA、B間のインターフェース仕様(I/F仕様)の差異を吸収するための処理が全て含まれている。
【0046】
このように、本発明の情報処理装置1は、あるプラットフォームA上でインストールして実行可能なプログラムを、異なるプラットフォームB上でもインストールして実行可能な仕組みを提供するものである。具体的に、本発明の情報処理装置1はプラットフォームA向けに配布されたインストールメディア4(プラットフォームA上で動作するプラットフォームA用プログラムX)を、そのままプラットフォームBのインストールメディア5としても利用できる仕組みを提供できる。本発明の情報処理装置1は、プラットフォームA,B毎に異なるインストール仕様やI/F仕様の差異に、簡単に対応する仕組みを提供できる。
【0047】
図8は異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の一例のシーケンス図である。図8のシーケンス図は情報処理装置1がプラットフォームA互換機構11を有する例を示している。
【0048】
図8では、ステップS21に進み、プラットフォームA用メディアであるインストールメディア4が情報処理装置1のスロット等に挿入される。インストール処理部21はインストール要求イベント(メディア挿入)を受け取る。
【0049】
ステップS22に進み、インストール処理部21はプラットフォームAインストール仕様定義部23にインストールプログラムの有無チェックを要求する。プラットフォームAインストール仕様定義部23はインストールメディア4に対し、インストールプログラムの有無チェックを行う。
【0050】
インストールメディア4にインストールプログラムが有れば、プラットフォームAインストール仕様定義部23はステップS23に進み、プログラム有りをインストール処理部21に通知する。ステップS24に進み、インストール処理部21はプラットフォームAインストール仕様定義部23にインストールプログラムの取得を要求する。ステップS25に進み、プラットフォームAインストール仕様定義部23はインストールメディア4からインストールプログラムを読み出す。
【0051】
ステップS26に進み、プラットフォームAインストール仕様定義部23はインストールプログラムの取得終了をインストール処理部21に通知する。ステップS27に進み、インストール処理部21は読み出したインストールプログラムのプログラム種類の識別をプラットフォームAインストール仕様定義部23に要求する。
【0052】
プラットフォームAインストール仕様定義部23は読み出したインストールプログラムのプログラム種別情報(ヘッダファイルなど)を解析することによるプログラム種類の識別を行う。ステップS28に進み、プラットフォームAインストール仕様定義部23は読み出したインストールプログラムのプログラム種類の識別の結果を、インストール処理部21に応答する。
【0053】
ステップS29に進み、インストール処理部21は読み出したインストールプログラムの格納をプラットフォームAインストール仕様定義部23に要求する。プラットフォームAインストール仕様定義部23は読み出したインストールプログラムを例えばハードディスク装置などの補助記憶装置34中のプログラム格納エリアに格納する。
【0054】
ステップS30に進み、プラットフォームAインストール仕様定義部23はプログラム格納エリアに格納したインストールプログラムを情報処理装置1内で有効化することで、プラットフォームA用プログラムXを生成する。
【0055】
図8に示すように、インストール処理部21はインストールに関する処理を実行するわけではなく、プラットフォームAインストール仕様定義部23に処理を委譲することで異なるプラットフォーム用プログラムのインストールに対応している。
【0056】
図9は異なるプラットフォーム用プログラムを実行する本発明の情報処理装置の一例のシーケンス図である。図9のシーケンス図は情報処理装置1がプラットフォームA互換機構11を有する例を示している。図9では、ステップS41に進み、プラットフォームA用プログラムXが、プログラム実行要求イベントを受け取る。
【0057】
ステップS42に進み、プラットフォームA用プログラムXはプラットフォームAI/F仕様定義部25−1に対してプラットフォームAのI/FでI/F呼び出しを行う。ステップS43に進み、プラットフォームAI/F仕様定義部25−1はプラットフォームAのI/F(固有I/F)を機能提供部22のI/F(共通I/F)に変換する。
【0058】
ステップS44に進み、プラットフォームAI/F仕様定義部25−1は機能提供部22に対して共通I/FでI/F呼び出しを行う。ステップS45に進み、機能提供部22はプラットフォームA用プログラムXから呼び出されたプラットフォームAのI/Fに対応した機能を実行する。
【0059】
図9に示すように、機能提供部22はI/F変換処理を実行するわけでなく、プラットフォームAI/F仕様定義部25−1にI/F変換処理を委譲することで異なるプラットフォーム用プログラムの実行に対応している。
【0060】
ここで、異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置1におけるインストール処理部21とプラットフォームAインストール仕様定義部23とプラットフォームBインストール仕様定義部24との詳細を説明する。
【0061】
図10は本発明の情報処理装置におけるインストール処理部とプラットフォームAインストール仕様定義部とプラットフォームBインストール仕様定義部との詳細を説明する為の説明図である。
【0062】
インストール処理部21はインストール処理のフレームワーク27に規定されているI/Fを呼び出す。インストール処理部21が呼び出すI/Fの実際の中身は、インストール処理個別プログラムとしてのプラットフォームAインストール仕様定義部23とプラットフォームBインストール仕様定義部24との内部に隠蔽している。
【0063】
インストール処理のフレームワーク27はI/F(器)を用意して、インストール処理部21からの呼び出し方法を定義する。プラットフォームAインストール仕様定義部23とプラットフォームBインストール仕様定義部24はI/Fの実際の中身を実装し、プラットフォームA,B毎に異なる仕様差異を吸収する。
【0064】
次に、異なるプラットフォーム用プログラムを実行する本発明の情報処理装置1におけるプラットフォーム個別プログラム28とプラットフォームAI/F仕様定義部25−1とプラットフォームAI/F仕様定義部25−2と機能提供部22との詳細を説明する。
【0065】
図11は本発明の情報処理装置におけるプラットフォーム個別プログラムとプラットフォームAI/F仕様定義部と機能提供部との詳細を説明する為の説明図である。例えばプラットフォームAの機能提供部22が用意しているI/Fと他のプラットフォームBの機能提供部22が用意しているI/Fとに差異が存在する場合は、プラットフォームAI/F仕様定義部25−1,25−2が差異を吸収する。
【0066】
プラットフォームAの機能提供部22が用意しているI/Fと他のプラットフォームBの機能提供部22が用意しているI/Fとに差異が存在する場合の例としては、プラットフォームBがコピーというI/Fを用意しているのに対し、プラットフォームAがコピーを詳細化したスキャナ,プロッタというI/Fを個別に用意している場合などがある。
【0067】
図11の例では、プラットフォームA上でプラットフォーム個別プログラム28がプラットフォームBの用意したコピーというI/Fを呼び出すと、プラットフォームAI/F仕様定義部25−1がコピーというI/FをプラットフォームAの用意したスキャナ,プロッタというI/Fに変換している。
【0068】
なお、プラットフォームAの機能提供部22が用意するI/Fは進化するため、情報処理装置1はプラットフォームAI/F仕様定義部25−1,25−2のように別パッケージ化することで、新たなプラットフォームAのI/F仕様定義を後から追加できるようにしている。
【実施例2】
【0069】
実施例2の情報処理装置1の構成は実施例1の情報処理装置1の構成と同様であるため説明を省略する。図12は異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の他の例のシーケンス図である。図12のシーケンス図は情報処理装置1がプラットフォームA互換機構11,プラットフォームB互換機構12を有する例を示している。
【0070】
図12では、ステップS61に進み、プラットフォームB用メディアであるインストールメディア5が情報処理装置1のスロット等に挿入される。インストール処理部21はインストール要求イベント(メディア挿入)を受け取る。
【0071】
ステップS62に進み、インストール処理部21はプラットフォームAインストール仕様定義部23にインストールプログラムの有無チェックを要求する。プラットフォームAインストール仕様定義部23はインストールメディア5に対し、インストールプログラムの有無チェックを行う。
【0072】
プラットフォームAインストール仕様定義部23はインストールメディア5にプラットフォームA用のインストールプログラムが無いため、ステップS63に進み、プログラムなしをインストール処理部21に通知する。
【0073】
ステップS64に進み、インストール処理部21はプラットフォームBインストール仕様定義部24にインストールプログラムの有無チェックを要求する。プラットフォームBインストール仕様定義部24はインストールメディア5に対し、インストールプログラムの有無チェックを行う。
【0074】
プラットフォームBインストール仕様定義部24はインストールメディア5にプラットフォームB用のインストールプログラムが有るため、ステップS65に進み、プログラム有りをインストール処理部21に通知する。
【0075】
ステップS66に進み、インストール処理部21はプラットフォームBインストール仕様定義部24にインストールプログラムの取得を要求する。ステップS67に進み、プラットフォームBインストール仕様定義部24はインストールメディア5からインストールプログラムを読み出す。
【0076】
ステップS68に進み、プラットフォームBインストール仕様定義部24はインストールプログラムの取得終了をインストール処理部21に通知する。ステップS69に進み、インストール処理部21は読み出したインストールプログラムのプログラム種類の識別をプラットフォームBインストール仕様定義部24に要求する。
【0077】
プラットフォームBインストール仕様定義部24は読み出したインストールプログラムのプログラム種別情報(ヘッダファイルなど)を解析することによるプログラム種類の識別を行う。ステップS70に進み、プラットフォームBインストール仕様定義部24は読み出したインストールプログラムのプログラム種類の識別の結果を、インストール処理部21に応答する。
【0078】
ステップS71に進み、インストール処理部21は読み出したインストールプログラムの格納をプラットフォームBインストール仕様定義部24に要求する。プラットフォームBインストール仕様定義部24は読み出したインストールプログラムを補助記憶装置34中のプログラム格納エリアに格納する。
【0079】
ステップS72に進み、プラットフォームBインストール仕様定義部24はプログラム格納エリアに格納したインストールプログラムを情報処理装置1内で有効化することで、プラットフォームB用プログラムYを生成する。なお、図12のシーケンス図はステップS63でプログラムありと判定した場合はプラットフォームBインストール仕様定義部24にインストールプログラムの有無チェックを要求してもしなくてもよい。
【0080】
図12に示すように、インストール処理部21はインストールに関する処理をプラットフォームAインストール仕様定義部23又はプラットフォームBインストール仕様定義部24に委譲する際、インストールプログラムの有無チェックを順に行い、プログラムありと判定したプラットフォームAインストール仕様定義部23又はプラットフォームBインストール仕様定義部24に処理を委譲する。
【0081】
図13は異なるプラットフォーム用プログラムを実行する本発明の情報処理装置の他の例のシーケンス図である。図13では、ステップS81に進み、プラットフォームB用プログラムYが、プログラム実行要求イベントを受け取る。
【0082】
ステップS82に進み、プラットフォームB用プログラムYはプラットフォームBI/F仕様定義部26−1に対してプラットフォームBのI/FでI/F呼び出しを行う。ステップS83に進み、プラットフォームBI/F仕様定義部26−1はプラットフォームBのI/F(固有I/F)を機能提供部22のI/F(共通I/F)に変換する。
【0083】
ステップS84に進み、プラットフォームBI/F仕様定義部26−1は機能提供部22に対して共通I/FでI/F呼び出しを行う。ステップS85に進み、機能提供部22はプラットフォームB用プログラムYから呼び出されたプラットフォームBのI/Fに対応した機能を実行する。
【0084】
図13に示すように、機能提供部22はI/F変換処理を実行するわけでなく、プラットフォームBI/F仕様定義部26−1にI/F変換処理を委譲することで異なるプラットフォーム用プログラムの実行に対応している。
【実施例3】
【0085】
実施例3の情報処理装置1の構成は実施例1の情報処理装置1の構成と同様であるため説明を省略する。また、実施例3の情報処理装置1の異なるプラットフォーム用プログラムをインストールする処理は実施例1又は実施例2と同様であるため説明を省略する。
【0086】
図14は異なるプラットフォーム用プログラムを実行する本発明の情報処理装置の他の例のシーケンス図である。図14のシーケンス図は情報処理装置1がプラットフォームA互換機構11にプラットフォームAI/F仕様定義部25−1,25−2を有する例を示している。
【0087】
なお、プラットフォームA互換機構11はプラットフォームA用プログラムXから呼び出されるI/Fの種類に応じてプラットフォームAI/F仕様定義部25−1,25−2を有しているものとする。
【0088】
図14では、ステップS91に進み、プラットフォームA用プログラムXが、プログラム実行要求イベントを受け取る。ステップS92に進み、プラットフォームA用プログラムXはプラットフォームAI/F仕様定義部25−1に対して、プログラム実行要求イベントに応じたプラットフォームAのI/FでI/F呼び出しを行う。ステップS93に進み、プラットフォームAI/F仕様定義部25−1はプラットフォームAのI/F(固有I/F)を機能提供部22のI/F(共通I/F)に変換する。
【0089】
ステップS94に進み、プラットフォームAI/F仕様定義部25−1は機能提供部22に対して共通I/FでI/F呼び出しを行う。ステップS95に進み、機能提供部22はプラットフォームA用プログラムXから呼び出されたプラットフォームAのI/Fに対応した機能を実行する。
【0090】
ステップS96に進み、プラットフォームA用プログラムXはプラットフォームAI/F仕様定義部25−2に対して、プログラム実行要求イベントに応じたプラットフォームAのI/FでI/F呼び出しを行う。ステップS97に進み、プラットフォームAI/F仕様定義部25−2はプラットフォームAのI/F(固有I/F)を機能提供部22のI/F(共通I/F)に変換する。
【0091】
ステップS98に進み、プラットフォームAI/F仕様定義部25−2は機能提供部22に対して共通I/FでI/F呼び出しを行う。ステップS99に進み、機能提供部22はプラットフォームA用プログラムXから呼び出されたプラットフォームAのI/Fに対応した機能を実行する。
【0092】
図14に示すように、プラットフォームA互換機構11のプラットフォームAI/F仕様定義部25−1,25−2は自分のI/F(固有I/F)が呼び出された場合、呼び出された固有I/Fを機能提供部22が提供するI/F(共通I/F)に変換する。
【実施例4】
【0093】
実施例4の情報処理装置1の構成は実施例1の情報処理装置1の構成と同様であるため説明を省略する。また、実施例4の情報処理装置1の異なるプラットフォーム用プログラムを実行する処理は実施例1〜3と同様であるため説明を省略する。
【0094】
図15は異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の他の例のシーケンス図である。図15のシーケンス図は情報処理装置1がプラットフォームA互換機構11,プラットフォームB互換機構12を有する例を示している。実施例4の情報処理装置1におけるインストール処理部21は互換機構の登録用I/Fを用意している。
【0095】
図15では、ステップS101に進み、プラットフォームA互換機構11が互換機構の登録用I/Fを利用してインストール処理部21に自身を登録する。ステップS102に進み、プラットフォームB互換機構12が互換機構の登録用I/Fを利用してインストール処理部21に自身を登録する。
【0096】
ステップS103に進み、プラットフォームB用メディアであるインストールメディア5が情報処理装置1のスロット等に挿入される。インストール処理部21はインストール要求イベント(メディア挿入)を受け取る。
【0097】
ステップS104に進み、インストール処理部21はプラットフォームA互換機構11のプラットフォームAインストール仕様定義部23にインストールプログラムの有無チェックを要求する。プラットフォームAインストール仕様定義部23はインストールメディア5に対し、インストールプログラムの有無チェックを行う。
【0098】
プラットフォームAインストール仕様定義部23はインストールメディア5にプラットフォームA用のインストールプログラムが無いため、ステップS105に進み、プログラムなしをインストール処理部21に通知する。
【0099】
ステップS106に進み、インストール処理部21はプラットフォームB互換機構12のプラットフォームBインストール仕様定義部24にインストールプログラムの有無チェックを要求する。プラットフォームBインストール仕様定義部24はインストールメディア5に対し、インストールプログラムの有無チェックを行う。
【0100】
プラットフォームBインストール仕様定義部24はインストールメディア5にプラットフォームB用のインストールプログラムが有るため、ステップS107に進み、プログラム有りをインストール処理部21に通知する。
【0101】
ステップS108に進み、インストール処理部21はプラットフォームBインストール仕様定義部24にインストールプログラムの取得を要求する。ステップS109に進み、プラットフォームBインストール仕様定義部24はインストールメディア5からインストールプログラムを読み出す。
【0102】
なお、プラットフォームBインストール仕様定義部24がインストールメディア5からインストールプログラムを読み出したあとの処理は、図12のステップS68〜S72と同様であるため説明を省略する。
【0103】
このように、インストール処理部21は登録のあったプラットフォームAインストール仕様定義部23及びプラットフォームBインストール仕様定義部24に対してインストールプログラムの有無チェック(処理委譲対象に含める)を実施する。
【0104】
したがって、インストール処理部21は情報処理装置1がどのような互換機構を保有しているかを意識することなく、インストール処理の委譲が可能となる。実施例4の情報処理装置1は内部に互換機構が何種類存在してもインストール仕様定義部を対応させることができる。つまり、実施例4の情報処理装置1は互換機構の後付けが容易となる。
【0105】
なお、互換機構の有効/無効を切り替えが、互換機構の登録用I/Fを実行する/実行しないにより実施できるので、特定の利用者に互換機構を公開するなど、商品の利便性向上も期待できる。
【実施例5】
【0106】
実施例5の情報処理装置1の構成は実施例1の情報処理装置1の構成と同様であるため説明を省略する。また、実施例5の情報処理装置1の異なるプラットフォーム用プログラムを実行する処理は実施例1〜4と同様であるため説明を省略する。
【0107】
図16は異なるプラットフォーム用プログラムをインストールする本発明の情報処理装置の他の例のシーケンス図である。なお、図16のシーケンス図におけるステップS111〜S118の処理は図8のシーケンス図におけるステップS21〜S28と同様であるため説明を省略する。
【0108】
ステップS119に進み、インストール処理部21は読み出したインストールプログラムの正当性チェックを行う。読み出したインストールプログラムが正当(正当性チェックOK)であると判定すると、プラットフォームAインストール仕様定義部23はステップS120に進み、正当性チェックOKをインストール処理部21に通知する。
【0109】
正当性チェックOKが通知されると、インストール処理部21はステップS121に進み、読み出したインストールプログラムの格納をプラットフォームAインストール仕様定義部23に要求する。プラットフォームAインストール仕様定義部23は読み出したインストールプログラムを例えばハードディスク装置などの補助記憶装置34中のプログラム格納エリアに格納する。
【0110】
ステップS122に進み、プラットフォームAインストール仕様定義部23はプログラム格納エリアに格納したインストールプログラムを情報処理装置1内で有効化することで、プラットフォームA用プログラムXを生成する。
【0111】
なお、読み出したインストールプログラムが不正(正当性チェックNG)であると判定すると、プラットフォームAインストール仕様定義部23は正当性チェックNGをインストール処理部21に通知する。正当性チェックNGが通知されると、インストール処理部21は読み出したインストールプログラムの格納をプラットフォームAインストール仕様定義部23に要求しない。
【0112】
インストール処理部21は正当性チェックNGが通知されると、状況に応じて利用者にインストールプログラムが不正であることを通知したり、不正なインストールプログラムのインストールが要求されたことをログとして記録したりする等の処理も可能である。
【0113】
(異なるプラットフォーム間で発生する差異例)
図17は異なるプラットフォーム間で発生するインストールメディアの構成の差異を表した説明図である。図17に示すように、インストールメディアのフォルダ構成は、プラットフォームによって異なる。
【0114】
パターンAに示すように、あるプラットフォームでは、特定の名称(例えば、installなど)が付いたフォルダの存在有無でインストールメディアかどうかを判断する。パターンBに示すように、あるプラットフォームでは、特定の拡張子(例えば、prgなど)が付いたファイルの存在有無でインストールメディアかどうかを判断する。
【0115】
パターンCに示すように、あるプラットフォームでは、データの中身(例えばヘッダファイル)をチェックして、特定のヘッダファイルが付いているファイルの存在有無でインストールメディアかどうかを判断する。互換機構は上記のような異なるプラットフォーム間で発生するインストールメディアの構成の差分を吸収する。
【0116】
図18は異なるプラットフォーム間で発生するインストールメディアのプログラム格納方法の差異を表した説明図である。パターンAに示すように、あるプラットフォームではrootディレクトリの直下に1ファイルを配置する。パターンBに示すように、あるプラットフォームではフォルダを圧縮して1ファイルで構成する。
【0117】
パターンCに示すように、あるプラットフォームでは、もともと複数のファイルで構成される。互換機構は上記のような異なるプラットフォーム間で発生するインストールメディアのプログラム格納方法の差分を吸収する。
【0118】
図19は異なるプラットフォーム間で発生するインストールプログラムのプログラム種別情報の差異を表した説明図である。パターンA,Cに示すように、あるプラットフォームではプログラムとは別に定義ファイル(例えばXML形式で書かれたもの)で定義する。パターンBに示すように、あるプラットフォームではプログラムのヘッダ情報に直接記載して定義する。
【0119】
定義ファイルやヘッダ情報はプラットフォーム毎に定義されているパラメータが異なっている。互換機構は上記のような異なるプラットフォーム間で発生するインストールプログラムのプログラム種別情報の差分を吸収する。
【0120】
図20は異なるプラットフォーム間で発生する暗号技術の差異を表した説明図である。インストールプログラムの正当性を証明する方法としては暗号化された証明書を使用することが多い。証明書をどのようなアルゴリズムで暗号化するかは異なるプラットフォーム間で差異が生じる。例えばSHA1、MD5、Jarsignerなどの暗号技術は使い分けられていることが多い。互換機構は上記のような異なるプラットフォーム間で発生する暗号技術の差分を吸収する。
【0121】
図21は異なるプラットフォーム間で発生するI/Fの差異を表した説明図である。図21に示すように、I/Fの粒度やパラメータ指定方法は異なるプラットフォーム間で差異がある。
【0122】
パターンAに示すように、あるプラットフォームではI/Fの粒度が細かく、リソース獲得,ジョブ生成,画像読み取り実行,画像印刷実行というようにコピー動作を細かく分割して指定する。I/Fの粒度が細かいプラットフォームでは、アプリケーションがきめ細やかな振る舞いを規定できるが、開発難易度が上がるという問題点もある。
【0123】
パターンBに示すように、あるプラットフォームではI/Fの粒度が荒く、コピー実行という単一I/Fで定義されている。I/Fの粒度が荒いプラットフォームでは、アプリケーションが簡単に開発できるが、きめ細やかな振る舞いを規定できないという問題点がある。
【0124】
パターンB,Cに示すように、異なるプラットフォーム間ではI/Fの粒度だけでなく指定するパラメータの差異も存在する。例えばパターンBではパラメータの一つとしてA4サイズという紙サイズコードが指定されている。一方、パターンCではパラメータの一つとして297mm×210mmという寸法データが指定されている。
【0125】
このように、I/Fの粒度やパラメータ指定方法などのI/Fの差異は一長一短があるために、通常、採用されるI/Fはプラットフォームによって大きく異なる。互換機構は上記のような異なるプラットフォーム間で発生するI/Fの差分を吸収する。
【0126】
図22は異なるプラットフォーム間で発生する機能の差異を表した説明図である。図22に示すように、プラットフォームは保有している機能が異なる。例えば認証機能ではパターンAに示すパネルからログインするベーシック認証、パターンBに示すICカードを用いるカード認証、パターンCに示すキーカウンタを用いるデバイス認証などがある。
【0127】
また、プラットフォームには新規開発された機能が後から追加されることも多く、並行開発による互換維持の難易度を上げる要因となっている。プラットフォームでは機能差分に対する開発効率を上げるために、I/F仕様定義を別途用意することで機能差分を埋めることが必要となっている。その他、機能の差異が発生する代表例としては、画像処理機能(解像度の差異、対応可能な画像フォーマットの差異、OCR機能の搭載有無の差異など)や、デバイス(搭載メモリサイズの差異、スキャナの搭載有無の差異、後処理装置の接続有無の差異)などがある。互換機構は上記のような異なるプラットフォーム間で発生する機能の差分を吸収する。
【0128】
(効果)
本発明の情報処理装置1によれば、プラットフォームA向けに開発された資産(プログラム)を、プラットフォームBでもそのまま利用できる。プログラム開発者は、複数のプラットフォーム毎にプログラムを開発する必要がなくなるので、負担が減る。開発したプログラムは、マルチプラットフォームに対応するので、資産価値を格段に向上させることができる。本発明の情報処理装置1によれば、世の中に多数存在する他プラットフォーム向け開発者を、特別な教育をせずに異なる製品の開発者として取り込むことができ、プログラム開発速度を加速し、製品の市場規模を大幅に拡大することができる。
【0129】
また、本発明の情報処理装置1によれば、共通部が、特定のプラットフォームの互換機構部に代わってプラットフォーム間のインストール仕様及びインターフェース仕様の差異を吸収することで、プラットフォーム開発で、最初から互換機構を組み込んでいない場合にも、異なるプラットフォームに対する互換を容易にとることができる。
【0130】
また、本発明の情報処理装置1によれば、インストール処理要求を行う互換機構の判定処理をインストール処理部から独立させることができるので、開発効率を大幅に向上することができる。
【0131】
また、本発明の情報処理装置1によれば、互換機構に複数の機能に対応した複数のインターフェース仕様定義部を設置可能としたことにより、開発途中のインターフェースの追加が容易となり、開発効率が向上する。例えば本発明の情報処理装置1は、複数のプラットフォームが並行開発された際に、追加機能分(差異)のパッチを適用するだけで、互換が保てるため、開発効率が向上する。
【0132】
また、本発明の情報処理装置1によれば、互換機構から登録用インターフェースを利用した登録を受け、現在搭載されているプラットフォーム及び互換機構を動的に識別することができるので、開発効率、利便性が格段に向上する。
【0133】
また、本発明の情報処理装置1によれば、プラットフォーム用プログラムが正当であるかを判定する正当性チェックをインストール仕様定義部に行わせることで、インストール処理だけではなく、プラットフォーム間で差が発生しやすい正当性確認処理も互換機構内部に組み込むことができ、互換維持のための開発効率が向上する
さらに、本発明の情報処理装置1によれば、プラットフォーム間の多様な差異部分を吸収可能な互換機構となり、開発効率が上がる。
【0134】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【0135】
1 情報処理装置
2,3 インストールサーバ
4,5 インストールメディア
10 プラットフォームソフトウェア(共通部)
11 プラットフォームA互換機構
12 プラットフォームB互換機構
21 インストール処理部
22 機能提供部
23 プラットフォームAインストール仕様定義部
24 プラットフォームBインストール仕様定義部
25−1 プラットフォームAI/F仕様定義部
25−2 プラットフォームAI/F仕様定義部
26−1 プラットフォームBI/F仕様定義部
26−2 プラットフォームBI/F仕様定義部
27 インストール処理のフレームワーク
28 プラットフォーム個別プログラム
30 コンピュータシステム
31 入力装置
32 出力装置
33 ドライブ装置
34 補助記憶装置
35 主記憶装置
36 演算処理装置
37 インターフェース装置
38 記録媒体
50 複合機
51 コントローラ
52 操作部
53 FAX制御ユニット
54 プロッタ
55 スキャナ
56 その他ハードウェアリソース
57 ICカードR/W装置
58 ICカード
61 CPU
62,66 RAM
63 NB(North Bridge)
64 ASIC
65 HDD
67 シリアルバス
68 NIC(Network Interface Card)
69 USB(Universal Serial Bus) I/F
70 USBホスト
71 メモリカードI/F
72 PCI−BUS
81 コピーアプリケーション
82 ファクスアプリケーション
83 プリンタアプリケーション
84 Webアプリケーション
85 アプリケーションプログラムインターフェース(API)
86 システム制御サービス(SCS)
87 ファクス制御サービス(FCS)
88 エンジン制御サービス(ECS)
89 メモリ制御サービス(MCS)
90 操作部制御サービス(OCS)
91 ネットワーク制御サービス(NCS)
92 認証制御サービス(CCS)
93 OS
94 エンジンインターフェース(エンジンI/F)
95 エンジン制御ボード
96 プロッタエンジン
97 スキャナエンジン
98 その他ハードウェアリソースのエンジン
【先行技術文献】
【特許文献】
【0136】
【特許文献1】特開2005−284384号公報
【特許文献2】特開2003−25698号公報

【特許請求の範囲】
【請求項1】
異なるプラットフォーム用プログラムをインストールして実行可能にする情報処理装置であって、
異なるプラットフォーム用プログラムがインストール処理と実行処理とで共通に利用する共通部と、
異なるプラットフォーム毎に設けられ、プラットフォーム間のインストール仕様及びインターフェース仕様の差異を吸収する互換機構部と
を有し、
前記互換機構部はプラットフォーム間のインストール仕様の差異を吸収するインストール仕様定義部と、
プラットフォーム間のインターフェース仕様の差異を吸収するインターフェース仕様定義部と
を有し、
前記インストール仕様定義部は前記共通部からインストール処理要求のあったプラットフォーム用プログラムが自プラットフォームに対応するときに、インストール処理要求のあったプラットフォーム用プログラムのインストール処理を行い、
前記インターフェース仕様定義部は前記プラットフォーム用プログラムから実行処理のために呼び出された固有インターフェースを、前記共通部が提供する共通インターフェースに変換し、前記共通部の提供する共通インターフェースを呼び出して前記共通部に前記共通インターフェースに対応した機能を実行させる情報処理装置。
【請求項2】
前記共通部は、特定のプラットフォームの互換機構部に代わってプラットフォーム間のインストール仕様及びインターフェース仕様の差異を吸収する請求項1記載の情報処理装置。
【請求項3】
前記共通部は、インストール処理要求が発生すると、異なるプラットフォーム毎に設けられた前記互換機構部に対して順次、インストール処理要求を行う請求項1又は2記載の情報処理装置。
【請求項4】
前記互換機構部は複数の機能に対応した複数のインターフェース仕様定義部を有する請求項1乃至3何れか一項記載の情報処理装置。
【請求項5】
前記共通部は前記互換機構部の登録用インターフェースを有し、前記互換機構部から前記登録用インターフェースを利用した登録を受け、現在搭載されているプラットフォーム及び互換機構部を動的に識別する請求項1乃至4何れか一項記載の情報処理装置。
【請求項6】
前記インストール仕様定義部は、プラットフォーム用プログラムが正当であるかを判定する正当性チェックを行う請求項1乃至5何れか一項記載の情報処理装置。
【請求項7】
前記インストール仕様定義部は、異なるプラットフォーム間で発生するインストールメディアの構成の差異を吸収する請求項1乃至6何れか一項記載の情報処理装置。
【請求項8】
前記インストール仕様定義部は、異なるプラットフォーム間で発生するインストールメディアのプログラム格納方法の差異を吸収する請求項1乃至6何れか一項記載の情報処理装置。
【請求項9】
前記インストール仕様定義部は、異なるプラットフォーム間で発生するインストールプログラムのプログラム種別情報の差異を吸収する請求項1乃至6何れか一項記載の情報処理装置。
【請求項10】
前記インストール仕様定義部は、異なるプラットフォーム間で発生する暗号技術の差異を吸収する請求項1乃至6何れか一項記載の情報処理装置。
【請求項11】
前記インターフェース仕様定義部は、異なるプラットフォーム間で発生するI/Fの粒度の差異及び指定するパラメータの差異を吸収する請求項1乃至6何れか一項記載の情報処理装置。
【請求項12】
前記インターフェース仕様定義部は、異なるプラットフォーム間で発生する機能の差異を吸収する請求項1乃至6何れか一項記載の情報処理装置。
【請求項13】
プロッタ,スキャナの少なくとも一方を有し、異なるプラットフォーム用プログラムをインストールして実行可能にする画像形成装置であって、
異なるプラットフォーム用プログラムがインストール処理と実行処理とで共通に利用する共通部と、
異なるプラットフォーム毎に設けられ、プラットフォーム間のインストール仕様及びインターフェース仕様の差異を吸収する互換機構部と
を有し、
前記互換機構部はプラットフォーム間のインストール仕様の差異を吸収するインストール仕様定義部と、
プラットフォーム間のインターフェース仕様の差異を吸収するインターフェース仕様定義部と
を有し、
前記インストール仕様定義部は前記共通部からインストール処理要求のあったプラットフォーム用プログラムが自プラットフォームに対応するときに、インストール処理要求のあったプラットフォーム用プログラムのインストール処理を行い、
前記インターフェース仕様定義部は前記プラットフォーム用プログラムから実行処理のために呼び出された固有インターフェースを、前記共通部が提供する共通インターフェースに変換し、前記共通部の提供する共通インターフェースを呼び出して前記共通部に前記共通インターフェースに対応した機能を実行させる画像形成装置。
【請求項14】
異なるプラットフォーム用プログラムをインストールして実行可能にする情報処理装置のプログラムインストール方法であって、
前記情報処理装置は、
異なるプラットフォーム用プログラムがインストール処理と実行処理とで共通に利用する共通部と、
異なるプラットフォーム毎に設けられ、プラットフォーム間のインストール仕様及びインターフェース仕様の差異を吸収する互換機構部と
を有し、
前記互換機構部はプラットフォーム間のインストール仕様の差異を吸収するインストール仕様定義部と、
プラットフォーム間のインターフェース仕様の差異を吸収するインターフェース仕様定義部と
を有し、
前記インストール仕様定義部が、前記共通部からインストール処理要求のあったプラットフォーム用プログラムが自プラットフォームに対応するときに、インストール処理要求のあったプラットフォーム用プログラムのインストール処理を行うステップと、
前記インターフェース仕様定義部が、前記プラットフォーム用プログラムから実行処理のために呼び出された固有インターフェースを、前記共通部が提供する共通インターフェースに変換し、前記共通部の提供する共通インターフェースを呼び出して前記共通部に前記共通インターフェースに対応した機能を実行させるステップと
を有するプログラムインストール方法。
【請求項15】
異なるプラットフォーム用プログラムをインストールして実行可能にする画像形成装置のプログラムインストール方法であって、
前記画像形成装置は、
異なるプラットフォーム用プログラムがインストール処理と実行処理とで共通に利用する共通部と、
異なるプラットフォーム毎に設けられ、プラットフォーム間のインストール仕様及びインターフェース仕様の差異を吸収する互換機構部と
を有し、
前記互換機構部はプラットフォーム間のインストール仕様の差異を吸収するインストール仕様定義部と、
プラットフォーム間のインターフェース仕様の差異を吸収するインターフェース仕様定義部と
を有し、
前記インストール仕様定義部が、前記共通部からインストール処理要求のあったプラットフォーム用プログラムが自プラットフォームに対応するときに、インストール処理要求のあったプラットフォーム用プログラムのインストール処理を行うステップと、
前記インターフェース仕様定義部が、前記プラットフォーム用プログラムから実行処理のために呼び出された固有インターフェースを、前記共通部が提供する共通インターフェースに変換し、前記共通部の提供する共通インターフェースを呼び出して前記共通部に前記共通インターフェースに対応した機能を実行させるステップと
を有するプログラムインストール方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate


【公開番号】特開2010−181976(P2010−181976A)
【公開日】平成22年8月19日(2010.8.19)
【国際特許分類】
【出願番号】特願2009−23045(P2009−23045)
【出願日】平成21年2月3日(2009.2.3)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】