JP2011034453A - 画像処理装置、情報提供方法、及び情報提供プログラム - Google Patents
画像処理装置、情報提供方法、及び情報提供プログラム Download PDFInfo
- Publication number
- JP2011034453A JP2011034453A JP2009181876A JP2009181876A JP2011034453A JP 2011034453 A JP2011034453 A JP 2011034453A JP 2009181876 A JP2009181876 A JP 2009181876A JP 2009181876 A JP2009181876 A JP 2009181876A JP 2011034453 A JP2011034453 A JP 2011034453A
- Authority
- JP
- Japan
- Prior art keywords
- information
- virtual machine
- output
- unit
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
【課題】複数の仮想マシンが構築されたシステムにおいて、システム内の管理情報を提供できる画像処理装置。
【解決手段】画像処理装置は、複数の仮想マシンが動作する装置であって、情報提供アプリ51が動作する仮想マシン212が、各仮想マシン上で管理する提供可能な情報の有無を判定する判定手段71と、判定結果に基づき、情報提供アプリ51から要求された出力情報が、自身の仮想マシン212と異なる他の仮想マシン211の管理情報であった場合、仮想マシン間通信により、他の仮想マシン211に対して、情報取得を要求する要求手段4122と、を有し、他の仮想マシン211が、仮想マシン上で動作する情報取得モジュール421により、同仮想マシン上で動作する情報管理モジュール31から取得した情報を、仮想マシン間通信により、要求元の仮想マシン212に応答する応答手段4121を有している。
【選択図】図7
【解決手段】画像処理装置は、複数の仮想マシンが動作する装置であって、情報提供アプリ51が動作する仮想マシン212が、各仮想マシン上で管理する提供可能な情報の有無を判定する判定手段71と、判定結果に基づき、情報提供アプリ51から要求された出力情報が、自身の仮想マシン212と異なる他の仮想マシン211の管理情報であった場合、仮想マシン間通信により、他の仮想マシン211に対して、情報取得を要求する要求手段4122と、を有し、他の仮想マシン211が、仮想マシン上で動作する情報取得モジュール421により、同仮想マシン上で動作する情報管理モジュール31から取得した情報を、仮想マシン間通信により、要求元の仮想マシン212に応答する応答手段4121を有している。
【選択図】図7
Description
本発明は、複数の仮想マシンが動作可能な画像処理装置に関し、特に、仮想マシン間で行うデータ通信により機器内部で保持する各種情報を提供する技術に関するものである。
1台の物理コンピュータ上に、あたかもコンピュータが複数稼働しているかのような疑似システムを構築する仮想化技術は既に知られている。このような仮想化技術により実現される擬似的な情報処理システム環境(論理コンピュータ)を、仮想マシン(VM:Virtual Machine)と言う(例えば「特許文献1」参照)。
上記仮想化技術は、近年、PC(Personal Computer)環境だけでなく、複合機(MFP:Multifunction Peripheral)などの画像処理装置にも、動作環境の1つとして採用されている。例えば、次のような動作環境が構築されている。画像処理装置では、2つの仮想マシン環境が動作し、第1仮想マシン上で画像処理の主要機能を実行する。一方、第2仮想マシン上ではカスタマイズ機能を含む拡張機能を実行する。
このように、画像処理装置に仮想化技術を採用する理由には、画像処理に係る主要機能のロバストネス性を確保する点がある。
拡張機能を実現するソフトウェアには、サードベンダなどの他社が開発したものが含まれ、主要機能と異なり、他のソフトウェアとの協働など、何らかの原因で障害が発生する可能性がある。また、障害が発生しても、メーカが対応することができないため、障害対応に時間がかかってしまう恐れがある。このようなことから、画像処理装置では、主要機能と拡張機能とを異なる仮想マシン上で動作させることで、万が一、拡張機能に障害が発生した場合であっても、その障害が主要機能の処理に影響を及ぼすことがない動作環境の提供が望まれる。
ところで、画像処理装置では、機器や機能に関する各種情報について、搭載操作パネルへの表示や画像形成機能による印刷(各種出力)を行うことができる。各種情報には、例えば動作設定や動作状態を含む機器情報やインストール状態や使用可能状態を含む機能情報(ソフトウェア情報)がある。画像処理装置は、情報出力が要求されると、出力要求された情報を収集し、収集した情報を指定形式に従って出力する。これにより、画像処理装置は、機器内部で保持する各種情報を提供する。
しかしながら、従来の情報提供方法では、複数の仮想マシンが構築されたシステム環境において、以下の点が考慮されていない。
ユーザが出力要求する全ての情報が、必ずしも単一の仮想マシン上で管理される情報とは限らず、複数の仮想マシンが構築されたシステムでは、複数の仮想マシンを対象に情報収集を行わなければならない場合がある。
そこで、仮想マシンごとの管理情報に応じた異なる情報取得手段を有する方法が考えられる。しかしこの方法では、ユーザが、仮想マシンで管理する情報種に応じて情報取得手段を使い分けて情報出力を行わなければならない。これはユーザにとって利便性が悪い。
また別の方法としては、各仮想マシン上の管理情報を統一し、同じ情報取得手段を有する構成が考えられる。しかしこの方法では、仮想マシンで重複した情報管理を行うことになり、記憶領域(記憶リソース)を無駄に消費することに繋がる。特に、仕様上、リソースに制限のある画像処理装置では、適応し辛く、現実的な対応策ではない。
本発明は上記従来技術の問題点を鑑み提案されたものであり、その目的とするところは、複数の仮想マシンが構築されたシステムにおいて、記憶リソースの消費を抑制し、1つの仮想マシン上で動作するアプリケーションを介してシステム内の管理情報を提供できる画像処理装置、情報提供方法、及び情報提供プログラムを提供することにある。
上記目的を達成するため、本発明に係る画像処理装置は、複数の仮想マシンが動作する画像処理装置であって、仮想マシン上で情報を管理する情報管理モジュールと、前記情報管理モジュールで管理される情報を取得する情報取得モジュールと、各仮想マシン上で動作し、前記複数の情報取得モジュールに対して共通の仮想マシン間通信を行う通信部と、を有し、情報提供アプリが動作する仮想マシンが、起動時に当該装置に構築された各仮想マシン上で管理する提供可能な情報の有無を判定する判定手段と、前記判定手段による判定結果に基づき、前記情報提供アプリから要求された出力情報が、自身の仮想マシンと異なる他の仮想マシンの管理情報であった場合、前記通信部を介した仮想マシン間通信により、他の仮想マシンに対して、情報取得を要求する要求手段と、を有し、前記他の仮想マシンが、受け付けた前記要求手段による取得要求に応じて、仮想マシン上で動作する前記情報取得モジュールにより、同仮想マシン上で動作する前記情報管理モジュールから取得した情報を、前記通信部を介した仮想マシン間通信により、要求元の仮想マシンに応答する応答手段を有している。
また、上記目的を達成するため、本発明に係る画像処理装置は、前記情報提供アプリが動作する仮想マシンが、前記判定手段による判定結果に基づき、前記情報提供アプリから要求された出力情報が自身の仮想マシンの管理情報であった場合、仮想マシン上で動作する前記情報取得モジュールにより、同仮想マシン上で動作する前記情報管理モジュールから情報を取得する。
このような構成によって、本発明に係る画像処理装置は、起動時に、当該装置に構築された各仮想マシン上で管理する提供可能な情報を確認する。その後、画像処理装置は、要求された情報提供に応じて、次のような確認結果に基づく情報取得を行う。まず画像処理装置は、情報提供アプリが動作する仮想マシンの管理情報が要求された場合、同仮想マシン上で動作する情報管理プログラムから情報を取得する。また画像処理装置は、他の仮想マシンの管理情報が要求された場合、仮想マシン間通信により、他の仮想マシン上で動作する情報管理プログラムから情報を取得する。画像処理装置は、このようにして取得した情報を、要求時に指定された出力形式に従って提供する。
これによって、本発明に係る画像処理装置では、複数の仮想マシンが構築されたシステムにおいて、仮想マシン上でシステム内の情報を得るために、情報の管理・取得に係るソフトウェアを、情報提供を行う仮想マシン上で動作させる必要がない。つまり、システムを構成する各仮想マシンにおいて、ソフトウェア構成を重複させる必要がない。その結果、記憶リソースの消費を抑制でき、1つの仮想マシン上で動作するアプリケーションを介して各仮想マシン上の管理情報を取得・提供できる。
上記目的を達成するため、本発明に係る情報提供方法は、複数の仮想マシンが動作するシステム環境において、仮想マシン上で情報を管理する情報管理モジュールと、前記情報管理モジュールで管理される情報を取得する情報取得モジュールと、各仮想マシン上で動作し、前記複数の情報取得モジュールに対して共通の仮想マシン間通信を行う通信部と、を有する画像処理装置における情報提供方法であって、情報提供アプリが動作する仮想マシンにおいて、起動時に当該装置に構築された各仮想マシン上で管理する提供可能な情報の有無を判定する判定手順と、前記判定手順による判定結果に基づき、前記情報提供アプリから要求された出力情報が、自身の仮想マシンと異なる他の仮想マシンの管理情報であった場合、前記通信部を介した仮想マシン間通信により、他の仮想マシンに対して、情報取得を要求する要求手順と、を有し、前記他の仮想マシンにおいて、受け付けた前記要求手順による取得要求に応じて、仮想マシン上で動作する前記情報取得モジュールにより、同仮想マシン上で動作する前記情報管理モジュールから取得した情報を、前記通信部を介した仮想マシン間通信により、要求元の仮想マシンに応答する応答手順を有している。
このような手順によって、本発明に係る情報提供方法は、起動時に、当該装置に構築された各仮想マシン上で管理する提供可能な情報を確認し、その後、情報提供アプリが動作する仮想マシンの管理情報が要求された場合には、同仮想マシン上で動作する情報管理プログラムから情報を取得するとともに、他の仮想マシンの管理情報が要求された場合には、仮想マシン間通信により、他の仮想マシン上で動作する情報管理プログラムから情報を取得し、これらの取得情報を、要求時に指定された出力形式に従って提供すると言う動作を実現する。
これによって、本発明に係る情報提供方法は、記憶リソースの消費を抑制し、1つの仮想マシン上で動作するアプリケーションを介して各仮想マシン上の管理情報を出力可能な環境を提供できる。
本発明によれば、当該装置に構築された各仮想マシン上で管理する提供可能な情報を確認し、情報提供アプリが動作する仮想マシンと異なる仮想マシンの管理情報が要求された場合には、仮想マシン間通信により、情報を管理する他の仮想マシンから要求情報を取得することで、複数の仮想マシンが構築されたシステムにおいて、記憶リソースの消費を抑制し、1つの仮想マシン上で動作するアプリケーションを介してシステム内の管理情報を提供可能な画像処理装置、情報提供方法、及び情報提供プログラムを提供することができる。
以下、本発明の好適な実施の形態(以下「実施形態」と言う)について、図面を用いて詳細に説明する。
[第1の実施形態]
<ハードウェア構成>
図1は、本実施形態に係る画像処理装置100のハードウェア構成例を示す図である。
図1に示すように、画像処理装置100は、コントローラ110、操作パネル120、プロッタ130、及びスキャナ140などを備え、それぞれが相互にバスBで接続されている。
<ハードウェア構成>
図1は、本実施形態に係る画像処理装置100のハードウェア構成例を示す図である。
図1に示すように、画像処理装置100は、コントローラ110、操作パネル120、プロッタ130、及びスキャナ140などを備え、それぞれが相互にバスBで接続されている。
操作パネル120は、表示部及び入力部を備えており、機器情報などの各種情報をユーザに提供したり、動作設定や動作指示などの各種ユーザ操作を受け付けたりする。プロッタ130は、画像形成部を備えており、用紙に出力画像を形成する。例えば出力画像を形成する方式には、電子写真方式やインクジェット方式などがある。スキャナ140は、原稿を光学的に読み取り、読み取り画像を生成する。
コントローラ110は、CPU(Central Processing Unit)111、記憶装置112、ネットワークI/F113、及び外部記憶I/F114などを備えており、それぞれが相互にバスBで接続されている。
CPU111は、プログラムを実行することにより各種機能の実現や装置全体を制御する。また記憶装置112は、上記プログラムや各種データ(例えば「画像データ」)を格納し保持する。例えば記憶装置112には、揮発性のメモリであるRAM(Random Access Memory)、不揮発性のメモリであるROM(Read Only Memory)、及び大容量の記憶領域を備えたHDD(Hard Disk Drive)などがある。RAMは、CPU111のワークエリア(プログラムやデータが一時的に読み出される記憶エリア)として機能する。ROMやHDDは、プログラムや各種データの格納先として用いられる。これにより、画像処理装置100では、CPU111がROMに格納されたプログラムをRAM上に読み出し、プログラムを実行する。
ネットワークI/F113は、画像処理装置100をネットワークなどの所定のデータ伝送路に接続するためのインタフェースである。外部記憶I/F114は、外部記憶装置にあたる記録媒体114aを接続するためのインタフェースである。例えば外部記憶装置には、SDメモリカード(SD Memory Card)やUSB(Universal Serial Bus)メモリなどがある。これにより、画像処理装置100は、外部記憶I/F114を介して、記録媒体114aに格納されたプログラムやデータを読み取る。
画像処理装置100では、上記ハードウェア構成により、例えばROMやHDDからRAM上に読み出したプログラムをCPU111により実行することで、1又は複数の搭載機能(例えば「印刷」や「原稿読み取り」などの画像処理機能)を動作させることができる。
<システム構成>
図2は、本実施形態に係る複数の仮想マシンが構築されたシステム構成例を示す図である。図2には、1台の物理コンピュータ上に2つの仮想マシンが動作するシステム構成が示されている。
図2は、本実施形態に係る複数の仮想マシンが構築されたシステム構成例を示す図である。図2には、1台の物理コンピュータ上に2つの仮想マシンが動作するシステム構成が示されている。
図2に示すように、仮想マシン環境は、OS(Operating System)10上で仮想マシン環境を実現するプログラムを動作させることで実現される。本実施形態では、組み込み型システムの開発環境として使用頻度の高いJava(登録商標:以下略)VM(Java Virtual Machine)21を動作させることで実現している。なおOS10は、組み込み系の基本ソフトウェアであり、例えばLinux(登録商標:以下略)などがある。
複数の仮想マシン環境は、OS10上で複数のJavaVM21を動作させることで実現できる。本実施形態では、JavaVM211及び212(2つのJavaVM21)を動作させることで、第1及び第2仮想マシン環境(2つの仮想マシン環境)を実現している。以降では、JavaVM211及び212を「第1仮想マシン211及び第2仮想マシン212」に置き換え説明する。また、第1仮想マシン211及び第2仮想マシン212を総称する際には、「仮想マシン21」とする。同様に、各仮想マシン上で動作するソフトウェア(例えば「プログラム」や「データ」)及び使用される記憶領域についても、同じソフトウェア名や記憶領域名を総称する際には、共通する名称と参照符号を用いることとする。
仮想マシン21は、仮想マシン上でJavaコンポーネント22を動作させるためのヒープメモリ211を有している。ヒープメモリ211は、仮想マシン上で動作するアプリケーションが自由に確保できるメモリ領域である。このように、複数の仮想マシン21が構築されたシステムでは、仮想マシン21ごとに独立したヒープメモリ211を有することから、処理停止などの障害が発生しても、互いのシステムに影響を及ぼすことがない。
仮想マシン上で動作するJavaコンポーネント22には、プラットフォーム及びアプリケーション(図中のJavaプラットフォーム221及びJavaアプリケーション222)の各機能を実現するための複数のJavaプログラムが含まれる。Javaプラットフォーム221は、仮想マシン21が実現するシステム(動作環境)の標準機能として動作する。またJavaアプリケーション222は、上記基本機能を利用し、例えばユーザが実行したい作業を実施する機能(仮想マシン環境におけるユーザ提供機能)として動作する。Javaアプリケーション222は、提供する機能構成に応じてインストール/アンインストールが可能である。
以上のように、本実施形態に係る画像処理装置100には、複数の仮想マシン21が動作する環境を構築することができる。
<仮想マシン間における情報提供機能>
本実施形態に係る情報提供機能について説明する。
本実施形態に係る情報提供機能について説明する。
本実施形態に係る画像処理装置100では、起動時に、当該装置に構築された各仮想マシン上で管理する提供可能な情報を確認する。その後、画像処理装置は、要求された情報提供に応じて、次のような確認結果に基づく情報取得を行う。まず画像処理装置は、情報提供アプリが動作する仮想マシンの管理情報が要求された場合、同仮想マシン上で動作する情報管理プログラムから情報を取得する。また画像処理装置は、他の仮想マシンの管理情報が要求された場合、仮想マシン間通信により、他の仮想マシン上で動作する情報管理プログラムから情報を取得する。画像処理装置は、このようにして取得した情報を、要求時に指定された出力形式に従って提供する。画像処理装置100は、このような情報提供機能を有している。
ここで、複数の仮想マシン21が構築されたシステムにおける従来の情報提供機能について説明する。
図3は、従来の仮想マシン21において情報提供を実現するソフトウェア構成例(その1)を示す図である。図3には、機器情報及び搭載ソフトウェア情報を提供する情報提供機能を実現するソフトウェア構成例が示されている。
図3に示すように、機器情報は、第1仮想マシン211上で動作する機器情報管理プログラム31により管理され、機器情報出力用アプリケーションAP1により提供される。また搭載ソフトウェア情報は、第2仮想マシン212上で動作する搭載ソフトウェア情報管理プログラム32により管理され、搭載ソフトウェア情報出力用アプリケーションAP2により提供される。なお上記各情報管理プログラム31,32は、各仮想マシン上で動作するJavaコンポーネント22のJavaプラットフォーム221に含まれるプログラムである。また上記各アプリケーションAP1,AP2は、Javaコンポーネント22のJavaアプリケーション222に含まれるアプリケーションソフトウェアである。
このようなソフトウェア構成には、次のような理由がある。ユーザが提供を要求する全ての情報が、必ずしも単一の仮想マシン(第1仮想マシン211又は第2仮想マシン212のどちらか一方)の管理情報とは限らず、複数の仮想マシン21が構築されたシステム環境では、複数の仮想マシン21を対象に情報収集を行わなければならない場合がある。
そのため、上述したように、仮想マシン21ごとの管理情報に応じた異なる情報取得手段を有するソフトウェア構成となる。しかしこの構成では、ユーザが、仮想マシン21で管理する情報種に応じて情報取得手段を使い分けて情報出力を行わなければならない。つまり、従来のソフトウェア構成では、得たい情報が第1仮想マシン211又は第2仮想マシン212のどちらの管理情報かを考えなければならない。例えば、機器情報を得たい場合には、機器情報が第1仮想マシン211で管理されていることから、第1仮想マシン211上で機器情報出力用アプリケーションAP1を動作させて情報取得することになる。また搭載ソフトウェア情報を得たい場合には、搭載ソフトウェア情報が第2仮想マシン212で管理されていることから、第2仮想マシン212上で搭載ソフトウェア情報出力用アプリケーションAP2を動作させて情報取得することになる。これはユーザにとって利便性が悪い。
また別のソフトウェア構成としては、各仮想マシン上の管理情報を統一し、同じ情報取得手段を有する構成が考えられる。例えば図4に示すようなソフトウェア構成である。
図4は、従来の仮想マシン21において情報提供を実現するソフトウェア構成例(その2)を示す図である。図4には、機器情報及び搭載ソフトウェア情報を第2仮想マシン212上で提供する情報提供機能を実現するソフトウェア構成例が示されている。
このようなソフトウェア構成では、例えば第2仮想マシン212上で動作する機器情報出力用アプリケーションAP12及び搭載ソフトウェア情報出力用アプリケーションAP2を介して、機器情報及び搭載ソフトウェア情報を提供することができる。つまり、1つの仮想マシン上で動作する各種情報を出力するためのアプリケーション(以下「情報提供アプリ」と言う)を介して各仮想マシン(第1仮想マシン211及び第2仮想マシン212)の管理情報を提供できる。しかしこの構成では、仮想マシン21で重複した情報管理を行うことになり、記憶領域(記憶リソース)を無駄に消費することになる。例えば図4の場合には、第1仮想マシン211の管理情報である機器情報が、第2仮想マシン212でも管理されており、第2仮想マシン212における有限な記憶リソースが無駄に消費されることになる。特に、仕様上、リソースに制限のある画像処理装置100では、適応し辛く、現実的な対応策ではない。
そこで、本実施形態に係る画像処理装置100では、当該装置に構築された第1仮想マシン211及び第2仮想マシン212上で管理する提供可能な情報を確認する。画像処理装置100は、情報提供アプリが動作する第2仮想マシン212と異なる第1仮想マシン211の管理情報が要求された場合、上記確認結果に基づき、仮想マシン間通信を行い、情報を管理する仮想マシン211(他の仮想マシン)から要求情報を取得する。
上記情報提供機能は、次に示すソフトウェア構成により実現される。
図5は、本実施形態に係る複数の仮想マシン21が構築されたシステムのソフトウェア構成例を示す図である。図5には、第2仮想マシン212上で動作する情報提供アプリを介して、第1仮想マシン211上の管理情報である機器情報及び第2仮想マシン212上の管理情報である搭載ソフトウェア情報を提供するソフトウェア構成例が示されている。
図5は、本実施形態に係る複数の仮想マシン21が構築されたシステムのソフトウェア構成例を示す図である。図5には、第2仮想マシン212上で動作する情報提供アプリを介して、第1仮想マシン211上の管理情報である機器情報及び第2仮想マシン212上の管理情報である搭載ソフトウェア情報を提供するソフトウェア構成例が示されている。
図5に示すように、各仮想マシン上で動作するJavaコンポーネント22のJavaプラットフォーム221には、画像処理装置100が提供する各種機能を実現するためのJavaモジュール群221aが含まれる。
画像処理装置100が有する情報提供機能は、これらJavaモジュール群221aに含まれるプログラムが動作することにより実現される。そのため、Javaモジュール群221aは、所定のデータ操作を行い、各種情報を管理するモジュール群30(以下「情報管理モジュール群30」と言う)と、要求に応じて、情報管理モジュール群30から各種情報を取得するモジュール群40(以下「情報取得モジュール群40」と言う)とを有している。
情報管理モジュール群30及び情報取得モジュール40群は、管理情報ごとに一対の関係で用意されている。例えば第1仮想マシン211上で動作するJavaモジュール群221a1には、機器情報を管理する機器情報管理プログラム31と、機器情報を取得する機器情報取得プログラム421とが用意されている。また第2仮想マシン212上で動作するJavaモジュール群221a2には、搭載ソフトウェア情報を管理する搭載ソフトウェア情報管理プログラム32と、搭載ソフトウェア情報を取得する搭載ソフトウェア情報取得プログラム422とが用意されている。
このように、本実施形態では、情報管理モジュール群30と情報取得モジュール群40とを管理情報ごとに一対の関係で用意し、異なるプログラムで構成することで、情報取得モジュール群40の追加・削除により、管理情報を提供するか否かを制御することができる。
さらに本実施形態では、機器情報取得プログラム421や搭載ソフトウェア情報取得プログラム422と言った管理情報固有のモジュールと異なる情報取得プログラム(共通部)41を有している。この情報取得プログラム(共通部)41は、管理情報共通のモジュールである。
情報取得プログラム(共通部)41が動作することにより実現される機能には、例えば、情報提供アプリのインタフェースを司る機能や、各仮想マシン上で管理する提供可能な情報を登録する機能などがある。なお、これらの機能については、情報提供機能を構成する機能部の説明において後述する。
図6は、本実施形態に係る情報取得モジュール群40の構成を示す図である。
図6に示すように、管理情報固有のモジュールである情報取得プログラム42(以下「情報取得プログラム(固有部)」と言う)は、情報取得プログラム(共通部)41を継承して作成されたプログラムである。Javaのようなオブジェクト指向型のプログラミング言語には、機能的な集合の概念を記述することができる。一般的にこれを継承と言う。このような方法でプログラミングを行うと、作成したプログラムが、継承元のプログラムが実現する機能(クラスの機能)を受け継いで動作できる。このことから、情報取得プログラム(固有部)42は、情報取得プログラム(共通部)41により実現される上記機能を受け継いで動作できる。
図6に示すように、管理情報固有のモジュールである情報取得プログラム42(以下「情報取得プログラム(固有部)」と言う)は、情報取得プログラム(共通部)41を継承して作成されたプログラムである。Javaのようなオブジェクト指向型のプログラミング言語には、機能的な集合の概念を記述することができる。一般的にこれを継承と言う。このような方法でプログラミングを行うと、作成したプログラムが、継承元のプログラムが実現する機能(クラスの機能)を受け継いで動作できる。このことから、情報取得プログラム(固有部)42は、情報取得プログラム(共通部)41により実現される上記機能を受け継いで動作できる。
このように、本実施形態では、情報管理モジュール群30及び情報取得モジュール群40などの各仮想マシン上の管理情報に依存する情報提供に係る固有機能と、管理情報に依存しない情報提供に係る共通機能とが、連係動作することにより、情報取得に係る処理を実現している。また、情報提供に係る固有機能と共通機能とを、異なるモジュールにより構成することで、管理情報単位で情報提供機能の追加・削除などを容易に行うことができる。
図5に戻り、要求に応じた情報提供を行う情報提供アプリについて説明する。
図5には、情報提供アプリである情報出力用アプリケーション51が、第2仮想マシン212上で動作するソフトウェア構成例が示されている。情報出力用アプリケーション51は、SDK(Software Development Kit)アプリケーションであり、Javaアプリケーション2222の1つとして実装されている。
図5には、情報提供アプリである情報出力用アプリケーション51が、第2仮想マシン212上で動作するソフトウェア構成例が示されている。情報出力用アプリケーション51は、SDK(Software Development Kit)アプリケーションであり、Javaアプリケーション2222の1つとして実装されている。
SDKアプリケーションは、ソフトウェアを開発する際に使用できる命令や関数の集合であるSDK API221bを用いて開発され、ユーザへの個別対応機能(カスタマイズ機能)などを実現するソフトウェアである。SDKアプリケーションは、SDK API221bを介して、プラットフォームが有するJavaモジュール群221a2により実現される機能を利用する。これにより、例えば情報出力用アプリケーション51は、SDK API221bを介して、Javaモジュール群221a2の情報取得プログラム(共通部)412により実現される機能を利用し、要求に応じた情報提供を行うことができる。
本実施形態に係る画像処理装置100では、このようなソフトウェア構成により、複数の仮想マシン21が構築されたシステムにおいて、仮想マシン上でシステム内の情報を得るために、情報の管理・取得に係るソフトウェアを、情報提供を行う仮想マシン上で動作させる必要がない。つまり、システムを構成する第1仮想マシン211及び第2仮想マシン212において、ソフトウェア構成を重複させる必要がない。その結果、本実施形態では、複数の仮想マシン21が構築されたシステムにおいて、記憶リソースの消費を抑制し、1つの仮想マシン上で動作するアプリケーションを介してシステム内の管理情報を提供できる。
以下に、上記情報提供機能の構成とその動作について説明する。
図7は、本実施形態に係る情報提供機能の構成例を示す図である。図7には、図5と同様に、第2仮想マシン212上で動作する情報出力用アプリケーション51を介して、第1仮想マシン211上の管理情報である機器情報及び第2仮想マシン212上の管理情報である搭載ソフトウェア情報を提供する機能構成例が示されている。
図7は、本実施形態に係る情報提供機能の構成例を示す図である。図7には、図5と同様に、第2仮想マシン212上で動作する情報出力用アプリケーション51を介して、第1仮想マシン211上の管理情報である機器情報及び第2仮想マシン212上の管理情報である搭載ソフトウェア情報を提供する機能構成例が示されている。
上述したように、本実施形態に係る画像処理装置100が有する情報提供機能は、各仮想マシン上で動作する情報管理モジュール群30、情報取得モジュール群40、及び情報提供アプリ(情報出力用アプリケーション51)により実現される。よって、図7には、これらのソフトウェアが有する機能部が示されている。以降では、各仮想マシン上で機能する機能部の機能名を総称する際には、共通する名称と参照符号を用いることとする。
図7に示すように、第1仮想マシン211上では、管理情報固有部として機能する機器情報管理プログラム31及び機器情報取得プログラム421と、管理情報共通部として機能する情報取得プログラム(共通部)411とが動作する。
機器情報管理プログラム31は、機器情報を管理する手段として機能する。また機器情報取得プログラム421は、機器情報を取得する手段として機能する。
情報取得プログラム(共通部)411は、仮想マシン間通信部4121を有し、第2仮想マシン212と通信する手段として機能する。本実施形態では、第1仮想マシン211と第2仮想マシン212との間の通信にRMI(Remote Method Invocation)を用いる例を示す。RMIとは、異なる仮想マシン間でオブジェクト同士がメッセージをやりとりするための通信手段である。
一方、第2仮想マシン212上では、管理情報固有部として機能する搭載ソフトウェア情報管理プログラム32及び搭載ソフトウェア情報取得プログラム422と、管理情報共通部として機能する情報取得プログラム(共通部)412と、情報提供部として機能する情報出力用アプリケーション51とが動作する。
搭載ソフトウェア情報管理プログラム32は、搭載ソフトウェア情報を管理する手段として機能する。また搭載ソフトウェア情報取得プログラム422は、搭載ソフトウェア情報を取得する手段として機能する。
情報取得プログラム(共通部)412は、仮想マシン間通信部4122を有し、第1仮想マシン211と通信する手段として機能する。つまり、仮想マシン間通信は、第1仮想マシン211上で機能する仮想マシン間通信部4121と、第2仮想マシン212上で機能する仮想マシン間通信部4122とにより実現される。
さらに情報取得プログラム(共通部)412は、インタフェース生成部411及びプログラム管理部413を有し、情報提供部と管理情報固有部とのインタフェースを生成する手段及び各仮想マシン上で管理する提供可能な情報を登録する手段として機能する。
インタフェース生成部411は、情報出力用アプリケーション51と情報取得モジュール群40とのインタフェースを生成する機能部である。インタフェース生成部411は、画像処理装置100に構築された全ての仮想マシン21上に上記インタフェースを生成する。
具体的な生成動作は、次の通りである。本実施形態に係る画像処理装置100のシステムを例にすると、インタフェース生成部411は、まず自身が機能する第2仮想マシン212上にインタフェース部612を生成する。続いて、インタフェース生成部411は、仮想マシン間通信部4122を介して第1仮想マシン211(他の仮想マシン)にインタフェースの生成を要求する。その結果、第1仮想マシン211上には、インタフェース部611が生成される。インタフェース生成部411は、実行結果として得られたインタフェース生成結果を、後述するプログラム管理部413に渡し、利用登録を行う。
画像処理装置100では、この機能により、情報出力用アプリケーション51が、生成されたインタフェースを介して、各仮想マシン上で動作する機器情報取得プログラム31及び搭載ソフトウェア情報取得プログラム32にアクセスする前処理が完了する。
プログラム管理部413は、各仮想マシン上で管理する提供可能な情報に対応する情報管理プログラム(情報管理モジュール群40)を管理する機能部である。
具体的な管理動作は、次の通りである。プログラム管理部413は、各仮想マシン上で動作する情報管理プログラムを検索し、その検索結果に基づき、各仮想マシン上で管理する提供可能な情報の有無を判断する。そのため、プログラム管理部413は、情報有無の判定を行う情報有無判定部71を有している。情報有無判定部71は、検索結果から、仮想マシン21上に動作する情報管理プログラムが存在すれば、提供可能な情報があると判断する。プログラム管理部413は、情報有無判定結果に基づき、仮想マシン21上で動作する情報管理プログラムに係る情報を登録する。
本実施形態に係る画像処理装置100のシステムを例にすると、プログラム管理部413は、まず自身が機能する第2仮想マシン212上で動作する情報管理プログラムを検索する。その結果、検索結果として搭載ソフトウェア情報管理プログラム32の情報を得る。続いて、プログラム管理部413は、仮想マシン間通信部4122を介して第1仮想マシン211に情報管理プログラムの検索を要求する。その結果、検索結果として機器情報管理プログラム31の情報を得る。これにより、プログラム管理部413は、情報有無判定部71により、各仮想マシン上で管理する提供可能な情報が、機器情報及び搭載ソフトウェア情報であると判断する。続いて、プログラム管理部413は、機器情報管理プログラム31及び搭載ソフトウェア情報管理プログラム32の情報(登録プログラム情報)を所定の記憶領域(例えば「RAM」)に格納する。登録プログラム情報には、例えば情報管理プログラムが動作する仮想マシン21の情報(動作場所に係る情報)などが含まれている。これにより、プログラム管理部413は、各仮想マシン上で管理する提供可能な情報に対応する情報管理プログラムを、登録プログラム情報により管理する。
画像処理装置100では、この機能により、システム内で管理する情報の中から、インタフェースを介して情報出力用アプリケーション51に提供可能な情報を特定する前処理が完了する。
本実施形態に係る画像処理装置100では、プログラム管理部413により、1つの仮想マシン上に、各仮想マシン上で動作する情報管理プログラムの情報を集約し、システム内に分散して管理されている提供可能な情報を登録する。
これにより、システムを構成する第1仮想マシン211及び第2仮想マシン212において、情報の管理・取得に係るソフトウェア構成を重複させる必要がなく、記憶リソースの消費を抑制できる。
また、第2仮想マシン212上で動作する情報出力用アプリケーション51は、画面生成部511、要求受付部512、及び出力実行部513を有し、情報出力に係る操作画面を生成する手段、出力要求を受け付ける手段、及び指示された情報出力を実行する手段として機能する。
画面生成部511は、インタフェース部612を介して、プログラム管理部413で管理する登録プログラム情報に基づき、提供可能な情報から出力情報を選択するなどの情報出力に係る操作画面を生成する機能部である。
要求受付部512は、生成された画面を介して、選択指定及び/又は入力された操作情報を受け取り、情報出力に係る要求を受け付ける機能部である。要求受付部512により受け取る操作情報には、例えば情報出力要求における指定出力情報や指定出力形式などがある。要求受付部512は、インタフェース部612を介して、受け取った操作情報を要求に応じた処理を行う所定の機能部に渡す。
出力実行部513は、インタフェース部612を介して指示された情報出力を実行する機能部である。出力実行部513は、情報出力の実行が指示されたときに、インタフェース部612を介して受け取った、機器情報取得プログラム31及び搭載ソフトウェア情報取得プログラム32からの取得情報を、指定された形式に従って出力する。
画像処理装置100では、これらの機能部により、ユーザが所望する情報提供を行う。
このように、本実施形態に係る情報提供機能は、上記各機能部が連係動作することにより実現される。
次に、情報提供機能の詳細な動作(機能部群の連係動作)について、処理手順を示すシーケンス図を用いて説明する。
情報提供機能は、画像処理装置100に搭載(インストール)されるプログラム(情報提供に係るソフトウェア)が、CPU111により、格納先(例えば「ROM」)からRAM上に読み出され、以下の処理が実行されることで実現される。なお以降には、この情報提供処理を3つの処理(処理1,2,3)に分けて順に説明する。
《処理1》
以下に、各仮想マシン上で管理する提供可能な情報の登録処理について説明する。
以下に、各仮想マシン上で管理する提供可能な情報の登録処理について説明する。
図8は、本実施形態に係る提供可能情報の登録を行う処理手順例を示すシーケンス図である。なお、画像処理装置100の起動時には、第1仮想マシン211上で、機器情報管理プログラム31、機器情報取得プログラム421、及び情報取得プログラム(共通部)411が実行される。また、第2仮想マシン212上では、搭載ソフトウェア情報管理プログラム32、搭載ソフトウェア情報取得プログラム422、情報取得プログラム(共通部)412、及び情報出力用アプリケーション51が実行される。
上記点を踏まえ、画像処理装置100では、第2仮想マシン212上で次のような処理が開始される。
インタフェース生成部411は、自身が機能する第2仮想マシン212上にインタフェース部612を生成し(ステップS1011)、生成したインタフェース部612から生成結果を得る。インタフェース生成部411は、得られた生成結果をプログラム管理部413に渡し、インタフェース部612の利用登録を行う(ステップS1021)。
また、インタフェース生成部411は、自身が機能する第2仮想マシン212以外に、動作中の他の仮想マシン(第1仮想マシン211)が存在する場合、次のような処理を行う。インタフェース生成部411は、インタフェース部612を介して第1仮想マシン211にインタフェースの生成を要求する(ステップS1012)。インタフェース部612は、要求に従って仮想マシン間通信部4122に生成要求の送信を指示する(ステップS1022)。仮想マシン間通信部4122は、第1仮想マシン211と通信(RMI通信)を行い、生成要求を送信する(ステップS1032)。
このようにして第2仮想マシン212から送信された生成要求は、第1仮想マシン211上で情報取得プログラム(共通部)411が実行されることで機能する仮想マシン間通信部4121により受信される。
仮想マシン間通信部4121は、受信した生成要求に従って、第1仮想マシン211上にインタフェース部611を生成し(ステップS1042)、生成したインタフェース部612から生成結果を得る。仮想マシン間通信部4121は、第2仮想マシン212と通信(RMI通信)を行い、生成要求への応答として生成結果を送信する(ステップS1052)。
このようにして第1仮想マシン211から送信された生成結果は、第2仮想マシン212上の仮想マシン間通信部4122により受信される。
仮想マシン間通信部4122は、受信した生成結果を、インタフェース612を介して、要求元のインタフェース生成部411に渡す。
インタフェース生成部411は、得られた生成結果をプログラム管理部413に渡し、インタフェース部611の利用登録を行う(ステップS1062)。
続いて、プログラム管理部413は、各仮想マシン上で動作する情報管理プログラムを検索し、その検索結果に基づき、情報有無判定部71により、各仮想マシン上で管理する提供可能な情報の有無を判断する(ステップS201)。
プログラム管理部413は、自身が機能する第2仮想マシン212上で動作する情報管理プログラムを検索し(ステップS2021)、検索結果として搭載ソフトウェア情報管理プログラム32の情報を得る。
また、プログラム管理部413は、自身が機能する第2仮想マシン212以外に、動作中の他の仮想マシン(第1仮想マシン211)が存在する場合、次のような処理を行う。プログラム管理部413は、インタフェース部612を介して第1仮想マシン211に情報管理プログラムの検索を要求する(ステップS2022)。インタフェース部612は、要求に従って仮想マシン間通信部4122に検索要求の送信を指示する(ステップS2032)。仮想マシン間通信部4122は、第1仮想マシン211と通信(RMI通信)を行い、検索要求を送信する(ステップS2042)。
このようにして第2仮想マシン212から送信された検索要求は、第1仮想マシン211上の仮想マシン間通信部4121により受信される。
仮想マシン間通信部4121は、受信した検索要求に従い、インタフェース部611を介して、第1仮想マシン211上で動作する情報管理プログラムを検索し(ステップS2052,2062)、検索結果として機器情報管理プログラム31の情報を得る。仮想マシン間通信部4121は、第2仮想マシン212と通信(RMI通信)を行い、検索要求への応答として検索結果を送信する(ステップS2072)。
このようにして第1仮想マシン211から送信された検索結果は、第2仮想マシン212上の仮想マシン間通信部4122により受信される。
仮想マシン間通信部4122は、受信した検索結果を、インタフェース612を介して、要求元のプログラム管理部413に渡す。
プログラム管理部413は、検索結果として得られた機器情報管理プログラム31及び搭載ソフトウェア情報管理プログラム32の情報を所定の記憶領域(例えば「RAM」)に格納し、各仮想マシン上で管理する提供可能な情報に対応する情報管理プログラムを登録する(ステップS208)。
《処理2》
以下に、情報出力に係る操作画面の生成処理について説明する。
以下に、情報出力に係る操作画面の生成処理について説明する。
図9は、本実施形態に係る情報出力の操作画面表示を行う処理手順例を示すシーケンス図である。ここで言う「情報出力の操作画面」は、画像処理装置100の起動終了後(上記処理1が終了後)、例えばユーザが、画像処理装置100が備える操作パネル120に表示された情報出力を指示する操作ボタンを押下したときに表示される。また、本実施形態では、上記情報出力の指示を、情報出力用アプリケーション51が動作する第2仮想マシン212側で受け付ける。
上記点を踏まえ、画像処理装置100では、第2仮想マシン212上で動作する情報取得プログラム(共通部)412により、次のような処理が開始される。
インタフェース部612は、第2仮想マシン212上で受け付けた上記情報出力の指示に連動して、情報出力に係る操作画面の表示要求を受け付ける(ステップS301)。
インタフェース部612は、表示要求を受け付けると、プログラム管理部413に登録プログラム情報の取得を要求する(ステップS302)。すなわち、インタフェース部612は、上記ステップS208において所定の記憶領域に格納した情報管理プログラムの情報(登録プログラム情報)の取得を要求する。
プログラム管理部413は、取得要求に従って、提供可能な情報に対応して登録されている情報管理プログラムの登録プログラム情報を取得し(ステップS303)、取得情報を要求元のインタフェース部612に渡す。
インタフェース部612は、取得情報に基づき、情報出力用アプリケーション51が実行されることで機能する画面生成部511に画面表示を要求する(ステップS304)。このとき、インタフェース部612は、操作画面上に表示する選択指定可能な出力情報として、画面生成部511に取得情報を渡す。
その結果、画面生成部511は、例えば図10に示すような情報出力に係る操作画面を生成し、操作パネル120に表示する(ステップS305)。
図10は、本実施形態に係る情報出力の操作画面例を示す図である。
例えば、画面生成部511では、インタフェース部612から、第1仮想マシン211上で動作する機器情報管理プログラム31及び第2仮想マシン212上で動作する搭載ソフトウェア情報管理プログラム32の各情報が渡された場合、図10(A)に示すような操作画面を生成する。また、画面生成部511では、インタフェース部612から、第1仮想マシン211上で動作する機器情報管理プログラム31の情報が渡された場合、図10(B)に示すような操作画面を生成する。
例えば、画面生成部511では、インタフェース部612から、第1仮想マシン211上で動作する機器情報管理プログラム31及び第2仮想マシン212上で動作する搭載ソフトウェア情報管理プログラム32の各情報が渡された場合、図10(A)に示すような操作画面を生成する。また、画面生成部511では、インタフェース部612から、第1仮想マシン211上で動作する機器情報管理プログラム31の情報が渡された場合、図10(B)に示すような操作画面を生成する。
つまり、情報出力に係る操作画面上に表示される選択指定可能な出力情報は、プログラム管理部413に登録された情報管理プログラムで管理する情報にあたる。
ユーザは、このようにして表示された操作画面上で、出力情報及び出力形式(例えば「印刷」や「電子メール送信」)を指定し、情報出力の実行(情報提供)を指示する。
《処理3》
以下に、指定された出力情報の取得処理及び取得情報の出力処理について説明する。以下に説明する情報取得処理及び情報出力処理には、出力情報として第1仮想マシン211上の管理情報が指定された場合と、第2仮想マシン212上の管理情報が指定された場合とに大別できる。
以下に、指定された出力情報の取得処理及び取得情報の出力処理について説明する。以下に説明する情報取得処理及び情報出力処理には、出力情報として第1仮想マシン211上の管理情報が指定された場合と、第2仮想マシン212上の管理情報が指定された場合とに大別できる。
本実施形態に係る画像処理装置100では、第2仮想マシン212上で情報出力用アプリケーション51が動作する。このことから、出力情報として第2仮想マシン212上の管理情報が指定された場合の情報取得処理では、仮想マシン間通信を行わず、指定された出力情報が取得される。一方、出力情報として第1仮想マシン211上の管理情報が指定された場合の情報取得処理では、仮想マシン間通信を行い、指定された出力情報を取得する。
図11は、本実施形態に係る指定出力情報の提供を行う処理手順例を示すシーケンス図(その1)である。図11には、出力情報として第2仮想マシン212上で管理される搭載ソフトウェア情報が指定された場合の情報取得処理及び情報出力処理の例が示されている。また、本実施形態では、操作画面を介して受け付けた上記情報出力に係る指定及び実行指示を、情報出力用アプリケーション51が動作する第2仮想マシン212側で受け付ける。
上記点を踏まえ、画像処理装置100では、第2仮想マシン212上で動作する情報出力用アプリケーション51により、次のような処理が開始される。
要求受付部512は、第2仮想マシン212上で受け付けた上記情報出力の実行指示に連動して、情報出力要求を受け付ける(ステップS401)。
要求受付部512は、情報出力要求を受け付けると、インタフェース部612に指定された情報出力を指示する(ステップS402)。このとき、要求受付部512は、操作画面を介して受け付けた指定出力情報及び指定出力形式情報を、インタフェース部612に渡す。
インタフェース部612は、情報出力指示を受け付けると、プログラム管理部413に、指定された出力情報に対応する情報管理プログラムの登録プログラム情報の取得を要求する(ステップS403)。本実施形態では、インタフェース部612は、指示されたときに要求受付部512から受け取った搭載ソフトウェア情報の識別子(指定出力情報)に基づき、所定の記憶領域に格納した情報管理プログラムの情報(登録プログラム情報)の中から、搭載ソフトウェア情報管理プログラム32の登録プログラム情報(該当する情報管理プログラムの情報)の取得を要求する。
プログラム管理部413は、取得要求に従って、搭載ソフトウェア情報管理プログラム32の登録プログラム情報を取得し(ステップS404)、取得情報を要求元のインタフェース部612に渡す。
続いて、インタフェース部612は、取得情報に基づき、搭載ソフトウェア情報取得プログラム422に、搭載ソフトウェア情報(指定出力情報)の取得を要求する(ステップS501)。このとき、インタフェース部612は、取得要求されたときに受け取った取得情報に含まれる情報管理プログラムの動作場所に係る情報(第2仮想マシン212の情報)に基づき、搭載ソフトウェア情報管理プログラム32と一対の関係にある情報取得プログラムを特定する。これにより、インタフェース部612は、特定した搭載ソフトウェア情報取得プログラム422に、搭載ソフトウェア情報の取得を要求する。
搭載ソフトウェア情報取得プログラム422は、取得要求に従って、搭載ソフトウェア情報管理プログラム32から搭載ソフトウェア情報を取得し(ステップS502,S503)、取得情報を要求元のインタフェース部612に渡す。
続いて、インタフェース部612は、情報出力用アプリケーション51が実行されることで機能する出力実行部513に、指定された出力形式に従った情報出力の実行を指示する(ステップS601)。このとき、インタフェース部612は、取得情報及び指定出力形式情報を出力実行部513に渡し、情報出力の実行を指示する。
出力実行部513は、実行指示を受け付けると、指定された出力形式に従って、搭載ソフトウェア情報を含む出力データを生成する(ステップS602)。出力実行部513は、例えば、指定出力形式情報に「印刷」が指定されている場合、搭載ソフトウェア情報を含むPDF(Portable Document Format)データを生成する。また、指定出力形式情報に「電子メール送信」が指定されている場合には、予め設定しておいた送信先情報(メールアドレス)及び本文に搭載ソフトウェア情報を含む電子メールデータ(例えば拡張子が「*.pst」、「*.msg」、「*eml」などのデータ)を生成する。
出力実行部513は、出力データが生成すると、情報出力を実行する(ステップS603)。出力実行部513は、例えば、指定出力形式情報に「印刷」が指定されている場合、画像処理装置100が備えるプロッタ130により印刷を実行する。また、指定出力形式情報に「電子メール送信」が指定されている場合には、画像処理装置100が備えるネットワークI/F113を介して電子メール送信を実行する。
図12は、本実施形態に係る指定出力情報の提供を行う処理手順例を示すシーケンス図(その2)である。図12には、出力情報として第1仮想マシン211上で管理される機器情報が指定された場合の情報取得処理及び情報出力処理の例が示されている。
要求受付部512は、第2仮想マシン212上で受け付けた上記情報出力の実行指示に連動して、情報出力要求を受け付ける(ステップS701)。
要求受付部512は、情報出力要求を受け付けると、インタフェース部612に指定された情報出力を指示する(ステップS702)。このとき、要求受付部512は、操作画面を介して受け付けた指定出力情報及び指定出力形式情報を、インタフェース部612に渡す。
インタフェース部612は、情報出力指示を受け付けると、プログラム管理部413に、指定された出力情報に対応する情報管理プログラムの登録プログラム情報の取得を要求する(ステップS703)。本実施形態では、インタフェース部612は、指示されたときに要求受付部512から受け取った機器情報の識別子(指定出力情報)に基づき、所定の記憶領域に格納した情報管理プログラムの情報(登録プログラム情報)の中から、機器情報管理プログラム31の登録プログラム情報(該当する情報管理プログラムの情報)の取得を要求する。
プログラム管理部413は、取得要求に従って、搭載ソフトウェア情報管理プログラム31の登録プログラム情報を取得し(ステップS704)、取得情報を要求元のインタフェース部612に渡す。
続いて、インタフェース部612は、取得情報に基づき、指定された出力情報が、自身が機能する第2仮想マシン212以外の他の仮想マシン(第1仮想マシン211)で管理される情報の場合、次のような処理を行う。インタフェース部612は、仮想マシン間通信部4122に、機器情報(指定出力情報)の取得要求の送信を指示する(ステップS801)。仮想マシン間通信部4122は、第1仮想マシン211と通信(RMI通信)を行い、取得要求を送信する(ステップS802)。
このようにして第2仮想マシン212から送信された取得要求は、第1仮想マシン211上の仮想マシン間通信部4121により受信される。
仮想マシン間通信部4121は、受信した取得要求に従い、インタフェース部611を介して、第1仮想マシン211上で動作する機器情報取得プログラム421に、機器情報(指定出力情報)の取得を要求する(ステップS804)。このとき、インタフェース部611は、取得要求されたときに受け取った取得情報に含まれる情報管理プログラムの動作場所に係る情報(第1仮想マシン211の情報)に基づき、機器情報管理プログラム32と一対の関係にある情報取得プログラムを特定する。これにより、インタフェース部611は、特定した機器情報取得プログラム421に、機器情報の取得を要求する。
機器情報取得プログラム421は、取得要求に従って、機器情報管理プログラム31から機器情報を取得し(ステップS805,S806)、取得情報を要求元のインタフェース部611に渡す。仮想マシン間通信部4121は、第2仮想マシン212と通信(RMI通信)を行い、取得要求への応答として取得情報を送信する(ステップS807)。
このようにして第1仮想マシン211から送信された取得情報は、第2仮想マシン212上の仮想マシン間通信部4122により受信される。
仮想マシン間通信部4122は、受信した取得情報をインタフェース612に渡す。
続いて、インタフェース部612は、情報出力用アプリケーション51が実行されることで機能する出力実行部513に、指定された出力形式に従った情報出力の実行を指示する(ステップS901)。このとき、インタフェース部612は、取得情報及び指定出力形式情報を出力実行部513に渡し、情報出力の実行を指示する。
出力実行部513は、実行指示を受け付けると、指定された出力形式に従って、機器情報を含む出力データを生成する(ステップS902)。出力実行部513は、例えば、指定出力形式情報に「印刷」が指定されている場合、機器情報を含むPDFデータを生成する。また、指定出力形式情報に「電子メール送信」が指定されている場合には、予め設定しておいた送信先情報(メールアドレス)及び本文に機器情報を含む電子メールデータを生成する。
出力実行部513は、出力データが生成すると、情報出力を実行する(ステップS603)。出力実行部513は、例えば、指定出力形式情報に「印刷」が指定されている場合、画像処理装置100が備えるプロッタ130により印刷を実行する。また、指定出力形式情報に「電子メール送信」が指定されている場合には、画像処理装置100が備えるネットワークI/F113を介して電子メール送信を実行する。
本実施形態に係る画像処理装置100では、このような処理により、ユーザが所望する情報提供を行う。
<まとめ>
以上のように、本実施形態に係る画像処理装置100によれば、起動時に、当該装置に構築された各仮想マシン上で管理する提供可能な情報を確認する。その後、画像処理装置100は、要求された情報提供に応じて、次のような確認結果に基づく情報取得を行う。
以上のように、本実施形態に係る画像処理装置100によれば、起動時に、当該装置に構築された各仮想マシン上で管理する提供可能な情報を確認する。その後、画像処理装置100は、要求された情報提供に応じて、次のような確認結果に基づく情報取得を行う。
画像処理装置100は、情報提供アプリ(情報出力用アプリケーション51)が動作する仮想マシン21(第2仮想マシン212)の管理情報(搭載ソフトウェア情報)が要求された場合、同仮想マシン上で動作する情報管理プログラム(搭載ソフトウェア情報管理プログラム32)から情報を取得する。
また画像処理装置100は、他の仮想マシン21(第1仮想マシン211)の管理情報(機器情報)が要求された場合、仮想マシン間通信(RMI通信)により、他の仮想マシン上で動作する情報管理プログラム(機器情報管理プログラム31)から情報を取得する。
画像処理装置100は、このようにして取得した情報を、要求時に指定された出力形式に従って提供する。
これによって、画像処理装置100は、複数の仮想マシン21が構築されたシステムにおいて、記憶リソースの消費を抑制し、1つの仮想マシン上で動作するアプリケーションを介してシステム内の管理情報を提供できる。本実施形態では、具体的に次の通りである。第1仮想マシン211及び第2仮想マシン212が構築されたシステムにおいて、記憶リソースの消費を抑制し、第2仮想マシン212上で動作する情報出力用アプリケーション51を介してシステム内の管理情報、すなわち、第1仮想マシン211上で管理される機器情報及び第2仮想マシン212上で管理される搭載ソフトウェア情報を提供できる。
[変形例]
ここからは、上記実施形態の変形例について説明する。
ここからは、上記実施形態の変形例について説明する。
<仮想マシン間における情報提供機能>
図13は、本変形例に係る複数の仮想マシンが構築されたシステムのソフトウェア構成例を示す図である。
図13は、本変形例に係る複数の仮想マシンが構築されたシステムのソフトウェア構成例を示す図である。
上記実施形態で図11を用いて示したソフトウェア構成と、図13に示す本変形例に係るソフトウェア構成との違いは、管理情報ごとに、提供可能な情報の内容が所定の形式に従って定義された出力定義データ80が用意されている点である。図13には、管理情報である機器情報及び搭載ソフトウェア情報に対応して、情報出力用アプリケーション51が動作する第2仮想マシン212が、XML(eXtensible Markup Language)形式の機器情報用出力定義データ81及び搭載ソフトウェア情報用出力定義データ82を保持する例が示されている。
図14は、本変形例に係る出力定義データ80の例を示す図である。
図14に示すように、出力定義データ80は、主に、対応する情報取得プログラム(固有部)42の種別を識別するプログラム種別情報と、提供する情報の名称・カテゴリを示す1又は複数の内容情報とが、所定のタグにより定義され、互いに関連付けられている。
図14に示すように、出力定義データ80は、主に、対応する情報取得プログラム(固有部)42の種別を識別するプログラム種別情報と、提供する情報の名称・カテゴリを示す1又は複数の内容情報とが、所定のタグにより定義され、互いに関連付けられている。
具体的には、次の通りである。プログラム種別情報は、タグ"<information-set>"により定義されている。内容情報は、タグ"<information type>"によりカテゴリが定義され、タグ"<information name>"により名称が定義されている。また内容情報は、プログラム種別情報を定義するタグ内に、複数定義することができる。つまり、対応する情報取得プログラム(固有部)42から提供する情報を複数定義することができる。
図14(A)には、機器情報用出力定義データ81のデータ例が示されている。この機器情報用出力定義データ81には、プログラム種別情報に「機器情報」が定義されており、機器情報取得プログラム421が情報提供に係るソフトウェアとして対応付けられている。またプログラム種別情報を定義するタグ内には、2つの内容情報が定義されている。1つ目の内容情報には、カテゴリに「MFP」、名称に「機種モデル名」及び「製造番号」が定義されており、2つ目の内容情報には、カテゴリに「SUPPLY」、名称に「黒トナー残量」及び「第1給紙トレイ用紙残量」が定義されている。
図14(B)には、搭載ソフトウェア情報用出力定義データ82のデータ例が示されてる。この搭載ソフトウェア情報用出力定義データ82には、プログラム種別情報に「搭載ソフトウェア情報」が定義されており、搭載ソフトウェア情報取得プログラム422が情報提供に係るソフトウェアとして対応付けられている。またプログラム種別情報を定義するタグ内には、2つの内容情報が定義されている。1つ目の内容情報には、カテゴリに「ソフトウェア」、名称に「ソフトウェア名」及び「プロダクトキー」が定義されており、2つ目の内容情報には、カテゴリに「VERSION」、名称に「バージョン」が定義されている。
これら出力定義データ80は、対応付けられた情報取得プログラム(固有部)42(プログラム種別情報により定義されたプログラム)により読み込まれる。情報取得プログラム(固有部)42は、出力定義データ80の定義内容(データ内の内容情報)に従って、情報出力用アプリケーション51を介して情報提供を制御する。例えば、機器情報用出力定義データ81の場合には、機器情報取得プログラム421から、画像処理装置100の機器情報のうち、機種モデル名、製造番号、黒トナー残量、及び第1給紙トレイ用紙残量に係る各種情報が提供される。また、搭載ソフトウェア情報用出力定義データ82の場合には、搭載ソフトウェア情報取得プログラム422から、画像処理装置100の搭載ソフトウェア情報のうち、ソフトウェア名、プロダクトキー、及びバージョンに係る各種情報が提供される。
このように、本変形例では、情報取得プログラム(固有部)42が情報管理プログラムから取得する情報を外部データとして定義可能な構成とすることで、管理情報として提供可能な情報の変更を、外部データの追加・削除・更新により、容易に対応することができる。
なお、これら出力定義データ80は、必ずしも情報取得プログラム(固有部)42と一対の関係である必要はない。例えば、1つの情報取得プログラム(固有部)42に対して、複数の出力定義データ80を対応付けた構成であってもよい。
次に、本変形例に係る情報提供機能の動作について説明する。なお、本変形に係る情報提供機能の構成については、第1の実施形態に示した構成と同じであるため、ここでの説明は省略する。また以降には、上述したソフトウェア構成により、第1の実施形態に示した処理手順と異なる点についてのみ説明する。
《処理2》
以下に、情報出力に係る操作画面の生成処理について説明する。
以下に、情報出力に係る操作画面の生成処理について説明する。
図15は、本変形例に係る情報出力の操作画面表示を行う処理手順例を示すシーケンス図である。画像処理装置100では、第2仮想マシン212上で動作する情報取得プログラム(共通部)412により、次のような処理が開始される。
インタフェース部612は、第2仮想マシン212上で受け付けた情報出力の指示に連動して、情報出力に係る操作画面の表示要求を受け付ける(ステップS1001)。
インタフェース部612は、表示要求を受け付けると、プログラム管理部413に登録プログラム情報の取得を要求する(ステップS1002)。すなわち、インタフェース部612は、所定の記憶領域に格納した情報管理プログラムの情報(登録プログラム情報)の取得を要求する。
プログラム管理部413は、取得要求に従って、提供可能な情報に対応して登録されている情報管理プログラムの登録プログラム情報を取得する(ステップS1003)。
またプログラム管理部413は、取得した登録プログラム情報に基づき、対応付けて保持される出力定義データ80を読み取り、データ内に定義される出力定義情報(内容情報)を取得する。本変形例では、取得した登録プログラム情報に、機器情報管理プログラム31及び搭載ソフトウェア情報管理プログラム32に係る情報が含まれる。このことから、プログラム管理部413は、機器情報管理プログラム31と一対の関係にある機器情報取得プログラム421が対応付けられた機器情報用出力定義データ81から、機器情報の出力に係る定義情報を取得する(ステップS1004)。また、プログラム管理部413は、搭載ソフトウェア情報管理プログラム32と一対の関係にある搭載ソフトウェア情報取得プログラム422が対応付けられた搭載ソフトウェア情報用出力定義データ82から、搭載ソフトウェア情報の出力に係る定義情報を取得する(ステップS1005)。
プログラム管理部413は、これらの取得情報(登録プログラム情報及び出力定義情報)を要求元のインタフェース部612に渡す。
インタフェース部612は、取得情報に基づき、情報出力用アプリケーション51が実行されることで機能する画面生成部511に画面表示を要求する(ステップS1006)。このとき、インタフェース部612は、操作画面上に表示する選択指定可能な出力情報として、画面生成部511に取得情報を渡す。
その結果、画面生成部511は、例えば図16に示すような情報出力に係る操作画面を生成し、操作パネル120に表示する(ステップS1007)。
図16は、本変形例に係る情報出力の操作画面例を示す図である。
例えば、画面生成部511では、インタフェース部612から、第1仮想マシン211上で動作する機器情報管理プログラム31及び第2仮想マシン212上で動作する搭載ソフトウェア情報管理プログラム32の各情報が渡された場合、図16に示すような操作画面を生成する。
例えば、画面生成部511では、インタフェース部612から、第1仮想マシン211上で動作する機器情報管理プログラム31及び第2仮想マシン212上で動作する搭載ソフトウェア情報管理プログラム32の各情報が渡された場合、図16に示すような操作画面を生成する。
図16に示す操作画面例では、機器情報内のサプライ情報、搭載ソフトウェア情報のバージョン情報及び有効期限情報が、選択指定可能な出力情報として表示されている。このような選択指定可能な出力情報が表示される場合には、機器情報用出力定義データ81に、機器情報のうち提供可能な情報としてサプライ情報が定義され、搭載ソフトウェア情報用出力定義データ82には、搭載ソフトウェア情報のうち提供可能な情報としてバージョン情報及び有効期限情報が定義されている場合である。
このように、本変形例では、出力定義データ80の定義内容により提供情報を制御することができる。
《処理3》
以下に、指定された出力情報の取得処理及び取得情報の出力処理について説明する。
以下に、指定された出力情報の取得処理及び取得情報の出力処理について説明する。
図17は、本変形例に係る指定出力情報の提供を行う処理手順例を示すシーケンス図である。第1の実施形態に示した処理手順(図11)と本変形例に係る処理手順との違いは、情報出力用アプリケーション51が実行されることで機能する出力実行部513の動作である。
インタフェース部612は、情報出力用アプリケーション51が実行されることで機能する出力実行部513に、指定された出力形式に従った情報出力の実行を指示する(ステップS1101)。
出力実行部513は、実行指示を受け付けると、指定された出力形式に従って、機器情報を含む出力データを生成する(ステップS1102)。本変形例では、取得した登録プログラム情報に、機器情報管理プログラム31及び搭載ソフトウェア情報管理プログラム32に係る情報が含まれる。このことから、出力実行部513は、機器情報管理プログラム31と一対の関係にある機器情報取得プログラム421が対応付けられた機器情報用出力定義データ81から、指定出力形式情報に基づく機器情報の出力形式に係る定義情報を取得する(ステップS1103)。また、出力実行部513は、搭載ソフトウェア情報管理プログラム32と一対の関係にある搭載ソフトウェア情報取得プログラム422が対応付けられた搭載ソフトウェア情報用出力定義データ82から、指定出力形式情報に基づく搭載ソフトウェア情報の出力形式に係る定義情報を取得する(ステップS1104)。
出力実行部513は、例えば、指定出力形式情報に「印刷」が指定されている場合、機器情報を含むPDFデータを生成する。また、指定出力形式情報に「電子メール送信」が指定されている場合には、予め設定しておいた送信先情報(メールアドレス)及び本文に機器情報を含む電子メールデータ(例えば拡張子が「*.pst」、「*.msg」、「*eml」などのデータ)を生成する。
出力実行部513は、出力データが生成すると、情報出力を実行する(ステップS1105)。出力実行部513は、例えば、指定出力形式情報に「印刷」が指定されている場合、画像処理装置100が備えるプロッタ130により印刷を実行する。また、指定出力形式情報に「電子メール送信」が指定されている場合には、画像処理装置100が備えるネットワークI/F113を介して電子メール送信を実行する。
このように、本変形例では、出力定義データ80の定義内容により提供情報の出力形式を制御することができる。
<まとめ>
以上のように、本変形例に係る画像処理装置100では、第1の実施形態と同様に、複数の仮想マシン21が構築されたシステムにおいて、記憶リソースの消費を抑制し、1つの仮想マシン上で動作するアプリケーションを介してシステム内の管理情報を提供できる。さらに、本変形例では、管理情報として提供可能な情報の変更を、出力定義データ80の追加・削除・更新により、容易に対応することができる。
以上のように、本変形例に係る画像処理装置100では、第1の実施形態と同様に、複数の仮想マシン21が構築されたシステムにおいて、記憶リソースの消費を抑制し、1つの仮想マシン上で動作するアプリケーションを介してシステム内の管理情報を提供できる。さらに、本変形例では、管理情報として提供可能な情報の変更を、出力定義データ80の追加・削除・更新により、容易に対応することができる。
ここまで、上記実施形態の説明を行ってきたが、実施形態に係る画像処理装置100が有する「仮想マシン間における情報提供機能」は、図を用いて説明を行った各処理手順を動作環境(プラットフォーム)にあったプログラミング言語でコード化したプログラムが、CPU111により実行されることで実現される。
上記プログラムは、コンピュータが読み取り可能な記録媒体114aに格納することができる。上記記録媒体114aには、例えばSDメモリカード(SD Memory Card)及びUSBメモリ(Universal Serial Bus Memory)などがある。
よって、上記プログラムは、上記記録媒体114aに記憶させることで、記録媒体114aを読み取り可能な外部記憶I/F114などを介して画像処理装置100にインストールすることができる。また画像処理装置100は、ネットワークI/F113を備えていることから、インターネットなどの電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
10 OS(表示装置側)
11 ブラウザ
12 Flash Player
13 ソフトキーボード
20 OS(画像処理装置側)
21 JavaVM(1:第1仮想マシン側、2:第2仮想マシン側)
211 ヒープメモリ
22 Javaコンポーネント
221 Javaプラットフォーム
221a Javaモジュール群
221b SDK API
222 Javaアプリケーション
30 情報管理モジュール群(1:第1仮想マシン側、2:第2仮想マシン側)
31 機器情報管理プログラム(1:第1仮想マシン側、2:第2仮想マシン側)
32 搭載ソフトウェア情報管理プログラム
40 情報取得モジュール群(1:第1仮想マシン側、2:第2仮想マシン側)
41 情報取得プログラム(共通部)
411 インタフェース生成部
412 仮想マシン間通信部(1:第1仮想マシン側、2:第2仮想マシン側)
413 プログラム管理部
42 情報取得プログラム(固有部)
421 機器情報取得プログラム
422 搭載ソフトウェア情報取得プログラム
423 XXXX情報取得プログラム
51 情報出力用アプリケーション
511 画面生成部
512 要求受付部
513 出力実行部
61 インタフェース部(1:第1仮想マシン側、2:第2仮想マシン側)
71 情報有無判定部
80 出力定義データ
81 機器情報用出力定義データ
82 搭載ソフトウェア情報出力定義データ
100 画像処理装置
110 コントローラ
111 CPU(中央処理装置)
112 記憶装置
113 ネットワークI/F
114 外部記憶I/F(a:記録媒体)
120 表示装置
130 プロッタ(画像形成部)
140 スキャナ(読み取り部)
AP1 機器情報出力用アプリケーション
AP2 搭載ソフトウェア情報出力用アプリケーション
11 ブラウザ
12 Flash Player
13 ソフトキーボード
20 OS(画像処理装置側)
21 JavaVM(1:第1仮想マシン側、2:第2仮想マシン側)
211 ヒープメモリ
22 Javaコンポーネント
221 Javaプラットフォーム
221a Javaモジュール群
221b SDK API
222 Javaアプリケーション
30 情報管理モジュール群(1:第1仮想マシン側、2:第2仮想マシン側)
31 機器情報管理プログラム(1:第1仮想マシン側、2:第2仮想マシン側)
32 搭載ソフトウェア情報管理プログラム
40 情報取得モジュール群(1:第1仮想マシン側、2:第2仮想マシン側)
41 情報取得プログラム(共通部)
411 インタフェース生成部
412 仮想マシン間通信部(1:第1仮想マシン側、2:第2仮想マシン側)
413 プログラム管理部
42 情報取得プログラム(固有部)
421 機器情報取得プログラム
422 搭載ソフトウェア情報取得プログラム
423 XXXX情報取得プログラム
51 情報出力用アプリケーション
511 画面生成部
512 要求受付部
513 出力実行部
61 インタフェース部(1:第1仮想マシン側、2:第2仮想マシン側)
71 情報有無判定部
80 出力定義データ
81 機器情報用出力定義データ
82 搭載ソフトウェア情報出力定義データ
100 画像処理装置
110 コントローラ
111 CPU(中央処理装置)
112 記憶装置
113 ネットワークI/F
114 外部記憶I/F(a:記録媒体)
120 表示装置
130 プロッタ(画像形成部)
140 スキャナ(読み取り部)
AP1 機器情報出力用アプリケーション
AP2 搭載ソフトウェア情報出力用アプリケーション
Claims (10)
- 複数の仮想マシンが動作する画像処理装置であって、
仮想マシン上で情報を管理する情報管理モジュールと、
前記情報管理モジュールで管理される情報を取得する情報取得モジュールと、
各仮想マシン上で動作し、前記複数の情報取得モジュールに対して共通の仮想マシン間通信を行う通信部と、を有し、
情報提供アプリが動作する仮想マシンが、
起動時に当該装置に構築された各仮想マシン上で管理する提供可能な情報の有無を判定する判定手段と、
前記判定手段による判定結果に基づき、前記情報提供アプリから要求された出力情報が、自身の仮想マシンと異なる他の仮想マシンの管理情報であった場合、前記通信部を介した仮想マシン間通信により、他の仮想マシンに対して、情報取得を要求する要求手段と、
を有し、
前記他の仮想マシンが、
受け付けた前記要求手段による取得要求に応じて、仮想マシン上で動作する前記情報取得モジュールにより、同仮想マシン上で動作する前記情報管理モジュールから取得した情報を、前記通信部を介した仮想マシン間通信により、要求元の仮想マシンに応答する応答手段を有することを特徴とする画像処理装置。 - 前記情報提供アプリが動作する仮想マシンが、
前記判定手段による判定結果に基づき、前記情報提供アプリから要求された出力情報が自身の仮想マシンの管理情報であった場合、仮想マシン上で動作する前記情報取得モジュールにより、同仮想マシン上で動作する前記情報管理モジュールから情報を取得することを特徴とする請求項1に記載の画像処理装置。 - 前記判定手段は、
起動時に当該装置に構築された各仮想マシン上で動作する前記情報管理モジュールの検索結果に基づき、各仮想マシン上で管理する提供可能な情報の有無を判定することを特徴とする請求項1又は2に記載の画像処理装置。 - 前記判定手段は、
前記通信部を介した仮想マシン間通信により、前記他の仮想マシン上で動作する前記情報管理モジュールを検索し、検索結果に基づき、前記他の仮想マシン上で管理する提供可能な情報の有無を判定することを特徴とする請求項3に記載の画像処理装置。 - 前記判定手段は、
前記検索結果に基づき、各仮想マシン上で動作する前記情報管理モジュールにより管理される情報を提供可能な情報と判定することを特徴とする請求項3又は4に記載の画像処理装置。 - 前記情報提供アプリが動作する仮想マシンが、
各仮想マシン上で動作し、前記情報提供アプリと前記複数の情報取得モジュールとのインタフェース部を生成するインタフェース生成手段を有し、
前記インタフェース生成手段は、
前記判定手段による判定結果に基づき、各仮想マシン上に前記インタフェース部を生成することを特徴とする請求項1ないし5のいずれか一項に記載の画像処理装置。 - 前記情報提供アプリは、
出力情報に係る操作画面を生成する画面生成手段を有し、
前記画面生成手段は、
前記インタフェース生成手段により生成されたインタフェース部を介して受け取った、前記判定手段による判定結果に基づき、各仮想マシン上で管理する提供可能な情報を選択指定可能な画面を生成することを特徴とする請求項1ないし6のいずれか一項に記載の画像処理装置。 - 前記情報提供アプリは、
前記画面生成手段により生成された操作画面を介して、指定された出力情報を、指定された所定の出力形式に従って情報出力を行う出力実行手段を有し、
前記出力実行手段は、
前記インタフェース生成手段により生成されたインタフェース部を介して受け取った、前記情報取得モジュールにより取得された情報を出力することを特徴とする請求項7に記載の画像処理装置。 - 複数の仮想マシンが動作するシステム環境において、仮想マシン上で情報を管理する情報管理モジュールと、前記情報管理モジュールで管理される情報を取得する情報取得モジュールと、各仮想マシン上で動作し、前記複数の情報取得モジュールに対して共通の仮想マシン間通信を行う通信部と、を有する画像処理装置における情報提供方法であって、
情報提供アプリが動作する仮想マシンにおいて、
起動時に当該装置に構築された各仮想マシン上で管理する提供可能な情報の有無を判定する判定手順と、
前記判定手順による判定結果に基づき、前記情報提供アプリから要求された出力情報が、自身の仮想マシンと異なる他の仮想マシンの管理情報であった場合、前記通信部を介した仮想マシン間通信により、他の仮想マシンに対して、情報取得を要求する要求手順と、
を有し、
前記他の仮想マシンにおいて、
受け付けた前記要求手順による取得要求に応じて、仮想マシン上で動作する前記情報取得モジュールにより、同仮想マシン上で動作する前記情報管理モジュールから取得した情報を、前記通信部を介した仮想マシン間通信により、要求元の仮想マシンに応答する応答手順を有することを特徴とする情報提供方法。 - 複数の仮想マシンが動作するシステム環境において、仮想マシン上で情報を管理する情報管理モジュールと、前記情報管理モジュールで管理される情報を取得する情報取得モジュールと、各仮想マシン上で動作し、前記複数の情報取得モジュールに対して共通の仮想マシン間通信を行う通信部と、を有する画像処理装置における情報提供プログラムであって、
コンピュータを、
情報提供アプリが動作する仮想マシンにおいて、
起動時に当該装置に構築された各仮想マシン上で管理する提供可能な情報の有無を判定する判定手段と、
前記判定手段による判定結果に基づき、前記情報提供アプリから要求された出力情報が、自身の仮想マシンと異なる他の仮想マシンの管理情報であった場合、前記通信部を介した仮想マシン間通信により、他の仮想マシンに対して、情報取得を要求する要求手段として機能させ、
前記他の仮想マシンにおいて、
受け付けた前記要求手段による取得要求に応じて、仮想マシン上で動作する前記情報取得モジュールにより、同仮想マシン上で動作する前記情報管理モジュールから取得した情報を、前記通信部を介した仮想マシン間通信により、要求元の仮想マシンに応答する応答手段として機能させる情報提供プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009181876A JP2011034453A (ja) | 2009-08-04 | 2009-08-04 | 画像処理装置、情報提供方法、及び情報提供プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009181876A JP2011034453A (ja) | 2009-08-04 | 2009-08-04 | 画像処理装置、情報提供方法、及び情報提供プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011034453A true JP2011034453A (ja) | 2011-02-17 |
Family
ID=43763445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009181876A Pending JP2011034453A (ja) | 2009-08-04 | 2009-08-04 | 画像処理装置、情報提供方法、及び情報提供プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011034453A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014102588A (ja) * | 2012-11-16 | 2014-06-05 | Konica Minolta Inc | 画像形成装置および画像形成システム |
US10379788B2 (en) | 2016-06-10 | 2019-08-13 | Ricoh Company, Ltd. | Operation device configured to display a configuration of an image forming device and information processing system including same |
-
2009
- 2009-08-04 JP JP2009181876A patent/JP2011034453A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014102588A (ja) * | 2012-11-16 | 2014-06-05 | Konica Minolta Inc | 画像形成装置および画像形成システム |
US10379788B2 (en) | 2016-06-10 | 2019-08-13 | Ricoh Company, Ltd. | Operation device configured to display a configuration of an image forming device and information processing system including same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5609269B2 (ja) | 画像処理装置、表示装置、画面制御システム、画面制御方法、画面制御プログラム、及びそのプログラムを記録した記録媒体 | |
JP5458708B2 (ja) | 画像処理装置、表示制御方法、及び表示制御プログラム | |
JP2008077144A (ja) | 仮想化システム、メモリ管理方法及び制御プログラム | |
JP2011065368A (ja) | 印刷制御装置、印刷制御方法、及びコンピュータプログラム | |
JP4667281B2 (ja) | 周辺装置制御方法及びその情報処理装置と制御プログラム | |
KR20120134913A (ko) | 화상 형성 장치의 어플리케이션을 개발하는 방법 및 장치 | |
JP5346405B2 (ja) | ネットワークシステム | |
JP2008159033A (ja) | 電子機器および情報処理システム | |
JP2014170515A (ja) | 機器、情報記録プログラム、及び情報記録方法 | |
JP5671880B2 (ja) | 画像形成装置、プログラム状態判定方法、プログラム状態判定プログラム、及びプログラム状態判定システム | |
KR20120068573A (ko) | 심리스 애플리케이션 통합 장치 및 방법 | |
JP5183448B2 (ja) | 情報処理装置及び情報処理方法及びプログラム | |
JP4967266B2 (ja) | デバイス制御システム、及びデバイス制御処理方法 | |
JP2012164004A (ja) | 管理装置、管理方法およびプログラム | |
JP2011034453A (ja) | 画像処理装置、情報提供方法、及び情報提供プログラム | |
JP2011013775A (ja) | 情報処理装置、情報処理装置の制御方法及びプログラム | |
JP2011107834A (ja) | 画像処理装置、仮想マシン間の動作モジュール実行制御方法、及び動作モジュール実行制御プログラム | |
JP2011192131A (ja) | 制御装置、画像形成装置、及び制御プログラム | |
JP5510056B2 (ja) | 画像形成装置及びプログラム | |
JP6057740B2 (ja) | 画像形成装置、情報処理方法及びプログラム | |
JP5173354B2 (ja) | 印刷システムおよび印刷用プログラム | |
JP2011060236A (ja) | 情報処理装置、開発支援プログラム、及びソフトウェア統合開発環境 | |
JP5663983B2 (ja) | 画像形成装置、接続制御方法及びプログラム | |
JP5144624B2 (ja) | 画像形成装置 | |
JP2003099313A (ja) | メモリ書換え方法およびその方法をコンピュータに実行させるためのプログラム |