JP5391601B2 - 資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラム - Google Patents

資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラム Download PDF

Info

Publication number
JP5391601B2
JP5391601B2 JP2008187785A JP2008187785A JP5391601B2 JP 5391601 B2 JP5391601 B2 JP 5391601B2 JP 2008187785 A JP2008187785 A JP 2008187785A JP 2008187785 A JP2008187785 A JP 2008187785A JP 5391601 B2 JP5391601 B2 JP 5391601B2
Authority
JP
Japan
Prior art keywords
main memory
information processing
memory content
copy
transfer
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
JP2008187785A
Other languages
English (en)
Other versions
JP2010026814A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008187785A priority Critical patent/JP5391601B2/ja
Priority to US12/483,366 priority patent/US8782235B2/en
Priority to EP09163610A priority patent/EP2146280A3/en
Publication of JP2010026814A publication Critical patent/JP2010026814A/ja
Application granted granted Critical
Publication of JP5391601B2 publication Critical patent/JP5391601B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5022Workload threshold

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、複数の情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラムに関する。
従来、情報処理装置は、自らが有する実装置から複数の仮想装置を導出し、仮想装置毎にハードウェア資源を管理し、応用ソフトウェアを利用することができた。
更に、情報処理装置は、1つの仮想装置に負荷が集中しないよう、1つの仮想装置の資源を他の仮想装置又は他の情報処理装置へ転送する機能を有していた(例えば、特許文献1、特許文献2及び非特許文献1)。図24は従来の資源転送を説明するための図である。従来の資源転送方法は、例えば、移転元となる情報処理装置4が有する主記憶に記憶してある主記憶内容の全てを移転先となる情報処理装置5へ転送することにより、移転元における主記憶の管理及び利用状態を移転先で復元していた。
特開2004−5113号公報 特開平9−26911号公報 C.Clack, K.Fraser, S.Hand, J.G.Hansen, E.Jul, C.Limpach, I.Pratt, A.Warfield, "Live Migration of Virtual Machines", In 2nd USENIX Symposium on Networked Systems, Design and Implementation (NSDI '05), pages 273286, May 2005
しかしながら、従来の資源転送方法は、例えば、移転元となる情報処理装置4が有する主記憶の内容量が大きくなるにつれ、主記憶を含む資源の転送時間が長くなるという問題を有していた。
本発明はかかる事情に鑑みてなされたものであり、複数の情報処理装置のいずれかが移転元及び移転先となって移転元における資源の管理及び利用状態を移転先で復元する場合、移転先となる情報処理装置は、自らが格納する主記憶内容の写しを利用すると共に、利用することができないもののみを移転元となる情報処理装置から受信することにより、移転元における資源の管理及び利用状態を移転先で迅速に復元することができる資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラムを提供することを目的とする。
このシステムは、通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送システムにおいて、前記通信網を介して各情報処理装置に接続された管理装置を備え、各情報処理装置は、自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納する記憶手段と、前記記憶手段が格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合する統合手段と、前記記憶手段が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信する手段とを備え、前記管理装置は、各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を格納する管理手段と、移転元となる情報処理装置及び移転先の候補となる複数の情報処理装置を特定する手段と、前記管理手段に格納された情報を参照し、移転元の情報処理装置に記憶された主記憶内容と一致する主記憶内容が記憶されている数を移転先の候補毎に計数する計数手段と、該計数手段が計数した数に基づき移転先の情報処理装置を決定する手段とを備え、移転元となる情報処理装置は、転送すべき主記憶内容の識別情報を送信する手段を備え、移転先となる情報処理装置は、移転元となる情報処理装置から受信した識別情報と自らの記憶手段が格納する識別情報との関係に基づいて該記憶手段が格納する主記憶内容の写しを利用できるか否かを判定する判定手段と、該判定手段が利用することができないと判定した主記憶内容の識別情報を移転元となる情報処理装置へ送信する手段とを備え、移転元となる情報処理装置は、更に、移転先となる情報処理装置から受信した識別情報が示す主記憶内容の写しを移転先となる情報処理装置へ転送する手段を備え、移転先となる情報処理装置は、更に、移転元となる情報処理装置により転送された主記憶内容の写しと前記判定手段が利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元する手段を備えることを要件とする。
また、この方法は、通信網を介して接続された管理装置及び複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送方法において、各情報処理装置は、自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納し、自らが格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合し、格納した主記憶内容の写し及び対応する識別情報を前記管理装置へ送信し、前記管理装置は、各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を管理手段に格納し、移転元となる情報処理装置及び移転先の候補となる複数の情報処理装置を特定し、前記管理手段に格納した情報を参照し、移転元の情報処理装置に記憶された主記憶内容と一致する主記憶内容が記憶されている数を移転先の候補毎に計数し、計数した数に基づき移転先の情報処理装置を決定し、移転元となる情報処理装置は、転送すべき主記憶内容の識別情報を送信し、移転先となる情報処理装置は、移転元となる情報処理装置から受信した識別情報と自らが格納する識別情報との関係に基づいて自らが格納する主記憶内容の写しを利用できるか否かを判定し、利用することができないと判定した主記憶内容の識別情報を移転元となる情報処理装置へ送信し、移転元となる情報処理装置は、更に、移転先となる情報処理装置から受信した識別情報が示す主記憶内容の写しを移転先となる情報処理装置へ転送し、移転先となる情報処理装置は、更に、移転元となる情報処理装置により転送された主記憶内容の写しと自らが利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元することを要件とする。
また、この装置は、通信網を介して管理装置及び複数の他の情報処理装置を接続してあり、移転先となる他の情報処理装置へ資源を転送する転送部と、移転元となる他の情報管理装置から転送された資源の利用状態を復元させる復元部とを有する情報処理装置であって、前記転送部は、自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納する記憶部と、前記記憶部が格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合する統合部と、前記記憶部が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信する送信部と、転送すべき主記憶内容の識別情報を、前記管理装置に記憶されている前記主記憶内容と一致する他の情報処理装置の主記憶内容が記憶されている数に基づいて前記管理装置により決定された移転先となる他の情報処理装置の復元部へ送信する識別情報送信部と、転送先となる他の情報処理装置の復元部から送信された識別情報を受信し、受信した識別情報が示す主記憶内容の写しを転送先となる他の情報処理装置の復元部へ転送する主記憶内容転送部とを備え、前記復元部は、移転元となる他の情報処理装置の識別情報送信部から識別情報を受信し、受信した識別情報と自らが有する記憶部が格納する識別情報との関係に基づいて、前記記憶部が格納する主記憶内容の写しを利用できるか否かを判定する判定部と、該判定部が利用することができないと判定した主記憶内容の識別情報を移転元となる他の情報処理装置の主記憶内容転送部へ送信する転送要求送信部と、移転元となる他の情報処理装置の主記憶内容転送部から主記憶内容の写しを受信し、受信した主記憶内容の写しと前記判定が利用できると判定した主記憶内容の写しとを用いて移転元となる他の情報処理装置の資源の管理及び利用状態を復元する復元実行部とを備えることを要件とする。
また、このコンピュータプログラムは、コンピュータに、通信網を介して管理装置及び複数の外部装置を接続し、移転先となる外部装置へ資源を転送し、移転元となる外部装置から転送された資源の利用状態を復元させるためのコンピュータプログラムにおいて、自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納させるステップと、格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合させるステップと、格納してある主記憶内容の写し及び対応する識別情報を前記管理装置へ送信させるステップと、転送すべき主記憶内容の識別情報を、前記管理装置に記憶されている前記主記憶内容と一致する外部装置の主記憶内容が記憶されている数に基づいて前記管理装置により決定された移転先となる外部装置へ送信させるステップと、転送先となる外部装置から送信された識別情報を受信し、受信した識別情報が示す主記憶内容の写しを転送先となる外部装置へ転送させるステップと、移転元となる外部装置から識別情報を受信し、受信した識別情報と自らが格納する識別情報との関係に基づいて、自らが格納する主記憶内容の写しを利用できるか否かを判定させるステップと、利用することができないと判定した主記憶内容の識別情報を移転元となる外部装置へ送信させるステップと、移転元となる外部装置から主記憶内容の写しを受信し、受信した主記憶内容の写しと利用できると判定した主記憶内容の写しとを用いて移転元となる外部装置の資源の管理及び利用状態を復元させるステップとをコンピュータに実行させるためのコンピュータプログラムであることを要件とする。
このシステム、方法、装置及びコンピュータプログラムは、各情報処理装置が自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを順次格納することにより、転送すべき資源を分割しておく。また、格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合することにより、同一の主記憶内容は同一の識別情報で管理する。また、移転先となる情報処理装置が自らが格納する主記憶内容の写しを利用して移転元における資源の管理及び利用状態の復元に利用できるか否かを判定し、利用できないと判定した主記憶内容の写しのみを移転先となる情報処理装置から受信することにより、資源の転送時間を短縮化する。
開示するシステム、方法、装置及びコンピュータプログラムは、複数の情報処理装置のいずれかが移転元及び移転先となって移転元における資源の管理及び利用状態を移転先で復元する場合、移転元における資源の管理及び利用状態を円滑に転送して移転先で迅速に復元させることができる。
実施の形態1.
以下、実施の形態1における資源転送システム及び資源転送方法について実施の形態を示す図に基づいて説明する。図1は本発明の一実施例におけるシステムの全体構成を示すブロック図である。
図1に示すとおり、実施の形態1における資源転送システムは、移転元となる情報処理装置1、移転先となる情報処理装置2及びこれらを管理するための管理装置3を含み、各装置は、通信網を介して相互に接続されている。
移転元となる情報処理装置1及び移転先となる情報処理装置2は、自らが有する実装置から複数の仮想装置を実行し、各仮想装置の実行により生じたデータを後述する主記憶に記憶する。移転元となる情報処理装置1及び移転先となる情報処理装置2は、管理装置3の管理の下、主記憶内容に関する情報の統合を適宜行う。また、管理装置3は、資源転送において移転先となる情報処理装置2を選定し、移転先となる情報処理装置2への資源転送を移転元となる情報処理装置1に実行させる。
移転元となる情報処理装置1は、実装置として、CPU10と、所定の処理を実行することにより生じたデータを記憶する主記憶11と、所定の処理をCPU10に実行させるためのプログラム、主記憶内容に関する情報を格納する主記憶情報データベース120及び主記憶内容の写しを格納する主記憶内容写しデータベース121を格納する補助記憶装置12と、通信網に接続するための通信インタフェース13と、入力装置(図示せず。以下同じ。)に接続するための入力インタフェース14と、出力装置(図示せず。以下同じ。)に接続するための出力インタフェース15とを有する。各装置は、通信線16を介して相互に接続されている。なお、主記憶情報データベース120及び主記憶内容写しデータベース121は、主記憶11に置くことも可能である。
補助記憶装置12に記憶してあるプログラムには、仮想化ソフトウェアが含まれており、CPU10に所定の処理を実行させる。CPU10は、仮想化ソフトウェアに従って実装置から複数の仮想装置を実行する。また、補助記憶装置12に記憶してあるプログラムには、複数台分の基本ソフトウェア及び応用ソフトウェアが含まれており、CPU10は、仮想装置毎に基本ソフトウェアを実行してハードウェア資源を管理し、応用ソフトウェアを利用する。尚、資源転送の制御は、後述にて説明する。
CPU10は、上述したプログラムに従って仮想装置制御部101と主記憶情報管理部102という機能を有する。CPU10は、仮想装置制御部101として機能するとき、各仮想装置の実行、停止、資源転送(マイグレーション)の制御を行う。CPU10は、仮想装置を実行する場合、自機の識別子、仮想装置の識別子及び実行通知を管理装置3へ送信する。また、CPU10は、仮想装置を停止する場合、仮想装置に関する情報の削除要求を管理装置3へ送信する。
CPU10は、主記憶情報管理部102として機能するとき、主記憶11の空間を所定単位毎に分割して管理し、各仮想装置を実行することにより生じたデータを分割した空間に順次格納する。CPU10は、論理的に分割された主記憶内容に、主記憶内容を識別するための主記憶識別子を夫々付与し、付与した主記憶識別子をその他の情報に対応付けて主記憶情報データベース120に格納する。また、CPU10は、主記憶内容の写しをその他の情報に対応付けて主記憶内容写しデータベース121に格納する。
主記憶情報データベース120には複数の主記憶情報テーブルT1が格納されている。図2は主記憶情報テーブルT1のフォーマット例を示す概念図である。主記憶情報テーブルT1は、主記憶識別子と、主記憶内容の検索又は検証に用いるハッシュ値と、主記憶内容を更新した更新日時と、主記憶内容が生じた仮想装置の識別子と、主記憶内容が格納されている主記憶11内のアドレスと、所定単位に分割した主記憶11のサイズとを有する。
主記憶内容写しデータベース121には、複数の主記憶内容の写し(以下「主記憶内容の写しD」という。)が格納されている。図3は主記憶内容の写しDのデータ構造を示す概念図である。主記憶内容の写しDは、主記憶識別子と、主記憶アドレスと、主記憶サイズと、主記憶内容と、主記憶内容が仮想装置に参照されている数を計測した参照計数とを有する。
CPU10は、仮想装置で発生する主記憶内容を追加又は更新する都度主記憶情報管理部102として機能し、主記憶情報テーブルT1及び主記憶内容の写しDを追加又は更新し、主記憶情報テーブルT1内データ及び主記憶内容の写しDを管理装置3へ順次送信する。管理装置3は、後述する主記憶内容に関する統合を行い、統合結果を移転元となる情報処理装置1へ送信する。CPU10は、管理装置3から送信された統合結果を受信し、統合結果に従って主記憶内容に関する情報の統合を行う。
移転先となる情報処理装置2は、実装置として、CPU20と、所定の処理を実行することにより生じたデータを記憶する主記憶21と、所定の処理をCPU20に実行させるためのプログラム、主記憶内容に関する情報を格納する主記憶情報データベース220及び主記憶内容の写しを格納する主記憶内容写しデータベース221を格納する補助記憶装置22と、通信網に接続するための通信インタフェース23と、入力装置(図示せず。以下同じ。)に接続するための入力インタフェース24と、出力装置(図示せず。以下同じ。)に接続するための出力インタフェース25とを有する。各装置は、通信線26を介して相互に接続されている。なお、主記憶情報データベース220及び主記憶内容写しデータベース221は、主記憶21に置くことも可能である。
補助記憶装置22に記憶してあるプログラムには、仮想化ソフトウェアが含まれており、CPU20に所定の処理を実行させる。CPU20は、仮想化ソフトウェアに従って上述した実装置から複数の仮想装置を実行する。また、補助記憶装置22に記憶してあるプログラムには、複数台分の基本ソフトウェア及び応用ソフトウェアが含まれており、CPU20は、仮想装置毎に基本ソフトウェアを実行してハードウェア資源を管理し、応用ソフトウェアを利用する。
CPU20は、上述したプログラムに従って仮想装置制御部201と主記憶情報管理部202という機能を有する。CPU20は、仮想装置制御部201として機能するとき、各仮想装置の実行、停止、資源転送(マイグレーション)の制御を行う。CPU20は、仮想装置を実行する場合、自機の識別子、仮想装置の識別子及び実行通知を管理装置3へ送信する。また、CPU20は、仮想装置を停止する場合、仮想装置に関する情報の削除要求を管理装置3へ送信する。尚、資源転送の制御は、後述にて説明する。
CPU20は、主記憶情報管理部202として機能するとき、主記憶21の空間を所定単位毎に分割して管理し、各仮想装置を実行することにより生じたデータを分割した空間に順次格納する。CPU20は、論理的に分割された主記憶内容に、主記憶内容を識別するための主記憶識別子を夫々付与し、付与した主記憶識別子をその他の情報に対応付けて主記憶情報データベース220に格納する。また、CPU20は、主記憶内容の写しをその他の情報に対応付けて主記憶内容写しデータベース221に格納する。
主記憶情報データベース220には複数の主記憶情報テーブルT1が格納されている。尚、主記憶情報テーブルT1は、主記憶情報データベース120に格納されているものと同様であるから、その説明を省略する。
主記憶内容写しデータベース221には、複数の主記憶内容の写し(以下「主記憶内容の写しD」という。)が格納されている。尚、主記憶内容の写しDは、主記憶内容写しデータベース121に格納されているものと同様であるから、その説明を省略する。
CPU20は、仮想装置で発生する主記憶内容を追加又は更新する都度主記憶情報管理部202として機能し、主記憶情報テーブルT1及び主記憶内容の写しDを追加又は更新し、主記憶情報テーブルT1内データ及び主記憶内容の写しDを管理装置3へ順次送信する。管理装置3は、後述する主記憶内容に関する統合を行い、統合結果を移転元となる情報処理装置1へ送信する。CPU20は、管理装置3から送信された統合結果を受信し、統合結果に従って主記憶内容に関する情報の統合を行う。
管理装置3は、CPU30と、所定の処理を実行することにより生じたデータを記憶する主記憶31と、CPU30に所定の処理を実行させるためのプログラム及び主記憶31に記憶する主記憶内容の写しなどを格納する補助記憶装置32と、通信網に接続するための通信インタフェース33と、入力装置に接続するための入力インタフェース34と、出力装置に接続するための出力インタフェース35とを有する。各装置は、通信線36を介して相互に接続されている。
補助記憶装置32には、各仮想装置を管理するための情報処理装置管理データベース320と、仮想装置内の主記憶を管理するための仮想装置管理データベース321と、主記憶内容を管理するための主記憶管理データベース322とが格納されている。
図4は情報処理装置管理データベース320に格納されている情報処理装置管理テーブルT2のフォーマット例を示す概念図である。情報処理装置管理テーブル320には複数の情報処理装置管理テーブルT2が格納されている。情報処理装置管理テーブルT2は、情報処理装置を識別するための情報処理装置識別子と、情報処理装置が有する仮想装置を識別するための仮想装置識別子とを有する。
図5は仮想装置管理データベース321に格納されている仮想装置管理テーブルT3のフォーマット例を示す概念図である。仮想装置管理テーブルT3には、仮想装置識別子と、仮想装置内の主記憶に記憶してある主記憶内容を識別するための主記憶識別子とを有する。
また仮想装置管理データベース321には、各情報処理装置から受信した一又は複数の主記憶情報テーブルT1が格納されている。尚、主記憶情報テーブルT1は、上述した主記憶情報データベース120に格納されている主記憶情報テーブルT1と同様であるから、その格納例の説明を省略する。
図6は主記憶管理データベース322に格納されている識別子管理テーブルT4のフォーマット例を示す概念図である。識別子管理テーブルT4は、仮想装置識別子と、主記憶識別子と、更新日時と、ハッシュ値と、主記憶内容の写しの索引とを有するか(図6(a)参照)、更に情報処理装置識別子を有する(図6(b)参照)。
また主記憶管理データベース322には、各情報処理装置から受信した一又は複数の主記憶内容の写しDが格納されている。尚、主記憶内容の写しDは、上述した主記憶内容写しデータベース121に格納されている主記憶内容の写しDと同様であるから、その格納例の説明を省略する。
CPU30は、プログラムに従って主記憶情報送受信制御部301と、主記憶情報管理部302と、情報処理装置管理部303と、情報処理装置制御部304という機能を有する。
CPU30は、主記憶情報送受信制御部301として機能するとき、各情報処理装置から送信された一又は複数の主記憶情報テーブルT1内データ及び主記憶内容の写しDを受信して補助記憶装置32に格納し、補助記憶装置32から適宜読み出して主記憶情報管理部302に送る。また、CPU30は、後述する主記憶情報管理部302が実行した統合処理の結果を各情報処理装置へ送信する。
CPU30は、主記憶情報管理部302として機能するとき、主記憶情報送受信制御部301から一又は複数の主記憶情報テーブルT1内データ及び主記憶内容の写しDを受け付けて統合処理を実行し、補助記憶装置32内のデータを統合する。統合処理の手順は、後述にて説明する。
CPU30は、情報処理装置管理部303として機能するとき、仮想装置の実行通知を受信した場合に情報処理装置管理テーブルT2を生成し、削除要求を受信した場合に情報処理管理テーブルT2を削除する。また、CPU30は、移転先となる情報処理装置2の決定処理を実行する。移転先の決定処理の手順は、後述にて説明する。
CPU30は、情報処理装置制御部304として機能するとき、情報処理装置管理部303として決定した移転先となる情報処理装置2に対して資源の確保要求、仮想装置の実行指示、資源転送指示及び仮想装置の停止指示を送信し、移転元となる情報処理装置1に対して資源転送指示を送信する。
ここでCPU30が実行する統合処理の手順について説明する。図7は本発明の一実施例における統合処理の手順を示すフローチャートである。管理装置3のCPU30は、各情報処理装置から送信された一又は複数の主記憶内容の写しD及び主記憶情報テーブルT1内データを受信する(S101)。
CPU30は、受信した主記憶内容の写しDに索引を付与して主記憶管理データベース322へ格納し、受信した主記憶情報テーブルT1内データを仮想装置管理データベース321へ格納する(S102)。CPU30は、仮想装置管理データベース321において、受信した主記憶情報テーブルT1内の仮想装置識別子と同一の仮想装置識別子を含む主記憶情報テーブルT1が存在する場合はこれを更新する。CPU30は、受信した主記憶情報テーブルT1内の主記憶識別子及び仮想装置識別子に基づいて仮想装置管理テーブルT3を生成する。CPU30は、受信した主記憶情報テーブルT1内の仮想装置識別子、主記憶識別子、更新日時及びハッシュ値並びに主記憶内容の写しDの索引に基づいて識別子管理テーブルT4を生成する。
CPU30は、格納通知を送信元となる情報処理装置へ送信する(S103)。送信元となる情報処理装置は、格納通知を受信し、管理装置3が実行する統合処理の結果を待つことなく、次の処理を滞りなく実行する。
CPU30は、更新前の主記憶情報テーブルT1内データを仮想装置管理データベース321から削除する(S104)。CPU30は、更新前の主記憶内容の写しDがいずれかの仮想装置により参照されているか否か、即ち、参照計数が0であるか否かを判定し(S105)、参照計数が0でないと判定した場合(S105でNO)、更新前の主記憶内容の写しDを削除せずにステップS107へ進む。
一方、CPU30は、参照計数が0であると判定した場合(S105でYES)、更新前の主記憶内容の写しDが参照されていないと判断し、更新前の主記憶内容の写しDを主記憶管理データベース322から削除する(S106)。
CPU30は、参照計数が0でないと判定した場合(S105でNOを参照)、又は更新前の主記憶内容の写しDを削除した場合(S106参照)、統合判定処理を実行し(S107)、統合結果を各情報処理装置へ送信する(S108)。CPU30は、処理を終了する。
ステップS107の統合判定処理の手順について説明する。図8は本発明の一実施例における統合判定処理の手順を示すフローチャートである。管理装置3のCPU30は、主記憶管理データベース322において、生成した識別子管理テーブルT4内のハッシュ値と同一のハッシュ値を含む既登録の識別子管理テーブルT4が存在するか否かを判定する(S201)。その結果、CPU30は、同一のハッシュ値を含む既登録の識別子管理テーブルT4が存在していないと判定した場合(S201でNO)、ステップS206へ進む。
一方、CPU30は、同一のハッシュ値を含む既登録の識別子管理テーブルT4が存在すると判定した場合(S201でYES)、既登録の識別子管理テーブルT4内の主記憶内容写し索引が示す既登録の主記憶内容の写しDが、受信した主記憶内容の写しDと同一であるか否かを判定する(S202)。その結果、CPU30は、受信した主記憶内容の写しDと同一でないと判定した場合(S202でNO)、ステップS206へ進む。
一方、CPU30は、受信した主記憶内容の写しDと同一であると判定した場合(S202でYES)、生成した識別子管理テーブルT4内の主記憶識別子、ハッシュ値、更新日時及び主記憶内容写し索引を、既登録の識別子管理テーブルT4内のそれに更新する(S203)。CPU30は、既登録の主記憶内容の写しDを残し、受信した主記憶内容の写しDを主記憶管理データベース322から削除する(S204)。CPU30は、既登録の主記憶内容の写しD内の参照計数を1つ増やし(S205)、ステップS206へ進む。
CPU30は、同一のハッシュ値を含む既登録の識別子管理テーブルT4が存在していないと判定した場合(S201でNOを参照)、受信した主記憶内容の写しDと同一でないと判定した場合(S202でNOを参照)又は既登録の主記憶内容の写しD内の参照計数を1つ増やした場合(S205を参照)、生成した識別子管理テーブルT4の全てについて処理を行ったか否かを判定する(S206)。その結果、CPU30は、生成した識別子管理テーブルT4のいずれかについて処理をしていないと判定した場合(S206でNO)、ステップS201へ戻り、未処理の識別子管理テーブルT4について処理を繰り返す。
一方、CPU30は、生成した識別子管理テーブルT4の全てについて処理を行ったと判定した場合(S206でYES)、統合結果を生成し(S207)、次回処理の要求があるまで待機する。
移転元となる情報処理装置1又は移転先となる情報処理装置2は、管理装置3から送信された統合結果を受信し、統合結果に従って、主記憶内容に関する情報の統合を行う。主記憶内容に関する情報の統合は、追加又は更新された主記憶情報テーブルT1内の主記憶識別子、ハッシュ値及び更新日時を、管理装置3が格納する識別子管理テーブルの内容に更新する。移転元となる情報処理装置1又は移転先となる情報処理装置2は、更新した主記憶情報テーブルT1を管理装置3へ送信する。
管理装置3のCPU30は、情報処理装置から主記憶情報テーブルT1を受信したとき、受信した主記憶情報テーブルT1に仮想装置管理データベース321内の主記憶情報テーブルT1を更新する。
以上、本発明における資源転送システムは、移転元となる情報処理装置1及び移転先となる情報処理装置2に跨って主記憶内容に関する情報が統合されることにより、同一の主記憶内容の写しDが各情報処理装置の間で別内容と扱われることを回避でき、各情報処理装置に跨って資源転送を円滑に行うことができる。また、実施の形態1における資源転送システムは、統合された情報を用いて、移転先となる情報処理装置2を選定する機能を有する。
図9は本発明の一実施例における移転先決定処理の手順を示すフローチャートである。移転元となる情報処理装置1は、資源転送の準備段階において、資源転送すべき仮想装置の識別子を管理装置3へ送信する。管理装置3のCPU30は、受信した仮想装置識別子を含む主記憶情報テーブルT1を仮想装置管理データベース321から抽出する(S301)。抽出した仮想装置管理データベース321は、移転元となる情報処理装置1が格納する主記憶内容に関する統合状態を示している。
CPU30は、移転先候補となる情報処理装置の識別子を情報処理装置管理テーブルT2から抽出し(S302)、移転先候補が存在するか否かを判定する(S303)。その結果、CPU30は、移転先候補が存在してしないと判定した場合(S303でNO)、ステップS309へ進む。
一方、CPU30は、移転先候補が存在すると判定した場合(S303でYES)、移転先候補となる情報処理装置が有する仮想装置の識別子の全てを情報処理装置管理テーブルT2から抽出し(S304)、仮想装置が存在するか否かを判定する(S305)。その結果、CPU30は、仮想装置が存在していないと判定した場合(S305でNO)、ステップS308へ進む。
一方、CPU30は、仮想装置が存在すると判定した場合(S305でYES)、仮想装置の識別子を含む主記憶情報テーブルT1を仮想装置管理データベース321から抽出する(S306)。CPU30は、ステップS301で抽出した主記憶情報テーブルT1内データと、ステップS306で抽出した主記憶情報テーブルT1内データとが一致するか否かを判定し、データの一致数を計数する(S307)。ここで一致するとは、例えば、データ内の主記憶識別子と更新日時が同一であることをいう。CPU30は、ステップS304へ戻り、移転候補となる情報処理装置が有する、次の仮想装置について処理を繰り返す。
CPU30は、全ての仮想装置についての処理後、仮想装置が存在していないと判定した場合(S305でNOを参照)、計数した一致数を主記憶31に記憶し(S308)、ステップS302へ戻り、次の移転先候補となる情報処理装置について処理を繰り返す。
CPU30は、全ての移転先候補についての処理後、移転先候補が存在していないと判定した場合(S303でNOを参照)、主記憶31に記憶してある一致数のうち、最多の一致数を有する情報処理装置を移転先に決定する(S309)。CPU30は、決定した情報処理装置の識別子を情報処理装置管理テーブルT2から抽出する。
CPU30は、仮想装置を実行するための資源確保の要求を、抽出した情報処理装置識別子が示す移転先となる情報処理装置2に送信する(S310)。
移転先となる情報処理装置2のCPU20は、管理装置3から送信された資源確保要求を受信したとき、仮想装置の資源を確保できるか否かを判定し、確保できないと判定した場合、確保不可の通知を管理装置3へ送信する。一方、CPU20は、確保できると判定した場合、確保通知を管理装置3へ送信する。
実施の形態1における資源転送システムは、転送すべき主記憶内容の写しDを最も多く有する情報処理装置を最適な移転先として選定することにより、選定された移転先となる情報処理装置2へ移転元となる情報処理装置1の資源を円滑に転送して移転元の資源の管理及び利用状態を移転先で迅速に復元することができる。
図10は本発明の一実施例における資源転送処理の手順を示すフローチャートである。管理装置3は資源転送の指示を移転元となる情報処理装置1へ送信する。資源転送の指示には、上述した移転先決定処理により決定された移転先となる情報処理装置2の識別子が含まれている。移転元となる情報処理装置1は、管理装置3から受信した資源転送の指示に従って転送すべき一又は複数の主記憶情報テーブルT1内データを移転先となる情報処理装置2へ送信する。
移転先となる情報処理装置2のCPU20は、移転元となる情報処理装置1から送信された一又は複数の主記憶情報テーブルT1内データを受信し(S401)、自機が有する主記憶情報データベース220から主記憶情報テーブルT1内データを読み出す(S402)。
CPU20は、受信した主記憶情報テーブルT1内データと自機が有する主記憶情報テーブルT1内データとが一致するか否かを判定する(S403)。ここでデータが一致するとは、自機が有する主記憶内容の写しDを利用することができるという意味であり、例えば、データ内の主記憶識別子と更新日時が同一の場合に相当する。その結果、CPU20は、データが一致すると判定した場合(S403でYES)、一致する主記憶情報テーブルT1内データに対応する主記憶内容の写しDを主記憶内容写しデータベース221から抽出し(S404)、ステップS407へ進む。
一方、CPU20は、データが一致していないと判定した場合(S403でNO)、不一致の主記憶情報テーブルT1内データを移転元となる情報処理装置1へ送信する(S405)。移転元となる情報処理装置1のCPU10は、不一致の主記憶情報テーブルT1内データを受信したとき、対応する主記憶内容の写しDを自機が有する主記憶内容写しデータベース121から抽出して移転先となる情報処理装置2へ送信する。移転先となる情報処理装置2のCPU20は、対応する主記憶内容の写しDを受信し(S406)、ステップS407へ進む。
CPU20は、自機が有する主記憶内容写しデータベース221から主記憶内容の写しDを抽出するか(S404参照)、又は移転元となる情報処理装置1から送信された主記憶内容の写しDを受信した場合(S406参照)、移転元となる情報処理装置1から受信した主記憶情報テーブルT1内データの全てについて処理を行ったか否かを判定する(S407)。その結果、CPU20は、主記憶情報テーブル内データの全てについて処理を行っていないと判定した場合(S407でNO)、ステップS403へ戻り、移転元となる情報処理装置1から受信した、次の主記憶情報テーブルT1内データについて処理を繰り返す。
一方、CPU20は、主記憶情報テーブル内データの全てについて処理を行ったと判定した場合(S407でYES)、移転元となる情報処理装置1から送信されたその他の資源を受信し(S408)、移転元における資源の管理及び利用状態を復元する(S409)。CPU20は、復元した資源の管理及び利用状態を、新たに実行する仮想装置に実装し(S410)、資源転送処理を終了する。
実施の形態1における資源転送システムは、移転先が有する主記憶内容の写しDを利用して資源の管理及び利用状態の復元を試み、移転先が有していない主記憶内容の写しDのみを移転元から移転先へ転送することにより、資源の管理及び利用状態の復元に必要な主記憶内容の写しDの全てを移転元から移転先へ転送する場合に比して円滑且つ迅速に資源転送する。
最後に主記憶内容に関する情報の統合及び資源転送方法の一例を示す。図11は本発明の一実施例における主記憶内容に関する情報の統合及び転送を説明する図である。図11のとおり、移転元となる情報処理装置1は、第1の仮想装置において、主記憶内容「0000」、「0001」、「0010」及び「0011」を格納し、主記憶識別子「0」、「1」、「2」及び「3」を夫々付与している。
移転先となる情報処理装置2は、第3の仮想装置を実行して主記憶内容「0000」、「0001」、「0010」及び「0011」を格納する場合、当初、主記憶識別子「0」、「1」、「4」及び「5」を夫々付与するが、管理装置3によって主記憶内容「0011」の主記憶識別子を「5」から「3」へ統合される。
移転元となる情報処理装置1は、第2の仮想装置を実行して主記憶内容「0000」、「0001」、「0010」及び「0100」を格納する場合、当初、主記憶識別子「0」、「1」、「2」及び「6」を夫々付与するが、管理装置3によって主記憶内容「0100」の主記憶識別子を「6」から「4」へ統合される。
ここで管理装置3は、第1の仮想装置の資源を転送させるとき、第1の仮想装置における主記憶識別子「0」、「1」及び「3」に対応する主記憶内容が移転先となる情報処理装置2に格納されているので、これを転送させず、第1の仮想装置における主記憶識別子「2」に対応する主記憶内容「0010」が移転先となる情報処理装置2には格納されていないので、これのみを転送させる。以上、実施の形態1について説明した。
実施の形態2.
上述した実施の形態1にあっては、主記憶内容の更新が頻繁に発生する場合、各情報処理装置から管理装置3への接続回数が増大し、管理装置3の統合処理の実行回数が増大する。そこで、実施の形態1における資源転送システムは、更に、主記憶内容の更新が頻繁に発生する場合、該当する主記憶内容に関する情報を管理装置3が管理しない機能を有してもよい。かかる機能を有するときの実施例を実施の形態2として説明する。
図12は本発明の一実施例におけるシステムの全体構成を示すブロック図である。図12に示すとおり、実施の形態2における資源転送システムは、移転元となる情報処理装置1、移転先となる情報処理装置2及びこれらを管理するための管理装置3を含み、各装置は、通信網を介して相互に接続されている。
移転元となる情報処理装置1及び移転先となる情報処理装置2は、自らが有する実装置から複数の仮想装置を実行し、各仮想装置の実行により生じたデータを主記憶に記憶する。移転元となる情報処理装置1及び移転先となる情報処理装置2は、管理装置3の管理の下、主記憶内容に関する情報の統合を適宜行う。また、管理装置3は、資源転送において移転先となる情報処理装置2を選定し、移転先となる情報処理装置2へ資源転送をさせる。
更に移転元となる情報処理装置1及び移転先となる情報処理装置2は、主記憶内容を更新する都度更新頻度を計数し、計数した更新頻度が所定閾値を超えた場合、自機が有する主記憶内容に関する情報を管理対象から外すように管理装置3に要求する。
移転元となる情報処理装置1は、上述した実施の形態1における移転元となる情報処理装置1と同様の実装置を有し、更に補助記憶装置12内に更新頻度に関する情報を格納する更新頻度データベース122を有する。
更新頻度データベース122には複数の更新頻度テーブルT5が格納されている。図13は更新頻度データベース122に格納されている更新頻度テーブルT5のフォーマット例を示す概念図である。更新頻度テーブルT5は、主記憶識別子と、主記憶内容の更新頻度と、主記憶内容に関する情報を管理対象外とするか否かを示す対象外判定変数とを有する。
実装置の1つであるCPU10は、上述した実施の形態1における移転元となる情報処理装置1と同様の機能を有する。CPU10は、更に、主記憶内容を更新する都度主記憶情報管理部102として機能し、更新頻度を計数して更新頻度データベース122に格納する。CPU10は、計数した頻度が所定の閾値を超えると判定した場合、自機が有する主記憶内容に関する情報を管理対象から外すように管理装置3へ削除要求を送信する。
移転先となる情報処理装置2は、上述した実施の形態1における移転先となる情報処理装置2と同様の実装置を有し、更に補助記憶装置22内に更新頻度に関する情報を格納する更新頻度データベース222を有する。
更新頻度データベース222には複数の更新頻度テーブルT5が格納されている。尚、更新頻度テーブルT5のフォーマット例は、更新頻度データベース122に格納されている更新頻度テーブルT5と同様であるので、その説明を省略する。
実装置の1つであるCPU20は、上述した実施の形態1における移転先となる情報処理装置2と同様の機能を有する。更にCPU20は、主記憶内容を更新する都度主記憶情報管理部202として機能し、更新頻度を計数して更新頻度データベース222に格納する。CPU20は、計数した更新頻度が所定の閾値を超えると判定した場合、自機が有する主記憶内容に関する情報を管理対象から外すように管理装置3へ削除要求を送信する。
管理装置3は、上述した実施の形態1における管理装置3と同様の実装置を有する。実装置の1つであるCPU30は、上述した実施の形態1における管理装置3のCPU30と同様の機能を有し、更に各情報処理装置から削除要求を受信した場合、送信元となる情報処理装置についての主記憶内容に関する情報を削除する。
このように移転元となる情報処理装置1及び移転先となる情報処理装置2は、仮想装置で発生する主記憶内容を更新した場合、主記憶情報テーブルT1内データ及び主記憶内容の写しDを管理装置3へ送信する前に、主記憶内容の更新頻度に応じて、主記憶内容に関する情報を管理装置3の管理対象外とするか否かを判定する処理を実行する。図14は本発明の一実施例における管理対象外決定処理の手順を示すフローチャートである。以下、移転元となる情報処理装置1が実行する管理対象外処理を一例として説明する。
移転元となる情報処理装置1のCPU10は、更新頻度データベース122にアクセスし、更新した主記憶内容の主記憶識別子に対応する対象外判定変数が「真」になっているか否かを判定する(S501)。その結果、CPU10は、対象外判定変数が「真」になっていると判定した場合(S501でYES)、既に管理対象外になっていると判断して管理対象外決定処理を終了する。
一方、CPU10は、対象外判定変数が「真」になっていないと判定した場合(S501でNO)、主記憶情報テーブルT1において、更新した主記憶内容の主記憶識別子に対応する他の仮想装置が存在するか否かを判定する(S502)。その結果、CPU10は、他の仮想装置が存在していないと判定した場合(S502でNO)、更新した主記憶情報テーブルT1内の更新日時を更新し(S503)、ステップS505へ進む。
一方、CPU10は、他の仮想装置が存在すると判定した場合(S502でYES)、更新した主記憶内容の写しに新たな主記憶識別子を付与し(S504)、ステップS505へ進む。
CPU10は、更新日時を更新した場合(S503参照)、又は新たな主記憶識別子を付与した場合(S504参照)、更新した更新日時又は新たに付与した主記憶識別子を管理装置3へ送信する(S505)。管理装置3のCPU30は、受信した更新日時及び主記憶識別子に基づいて、主記憶情報テーブルT1、主記憶内容の写しD、仮想装置管理テーブルT3及び識別子管理テーブルT4を更新する。
CPU10は、更新頻度を計数する(S506)。ここでいう更新頻度とは、例えば、同一の主記憶識別子が示す主記憶内容を更新した回数をいう。CPU10は、計数した更新頻度が予め設定してある第1閾値を超えるか否かを判定し(S507)、計数した更新頻度が第1閾値以下であると判定した場合(S507でNO)、管理対象外決定処理を終了する。CPU10は、更新した主記憶情報テーブルT1内データ及び主記憶内容の写しDを管理装置3へ送信する。
一方、CPU10は、計数した更新頻度が第1閾値を超えると判定した場合(S507でYES)、更新頻度テーブルT5内の更新頻度を計数した更新頻度に更新し、更新頻度テーブルT5内の対象外判定変数を「真」に更新する(S508)。CPU10は、主記憶情報テーブルT1、主記憶内容の写しD、情報処理装置管理テーブルT2、仮想装置管理テーブルT3及び識別子管理テーブルT4を削除するため、削除要求を管理装置3へ送信する(S509)。CPU10は、管理対象外決定処理を終了する。CPU10は、主記憶情報テーブルT1内データ及び主記憶内容の写しDを管理装置3へ送信しない。
尚、移転元となる情報処理装置1、移転先となる情報処理装置2及び管理装置3の構成及び作用、並びに実行する処理の手順については、上述した実施の形態1と同様であるので、対応する箇所には同一の符号を付してその説明を省略する。
実施の形態2における資源転送システムは、いずれかの情報処理装置において主記憶内容の更新が頻繁に発生する場合、該当する主記憶内容に関する情報を管理装置3が管理しないようにでき、管理装置3の負担及び通信網を移動する情報の増大を抑制することができる。以上、実施の形態2について説明した。
実施の形態3.
上述した実施の形態2にあっては、主記憶内容の更新頻度が所定の閾値を超える場合、この主記憶内容を管理装置3の管理対象とする一例を説明した。しかし、開示の資源転送システムは、これに限定されるものでなく、例えば、各情報処理装置、管理装置3及び通信網にかかる負荷を検出し、検出した負荷に応じて、負荷の原因となる主記憶内容に関する情報を管理装置3が管理しない機能を有してもよい。そこで、実施の形態3では、かかる機能を有するときの実施例を説明する。
図15は本発明の一実施例におけるシステムの全体構成を示すブロック図である。図15に示すとおり、実施の形態3における資源転送システムは、移転元となる情報処理装置1、移転先となる情報処理装置2及びこれらを管理するための管理装置3を含み、各装置は、通信網を介して相互に接続されている。
移転元となる情報処理装置1及び移転先となる情報処理装置2は、自らが有する実装置から複数の仮想装置を実行し、各仮想装置の実行により生じたデータを主記憶に記憶する。移転元となる情報処理装置1及び移転先となる情報処理装置2は、管理装置3の管理の下、主記憶内容に関する情報の統合を適宜行う。また、管理装置3は、資源転送において移転先となる情報処理装置2を選定し、選定した移転先となる情報処理装置2へ資源転送させる。
更に移転元となる情報処理装置1、移転先となる情報処理装置2及び管理装置3は、自機及び通信網にかかる負荷を測定し、測定した負荷が所定閾値を超えた場合、負荷の原因となる主記憶内容に関する情報を管理装置3の管理から外すように管理装置3に要求する。
移転元となる情報処理装置1は、上述した実施の形態1における移転元となる情報処理装置1と同様の実装置を有し、更に管理対象外となる優劣を示す優先度を格納する優先度情報データベース123を補助記憶装置12に有し、自機及び通信網にかかる負荷を測定する負荷測定部17を有する。
優先度情報データベース123には複数の優先度情報テーブルT6が格納されている。図16は優先度情報データベース123に格納されている優先度情報テーブルT6のフォーマット例を示す概念図である。優先度情報テーブルT6は、主記憶識別子と、予め設定された優先度と、主記憶内容に関する情報を管理装置3の管理から外すか否かを示す対象外判定変数とを有する。尚、優先度の設定方法については、後述にて説明する。
負荷測定部17は、例えば、自機のCPU10及び通信インタフェース13にかかる負荷を測定し、測定した負荷の程度と、補助記憶装置12に記憶してある負荷対照表(図示せず)とに基づいて第2閾値を設定する。負荷対照表は、例えば、負荷100%のときに最優先とし、負荷0%のときに最下位とするなど、負荷が高いほど第2閾値を上げ、負荷が低いほど第2閾値を下げるように設定されている。
実装置の1つであるCPU10は、上述した実施の形態1における移転元となる情報処理装置1のCPU10と同様の機能を有する。CPU10は、更に、主記憶情報管理部102として機能するとき、優先度情報テーブルT6内の優先度を設定する。CPU10は、例えば、主記憶情報テーブルT1にアクセスし、主記憶識別子毎に対応する仮想装置の数を計数する。CPU10は、計数した仮想装置数と補助記憶装置12に記憶してある優先度対照表(図示せず)とに基づいて優先度を設定する。優先度対照表は、例えば、参照する仮想装置の数が多いほど主記憶識別子の優先度の上位とし、参照する仮想装置の数が少ないほど主記憶識別子の優先度を下位となるように設定する。
移転先となる情報処理装置2は、上述した実施の形態1における移転先となる情報処理装置2と同様の実装置を有する。移転先となる情報処理装置2は、更に、管理対象外となる優劣を示す優先度を格納する優先度情報データベース223を補助記憶装置22に有し、自機及び通信網にかかる負荷を測定する負荷測定部27を有する。
優先度情報データベース223には複数の優先度情報テーブルT6が格納されている。尚、優先度情報テーブルT6のフォーマット例は、優先度情報データベース123に格納されている優先度情報テーブルT6と同様であるので、その説明を省略する。
負荷測定部27は、例えば、自機のCPU20及び通信インタフェース23にかかる負荷を測定し、測定した負荷の程度と、補助記憶装置22に記憶してある負荷対照表とに基づいて第2閾値を設定する。負荷対照表は、例えば、負荷100%のときに最優先とし、負荷0%のときに最下位とするなど、負荷が高いほど第2閾値を上げ、負荷が低いほど第2閾値を下げるように設定されている。
実装置の1つであるCPU20は、上述した実施の形態1における移転先となる情報処理装置2のCPU20と同様の機能を有する。CPU20は、更に、主記憶情報管理部202として機能するとき、優先度情報テーブルT6内の優先度を設定する。CPU20は、例えば、主記憶情報テーブルT1にアクセスし、主記憶識別子毎に対応する仮想装置の数を計数する。CPU20は、計数した仮想装置数と補助記憶装置22に記憶してある優先度対照表とに基づいて優先度を設定する。優先度対照表は、例えば、参照する仮想装置の数が多いほど主記憶識別子の優先度の上位とし、参照する仮想装置の数が少ないほど主記憶識別子の優先度を下位となるように設定する。
管理装置3は、上述した実施の形態1における管理装置3と同様の実装置を有し、更に自機及び通信網にかかる負荷を測定する負荷測定部37を有する。実装置の1つであるCPU30は、上述した実施の形態1における管理装置3のCPU30と同様の機能を有し、更に各情報処理装置から削除要求を受信した場合、送信元となる情報処理装置についての主記憶内容に関する情報を削除する。
このように移転元となる情報処理装置1及び移転先となる情報処理装置2は、仮想装置で発生する主記憶内容を更新した場合、主記憶情報テーブルT1内データ及び主記憶内容の写しDを管理装置3へ送信する前に、自機及び通信網にかかる負担を計測し、負荷の程度に応じて負荷の原因となる主記憶内容に関する情報を管理装置3の管理対象外とするか否かを判定する処理を実行する。図17は本発明の一実施例における管理対象外決定処理の手順を示すフローチャートである。以下、移転先となる情報処理装置1が実行する管理対象外決定処理の手順を一例として説明する。
移転元となる情報処理装置1のCPU10は、優先度情報テーブルT6にアクセスし、更新した主記憶内容の主記憶識別子に対応する対象外判定変数が「真」になっているか否かを判定する(S601)。その結果、CPU10は、対象外判定変数が「真」になっていると判定した場合(S601でYES)、負荷測定部17から第2閾値を取得し(S602)、「真」の対象外判定変数に対応する優先度が第2閾値を超えるか否かを判定し(S603)、優先度が第2閾値以下であると判定した場合(S603でNO)、既に管理対象外になっていると判断して管理対象外決定処理を終了する。
一方、CPU10は、優先度が第2閾値を超えると判定した場合(S603でYES)、「真」の対象外判定変数を「偽」に更新し(S604)、ステップS605へ進む。CPU10は、自機及び通信網への負担が軽微であると判断する。
一方、CPU10は、対象外判定変数が「真」になっていないと判定した場合(S601でNO)、ステップS605へ進む。
CPU10は、対象外判定変数を「偽」に変更した場合(S604参照)、又は対象外判定変数が「真」になっていないと判定した場合(S601でNOを参照)、主記憶情報テーブルT1において、更新した主記憶内容の主記憶識別子に対応する他の仮想装置が存在するか否かを判定する(S605)。その結果、CPU10は、他の仮想装置が存在していないと判定した場合(S605でNO)、更新した主記憶情報テーブルT1内の更新日時を更新し(S606)、ステップS608へ進む。
一方、CPU10は、他の仮想装置が存在すると判定した場合(S605でYES)、更新された主記憶内容に新たな主記憶識別子を付与し(S607)、ステップS608へ進む。
CPU10は、更新日時を更新した場合(S606参照)、又は新たな主記憶識別子を付与した場合(S607参照)、更新した更新日時又は新たに付与した主記憶識別子を管理装置3へ送信する(S608)。管理装置3のCPU30は、受信した更新日時及び主記憶識別子に基づいて、主記憶情報テーブルT1、主記憶内容の写しD、仮想装置管理テーブルT3及び識別子管理テーブルT4を更新する。
CPU10は、負荷測定部17から第2閾値を取得し(S609)、ステップS601で判定された「真」以外の対象外判定変数に対応する優先度が第2閾値を超えるか否かを判定する(S610)。その結果、CPU10は、優先度が第2閾値以下であると判定した場合(S610でNO)、管理対象外決定処理を終了する。
一方、CPU10は、優先度が第2閾値を超えると判定した場合(S610でYES)、ステップS601で判定された「真」以外の対象外判定変数を「真」に更新する(S611)。CPU10は、主記憶情報テーブルT1、主記憶内容の写しD、情報処理装置管理テーブルT2、仮想装置管理テーブルT3及び識別子管理テーブルT4を削除するため、削除要求を管理装置3へ送信する(S612)。CPU10は、管理対象外決定処理を終了する。CPU10は、主記憶情報テーブルT1内データ及び主記憶内容の写しDを管理装置3へ送信しない。
尚、移転元となる情報処理装置1、移転先となる情報処理装置2及び管理装置3の構成及び作用、並びに実行する処理の手順については、上述した実施の形態1と同様であるので、対応する箇所に同一の符号を付してその説明を省略する。
実施の形態3における資源転送システムは、各装置及び通信網に多大な負担がかかる場合、負担の原因となる主記憶内容に関する情報を管理装置3が管理しないようにでき、各装置の負担及び通信網を移動する情報量の増大を抑制することができる。以上、実施の形態3について説明した。
実施の形態4.
上述した実施の形態1乃至3にあっては、管理装置3が主記憶内容に関する情報を統合する一例を説明した。しかし、開示の資源転送システムは、例えば、管理装置3が主記憶内容に関する情報を統合し、統合結果を纏めた変換表を作成する機能を有してもよい。実施の形態4では、かかる機能を有するときの実施例を説明する。
図18は本発明の一実施例におけるシステムの全体構成を示すブロック図である。図18に示すとおり、実施の形態4における資源転送システムは、移転元となる情報処理装置1、移転先となる情報処理装置2及びこれらを管理するための管理装置3を含み、各装置は、通信網を介して相互の接続されている。
移転元となる情報処理装置1及び移転先となる情報処理装置2は、自らが有する実装置から複数の仮想装置を実行し、各仮想装置の実行により生じたデータを主記憶に記憶する。管理装置3は、移転元となる情報処理装置1及び移転先となる情報処理装置2が格納する主記憶内容に関する情報を統合して変換表を作成する。管理装置3は、作成した変換表に基づいて移転先を選定する。移転元となる情報処理装置1及び移転先となる情報処理装置2は、管理装置3が作成した変換表に従って資源転送を行う。
移転元となる情報処理装置1は、上述した実施の形態1における移転元となる情報処理装置1と同様の実装置を有する。実装置の1つであるCPU10は、上述した実施の形態1における移転元となる情報処理装置1のCPU10と同様の機能を有する。
移転先となる情報処理装置2は、上述した実施の形態1における移転先となる情報処理装置2と同様の実装置を有する。実装置の1つであるCPU20は、上述した実施の形態1における移転先となる情報処理装置2のCPU20と同様の機能を有する。
管理装置3は、上述した実施の形態1における管理装置3と同様の実装置を有し、更に補助記憶装置32内に変換表を格納する変換表データベース323を有する。
変換表データベース323には複数の変換表(以下「変換表T7」という。)が格納されている。図19は変換表データベース323に格納されている変換表T7のフォーマット例を示す概念図である。変換表T7は、情報処理装置毎に生成され、自機が格納する主記憶内容に関する情報と他機が格納する主記憶内容に関する情報との対応関係を示す。自機が格納する主記憶内容に関する情報には、主記憶識別子と、更新日時とが含まれている。他機が格納する主記憶内容に関する情報には、他機となる情報処理装置の識別子と、他機が格納する主記憶内容の識別子と、更新日時とが含まれている。
実装置の1つであるCPU30は、上述した実施の形態1における管理装置3のCPU30と同様の機能を有する。更にCPU30は、主記憶情報管理部302として主記憶情報テーブルT1内データ及び主記憶内容の写しDの写しの統合処理を実行したとき、統合処理を纏めた変換表T7を作成し、作成した変換表T7を変換表データベース323に格納する。
ここでCPU30が実行する統合処理の手順について説明する。図20は本発明の一実施例における統合処理の手順を示すフローチャートである。管理装置3のCPU30は、主記憶情報管理部302として機能するとき、各情報処理装置ら送信された一又は複数の主記憶内容の写しD及び主記憶情報テーブルT1内データを受信する(S701)。
CPU30は、受信した主記憶内容の写しDに索引を付与して主記憶管理データベース322へ格納し、受信した主記憶情報テーブルT1内データを仮想装置管理データベース321へ格納する(S702)。CPU30は、仮想装置管理データベース321において、受信した主記憶情報テーブルT1内の仮想装置識別子と同一の仮想装置識別子を含む主記憶情報テーブルT1が存在する場合をこれを更新する。CPU30は、受信した主記憶情報テーブルT1内の主記憶識別子及び仮想装置識別子に基づいて仮想装置管理テーブルT3を生成する。CPU30は、受信した主記憶情報テーブルT1内の仮想装置識別子、主記憶識別子、更新日時及びハッシュ値並びに主記憶内容の写しDの索引に基づいて識別子管理テーブルT4を生成する。
CPU30は、格納通知を送信元となる情報処理装置へ送信する(S703)。情報処理装置は、格納通知を受信することにより、管理装置3が実行する統合処理の結果を受信することなく次の処理を実行する。
CPU30は、更新前の主記憶情報テーブルT1内データを仮想装置管理データベース321から削除する(S704)。CPU30は、更新前の主記憶内容の写しDがいずれかの仮想装置により参照されているか否か、即ち、参照計数が0であるか否かを判定し(S705)、参照計数が0でないと判定した場合(S705でNO)、主記憶内容の写しDを削除せずにステップS707へ進む。
一方、CPU30は、参照計数が0であると判定した場合(S705でYES)、主記憶内容の写しDが参照されていないと判断して更新前の主記憶内容の写しDを主記憶管理データベース322から削除する(S706)。
CPU30は、参照計数が0でないと判定した場合(S705でNOを参照)、又は更新前の主記憶内容の写しDを削除した場合(S706参照)、変換表作成処理を実行し(S707)、処理を終了する。
ステップS707の変換表作成処理の手順について説明する。図21は本発明の一実施例における変換表作成処理の手順を示すフローチャートである。管理装置3のCPU30は、主記憶管理データベース322において、生成した識別子管理テーブル4内のハッシュ値と同一のハッシュ値を含む既登録の識別子管理テーブルT4が存在するか否かを判定する(S801)。その結果、CPU30は、同一のハッシュ値が存在していないと判定した場合(S801でNO)、ステップS806へ進む。
一方、CPU30は、同一のハッシュ値が存在すると判定した場合(S801でYES)、既登録の識別子管理テーブルT4内の主記憶内容写し索引が示す既登録の主記憶内容の写しDが、受信した主記憶内容の写しDと同一であるか否かを判定する(S802)。その結果、CPU30は、受信した主記憶内容の写しDと同一でないと判定した場合(S802でNO)、ステップS806へ進む。
一方、CPU30は、受信した主記憶内容の写しDと同一であると判定した場合(S802でYES)、自機についての変換表T7内の自機が格納する主記憶内容に関する情報の欄を、生成した識別子管理テーブルT4内の主記憶識別子及び更新日時に更新する(S803)。更に自機以外についての変換表T7内の他機が格納する主記憶内容に関する情報の欄を、生成した識別子管理テーブル4内の情報処理装置識別子、主記憶識別子及び更新日時に更新する。
CPU30は、既登録の主記憶内容の写しDを残し、受信した主記憶内容の写しDを主記憶管理データベース322から削除する(S804)。CPU30は、既登録の主記憶内容の写しDを共有するように識別子管理テーブル4内の主記憶内容写し索引を更新する。CPU30は、既登録の主記憶内容の写しD内の参照計数を1つ増やし(S805)、ステップS806へ進む。
CPU30は、同一のハッシュ値を含む既登録の識別子管理テーブルT4が存在していないと判定した場合(S801でNOを参照)、受信した主記憶内容の写しDと同一でないと判定した場合(S802でNOを参照)、受信した主記憶内容の写しDの参照計数を1つ増やした場合(S805を参照)、生成した識別子管理テーブルT4の全てについて処理を行ったか否かを判定する(S806)。その結果、CPU30は、生成した識別子管理テーブルT4にいずれかについて処理を行っていないと判定した場合(S806でNO)、ステップS801へ戻り、未処理の識別子管理テーブルT4について処理を繰り返す。
一方、CPU30は、生成した識別子管理テーブル4の全てについて処理を行ったを判定した場合(S806でYES)、次回処理の要求があるまで待機する。
実施の形態4における資源転送システムは、移転元となる情報処理装置1及び移転先となる情報処理装置2に跨って主記憶内容に関する情報を統合して纏めた変換表T7を作成することにより、同一の主記憶内容の写しDが各情報処理装置の間で別内容と扱われることを回避できる。また、実施の形態4における資源転送システムは、変換表T7を用いて、移転先となる情報処理装置2を選定する機能を有する。
図22は本発明の一実施例における移転先選定処理の手順を示すフローチャートである。移転元となる情報処理装置1は、資源転送の準備段階において、資源転送すべき仮想装置の識別子を管理装置3へ送信する。管理装置3のCPU30は、受信した仮想装置識別子を含む主記憶情報テーブルT1を仮想装置管理データベース321から抽出する(S901)。
CPU30は、移転先候補となる情報処理装置の識別子を情報処理装置管理テーブルT2から抽出し(S902)、移転先候補識別子が存在するか否かを判定する(S903)。その結果、CPU30は、移転先候補識別子が存在していないと判定した場合(S903でNO)、ステップS909へ進む。
CPU30は、移転先候補が存在すると判定した場合(S903でYES)、変換表T7を読み出し(S904)、読み出した変換表T7内に、移転先候補となる情報処理装置が有する仮想装置の識別子が存在するか否かを判定する(S905)。その結果、CPU30は、仮想装置が存在していないと判定した場合(S905でNO)、ステップS908へ進む。
一方、CPU30は、仮想装置が存在する判定した場合(S905でYES)、仮想装置の識別子を含む主記憶情報テーブルT1の全てを仮想装置管理データベース321から抽出する(S906)、CPU30は、ステップS901で抽出した主記憶情報テーブルT1内データと、ステップS906で抽出した主記憶情報テーブルT1内データとが一致するか否かを判定し、データの一致数を計数する(S907)。CPU30は、ステップS904へ戻り、次の仮想装置について処理を繰り返す。ここで一致するとは、例えば、データ内のキャッシュ値が同一であることをいう。
CPU30は、全ての仮想装置についての処理後、仮想装置が存在していないと判定した場合(S905でNO参照)、計数した一致数を主記憶31に記憶し(S908)、ステップS902へ戻り、次の移転先候補となる情報処理装置について処理を繰り返す。
CPU30は、全ての移転先候補についての処理後、移転先候補が存在していないと判定した場合(S903でNOを参照)、主記憶31に記憶してある一致数のうち、最多の一致数を有する情報処理装置を移転先に決定する(S909)。CPU30は、決定した情報処理装置の識別子を情報処理装置管理テーブルT2から抽出する。
CPU30は、仮想装置を実行するための資源確保の要求を、抽出した情報処理装置識別子が示す移転先となる情報処理装置2へ送信する(S910)。
移転先となる情報処理装置2のCPU20は、管理装置3から送信された確保要求を受信したとき、仮想装置の資源を確保できるか否かを判定し、確保できないと判定した場合、確保不可の通知を管理装置3へ送信する。一方、CPU20は、確保できると判定した場合、確保通知を管理装置3へ送信する。
実施の形態4における資源転送システムは、転送すべき主記憶内容の写しDを最も多く有する情報処理装置を最適な移転先として選定することにより、選定された移転先となる情報処理装置2へ移転元となる情報処理装置1の資源を円滑に転送して移転元の資源の管理及び利用状態を移転先で迅速に復元できる。
図23は本発明の一実施例における資源転送処理の手順を示すフローチャートである。管理装置3は資源転送の指示を移転先となる情報処理装置1へ送信する。資源転送の指示には、上述した移転先決定処理により決定された移転先となる情報処理装置2の識別子が含まれている。移転元となる情報処理資源1は、管理装置3から送信された資源転送指示を受信したとき、転送すべき一又は複数の主記憶情報テーブル1内データを移転先と情報処理装置2へ送信する。
移転先となる情報処理装置2のCPU20は、移転元となる情報処理装置1から送信された一又は複数の主記憶情報テーブル1内データを受信し(S1001)、自機が有する主記憶情報データベース220から主記憶情報テーブルT1内データを読み出す(S1002)。
CPU20は、管理装置3から自機についての変換表T7を受信し(S1003)、受信した変換表T7において、自機が格納する主記憶内容に関する情報と他機が格納する主記憶内容に関する情報とを比較することにより、自機が有する主記憶情報テーブルT1のいずれかが、受信した主記憶情報テーブルT1内データに対応するか否かを判定する(S1004)。その結果、CPU20は、自機が有する主記憶情報テーブルT1内データが、受信した主記憶情報テーブルT1内データに対応すると判定した場合(S1004でYES)、対応する主記憶情報テーブルT1内データに対応する主記憶内容の写しDを主記憶内容写しデータベース221から抽出し(S1005)、ステップS1008へ進む。
一方、CPU20は、自機が有する主記憶情報テーブルT1が、受信した主記憶情報テーブルT1内データに対応していないと判定した場合(S1004でNO)、未対応の主記憶情報テーブルT1内データを送信元となる情報処理装置1へ送信する(S1006)。移転元となる情報処理資源1のCPU10は、未対応の主記憶情報テーブルT1内データを受信したとき、対応する主記憶内容の写しDを主記憶内容写しデータベース121から抽出して移転先となる情報処理装置2へ送信する。移転先となる情報処理装置2のCPU20は、対応する主記憶内容の写しDを受信し(S1007)、ステップS1008へ進む。
CPU29は、対応する主記憶情報テーブルT1内データに対応する主記憶内容の写しDを抽出するか(S1005参照)、又は移転元となる情報処理装置1から送信された主記憶内容の写しDを受信した場合(S1007参照)、移転元となる情報処理装置1から受信した主記憶情報テーブルT1内データの全てに処理を行ったか否かを判定する(S1008)。その結果、CPU20は、主記憶情報テーブルT1内データの全てについて処理を行っていないと判定した場合(S1008でNO)、ステップS1004へ戻り、次の主記憶情報テーブルT1内データについて処理を繰り返す。
一方、CPU20は、主記憶情報テーブルT1内データの全てについて処理を行ったと判定した場合(S1008でYES)、移転元となる情報処理装置1から送信されたその他の資源を受信し(S1009)、移転元における資源の管理及び利用状態を復元する(S1010)。CPU20は、復元した資源の管理及び利用状態を仮想装置に実装し(S1011)、資源転送処理を終了する。
尚、移転元となる情報処理装置1、移転先となる情報処理装置2及び管理装置3の構成及び作用、並びに実行する処理の手順については、上述した実施の形態1と同様であるので、対応する箇所に同一の符号を付してその説明を省略する。
実施の形態4における資源転送システムは、移転先が有する主記憶内容の写しDを利用して資源の管理及び利用状態の復元を試み、移転先が有していない主記憶内容の写しDのみを移転元から移転先へ転送することにより、資源の管理及び利用状態の復元に必要な主記憶内容の写しDの全てを移転元から移転先へ転送する場合に比して迅速に資源転送を行う。以上、実施の形態4について説明した。
実施の形態5.
上述した実施の形態1乃至4にあっては、移転元となる情報処理装置1が任意の機会において資源転送の準備に遷移したとき、管理装置3が移転先決定処理を実行する一例を説明した。しかし、開示の資源転送システムは、これに限定されるものでなく、例えば、移転元となる情報処理装置1が有する仮想装置が一時的な停止状態(サスペンド状態)から復帰状態に遷移するときに、管理装置3が移転先決定処理を実行してもよい。その結果、実施の形態5における資源転送システムにあっては、移転元が停止した時の管理及び利用状態を、決定した移転先で復元する(レジューム)機能を有してもよい。
尚、上述した実施の形態2又は3にあっては、更新頻度又は優先度に基づいて管理装置3が管理しない主記憶内容に関する情報を決定する一例を説明したが、開示の資源転送システムは、これに限定されるものではなく、例えば、所定の主記憶識別子が付与された主記憶内容を、管理装置3が管理しないようにしてもよい。この場合、各情報処理装置は、管理装置3が管理しない主記憶内容を識別する主記憶識別子を、別途生成した一覧表に格納しておく。
また、開示の資源転送システムは、所定の主記憶空間に格納された主記憶内容を、管理装置3が管理しないようにしてもよい。既存する主記憶管理技術に依れば、主記憶は、基本ソフトウェア及び応用ソフトウェアを格納するための読込専用の空間と、データを格納するための読書可能な空間とに分けて管理されている。そこで、各情報処理装置は、読書可能な空間に格納された主記憶内容についての対象外判定変数を「真」に更新する。
また、開示の資源転送システムは、移転元となる情報処理装置1と移転先となる情報処理装置2との間で資源転送を行うのみならず、例えば、情報処理装置が有するCPUが第1及び第2コアを搭載する場合であって各コアを担当する主記憶の空間が異なるときには、第1コア及び第2コアとの間で資源転送を行うようにしてもよい。この場合、上述した実施の形態1乃至5において、第1コアが担当する仮想装置を移転元となる情報処理装置1が実行する仮想装置とし、第2コアが担当する仮想装置を移転先となる情報処理装置2が実行する仮想装置と置き換えて説明することができる。
上述した実施の形態に関し、更に以下の付記を開示する。
(付記1)通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送システムにおいて、
各情報処理装置は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを順次格納する記憶手段
を備え、
移転先となる情報処理装置は、
移転元となる情報処理装置が転送すべき主記憶内容の写しのうち、自らの記憶手段が格納する主記憶内容の写しを利用できるか否かを判定する判定手段と、
該判定手段による判定結果を移転元となる情報処理装置へ送信する手段と
を備え、
移転元となる情報処理装置は、
受信した判定結果に基づいて移転先となる情報処理装置が利用することができない主記憶内容の写しを移転先となる情報処理装置へ転送する手段
を備え、
移転先となる情報処理装置は、更に、
移転元となる情報処理装置から転送された主記憶内容の写しと前記判定手段が利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元する手段
を備えることを特徴とする資源転送システム。
(付記2)通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送システムにおいて、
各情報処理装置は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納する記憶手段と、
前記記憶手段が格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合する統合手段と
を備え、
移転元となる情報処理装置は、
転送すべき主記憶内容の識別情報を送信する手段
を備え、
移転先となる情報処理装置は、
移転元となる情報処理装置から受信した識別情報と自らの記憶手段が格納する識別情報との関係に基づいて該記憶手段が格納する主記憶内容の写しを利用できるか否かを判定する判定手段と、
該判定手段が利用することができないと判定した主記憶内容の識別情報を移転元となる情報処理装置へ送信する手段と
を備え、
移転元となる情報処理装置は、更に、
移転先となる情報処理装置から受信した識別情報が示す主記憶内容の写しを移転先となる情報処理装置へ転送する手段
を備え、
移転先となる情報処理装置は、更に、
移転元となる情報処理装置により転送された主記憶内容の写しと前記判定手段が利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元する手段
を備えることを特徴とする資源転送システム。
(付記3)各情報処理装置と通信網を介して接続し、主記憶内容を管理する管理装置を更に備え、
各情報処理装置は、更に、
前記記憶手段が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信する手段
を備え、
前記管理装置は、
各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を順次格納する管理手段と、
該管理手段が格納する主記憶内容の写しが重複するか否かを判定する手段と、
主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を統合する手段と、
統合の結果を各情報処理装置へ送信する手段と
を備え、
各情報処理装置は、更に、
前記管理装置から受信した統合の結果に従って前記記憶手段が格納する主記憶内容の写し及び対応する識別情報を統合する手段
を備えること特徴とする付記2に記載の資源転送システム。
(付記4)各情報処理装置と通信網を介して接続し、主記憶内容を管理する管理装置を更に備え、
各情報処理装置は、更に
前記記憶手段が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信する手段
を備え、
前記管理装置は、
各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を順次格納する管理手段と、
該管理手段が格納する主記憶内容の写しが重複するか否かを判定する手段と、
主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を相互に対応付ける変換表を作成する手段と、
作成した変換表を各情報処理装置へ送信する送信手段と
を備え、
各情報処理装置は、更に、
前記管理装置から送信された変換表を受信する手段
を備えることを特徴とする付記2に記載の資源転送システム。
(付記5)前記送信手段は、作成した変換表を移転先となる情報処理装置へ送信し、
移転先となる情報処理装置は、更に、
前記判定手段が前記変換表に基づいて自らの記憶手段が格納する主記憶内容の写しを利用できるか否かを判定するようにしてあることを特徴とする付記4に記載の資源転送システム。
(付記6)各情報処理装置は、更に、
前記記憶手段が格納する主記憶内容の写しが重複するか否かを前記変換表に基づいて判定する手段
を備え、
前記記憶手段が格納する主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を前記統合手段が統合するようにしてあることを特徴とする付記4又は5に記載の資源転送システム。
(付記7)前記記憶手段は、新たに格納すべき前記主記憶内容の写しには格納してある主記憶内容の識別情報とは異なる識別情報を新たに対応付けるようにしてあることを特徴とする付記2乃至5のいずれかに記載の資源転送システム。
(付記8)各情報処理装置は、更に、
主記憶内容を更新する都度更新回数を示す頻度を計数する手段と、
計数した頻度が第1の閾値を超えるか否かを判定する手段と、
計数した頻度が第1の閾値を超えると判定した場合、前記記憶手段が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信しないようにしてあることを特徴とする付記3乃至7のいずれかに記載の資源転送システム。
(付記9)各情報処理装置は、更に、
優劣を示す優先度を前記記憶手段が格納する主記憶内容の写しに対応付ける手段と、
対応付けた優先度が第2の閾値を超えるか否かを判定する手段と、
対応付けた優先度が第2の閾値を超えると判定した場合、前記記憶手段が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信しないようにしてあることを特徴とする付記3乃至7のいずれかに記載の資源転送システム。
(付記10)前記管理装置は、更に、
移転元となる情報処理装置が転送すべき主記憶内容の写しと同一の主記憶内容の写しを記憶する情報処理装置を移転先となる情報処理装置と決定する手段
を備えることを特徴とする付記3乃至9のいずれかに記載の資源転送システム。
(付記11)通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送システムにおいて、
各情報処理装置は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを順次格納する記憶手段と、
該記憶装置が格納する主記憶内容の写しを自らが停止するときに保存し、保存した主記憶内容の写しを停止状態から復帰したときに他の情報処理装置へ転送する転送手段と
を備え、
移転先となる情報処理装置は、
移転元となる情報処理装置が転送すべき主記憶内容の写しのうち、自らの記憶手段が格納する主記憶内容の写しを利用できるか否かを判定する判定手段と、
該判定手段による判定結果を移転元となる情報処理装置へ送信する手段と
を備え、
移転元となる情報処理装置は、
受信した判定結果に基づいて移転先となる情報処理装置が利用することができない主記憶内容の写しを移転先となる情報処理装置へ転送する手段
を備え、
移転先となる情報処理装置は、更に、
移転元となる情報処理装置から転送された主記憶内容の写しと前記判定手段が利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における停止時の資源の管理及び利用状態を復元する手段
を備えることを特徴とする資源転送システム。
(付記12)通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を復元する資源転送システムにおいて、
各情報処理装置は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納する記憶手段と、
前記記憶手段が格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合する手段と
を備え、
移転元となる情報処理装置は、
該記憶手段が格納する主記憶内容の写しを自らが停止するときに保存し、保存した主記憶内容の写しの識別情報を停止状態から復帰したときに他の情報処理装置へ転送する転送手段
を備え、
移転先となる情報処理装置は、
移転元となる情報処理装置から受信した識別情報と自らの記憶手段が格納する識別情報との関係に基づいて該記憶手段が格納する主記憶内容の写しを利用できるか否かを判定する判定手段と、
該判定手段が利用することができないと判定した主記憶内容の識別情報を移転元となる情報処理装置へ送信する手段と
を備え、
移転元となる情報処理装置は、更に、
移転先となる情報処理装置から受信した識別情報が示す主記憶内容の写しを移転先となる情報処理装置へ転送する手段
を備え、
移転先となる情報処理装置は、
移転元となる情報処理装置により転送された主記憶内容の写しと前記判定手段が利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における停止時の資源の管理及び利用状態を復元する手段
を備えることを特徴とする資源転送システム。
(付記13)通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送方法において、
各情報処理装置は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを順次格納し、
移転先となる情報処理装置は、
移転元となる情報処理装置が転送すべき主記憶内容の写しのうち、自らが格納する主記憶内容の写しを利用できるか否かを判定し、
判定結果を移転元となる情報処理装置へ送信し、
移転元となる情報処理装置は、
受信した判定結果に基づいて移転先となる情報処理装置が利用することができない主記憶内容の写しを移転先となる情報処理装置へ転送し、
移転先となる情報処理装置は、更に、
移転元となる情報処理装置から転送された主記憶内容の写しと自らが利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元することを特徴とする資源転送方法。
(付記14)通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送方法において、
各情報処理装置は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納し、
自らが格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合し、
移転元となる情報処理装置は、
転送すべき主記憶内容の識別情報を送信し、
移転先となる情報処理装置は、
移転元となる情報処理装置から受信した識別情報と自らが格納する識別情報との関係に基づいて自らが格納する主記憶内容の写しを利用できるか否かを判定し、
利用することができないと判定した主記憶内容の識別情報を移転元となる情報処理装置へ送信し、
移転元となる情報処理装置は、更に、
移転先となる情報処理装置から受信した識別情報が示す主記憶内容の写しを移転先となる情報処理装置へ転送し、
移転先となる情報処理装置は、更に、
移転元となる情報処理装置により転送された主記憶内容の写しと自らが利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元することを特徴とする資源転送方法。
(付記15)各情報処理装置と通信網を介して接続し、主記憶内容を管理する管理装置を更に備え、
各情報処理装置は、更に、
自らが格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信し、
前記管理装置は、
各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を順次格納し、
自らが格納する主記憶内容の写しが重複するか否かを判定し、
主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を統合し、
統合の結果を各情報処理装置へ送信し、
各情報処理装置は、更に、
前記管理装置から受信した統合の結果に従って自らが格納する主記憶内容の写し及び対応する識別情報を統合することを特徴とする付記14に記載の資源転送方法。
(付記16)各情報処理装置と通信網を介して接続し、主記憶内容を管理する管理装置を更に備え、
各情報処理装置は、更に
自らが格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信し、
前記管理装置は、
各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を順次格納し、
自らが格納する主記憶内容の写しが重複するか否かを判定し、
主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を相互に対応付ける変換表を作成し、
作成した変換表を各情報処理装置へ送信し、
各情報処理装置は、更に、
前記管理装置から送信された変換表を受信することを特徴とする付記15に記載の資源転送方法。
(付記17)前記管理装置は、作成した変換表を移転先となる情報処理装置へ送信し、
移転先となる情報処理装置は、更に、
前記変換表に基づいて自らの記憶手段が格納する主記憶内容の写しを利用できるか否かを判定するようにしてあることを特徴とする付記16に記載の資源転送方法。
(付記18)各情報処理装置は、更に、
自らが格納する主記憶内容の写しが重複するか否かを前記変換表に基づいて判定し、
自らが格納する主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を統合するようにしてあることを特徴とする付記15又は16に記載の資源転送方法。
(付記19)前記記憶手段は、新たに格納すべき前記主記憶内容の写しには格納してある主記憶内容の識別情報とは異なる識別情報を新たに対応付けるようにしてあることを特徴とする付記14乃至18のいずれかに記載の資源転送方法。
(付記20)各情報処理装置は、更に、
主記憶内容を更新する都度更新回数を示す頻度を計数し、
計数した頻度が第1の閾値を超えるか否かを判定し、
計数した頻度が第1の閾値を超えると判定した場合、自らが格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信しないようことを特徴とする付記15乃至19のいずれかに記載の資源転送方法。
(付記21)各情報処理装置は、更に、
優劣を示す優先度を自らが格納する主記憶内容の写しに対応付け、
対応付けた優先度が第2の閾値を超えるか否かを判定し、
対応付けた優先度が第2の閾値を超えると判定した場合、自らが格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信しないようことを特徴とする付記15乃至19のいずれかに記載の資源転送方法。
(付記22)前記管理装置は、更に、
移転元となる情報処理装置が転送すべき主記憶内容の写しと同一の主記憶内容の写しを記憶する情報処理装置を移転先となる情報処理装置と決定することを特徴とする付記15乃至21のいずれかに記載の資源転送方法。
(付記23)通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送方法において、
各情報処理装置は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを順次格納し、
自らが格納する主記憶内容の写しを自らが停止するときに保存し、保存した主記憶内容の写しを停止状態から復帰したときに他の情報処理装置へ転送し、
移転先となる情報処理装置は、
移転元となる情報処理装置が転送すべき主記憶内容の写しのうち、自らが格納する主記憶内容の写しを利用できるか否かを判定し、
判定結果を移転元となる情報処理装置へ送信し、
移転元となる情報処理装置は、
受信した判定結果に基づいて移転先となる情報処理装置が利用することができない主記憶内容の写しを移転先となる情報処理装置へ転送し、
移転先となる情報処理装置は、更に、
移転元となる情報処理装置から転送された主記憶内容の写しと自らが利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における停止時の資源の管理及び利用状態を復元することを特徴とする資源転送方法。
(付記24)通信網を介して他の情報処理装置と複数接続し、移転先となる他の情報処理装置へ資源を転送する転送部と、移転元となる他の情報管理装置から転送された資源の利用状態を復元させる復元部とを有する情報処理装置であって、
前記転送部は、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納する記憶部と、
前記記憶部が格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合する統合部と、
転送すべき主記憶内容の識別情報を移転先となる他の情報処理装置の復元部へ送信する識別情報送信部と、
転送先となる他の情報処理装置の復元部から送信された識別情報を受信し、受信した識別情報が示す主記憶内容の写しを転送先となる他の情報処理装置の復元部へ転送する主記憶内容転送部と
を備え、
前記復元部は、
移転元となる他の情報処理装置の識別情報送信部から識別情報を受信し、受信した識別情報と自らが有する記憶部が格納する識別情報との関係に基づいて、前記記憶部が格納する主記憶内容の写しを利用できるか否かを判定する判定部と、
該判定部が利用することができないと判定した主記憶内容の識別情報を移転元となる他の情報処理装置の主記憶内容転送部へ送信する転送要求送信部と、
移転元となる他の情報処理装置の主記憶内容転送部から主記憶内容の写しを受信し、受信した主記憶内容の写しと前記判定手段が利用できると判定した主記憶内容の写しとを用いて移転元となる他の情報処理装置の資源の管理及び利用状態を復元する復元実行部と
を備える情報処理装置。
(付記25)コンピュータに、通信網を介して外部装置と複数接続し、移転先となる外部装置へ資源を転送し、移転元となる外部装置から転送された資源の利用状態を復元させるコンピュータプログラムにおいて、
自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納させるステップと、
格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合させるステップと、
転送すべき主記憶内容の識別情報を移転先となる外部装置へ送信させるステップと、
転送先となる外部装置から送信された識別情報を受信し、受信した識別情報が示す主記憶内容の写しを転送先となる外部装置へ転送させるステップと、
移転元となる外部装置から識別情報を受信し、受信した識別情報と自らが格納する識別情報との関係に基づいて、自らが格納する主記憶内容の写しを利用できるか否かを判定させるステップと、
利用することができないと判定した主記憶内容の識別情報を移転元となる外部装置へ送信させるステップと、
移転元となる外部装置から主記憶内容の写しを受信し、受信した主記憶内容の写しと利用できると判定した主記憶内容の写しとを用いて移転元となる外部装置の資源の管理及び利用状態を復元させるステップと
をコンピュータに実行させることを特徴とするコンピュータプログラム。
本発明の一実施例におけるシステムの全体構成を示すブロック図である。 主記憶情報テーブルのフォーマット例を示す概念図である。 主記憶内容の写しのデータ構造を示す概念図である。 情報処理装置管理データベースに格納されている情報処理装置管理テーブルのフォーマット例を示す概念図である。 仮想装置管理データベースに格納されている仮想装置管理テーブルのフォーマット例を示す概念図である。 主記憶管理データベースに格納されている識別子管理テーブルのフォーマット例を示す概念図である。 本発明の一実施例における統合処理の手順を示すフローチャートである。 本発明の一実施例における統合判定処理の手順を示すフローチャートである。 本発明の一実施例における移転先決定処理の手順を示すフローチャートである。 本発明の一実施例における資源転送処理の手順を示すフローチャートである。 本発明の一実施例における主記憶内容に関する情報の統合及び転送を説明する図である。 本発の一実施例におけるシステムの全体構成を示すブロック図である。 更新頻度データベースに格納されている更新頻度テーブルのフォーマット例を示す概念図である。 本発明の一実施例における管理対象外決定処理の手順を示すフローチャートである。 本発明の一実施例におけるシステムの全体構成を示すブロック図である。 優先度情報データベースに格納されている優先度情報テーブルのフォーマット例を示す概念図である。 本発明の一実施例における管理対象外決定処理の手順を示すフローチャートである。 本発明の一実施例におけるシステムの全体構成を示すブロック図である。 変換表データベースに格納されている変換表のフォーマット例を示す概念図である。 本発明の一実施例における統合処理の手順を示すフローチャートである。 本発明の一実施例における変換表作成処理の手順を示すフローチャートである。 本発明の一実施例における移転先選定処理の手順を示すフローチャートである。 本発明の一実施例における資源転送処理の手順を示すフローチャートである。 従来の資源転送を説明するための図である。
符号の説明
1 移転元となる情報処理装置
10 CPU
11 主記憶
12 補助記憶装置
120 主記憶情報データベース
121 主記憶内容写しデータベース
122 更新頻度データベース
123 優先度情報データベース
13 通信インタフェース
14 入力インタフェース
15 出力インタフェース
16 通信線
17 負荷測定部
2 移転先となる情報処理装置
20 CPU
21 主記憶
22 補助記憶装置
220 主記憶情報データベース
221 主記憶内容写しデータベース
222 更新頻度データベース
223 優先度情報データベース
23 通信インタフェース
24 入力インタフェース
25 出力インタフェース
26 通信線
27 負荷測定部
3 管理装置
30 CPU
31 主記憶
32 補助記憶装置
320 情報処理装置管理データベース
321 仮想装置管理データベース
322 主記憶管理データベース
323 変換表データベース
33 通信インタフェース
34 入力インタフェース
35 出力インタフェース
36 通信線
37 負荷測定部

Claims (8)

  1. 通信網を介して接続された複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送システムにおいて、
    前記通信網を介して各情報処理装置に接続された管理装置を備え、
    各情報処理装置は、
    自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納する記憶手段と、
    前記記憶手段が格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合する統合手段と、
    前記記憶手段が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信する手段と
    を備え、
    前記管理装置は、
    各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を格納する管理手段と、
    移転元となる情報処理装置及び移転先の候補となる複数の情報処理装置を特定する手段と、
    前記管理手段に格納された情報を参照し、移転元の情報処理装置に記憶された主記憶内容と一致する主記憶内容が記憶されている数を移転先の候補毎に計数する計数手段と、
    該計数手段が計数した数に基づき移転先の情報処理装置を決定する手段と
    を備え、
    移転元となる情報処理装置は、
    転送すべき主記憶内容の識別情報を送信する手段
    を備え、
    移転先となる情報処理装置は、
    移転元となる情報処理装置から受信した識別情報と自らの記憶手段が格納する識別情報との関係に基づいて該記憶手段が格納する主記憶内容の写しを利用できるか否かを判定する判定手段と、
    該判定手段が利用することができないと判定した主記憶内容の識別情報を移転元となる情報処理装置へ送信する手段と
    を備え、
    移転元となる情報処理装置は、更に、
    移転先となる情報処理装置から受信した識別情報が示す主記憶内容の写しを移転先となる情報処理装置へ転送する手段
    を備え、
    移転先となる情報処理装置は、更に、
    移転元となる情報処理装置により転送された主記憶内容の写しと前記判定手段が利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元する手段
    を備えることを特徴とする資源転送システム。
  2. 記管理装置は、
    前記管理手段が格納する主記憶内容の写しが重複するか否かを判定する手段と、
    主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を相互に対応付ける変換表を作成する手段と、
    作成した変換表を各情報処理装置へ送信する送信手段と
    を備え、
    各情報処理装置は、更に、
    前記管理装置から送信された変換表を受信する手段
    を備えることを特徴とする請求項1に記載の資源転送システム。
  3. 前記送信手段は、作成した変換表を移転先となる情報処理装置へ送信し、
    移転先となる情報処理装置は、更に、
    前記判定手段が前記変換表に基づいて自らの記憶手段が格納する主記憶内容の写しを利用できるか否かを判定するようにしてあることを特徴とする請求項2に記載の資源転送システム。
  4. 各情報処理装置は、更に、
    前記記憶手段が格納する主記憶内容の写しが重複するか否かを前記変換表に基づいて判定する手段
    を備え、
    前記記憶手段が格納する主記憶内容の写しが重複すると判定した場合、重複する主記憶内容の識別情報を前記統合手段が統合するようにしてあることを特徴とする請求項2又は3に記載の資源転送システム。
  5. 前記記憶手段は、新たに格納すべき前記主記憶内容の写しには格納してある主記憶内容の識別情報とは異なる識別情報を新たに対応付けるようにしてあることを特徴とする請求項1乃至4のいずれかに記載の資源転送システム。
  6. 通信網を介して接続された管理装置及び複数の情報処理装置を備え、該情報処理装置のいずれかが移転元及び移転先となって資源を転送し、移転元における資源の管理及び利用状態を移転先で復元する資源転送方法において、
    各情報処理装置は、
    自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納し、
    自らが格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合し、
    格納した主記憶内容の写し及び対応する識別情報を前記管理装置へ送信し、
    前記管理装置は、
    各情報処理装置から受信した主記憶内容の写し及び対応する識別情報を管理手段に格納し、
    移転元となる情報処理装置及び移転先の候補となる複数の情報処理装置を特定し、
    前記管理手段に格納した情報を参照し、移転元の情報処理装置に記憶された主記憶内容と一致する主記憶内容が記憶されている数を移転先の候補毎に計数し、
    計数した数に基づき移転先の情報処理装置を決定し、
    移転元となる情報処理装置は、
    転送すべき主記憶内容の識別情報を送信し、
    移転先となる情報処理装置は、
    移転元となる情報処理装置から受信した識別情報と自らが格納する識別情報との関係に基づいて自らが格納する主記憶内容の写しを利用できるか否かを判定し、
    利用することができないと判定した主記憶内容の識別情報を移転元となる情報処理装置へ送信し、
    移転元となる情報処理装置は、更に、
    移転先となる情報処理装置から受信した識別情報が示す主記憶内容の写しを移転先となる情報処理装置へ転送し、
    移転先となる情報処理装置は、更に、
    移転元となる情報処理装置により転送された主記憶内容の写しと自らが利用できると判定した主記憶内容の写しとを用いて移転元となる情報処理装置における資源の管理及び利用状態を復元することを特徴とする資源転送方法。
  7. 通信網を介して管理装置及び複数の他の情報処理装置を接続してあり、移転先となる他の情報処理装置へ資源を転送する転送部と、移転元となる他の情報管理装置から転送された資源の利用状態を復元させる復元部とを有する情報処理装置であって、
    前記転送部は、
    自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納する記憶部と、
    前記記憶部が格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合する統合部と、
    前記記憶部が格納する主記憶内容の写し及び対応する識別情報を前記管理装置へ送信する送信部と、
    転送すべき主記憶内容の識別情報を、前記管理装置に記憶されている前記主記憶内容と一致する他の情報処理装置の主記憶内容が記憶されている数に基づいて前記管理装置により決定された移転先となる他の情報処理装置の復元部へ送信する識別情報送信部と、
    転送先となる他の情報処理装置の復元部から送信された識別情報を受信し、受信した識別情報が示す主記憶内容の写しを転送先となる他の情報処理装置の復元部へ転送する主記憶内容転送部と
    を備え、
    前記復元部は、
    移転元となる他の情報処理装置の識別情報送信部から識別情報を受信し、受信した識別情報と自らが有する記憶部が格納する識別情報との関係に基づいて、前記記憶部が格納する主記憶内容の写しを利用できるか否かを判定する判定部と、
    該判定部が利用することができないと判定した主記憶内容の識別情報を移転元となる他の情報処理装置の主記憶内容転送部へ送信する転送要求送信部と、
    移転元となる他の情報処理装置の主記憶内容転送部から主記憶内容の写しを受信し、受信した主記憶内容の写しと前記判定が利用できると判定した主記憶内容の写しとを用いて移転元となる他の情報処理装置の資源の管理及び利用状態を復元する復元実行部と
    を備える情報処理装置。
  8. コンピュータに、通信網を介して管理装置及び複数の外部装置を接続し、移転先となる外部装置へ資源を転送し、移転元となる外部装置から転送された資源の利用状態を復元させるためのコンピュータプログラムにおいて、
    自らが有する主記憶に記憶する都度主記憶内容を所定単位毎に論理的に分割し、分割した主記憶内容の写しを該主記憶内容を識別するための識別情報に対応付けて順次格納させるステップと、
    格納する主記憶内容の写しが重複する場合、重複する主記憶内容の識別情報を統合させるステップと、
    格納してある主記憶内容の写し及び対応する識別情報を前記管理装置へ送信させるステップと、
    転送すべき主記憶内容の識別情報を、前記管理装置に記憶されている前記主記憶内容と一致する外部装置の主記憶内容が記憶されている数に基づいて前記管理装置により決定された移転先となる外部装置へ送信させるステップと、
    転送先となる外部装置から送信された識別情報を受信し、受信した識別情報が示す主記憶内容の写しを転送先となる外部装置へ転送させるステップと、
    移転元となる外部装置から識別情報を受信し、受信した識別情報と自らが格納する識別情報との関係に基づいて、自らが格納する主記憶内容の写しを利用できるか否かを判定させるステップと、
    利用することができないと判定した主記憶内容の識別情報を移転元となる外部装置へ送信させるステップと、
    移転元となる外部装置から主記憶内容の写しを受信し、受信した主記憶内容の写しと利用できると判定した主記憶内容の写しとを用いて移転元となる外部装置の資源の管理及び利用状態を復元させるステップと
    をコンピュータに実行させるためのコンピュータプログラム。
JP2008187785A 2008-07-18 2008-07-18 資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラム Expired - Fee Related JP5391601B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008187785A JP5391601B2 (ja) 2008-07-18 2008-07-18 資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラム
US12/483,366 US8782235B2 (en) 2008-07-18 2009-06-12 Resource migration system and resource migration method
EP09163610A EP2146280A3 (en) 2008-07-18 2009-06-24 Resource migration system and resource migration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008187785A JP5391601B2 (ja) 2008-07-18 2008-07-18 資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2010026814A JP2010026814A (ja) 2010-02-04
JP5391601B2 true JP5391601B2 (ja) 2014-01-15

Family

ID=41256001

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008187785A Expired - Fee Related JP5391601B2 (ja) 2008-07-18 2008-07-18 資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラム

Country Status (3)

Country Link
US (1) US8782235B2 (ja)
EP (1) EP2146280A3 (ja)
JP (1) JP5391601B2 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100318759A1 (en) * 2009-06-15 2010-12-16 Microsoft Corporation Distributed rdc chunk store
US9852011B1 (en) * 2009-06-26 2017-12-26 Turbonomic, Inc. Managing resources in virtualization systems
EP2309387A1 (en) * 2009-10-06 2011-04-13 Alcatel Lucent A method of migrating a virtual machine, corresponding computer program product, and data storage device therefor
US9229793B2 (en) * 2010-04-22 2016-01-05 Salesforce.Com, Inc. System, method and computer program product for routing messages to a server
JP5675234B2 (ja) * 2010-09-10 2015-02-25 任天堂株式会社 情報処理システム、情報処理プログラムおよび情報処理方法
US8490092B2 (en) 2011-07-06 2013-07-16 Microsoft Corporation Combined live migration and storage migration using file shares and mirroring
US9223607B2 (en) * 2012-01-17 2015-12-29 Microsoft Technology Licensing, Llc System for replicating or migrating virtual machine operations log by throttling guest write iOS based on destination throughput
US9292319B2 (en) * 2012-03-28 2016-03-22 Google Inc. Global computing interface
CN102724277B (zh) * 2012-05-04 2016-01-06 华为技术有限公司 虚拟机热迁移和部署的方法、服务器及集群系统
US9600206B2 (en) 2012-08-01 2017-03-21 Microsoft Technology Licensing, Llc Request ordering support when switching virtual disk replication logs
CN104951855B (zh) * 2014-03-28 2022-08-02 伊姆西Ip控股有限责任公司 用于促进对资源的管理的装置和方法
US10375161B1 (en) * 2014-04-09 2019-08-06 VCE IP Holding Company LLC Distributed computing task management system and method
CN103885830B (zh) * 2014-04-16 2017-02-15 中国科学院软件研究所 一种虚拟机跨数据中心动态迁移中的数据处理方法
US9723065B2 (en) * 2014-10-13 2017-08-01 Vmware, Inc. Cross-cloud object mapping for hybrid clouds
US9684562B2 (en) 2015-07-21 2017-06-20 International Business Machines Corporation Automatic serial starting of resource groups on failover based on the prediction of aggregate resource usage
US10320895B2 (en) * 2016-11-15 2019-06-11 Microsoft Technology Licensing, Llc Live migration of load balanced virtual machines via traffic bypass

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02257340A (ja) * 1989-03-30 1990-10-18 Sharp Corp 仮想コピーファイル方式
JPH06110759A (ja) * 1992-09-30 1994-04-22 Toshiba Corp ファイルシステム
JPH0926911A (ja) * 1995-07-12 1997-01-28 Fujitsu Ltd ページ情報転送処理装置
JP3653159B2 (ja) * 1997-04-01 2005-05-25 株式会社日立製作所 仮想計算機システム間の仮想計算機移動制御方法
JP2000207278A (ja) * 1999-01-14 2000-07-28 Hitachi Ltd 分散共有主記憶を有する情報処理装置
JP2001188690A (ja) * 1999-12-28 2001-07-10 Toshiba Corp コンピュータシステム及びチェックポイント情報保存方法
JP2002024198A (ja) * 2000-07-06 2002-01-25 Fujitsu Ltd 分散共有メモリ型並列計算機
US7185017B1 (en) * 2002-04-10 2007-02-27 Compuware Corporation System and method for selectively processing data sub-segments using a data mask
JP2004005113A (ja) 2002-05-31 2004-01-08 Nec System Technologies Ltd 複数の実計算機上で動作する仮想計算機システム及びその制御方法
US7484208B1 (en) * 2002-12-12 2009-01-27 Michael Nelson Virtual machine migration
JP2005100007A (ja) * 2003-09-24 2005-04-14 Matsushita Electric Ind Co Ltd データファイル保存システムおよびアロケーション方法
US7257811B2 (en) * 2004-05-11 2007-08-14 International Business Machines Corporation System, method and program to migrate a virtual machine
JP2007066265A (ja) 2005-09-02 2007-03-15 Hitachi Ltd 計算機装置及び仮想マシン提供方法
US7761573B2 (en) * 2005-12-07 2010-07-20 Avaya Inc. Seamless live migration of virtual machines across optical networks
US7434013B2 (en) * 2006-01-30 2008-10-07 Microsoft Corporation Assigning disks during system recovery
CA2648428C (en) * 2006-04-07 2017-11-21 Data Storage Group Data compression and storage techniques
US20080059556A1 (en) * 2006-08-31 2008-03-06 Egenera, Inc. Providing virtual machine technology as an embedded layer within a processing platform
US7882326B2 (en) * 2007-03-23 2011-02-01 International Business Machines Corporation Live migration of a logical partition
JP5446860B2 (ja) * 2007-03-27 2014-03-19 日本電気株式会社 仮想マシン運用システム、仮想マシン運用方法およびプログラム
US20080276041A1 (en) * 2007-05-01 2008-11-06 International Business Machines Corporation Data storage array scaling method and system with minimal data movement
US8191063B2 (en) * 2007-09-30 2012-05-29 Symantex Corporation Method for migrating a plurality of virtual machines by associating files and state information with a single logical container
JP4871850B2 (ja) * 2007-12-04 2012-02-08 株式会社日立製作所 仮想計算機システム及び仮想計算機移行制御方法
US20090204718A1 (en) * 2008-02-08 2009-08-13 Lawton Kevin P Using memory equivalency across compute clouds for accelerated virtual memory migration and memory de-duplication
US8359593B2 (en) * 2008-04-21 2013-01-22 Vmware, Inc. Computer machine migration of file system images using a redo-log file
US8458284B2 (en) * 2009-06-12 2013-06-04 International Business Machines Corporation Systems and methods for efficient live application migration within bandwidth constrained networks
US9130912B2 (en) * 2010-03-05 2015-09-08 International Business Machines Corporation System and method for assisting virtual machine instantiation and migration

Also Published As

Publication number Publication date
EP2146280A2 (en) 2010-01-20
JP2010026814A (ja) 2010-02-04
EP2146280A3 (en) 2011-12-21
US8782235B2 (en) 2014-07-15
US20100017515A1 (en) 2010-01-21

Similar Documents

Publication Publication Date Title
JP5391601B2 (ja) 資源転送システム、資源転送方法、情報処理装置及びコンピュータプログラム
US8458284B2 (en) Systems and methods for efficient live application migration within bandwidth constrained networks
JP5082310B2 (ja) データ移行装置及びプログラム
JP5952960B2 (ja) 計算機システム、計算機システム管理方法及びプログラム
CN105027068A (zh) 在存储系统中执行复制
JP2015001828A (ja) 割当プログラム、割当装置および割当方法
WO2014007249A1 (ja) I/oノード及び複数の計算ノードに備えられたキャッシュメモリの制御方法
JP2004280485A (ja) 計算機システム
JP2006309638A (ja) 計算機システムおよびその計算機システムに用いられるホスト計算機およびストレージ装置、ならびに、計算機システムに用いられるボリューム切替方法
CN109906439B (zh) 通过存储控制器向对象存储云的时间点备份
JP5422657B2 (ja) ストレージシステム及びストレージシステムの処理効率向上方法
JP5780377B2 (ja) 情報処理システム、及びアプリケーションの移転方法
JP2014182653A (ja) ログ管理システム、ログ管理方法、画像形成装置およびその制御方法、並びにプログラム
JP6287308B2 (ja) レプリケーション制御システム、レプリケーション制御方法、及び、レプリケーション制御プログラム
JP2015022380A (ja) 情報処理装置、仮想マシンの移行方法及び仮想マシンの移行プログラム
JP6755680B2 (ja) データ移行システム、及び、データ移行システムの制御方法
JP5632408B2 (ja) データ移行装置およびその動作方法
JP2016062535A (ja) 情報処理システム、情報処理システムの制御方法及び制御プログラム
JP6486227B2 (ja) システム、及びその方法
JP6291977B2 (ja) 分散ファイルシステム、バックアップファイル取得方法、制御装置及び管理装置
US11188389B2 (en) Distributed system that promotes task-machine affinity
CN113138722B (zh) 用于分布式块存储系统的复制快照方法、系统和介质
US11474877B1 (en) Computer system and scale-out method of computer system
US20210096763A1 (en) Method, device, and computer program product for managing storage system
JP2015127878A (ja) 文書管理サーバー装置、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110418

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130716

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130830

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: 20130917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130930

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees