JP5089429B2 - 情報処理装置及びその制御方法、プログラム - Google Patents

情報処理装置及びその制御方法、プログラム Download PDF

Info

Publication number
JP5089429B2
JP5089429B2 JP2008040456A JP2008040456A JP5089429B2 JP 5089429 B2 JP5089429 B2 JP 5089429B2 JP 2008040456 A JP2008040456 A JP 2008040456A JP 2008040456 A JP2008040456 A JP 2008040456A JP 5089429 B2 JP5089429 B2 JP 5089429B2
Authority
JP
Japan
Prior art keywords
virtual machine
information processing
processing apparatus
information
virtual
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.)
Expired - Fee Related
Application number
JP2008040456A
Other languages
English (en)
Other versions
JP2009199349A (ja
Inventor
亮 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2008040456A priority Critical patent/JP5089429B2/ja
Priority to US12/369,269 priority patent/US8230420B2/en
Priority to CN2009101178015A priority patent/CN101515978B/zh
Publication of JP2009199349A publication Critical patent/JP2009199349A/ja
Application granted granted Critical
Publication of JP5089429B2 publication Critical patent/JP5089429B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/001Sharing resources, e.g. processing power or memory, with a connected apparatus or enhancing the capability of the still picture apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0015Control of image communication with the connected apparatus, e.g. signalling capability
    • H04N2201/0022Selecting or switching between an image communication mode and a non-image communication mode

Description

本発明は、複数の仮想マシンが動作可能な仮想マシン動作環境を有する情報処理装置及びその制御方法、プログラムに関するものである。
ネットワーク環境の普及に伴い、ネットワークに接続可能なプリンタ装置やMFP(Multi−Function Peripheral)が登場し、オフィス環境において、複数のユーザで複数のMFPを共有して使用する環境が一般的になってきた。
このような環境では、ある機器でジョブが実行不可能になった場合でも、ネットワーク上の別の機器ではジョブを実行できる場合があるため、ジョブを他の機器へ転送して実行する転送ジョブ技術が提案されている(例えば、特許文献1参照)。
このような転送ジョブ技術では、ジョブを転送するために、ジョブを何らかの静的な中間データに変換しなければならない制約がある。
実行中のジョブは、ハードディスク上の一時ファイル、OSが管理するメモリ領域等に演算途中の一時データをストアするため、この転送ジョブ技術のみでは実行中のジョブタを任意のタイミングで単純に転送することはできない。
例えば、用紙なし、トナーなし等を理由にジョブを転送する場合は、ジョブを実行できないことがわかってから中間データへ変換して転送すればよい。しかしながら、メモリ不足等で中間データ変換の演算すらできないことが原因でジョブを転送する場合は、上記転送ジョブ技術では転送不可能である。
この場合は、演算中のデータを一旦破棄して、転送先で演算をやり直す手順になるが、破棄した分の演算が2重にかかるため必要以上にプリント時間がかかる問題がある。
また、実行中の演算が複雑なPDLデータのレンダリング等であった場合、数十分の演算時間のロスになる。
一方、VMware,xen等に代表される仮想マシン技術がサーバ台数の削減目的などで、一般的になってきている。
仮想マシン技術では、OSを含め機器上で動作する全プログラムを一時停止し、この停止状態(CPUレジスタ上のデータ、RAM上のデータ)を仮想マシンの状態ファイルとして保存し、この停止状態からの再開を可能にするレジューム機能が提供されている。
上記転送ジョブ技術と上記仮想マシン技術のレジューム機能を組み合わせて使うことで、実行中のジョブを転送できる。
つまり、動作中のジョブを仮想マシン毎に一時停止して、仮想マシンの状態ファイルを転送して、転送先で再開することで実行中のジョブを転送できる(特許文献1)。
特開平7−121330号公報
しかしながら、仮想マシンが実際に動作を再開するには、仮想マシンがアクセスするハードディスク等のストレージが必要になる。ここで、仮想マシンを再開するために必要な100Gbyte程度のハードディスクデータをネットワーク経由で転送することは、転送時間、転送先で必要になるストレージ容量の観点から現実的ではない。
そのため、一般的に仮想マシンを転送する場合は、ストレージをあらかじめネットワーク上のサーバへ配置しておき、NFS(Network File System)等のOSが提供する仕組みを用いることでアクセスする構成が取られている。
しかしながら、MFPではプリント処理中にストレージに画像処理の一時ファイルである画像データを頻繁に読み書きするため、CPUとストレージの間で大量のトラフィックが発生し、このトラフィック速度がプリント速度に直結する。
この場合、ストレージがネットワーク上に存在すると、プリント速度が低下するため、常に、ネットワーク上にストレージを配置する構成はプリントパフォーマンスの観点から問題となる。
本発明は上記の課題を解決するためになされたものであり、ネットワーク上の機器間で仮想マシンを転送してジョブを処理する場合のパフォーマンスを改善することができる情報処理装置及びその制御方法、プログラムを提供することを目的とする。
上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。即ち、
複数の仮想マシンが動作可能な仮想マシン動作環境を有する情報処理装置であって、
他の情報処理装置とネットワークを介して通信する通信手段と、
前記通信手段を介して前記他の情報処理装置から転送されてきた、該他の情報処理装置の他の仮想マシン動作環境で動作していた仮想マシンを含む、当該情報処理装置の仮想マシン動作環境で動作する仮想マシンについて、仮想マシンを固有に識別するためのIDと、その仮想マシンを実現する仮想ディスクファイルを記憶する当該情報処理装置あるいは前記他の情報処理装置の物理ディスク上での前記仮想ディスクファイルの記憶位置を示すアドレス情報との対応関係を示す対応関係情報をストレージ対応表で管理する管理手段と、
前記管理手段で管理される前記ストレージ対応表を参照して、アクセス要求を発行した仮想マシンを実現する仮想ディスクファイルに対応するアドレス情報に従って、前記仮想マシンから、前記アドレス情報が示す当該情報処理装置あるいは前記他の情報処理装置の前記物理ディスク上での記憶位置の仮想ディスクファイルへのアクセスを制御する制御手段と
前記仮想マシンとともに、その仮想マシンに対応する前記ストレージ対応表における、前記ID及び当該情報処理装置を特定する情報を含む前記アドレス情報からなる前記対応関係情報を、前記通信手段を介して前記他の情報処理装置へ転送する転送手段と
を備える。
本発明によれば、ネットワーク上の機器間で仮想マシンを転送してジョブを処理する場合のパフォーマンスを改善することができる情報処理装置及びその制御方法、プログラムを提供できる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。
図1は本発明に係る電子部品としてのコントローラユニットが搭載された画像入出力装置(データ処理装置)の一実施形態を示すブロック構成図である。
画像入出力装置1は、イーサネット(登録商標)等のLAN(Local Area Network)400を介してホストコンピュータ(本実施形態では、第一、第二のホストコンピュータ3、4)に接続されている。
画像入出力装置(システム)1は、画像データの読取処理を行うリーダ部5と、画像データの出力処理を行うプリンタ部6と、画像データの入出力操作を行うキーボード2及び画像データや各種機能の表示を行う液晶パネルを備える操作部7とを備える。また、画像入出力装置1は、制御プログラムや画像データ等のデータが予め書き込まれたハードディスクドライブ8及び9を装着している。
また、画像入出力装置1は、画像入出力装置1の各構成要素に接続されて、該構成要素に接続されて該構成要素を制御する単一の電子部品からなるコントローラユニット110を備える。
リーダ部5は、原稿用紙を搬送する原稿給紙ユニット(DFユニット)10と、原稿画像を光学的に読み取って電気信号としての画像データに変換するスキャナユニット11とを有する。
プリンタ部6は、記録用紙を収容する複数段の給紙カセットを備える給紙ユニット12と画像データを記録用紙に印刷(転写、定着)するマーキングユニット13を有する。また、プリンタ部6は、印刷された記録用紙にソート処理やステイプル処理等の後処理を施して、外部に排出する排紙ユニット14とを有している。
ここで、画像入出力装置1は、画像を含む各種情報(データ)を入力して、目的とする処理を実行して出力することができる情報処理装置として捉えることもできる。
次に、リーダ部5及びプリンタ部6の詳細を示す内部構造について、図2を用いて説明する。
図2は本発明の実施形態のリーダ部及びプリンタ部の詳細を示す図である。
リーダ部5はプリンタ部6に載置されている。そして、リーダ部5では、原稿給紙ユニット10に積層された原稿用紙がその積層順に従って、先頭から順次1枚ずつプラテンガラス15上に給送される。スキャナユニット11で、所定の読取動作が終了した後、読み取られた原稿用紙はプラテンガラス15上から原稿給紙ユニット10に排出される。
また、スキャナユニット11では、原稿用紙がプラテンガラス15上に搬送されてくるとランプ16が点灯し、次いで光学ユニット17の移動を開始させ、読取位置で固定する。
光学ユニット17は、搬送される原稿用紙を下方から照射し、走査する。そして、原稿用紙からの反射光は、複数のミラー18〜20、及びレンズ21を介してCCDイメージセンサ(以下、単に「CCD」と記す)22へと導かれ、走査された原稿画像はCCD22によって読み取られる。そして、CCD22で読み取られた画像データは、所定の処理が施された後、コントローラユニット110(図2では図示省略)に転送される。あるいは、原稿プラテン上に載置された原稿を同様にランプ16を点灯し、次いで光学ユニット17の移動を開始させ、原稿用紙を下方から照射し、走査することで、走査された原稿画像をCCD22によって読み取ることが可能である。
以上の手順で送出されたリーダ部5からの画像データは、スキャナコネクタ56(図1)を介してコントローラユニット110に送出される。
次いで、プリンタ部6では、コントローラユニット110から出力された画像データに対応するレーザ光が、レーザドライバ23により駆動されるレーザ発光部24から発光される。このレーザ光によって、マーキングユニット13内の感光ドラム25にレーザ光に応じた静電潜像が形成され、現像器26により静電潜像の部分に現像剤が付着する。
一方、レーザ光の照射開始と同期したタイミングで、給紙ユニット12(給紙カセット12a、12b)から記録用紙が給紙されて転写ユニット27に搬送され、感光ドラム25に付着している現像剤を記録用紙に転写する。画像データが転写された記録用紙は定着ユニット28に搬送され、定着ユニット28における加熱・加圧処理により画像データが記録紙に定着される。
そして、画像データを記録用紙に片面記録する場合は、定着ユニット28を通過した記録用紙が排出ローラ29によってそのまま排紙ユニット14に排出される。排紙ユニット14は、排出された記録用紙を束ねて記録用紙の仕分けを行い、また、仕分けされた記録用紙のステイプル処理を行う。
また、画像データを記録用紙に両面記録する場合は、排出ローラ29まで記録用紙を搬送した後、排出ローラ29の回転方向を逆転させる。その後、フラッパ30によって再給紙搬送路31へと導かれ、再給紙搬送路31に導かれた記録用紙は上述と同様にして転写ユニット27に搬送される。
コントローラユニット110は、上述したように単一の電子部品で構成される。ここで、コントローラユニット110は、リーダ部5から読み取った画像データをコードデータに変換し、LAN400を介して第一及び第二のホストコンピュータ3及び4に送信するスキャナ機能を有する。また、コントローラユニット110は、ホストコンピュータ3及び4からLAN400を介して受信したコードデータを画像データに変換し、プリンタ部6に出力するプリンタ機能、その他の機能ブロックを有している。
次に、コントローラユニット110の詳細構成について、図3を用いて説明する。
図3は本発明の実施形態のコントローラユニットの詳細構成を示すブロック図である。
メインコントローラ32は、CPU33とバスコントローラ34と後述する各種コントローラ回路を含む機能ブロックとを内蔵する。さらに、メインコントローラ32は、ROM I/F35を介してROM36と接続され、また、DRAM I/F37を介してDRAM38と接続される。
さらに、メインコントローラ32は、コーデックI/F39を介してコーデック40と接続され、また、ネットワークI/F41(通信部)を介してネットワークコントローラ42と接続されている。
ROM36は、メインコントローラ32のCPU33で実行される各種制御プログラムや演算データを記憶している。DRAM38は、CPU33が動作するための作業領域や画像データを蓄積するための領域として使用される。コーデック40は、DRAM38に蓄積されたラスタイメージデータを、MH/MR/MMR/JBIG等の周知の圧縮方式で圧縮し、また、圧縮データをラスタイメージデータに伸長する。また、コーデック40にはSRAM43が接続されており、このSRAM43は、コーデック40の一時的な作業領域として使用される。
ネットワークコントローラ42は、コネクタ44を介してLAN400との間で所定の制御動作を行う。
また、メインコントローラ32は、スキャナバス45を介してスキャナI/F46に接続され、プリンタバス47を介してプリンタI/F48に接続される。
メインコントローラ32は、さらにPCIバス等の汎用高速バス49を介して拡張ボードを接続するための拡張コネクタ50及び入出力制御部(I/O制御部)51に接続されている。
I/O制御部51は、リーダ部5やプリンタ部6との間で制御コマンドを送受信するための調歩同期式のシリアル通信コントローラ52を2チャンネル装備している。
このシリアル通信コントローラ52は、I/Oバス53を介してスキャナI/F46及びプリンタI/F48に接続されている。
スキャナI/F48は、第一の調歩同期シリアルI/F54及び第一のビデオI/F55を介してスキャナコネクタ56に接続され、さらに、スキャナコネクタ56はリーダ部5のスキャナユニット11に接続されている。
そして、スキャナI/F46は、スキャナユニット11から受信した画像データに対し所望の2値化処理や、主走査方向及び/又は副走査方向の変倍処理を行う。また、スキャナI/F46は、スキャナユニット11から送信されてきたビデオ信号に基づいて制御信号を生成し、スキャナバス45を介してメインコントローラ32に転送する。
プリンタI/F48は、第2の調歩同期シリアルI/F57及び第2のビデオI/F58を介してプリンタコネクタ59に接続され、さらに、プリンタコネクタ59はプリンタ部6のマーキングユニット13に接続されている。
そして、プリンタ/F48は、メインコントローラ32から出力された画像データにスムージング処理を施して、その画像データをマーキングユニット13に出力する。また、プリンタ/F48は、マーキングユニット13から送信されてきたビデオ信号に基づいて、生成された制御信号をプリンタバス47を介してメインコントローラ32に転送する。
CPU33は、ROM36からROM I/F35を介して読み込まれた制御プログラムに基づいて動作する。
例えば、CPU33は、第1及び第2のホストコンピュータ3及び4から受信したPDL(ページ記述言語)データを解釈し、ラスタイメージデータの展開処理を行う。
また、バスコントローラ34は、スキャナI/F46、プリンタI/F48、拡張コネクタ50を介して接続された外部機器から入出力されるデータ転送を制御し、特に、バス競合時のアービトレーション(調停)やDMAデータ転送の制御を行う。即ち、バスコントローラ34は、例えば、DRAM38とコーデック40間のデータ転送、スキャナユニット11からDRAM38へのデータ転送、DRAM38からマーキングユニット13へのデータ転送等を制御する。そして、これらのデータ転送は、DMA転送によって実現される。
I/O制御部51は、LCDコントローラ60及びキー入力I/F61を介してパネルI/F62に接続されている。パネルI/F62は、操作部7に接続されている。
I/O制御部51は、不揮発性メモリとしてのEEPROM66に接続されている。また、I/O制御部51は、E−IDEコネクタ63を介してハードディスクドライブ8及び9に接続され、さらに、機器内で管理する日付と時刻を更新/保存するリアルタイムクロックモジュール64に接続されている。
尚、リアルタイムクロックモジュール64は、バックアップ用電池65に接続されて、このバックアップ用電池65によりバックアップされている。
次に、メインコントローラ32の内部詳細構成について、図4を用いて説明する。
図4は本発明の実施形態のメインコントローラの内部詳細を示すブロック構成図である。
バスコントローラ34は、4×4の64ビットクロスバススイッチで構成され、64ビットのプロセッサバス(Pバス)67を介してCPU33に接続される。また、バスコントローラ34は、メモリ専用のローカルバス(Mバス)68を介してキャッシュメモリ69aを備えるメモリコントローラ(MC)69に接続されている。
尚、メモリコントローラ69は、ROM36やDRAM38等のメモリ類と接続され、これらのメモリ類の動作を制御する。
さらに、バスコントローラ34は、グラフィックスバス(Gバス)70を介してGバスアービタ71及びスキャン・プリンタコントローラ72と接続されている。また、バスコントローラ34は、入出力バス(Bバス)73を介して、Bバスアービタ74、Gバスアービタ71、インタラプトコントローラ75、及び各種機能ブロックと接続されている。 ここで、各種機能ブロックには、パワーマネージメント(電力管理)ユニット76、UART等のシリアルI/Fコントローラ77、USB(Universal Serial Bus)コントローラ(USBC)78がある。
また、各種機能ブロックには、IEEE1284等のパラレルI/Fコントローラ79、LANコントローラ80、汎用入出力コントローラ81がある。
また、各種機能ブロックには、Bバス73と外部バスであるPCIバスとの間でI/F動作を司るPCIバスインタフェース82、及びスキャナ・プリンタコントローラ72がある。
Bバスアービタ74は、Bバス73を協調制御するアービトレーションであり、Bバス73のバス使用要求を受け付け、調停の後、使用許可が選択された一つのマスタに与えられ、これにより同時に2つ以上のマスタがバスアクセスを行うのを禁止している。尚、アービトレーション方式は、3段階の優先権を有し、それぞれの優先権に複数のマスタが割り当てられる。
インタラプトコントローラ75は、上述の各機能ブロック及びコントローラユニット110の外部からインタラプトを集積し、CPU33がサポートする各種コントローラ(72、77〜81)及びノンマスカブルインタラプト(NMI)に再配分する。
電力管理ユニット76は、機能ブロック毎に電力を管理し、さらに1チップで構成されている電子部品としてコントローラユニット110の消費電力量の監視を行う。即ち、コントローラユニット110は、CPU33を内蔵した大規模なASIC(特定用途向けIC)で構成されている。このため、全ての機能ブロックが同時に動作すると大量の熱を発生して、コントローラユニット110自体が破壊されてしまう虞がある。
そこで、このような事態を防止するために、電力管理ユニット76は、各機能ブロック毎に消費電力を管理し、各機能ブロックの消費電力量はパワーマネージメントレベルとして電力管理ユニット76に集積される。そして、電力管理ユニット76では、各機能ブロックの消費電力量を合計し、この消費電力量が限界消費電力を超えないように各機能ブロックの消費電力量を一括して監視する。
Gバスアービタ71は、中央アービトレーション方式によりGバス70を協調制御しており、各バスマスタに対して専用の要求信号と許可信号とを有する。バスマスタへの優先権の付与方式として、全てのバスマスタを同じ優先権として、公平にバス権を付与する公平アービトレーションモードを指定できる。または、いずれか一つのバスマスタに対して優先的にバスを使用させる優先アービトレーションモードを指定することができる。
次に、このような構成の画像入出力装置上で動作する仮想マシンのソフトウェア構成について、図5を用いて説明する。
図5は本発明の実施形態の仮想マシンを実現するソフトウェア構成を示す図である。
仮想マシン106は、実マシン100上で動作する1つのプログラムとして実現され、実マシン100上では他の仮想マシン113や仮想マシン動作環境102と同時実行される構成を取る。また、仮想マシン動作環境120では、仮想マシン106及び113を含む複数の仮想マシンが動作可能である。
仮想マシン106上で動作するソフトウェア(OS112、制御ソフトウェア111等)も、実マシン100上のソフトウェアと同様にCPU、RAM、ディスク等のデバイスと相互作用を行いながら処理を実現する。この時、仮想マシン106上のソフトウェアから見えるデバイス(仮想RAM107、仮想ディスク114、仮想CPU108等)は、実マシン100のデバイスではなく、仮想デバイスとなる。
仮想デバイスは全て仮想マシン106上のソフトウェアモジュールとして実現され、実マシン100をエミュレーションしている。
例えば、仮想RAM107は、仮想マシン106のプロセスのワークメモリ上に領域を割り当て、実RAM101と全く同じレイアウトとI/Fで値を保持することで、仮想マシン106上のソフトウェアに実RAM101がそこにあるように見せかける。
また、例えば、仮想CPU108は、仮想マシン106内のモジュールとして実CPU103と全く同じ振る舞いを実現する。具体的には、仮想CPU108は、ワークメモリ上に割り当てた領域に、実CPU103の実レジスタ104と全く同じレジスタセットを保持することで、仮想マシン106上のソフトウェアに実CPU103がそこにあるように見せかける。
また、例えば、仮想ディスク114は、実ディスク105のビットパターンを保持する1つのファイルとして実現され、ファイルの実体は実マシン100上の実ディスク105に保持される。さらに、仮想ディスク114は、仮想マシン106が実ディスク105と全く同じI/Fでファイルの内容を見せることで、仮想マシン106上のソフトウェアに実ディスク105がそこにあるように見せかける。
通常時は、上記の構成で動作していることを踏まえて、一時停止時の動作について、以下に説明する。
仮想マシン動作環境102から仮想マシン106に一時停止が指示されると、仮想マシン106は、そのタイミングで仮想CPU108の動作を停止し、仮想レジスタ109の内容を実マシン100上のファイルとして実ディスク105に書き出す。
次に、仮想RAM107上のビットパターンを実マシン100上のファイルとして実ディスク105に書き出す。その後、仮想マシン106のプロセスを終了して、実RAM101上からいなくなる。
次に、一時停止後に、仮想マシン106を再開する時の動作について説明する。
仮想マシン動作環境102から仮想マシン106の再開が指示されると、仮想マシン106のプロセスが起動する。この時、まだ、仮想CPU108のモジュールは動作していない。
次に、実ディスク105上のファイルから前回終了時の仮想レジスタ109の値を読み込み仮想CPU108にセットする。
次に、実ディスク105上のファイルから前回終了時の仮想RAM107の値を読み込み、仮想RAM107にセットする。
次に、この状態で仮想CPU108のモジュールの動作を開始させる。
以上の動作を行うことで、仮想マシン106上で様々なソフトウェアが動作中であっても、仮想CPU108を含めその瞬間の状態を保持したまま動作を中断し、任意のタイミングで動作を再開することができる。
次に、上述のような構成の画像入出力装置と仮想マシンの構成を例に挙げ、本発明の具体的な実施形態を、図6〜図12を用いて説明する。
図6は本発明の実施形態のストレージアクセスと仮想マシンの転送のシーケンスを示す図である。
特に、図6では、ストレージアクセスと仮想マシンの転送のシーケンスについてモジュール間の関係を中心に説明する。
尚、ストレージアクセスとは、装置に搭載されるハードディスク等のストレージデバイス(記憶部)へのアクセスを意味する。
転送元機器200上で通常動作時にストレージアクセスが発生すると、仮想マシン202上で動作するOS203は、仮想マシン動作環境201が提供する仮想ディスクへアクセスする。仮想ディスクへのアクセスが発生すると、仮想マシン動作環境201内で動作する、ストレージサービス204へアクセス要求が発生する(ステップS1)。
ストレージサービス204がアクセス要求を受けると、ストレージとの対応関係情報(ストレージ対応表)を元に仮想ディスクファイル208へアクセスし、仮想マシン202へストレージのデータを返す(ステップS2)。
メモリ監視サービス206は、OS203を監視し、メモリ枯渇を検知すると仮想マシン202の転送動作を開始する(ステップS3)。
尚、メモリ枯渇とは、例えば、メモリの記憶容量に対して、空きメモリ容量が閾値以下になっている場合を意味する。また、この閾値は、空きメモリ容量不足に起因して、仮想マシンのデバイスが正常に動作しない、処理が正常に実行できない、継続できない等の通常動作ができない場合の空きメモリ容量に基づいて決定される。このように、メモリ監視サービス206は、仮想マシンが通常動作を継続できるか否かを判定する判定機能を実現する。そして、判定の結果、仮想マシンの通常動作が継続できない場合、仮想マシンは転送される。
メモリ監視サービス206は、仮想マシン動作環境201内で動作するジョブ転送サービス205へ転送指示を発行する(ステップS4)。
ジョブ転送サービス205は、転送指示を受信すると、仮想マシン202に対して動作の一時中断を指示する中断指示を発行する(ステップS5)。
中断指示を受信した仮想マシン202は、動作を停止し、仮想マシン動作環境201は、仮想マシン202の状態のデータをスナップショットデータ209として実ディスク207へ書き込む(ステップS6)。ここで、仮想マシン202の状態のデータは、仮想マシン202の仮想RAMのデータ、仮想CPUのレジスタのデータを含んでいる。
ジョブ転送サービス205は、仮想マシン202の停止を確認した後、転送先機器250上で動作する仮想マシン動作環境251の内部で動作するジョブ転送サービス255へ、LAN280を介して通信を開始する。そして、ジョブ転送サービス205は、VM(Virtual Machine)データとして、仮想マシン202のスナップショットデータ209と、ストレージとの対応関係情報を転送する(ステップS7)。
ジョブ転送サービス255は、スナップショットデータ209を受信すると、転送先機器250の実ディスク257へスナップショットデータ259として書き込む(ステップS8)。
ジョブ転送サービス255は、スナップショットデータ259の書込が完了したことを確認した後、仮想マシン252に動作再開を指示する(ステップS9)。尚、メモリ監視サービス256は、メモリ監視サービス206と同様の動作を実現する。
仮想マシン動作環境251は、スナップショットデータ259を読み込み、仮想マシン252のプロセスを開始し、スナップショットデータ259に基づき仮想CPUレジスタと仮想RAMにデータを設定し、仮想CPUの動作を開始する(ステップS10)。
これにより、仮想マシン252は、仮想マシン202が停止した時点からの続きの処理を開始することができる。
仮想マシン252上のOS253からディスクアクセスが発生すると、仮想マシン252は、ストレージサービス254へアクセス要求を発行する(ステップS11)。
ストレージサービス254は、対応関係情報を元に、LAN280を介して転送元機器200で動作するストレージサービス204への通信を開始し、アクセス要求を発行する(ステップS12)。
ストレージサービス204は、アクセス要求に従い、仮想ディスクファイル208へアクセスし、ストレージのデータを返す(ステップS13)。
上記のシーケンス内で説明したストレージとの対応関係について、図7〜図9を用いて説明する。
図7は本発明の実施形態中の転送前のストレージ対応表の状態を示す図である。図8は本発明の実施形態の転送時のストレージ対応表の状態を示す図である。図9は本発明の実施形態の転送後のストレージ対応表の状態を示す図である。
転送元機器において、その仮想マシンの動作時にストレージへのアクセス要求がある場合は、転送元機器で動作するストレージサービスが持つストレージ対応表には、ローカルディレクトリに存在するファイルが記述されている。そのため、ローカルのファイルへのストレージサービスがアクセスを行うことになる。
例えば、図7ではストレージ対応表に、仮想マシンvm1がアクセスする仮想ディスクファイルを管理するmasterディスクは、ローカルの実ディスクの/disk/vm1m.imgであると記述されている。そのため、ストレージサービスは、ローカルの実ディスクの/disk/vm1m.imgを仮想ディスクファイルとして使用する。
仮想マシンの転送時には、転送元機器のストレージサービスが持つストレージ対応表から、転送対象の仮想マシンに対するエントリを削除する。
ここで、ストレージ対応表の各エントリは、仮想マシンを固有に識別するためのID、仮想マシンを実現する仮想ディスクファイルを記憶管理する物理ディスク名、その所在(記憶位置)を示すアドレス情報であるパス名で構成される。図7では、IDが「vmid」、物理ディスク名が「storage」、パス名が「Virtual disk file」に対応する。
次に、転送元機器のストレージサービスが転送対象の仮想マシンに対応するストレージ対応関係を示す対応関係情報を転送先機器のストレージサービスに通知する。これを受けて、転送先機器のストレージサービスが持つストレージ対応表に転送対象の仮想マシンのエントリを追加する。
例えば、図8では、転送元機器のストレージ対応表の「vmid」が「vm1」であるエントリが全て削除されて、転送先機器のストレージ対応表に「vmid」が「vm1」であるエントリが追加される。このとき、転送された仮想マシンのエントリの「Virtual disk file」に記述されるファイル名は、転送元機器を特定する情報(図8では、IPアドレス)が記述されている。
転送先機器において、仮想マシンが動作時にストレージへのアクセス要求がある場合は、転送先機器で動作するストレージサービスが持つストレージ対応表には、リモートディレクトリに存在するファイルが記述されている。そのため、リモートのファイルへストレージサービスがアクセスを行うことになる。
例えば、図9では、ストレージ対応表に「vm1」のmasterディスクは、192.168.123.1(転送元機器のIPアドレス)の実ディスクの/disk/vm1m.imgであると記述されている。そのため、ストレージサービスは、リモートの実ディスクの/disk/vm1m.imgを仮想ディスクとして使用する。
このように、転送先機器及び転送元機器それぞれにおいて、仮想マシンの転送に伴い転送する対応関係情報に基づいて、各機器が管理するストレージ対応表の内容を更新(エントリの削除/追加)する。
次に、ジョブの開始から終了までの間での転送処理の転送元機器のフローについて、図10を用いて説明する。
図10は本発明の実施形態の転送元機器におけるジョブ開始からジョブ終了までの転送処理を示すフローチャートである。
ジョブ(例えば、PDLデータ)が投入されると、ジョブ開始状態になる(ステップS100)。ジョブ開始状態になると、仮想マシンは、そのジョブのレンダリングが終了したか否かを判定する(ステップS101)。このレンダリングは、例えば、仮想マシン上で実現されるコントローラソフトウェアのPDLレンダラによって実現される(図6)。
レンダリングが終了している場合(ステップS101でYES)、仮想マシンは、残りの処理を実行後、ジョブの終了状態へ遷移する(ステップS110)。
一方、レンダリングが終了していない場合(ステップS101でNO)、メモリ監視サービスは、メモリ不足であるか否かを判定する(ステップS102)。メモリ不足でない場合(ステップS102でNO)、ステップS101に戻る。一方、メモリ不足である場合(ステップS102でYES)、仮想マシンは、転送先機器が存在するか否かを判定する(ステップS103)。
尚、転送先機器は、予め決められた転送先機器であってもよいし、負荷の軽い機器を適応的に探すロジックであってもよい。また、メモリ不足であるか否かの判定は、上述のように、例えば、空きメモリ容量が閾値以下の場合にメモリ不足と判定する。
転送先機器が存在しない場合(ステップS103でNO)、ステップS101へ戻る。一方、転送先機器が存在する場合(ステップS103でYES)、メモリ監視サービスは、ジョブ転送サービスへ転送指示を発行する(ステップS104)。
転送指示を受信すると、ジョブ転送サービスは、仮想マシンの中断指示を発行する(ステップS105)。
中断が完了すると、ジョブ転送サービスは、転送先機器のジョブ転送サービスへ仮想マシンデータ(VMデータ)、即ち、仮想メモリのスナップショットデータと、仮想レジスタの内容と、仮想ディスクのファイルパスを転送する(ステップS106)。
ジョブ転送サービスは、転送が完了したら転送先機器でレンダリングが終了して仮想マシンデータが転送されるまで待機する(ステップS107)。
転送先機器のジョブ転送サービスから仮想マシンデータの転送が行われたら、ジョブ転送サービスは、仮想マシンデータを受信する(ステップS108)。
仮想マシンデータを受信したジョブ転送サービスは、仮想マシンの動作の再開を指示する(ステップS109)。
再開した仮想マシンは、残りの処理を実行後、ジョブ終了状態へ遷移する(ステップS110)。
次に、ジョブの開始から終了までの間での転送処理の転送先機器のフローについて、図11を用いて説明する。
図11は本発明の実施形態の転送先機器におけるジョブ開始からジョブ終了までの転送処理を示すフローチャートである。
転送元機器から仮想マシンデータが転送されたら、転送先機器のジョブ転送サービスは、仮想マシンデータを受信する(ステップS150)。
仮想マシンデータを受信した仮想マシン転送サービスは、仮想マシンの再開を指示する(ステップS151)。
再開した仮想マシンは自動的にジョブの続きを実行しはじめるので、再びレンダリングが終了したか否かを判定する(ステップS152)。
レンダリングが終了していない場合(ステップS152でNO)、レンダリングが終了するまで待機する。一方、レンダリングが終了している場合(ステップS152でYES)、ジョブ転送サービスへ転送指示を発行する(ステップS153)。
転送指示を受信すると、ジョブ転送サービスは、仮想マシンの中断指示を発行する(ステップS154)。
中断が完了すると、仮想マシンデータを転送元機器のジョブ転送サービスへ転送する(ステップS155)。
次に、転送先機器の仮想マシンがファイル読込を発行してから、データを取得するまでのフローについて、図12を用いて説明する。
図12は本発明の実施形態の仮想マシンがファイル読込を発行してから、データを取得する処理を示すフローチャートである。
仮想マシン上で動作するOSの動きに応じて、仮想マシンは、ファイル読込要求を発行する(ステップS201)。仮想マシンは、ストレージサービスへアクセス要求を発行する(ステップS202)。
仮想マシンは、ストレージサービスが内部に持つストレージ対応表を参照して、アクセス要求元の仮想マシンと仮想ディスクファイルの対応関係を取得する(ステップS203)。この対応関係には、仮想ディスクファイルのロケーション情報、即ち、リモートの機器(転送元機器(例えば、サーバ))上にあるか、ローカルのディスク上にあるのかの情報を含んでいる。
仮想マシンは、得られるロケーション情報を元に仮想ディスクファイルがリモートにあるか否かを判定する(ステップS204)。
仮想ディスクファイルがリモートにない場合(ステップS204でNO)、即ち、ローカルにある場合、ストレージ対応表から、仮想ディスクファイルのファイルパスを確認する(ステップS251)。ファイルパスが示す仮想ディスクファイルから、ステップS201で指定されたファイルのデータを読み込む(ステップS252)。ストレージサービスが読み込んだファイルのデータを仮想マシンへ転送する(ステップS253)。そして、仮想マシンは、そのファイルのデータを取得する(ステップS210)。
一方、ステップS204において、仮想ディスクファイルがリモートにある場合(ステップS204でYES)、仮想マシンは、リモートのストレージサービスへアクセス要求を発行する(ステップS205)。
アクセス要求先の仮想マシンは、リモートのストレージサービスで内部に持つストレージ対応表を参照して、アクセス要求元の仮想マシンと仮想ディスクファイルの対応関係を取得する。そして、仮想ディスクファイルのファイルパスを確認する(ステップS206)。
アクセス要求先の仮想マシンは、ファイルパスが示す仮想ディスクファイルから、ステップS201で指定されたファイルのデータを読み込む(ステップS207)。
リモートのストレージサービスは、ローカルのストレージサービスへ読み込んだファイルのデータを送信する(ステップS208)。
ローカルのストレージサービスは、受信したファイルのデータを仮想マシンへ転送する(ステップS209)。そして、仮想マシンは、そのファイルのデータを取得する(ステップS210)。
以上説明したように、本実施形態によれば、仮想マシンと仮想ディスクファイルの対応関係を、仮想マシンが参照可能に管理する。これにより、この対応関係を参照することで、仮想マシン上で動作するOSは、必要とするデータの所在(アドレス情報)がローカルにある、あるいはリモートにあることに関係なく、シームレスに必要とするデータを取得することができる。
換言すれば、仮想マシンの転送前は、そのローカルストレージにアクセスし、仮想マシンの転送後はそれが転送する前に存在した転送元機器のリモートストレージに透過的にアクセスすることができる。これにより、任意のタイミングで実行中のジョブを転送することができ、ユーザは不要な処理時間(例えば、印刷待ち時間)を浪費する必要が無くなる。
より具体的には、メモリ枯渇等でジョブを継続できなくなった場合でも、任意のタイミングでジョブを転送することができ、転送先機器においても、転送元機器のハードディスクを参照できる。これにより中間データを任意のタイミングで、転送元機器のハードディスクに出力することができる。
また、通常時は、ローカルのハードディスクを使用することでパフォーマンスを低下させることなくジョブを実行し、転送時のみネットワーク経由で、転送元機器のハードディスクを使用することで、スループットの低下を低減させることができる。
また、ジョブ、OSは、機器のロケーションを意識することなく、ディスクにアクセスできるため、任意のタイミングで停止、転送、再開を行うことが可能になる。
尚、上記実施形態では、画像形成装置において仮想マシン動作環境が実現される場合を例に挙げて説明しているが、これに限定されるものではない。例えば、パーソナルコンピュータ等の情報処理装置についても、同様に、本発明を適用できることは言うまでもない。
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスクがある。また、更に、記録媒体としては、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、その接続先のホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。また、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
本発明に係る電子部品としてのコントローラユニットが搭載された画像入出力装置(データ処理装置)の一実施形態を示すブロック構成図である。 本発明の実施形態のリーダ部及びプリンタ部の詳細を示す図である。 本発明の実施形態のコントローラユニットの詳細構成を示すブロック図である。 本発明の実施形態のメインコントローラの内部詳細を示すブロック構成図である。 本発明の実施形態の仮想マシンを実現するソフトウェア構成を示す図である。 本発明の実施形態のストレージアクセスと仮想マシンの転送のシーケンスを示す図である。 本発明の実施形態中の転送前のストレージ対応表の状態を示す図である。 本発明の実施形態中の転送時のストレージ対応表の状態を示す図である。 本発明の実施形態中の転送後のストレージ対応表の状態を示す図である。 本発明の実施形態の転送元機器におけるジョブ開始からジョブ終了までの転送処理を示すフローチャートである。 本発明の実施形態の転送先機器におけるジョブ開始からジョブ終了までの転送処理を示すフローチャートである。 本発明の実施形態の仮想マシンがファイル読込を発行してから、データを取得する処理を示すフローチャートである。
符号の説明
100 実マシン
101 実RAM
102 仮想マシン動作環境
103 実CPU
104 実レジスタ
105 実ディスク
106 仮想マシン
107 仮想RAM
108 仮想CPU
109 仮想レジスタ
110 仮想ディスク
200 転送元機器
201 転送元の仮想マシン動作環境
202 転送前の仮想マシン
203 転送前のOS
204 転送元のストレージサービス
205 転送元のジョブ転送サービス
206 転送前のメモリ監視サービス
207 転送元の実ディスク
208 仮想ディスクファイル
209 転送前の仮想マシンのスナップショットデータ
250 転送先機器
251 転送先の仮想マシン動作環境
252 転送後の仮想マシン
253 転送後のOS
254 転送先のストレージサービス
255 転送先のジョブ転送サービス
256 転送後のメモリ監視サービス
257 転送先の実ディスク
259 転送後の仮想マシンのスナップショットデータ
280 LAN

Claims (6)

  1. 複数の仮想マシンが動作可能な仮想マシン動作環境を有する情報処理装置であって、
    他の情報処理装置とネットワークを介して通信する通信手段と、
    前記通信手段を介して前記他の情報処理装置から転送されてきた、該他の情報処理装置の他の仮想マシン動作環境で動作していた仮想マシンを含む、当該情報処理装置の仮想マシン動作環境で動作する仮想マシンについて、仮想マシンを固有に識別するためのIDと、その仮想マシンを実現する仮想ディスクファイルを記憶する当該情報処理装置あるいは前記他の情報処理装置の物理ディスク上での前記仮想ディスクファイルの記憶位置を示すアドレス情報との対応関係を示す対応関係情報をストレージ対応表で管理する管理手段と、
    前記管理手段で管理される前記ストレージ対応表を参照して、アクセス要求を発行した仮想マシンを実現する仮想ディスクファイルに対応するアドレス情報に従って、前記仮想マシンから、前記アドレス情報が示す当該情報処理装置あるいは前記他の情報処理装置の前記物理ディスク上での記憶位置の仮想ディスクファイルへのアクセスを制御する制御手段と
    前記仮想マシンとともに、その仮想マシンに対応する前記ストレージ対応表における、前記ID及び当該情報処理装置を特定する情報を含む前記アドレス情報からなる前記対応関係情報を、前記通信手段を介して前記他の情報処理装置へ転送する転送手段と
    を備えることを特徴とする情報処理装置。
  2. 前記転送手段は、前記仮想マシン上で実行中のジョブを前記他の情報処理装置へ転送する場合には、前記仮想マシンを一時停止した状態で該仮想マシンとその仮想マシンに対応する前記ストレージ対応表における、前記ID及び当該情報処理装置を特定する情報を含む前記アドレス情報からなる前記対応関係情報とを、前記通信手段を介して転送先の前記他の情報処理装置へ転送し、前記転送先の他の情報処理装置で前記仮想マシンを再開させることで、前記実行中のジョブを転送する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記仮想マシンを動作させるための、当該情報処理装置のメモリの空きメモリ容量に基づいて、前記仮想マシン動作環境の前記仮想マシンの動作継続できるか否かを判定する判定手段を更に備え、
    前記判定手段の判定の結果、前記空きメモリ容量が閾値以下であることで、前記仮想マシンの動作継続できないと判定する場合、前記転送手段は、前記仮想マシンとともに、その仮想マシンに対応する前記ストレージ対応表における、前記ID及び当該情報処理装置を特定する情報を含む前記アドレス情報からなる前記対応関係情報前記通信手段を介して前記他の情報処理装置へ転送する
    ことを特徴とする請求項1に記載の情報処理装置。
  4. 前記管理手段は、前記通信手段を介して転送した仮想マシンに対する前記対応関係情報については前記ストレージ対応表から削除し前記通信手段を介して転送されてきた仮想マシンに対する前記対応関係情報については、前記ストレージ対応表へ追加する
    ことを特徴とする請求項1に記載の情報処理装置。
  5. 複数の仮想マシンが動作可能な仮想マシン動作環境を有する情報処理装置の制御方法であって、
    当該情報処理装置の通信部を介して前記他の情報処理装置から転送されてきた、該他の情報処理装置の他の仮想マシン動作環境で動作していた仮想マシンを含む、当該情報処理装置の仮想マシン動作環境で動作する仮想マシンについて、仮想マシンを固有に識別するためのIDと、その仮想マシンを実現する仮想ディスクファイルを記憶する当該情報処理装置あるいは前記他の情報処理装置の物理ディスク上での前記仮想ディスクファイルの記憶位置を示すアドレス情報との対応関係を示す対応関係情報をストレージ対応表で管理する管理工程と、
    前記管理工程で管理される前記ストレージ対応表を参照して、アクセス要求を発行した仮想マシンを実現する仮想ディスクファイルに対応するアドレス情報に従って、前記仮想マシンから、前記アドレス情報が示す当該情報処理装置あるいは前記他の情報処理装置の前記物理ディスク上での記憶位置の仮想ディスクファイルへのアクセスを制御する制御工程と
    前記仮想マシンとともに、その仮想マシンに対応する前記ストレージ対応表における、前記ID及び当該情報処理装置を特定する情報を含む前記アドレス情報からなる前記対応関係情報を、前記通信部を介して前記他の情報処理装置へ転送する転送工程と
    を備えることを情報処理装置の制御方法。
  6. 複数の仮想マシンが動作可能な仮想マシン動作環境を有する情報処理装置の制御をコンピュータに実行させるためのプログラムであって、
    当該情報処理装置の通信部を介して前記他の情報処理装置から転送されてきた、該他の情報処理装置の他の仮想マシン動作環境で動作していた仮想マシンを含む、当該情報処理装置の仮想マシン動作環境で動作する仮想マシンについて、仮想マシンを固有に識別するためのIDと、その仮想マシンを実現する仮想ディスクファイルを記憶する当該情報処理装置あるいは前記他の情報処理装置の物理ディスク上での前記仮想ディスクファイルの記憶位置を示すアドレス情報との対応関係を示す対応関係情報をストレージ対応表で管理する管理工程と、
    前記管理工程で管理される前記ストレージ対応表を参照して、アクセス要求を発行した仮想マシンを実現する仮想ディスクファイルに対応するアドレス情報に従って、前記仮想マシンから、前記アドレス情報が示す当該情報処理装置あるいは前記他の情報処理装置の前記物理ディスク上での記憶位置の仮想ディスクファイルへのアクセスを制御する制御工程と
    前記仮想マシンとともに、その仮想マシンに対応する前記ストレージ対応表における、前記ID及び当該情報処理装置を特定する情報を含む前記アドレス情報からなる前記対応関係情報を、前記通信部を介して前記他の情報処理装置へ転送する転送工程と
    をコンピュータに実行させることを特徴とするプログラム。
JP2008040456A 2008-02-21 2008-02-21 情報処理装置及びその制御方法、プログラム Expired - Fee Related JP5089429B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008040456A JP5089429B2 (ja) 2008-02-21 2008-02-21 情報処理装置及びその制御方法、プログラム
US12/369,269 US8230420B2 (en) 2008-02-21 2009-02-11 Apparatus for transferring a virtual machine using stored correspondence information
CN2009101178015A CN101515978B (zh) 2008-02-21 2009-02-23 信息处理装置及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008040456A JP5089429B2 (ja) 2008-02-21 2008-02-21 情報処理装置及びその制御方法、プログラム

Publications (2)

Publication Number Publication Date
JP2009199349A JP2009199349A (ja) 2009-09-03
JP5089429B2 true JP5089429B2 (ja) 2012-12-05

Family

ID=40999639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008040456A Expired - Fee Related JP5089429B2 (ja) 2008-02-21 2008-02-21 情報処理装置及びその制御方法、プログラム

Country Status (3)

Country Link
US (1) US8230420B2 (ja)
JP (1) JP5089429B2 (ja)
CN (1) CN101515978B (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4665040B2 (ja) * 2009-04-28 2011-04-06 株式会社東芝 計算機およびアクセス制御方法
JP4922443B2 (ja) * 2010-08-26 2012-04-25 株式会社東芝 コンピュータシステム、情報処理装置およびセキュリティ保護方法
US9411517B2 (en) * 2010-08-30 2016-08-09 Vmware, Inc. System software interfaces for space-optimized block devices
US9069593B2 (en) * 2011-06-23 2015-06-30 Salesforce.Com, Inc. Systems and methods for deletion of untracked datastore paths
US10108517B1 (en) * 2011-06-27 2018-10-23 EMC IP Holding Company LLC Techniques for data storage systems using virtualized environments
US20130007736A1 (en) * 2011-06-30 2013-01-03 Hiroshi Nakajima Information processing apparatus, method of processing information and storage medium
US9015432B1 (en) * 2011-06-30 2015-04-21 Emc Corporation Establishing a mapping to a virtual disk
WO2013009300A1 (en) * 2011-07-12 2013-01-17 Hewlett-Packard Development Company, L.P. Tracing operations in a cloud system
CN102289513A (zh) * 2011-09-05 2011-12-21 盛乐信息技术(上海)有限公司 获取虚拟机内部文件的方法及系统
JP5733628B2 (ja) * 2011-09-29 2015-06-10 株式会社日立製作所 仮想計算機を制御する計算機装置及び仮想計算機の制御方法
CN102520881B (zh) * 2011-12-02 2015-09-09 中标软件有限公司 一种云计算平台的虚拟机快照管理方法和系统
US9262232B2 (en) * 2012-02-29 2016-02-16 Red Hat, Inc. Priority build execution in a continuous integration system
JP5891900B2 (ja) * 2012-03-29 2016-03-23 富士通株式会社 アクセス制御方法、サーバ装置およびストレージ装置
US9137173B2 (en) * 2012-06-19 2015-09-15 Advanced Micro Devices, Inc. Devices and methods for interconnecting server nodes
JP6070355B2 (ja) * 2013-03-28 2017-02-01 富士通株式会社 仮想マシン制御プログラム,仮想マシン制御方法,仮想マシン制御装置及びクラウドシステム
CN103399496B (zh) * 2013-08-20 2017-03-01 中国能源建设集团广东省电力设计研究院有限公司 智能电网海量实时数据负载仿真测试云平台及其测试方法
JP6310260B2 (ja) * 2014-01-20 2018-04-11 株式会社荏原製作所 基板処理装置内の複数の処理ユニットを調整するための調整装置、および該調整装置を備えた基板処理装置
US10846024B2 (en) 2016-05-16 2020-11-24 Commvault Systems, Inc. Global de-duplication of virtual disks in a storage platform
US10795577B2 (en) * 2016-05-16 2020-10-06 Commvault Systems, Inc. De-duplication of client-side data cache for virtual disks
US10248174B2 (en) 2016-05-24 2019-04-02 Hedvig, Inc. Persistent reservations for virtual disk using multiple targets
US10628199B2 (en) * 2017-09-20 2020-04-21 Rackware, Inc Restoring and powering-off workloads during workflow execution based on policy triggers
US10848468B1 (en) 2018-03-05 2020-11-24 Commvault Systems, Inc. In-flight data encryption/decryption for a distributed storage platform

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03149642A (ja) * 1989-11-07 1991-06-26 Fuji Facom Corp リモート資源定義方式
JP3250345B2 (ja) 1993-10-20 2002-01-28 富士ゼロックス株式会社 プリンタ制御装置および方法
US6698017B1 (en) * 1999-07-16 2004-02-24 Nortel Networks Limited Software migration on an active processing element
JP3933587B2 (ja) * 2003-01-28 2007-06-20 株式会社東芝 計算機システム、計算機装置及びオペレーティングシステムの移送方法
US7373451B2 (en) * 2003-12-08 2008-05-13 The Board Of Trustees Of The Leland Stanford Junior University Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers
US8156490B2 (en) * 2004-05-08 2012-04-10 International Business Machines Corporation Dynamic migration of virtual machine computer programs upon satisfaction of conditions
US7257811B2 (en) * 2004-05-11 2007-08-14 International Business Machines Corporation System, method and program to migrate a virtual machine
US7383405B2 (en) * 2004-06-30 2008-06-03 Microsoft Corporation Systems and methods for voluntary migration of a virtual machine between hosts with common storage connectivity
US8370819B2 (en) * 2005-03-25 2013-02-05 Microsoft Corporation Mechanism to store information describing a virtual machine in a virtual disk image
JP4523921B2 (ja) * 2006-02-24 2010-08-11 三菱電機株式会社 計算機リソース動的制御装置
EP1962192A1 (en) * 2007-02-21 2008-08-27 Deutsche Telekom AG Method and system for the transparent migration of virtual machine storage
WO2008126163A1 (ja) * 2007-03-08 2008-10-23 Fujitsu Limited アクセス権限設定プログラム、方法及び装置
CN100489787C (zh) * 2007-07-10 2009-05-20 北京大学 一种虚拟机的外存在线迁移方法
JP4871850B2 (ja) * 2007-12-04 2012-02-08 株式会社日立製作所 仮想計算機システム及び仮想計算機移行制御方法

Also Published As

Publication number Publication date
CN101515978A (zh) 2009-08-26
US20090217265A1 (en) 2009-08-27
CN101515978B (zh) 2011-06-15
US8230420B2 (en) 2012-07-24
JP2009199349A (ja) 2009-09-03

Similar Documents

Publication Publication Date Title
JP5089429B2 (ja) 情報処理装置及びその制御方法、プログラム
JP5078671B2 (ja) 情報処理装置、情報処理システム及び情報処理方法
JP5213539B2 (ja) 画像処理装置及び画像処理装置のメモリ管理方法
JP4939175B2 (ja) 画像形成装置
JP2007328640A (ja) 画像処理装置およびその制御方法
JP4979564B2 (ja) 情報処理システム、画像入出力装置及びデータ処理方法
JP2007207194A (ja) 印刷装置、外部装置、印刷システム及び印刷装置の制御方法
JP5060241B2 (ja) 情報処理装置及びその制御方法
JP5106082B2 (ja) 印刷システム及び印刷装置及びその印刷制御方法
JP2009073036A (ja) 画像処理システム、記憶媒体、及びプログラム
JP2009145579A (ja) 画像出力装置
JP2006252094A (ja) 画像処理装置
JP2006173843A (ja) 画像情報入出力装置
JP2006197049A (ja) 画像処理装置および画像処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP7455601B2 (ja) 情報処理装置とその制御方法、及びプログラム
JP4401885B2 (ja) 画像処理装置、画像処理装置の制御方法、およびプログラム
US7898683B2 (en) Image processing apparatus, control method for the same, and computer-readable medium storing a computer program for preventing downloading of resources data when a print job exists
JP2006020029A (ja) 画像入出力装置
JP6459570B2 (ja) 画像形成装置及び起動制御方法並びに起動制御プログラム
JP2001345971A (ja) 画像処理装置および画像処理方法および記憶媒体
JP2001092603A (ja) 印刷制御装置および印刷制御方法および記憶媒体
JP2006217093A (ja) 画像処理装置および画像処理装置の制御方法およびプログラムおよび記憶媒体
JP2001285600A (ja) 画像処理装置と該画像処理装置の制御方法
JP2004128912A (ja) 画像出力装置および出力制御方法およびコンピュータが読み取り可能な記憶媒体およびプログラム
JP2009147709A (ja) 画像処理システム、記憶媒体、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120726

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120813

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120911

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150921

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150921

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees