JP6645011B2 - 仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラム - Google Patents

仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラム Download PDF

Info

Publication number
JP6645011B2
JP6645011B2 JP2015013169A JP2015013169A JP6645011B2 JP 6645011 B2 JP6645011 B2 JP 6645011B2 JP 2015013169 A JP2015013169 A JP 2015013169A JP 2015013169 A JP2015013169 A JP 2015013169A JP 6645011 B2 JP6645011 B2 JP 6645011B2
Authority
JP
Japan
Prior art keywords
virtual machine
message
unit
operation information
information
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.)
Active
Application number
JP2015013169A
Other languages
English (en)
Other versions
JP2016139236A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2015013169A priority Critical patent/JP6645011B2/ja
Priority to TW105100217A priority patent/TWI635393B/zh
Priority to US15/544,292 priority patent/US20180011727A1/en
Priority to PCT/JP2016/000193 priority patent/WO2016121317A1/ja
Publication of JP2016139236A publication Critical patent/JP2016139236A/ja
Application granted granted Critical
Publication of JP6645011B2 publication Critical patent/JP6645011B2/ja
Active 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/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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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/54Interprogram communication
    • 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/45575Starting, stopping, suspending or resuming virtual machine instances
    • 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/45579I/O management, e.g. providing access to device drivers or storage
    • 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/45595Network integration; Enabling network access in virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Description

本発明は、仮想マシン利用者による仮想マシン操作の技術に関する。
仮想マシン利用者による仮想マシンの制御を実現するためのさまざまな関連技術が知られている。
一般的に、仮想マシンの電源制御は、ハイパーバイザー等の仮想化ソフトの管理ソフトが動作している管理サーバから制御されていた。管理ソフトは通常、システム管理者しか操作が行えない。従って、仮想マシン利用者が誤って仮想マシンをシャットダウンした場合、仮想マシン利用者は、システム管理者にその仮想マシンの復旧を依頼する必要があった。また、仮想マシン利用者が管理ソフトを使用できる場合であっても、その管理ソフトが動作している管理サーバにその仮想マシン利用者の端末(物理端末)を接続する必要があり、その端末の設定変更を行う必要があった。
このような問題点を解決する技術が特許文献1に記載されている。特許文献1に記載された仮想マシン制御システムは、仮想化OS(Operating System)と、仮想化環境管理サーバとを備え、ユーザ毎のゲスト空間の中から、その空間における仮想マシンの新規生成及び仮想環境の制御を実行するシステムである。ここで、仮想化OSは、複数の仮想マシンがVLAN(Virtual Local Area Network)によって接続されたユーザ毎のゲスト空間を生成する。また、仮想化環境管理サーバは、ゲスト空間における仮想マシンの生成及び制御を、その仮想化OSに接続された管理LAN(Local Area Network)を通じて実行する。そして、その仮想環境の制御は、例えば、生成された仮想マシンの電源ON/OFFである。
更に、特許文献1に記載された仮想マシン制御システムは、仮想マシン制御子サーバと仮想マシン制御親サーバとを備える。仮想マシン制御子サーバは、ゲスト空間のVLANに接続され、そのゲスト空間における仮想環境の変更指示をユーザから受け付け、そのゲスト空間の仮想記憶装置に格納する。仮想マシン制御親サーバは、その仮想記憶装置に直接アクセスし、その仮想記憶装置から仮想環境の変更指示情報を取得し、その変更指示情報で指示された仮想環境になるように管理LANを通じて仮想化環境管理サーバに指示情報を送信する。
特開2011−192194号公報
仮想化システムにおいては、仮想マシン利用者が利用する仮想マシン以外の、仮想化システムを管理/制御するための資源は、できるだけ少ないことが求められる。
しかしながら、上述した特許技術文献1に記載された仮想マシン制御システムにおいては、仮想化システムの操作(制御、例えば電源ON/OFF)のために、以下のような資源を必要とするという問題点がある。その資源は、仮想化環境管理サーバ、仮想マシン制御子サーバ及び仮想マシン制御親サーバを実現するための資源である。
本発明の目的は、上述した問題点を解決できる仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラムを提供することにある。
本発明の一様態における仮想化システムは、
ユーザの操作に基づいて、信号を出力する操作手段と、
前記信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する操作通知手段と、
前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理手段と、
前記第2の操作情報に基づいて、前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する操作処理手段と、を含む。
本発明の一様態における端末は、
ユーザの操作に基づいて、信号を出力する操作手段と、
前記信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する操作通知手段と、を含み、
前記サーバは、前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、前記第2の操作情報に基づいて前記送信元に対応する仮想マシンに、前記操作に対応する。
本発明の一様態におけるサーバは、
端末が送信する操作メッセージに基づいて、前記端末に対応する前記仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理手段と、
前記第2の操作情報に基づいて、前記端末に対応する仮想マシンに、前記操作に対応する動作を指示する操作処理手段と、を含み、
前記端末は、ユーザの操作に基づいて、操作手段が出力する信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する。
本発明の一様態における仮想化方法は、
第1のコンピュータの操作手段が、ユーザの操作に基づいて信号を出力し、
前記第1のコンピュータのプロセッサが、
前記信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、
前記操作メッセージをネットワークへ送信し、
第2のコンピュータのプロセッサが、
前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、
前記第2の操作情報に基づいて前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する。
本発明の一様態における第1のプログラムは、
操作手段を備えるコンピュータに、
ユーザの操作に基づいて前記操作手段が出力した信号に対応する、前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、
前記操作メッセージをネットワークへ送信する、処理を実行させ、
前記サーバは、前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、前記第2の操作情報に基づいて前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する。
本発明の一様態における第2のプログラムは、
端末が送信する操作メッセージに基づいて、前記端末に対応する前記仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、
前記第2の操作情報に基づいて、前記端末に対応する仮想マシンに、前記操作に対応する動作を指示する処理をコンピュータに実行させ、
前記端末は、ユーザの操作に基づいて、操作手段が出力する信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する。
本発明は、資源を浪費することなく、ユーザが仮想化システムを制御することを可能にするという効果がある。
本発明の第1の実施形態に係る仮想化システムの構成を示すブロック図である。 第1の実施形態におけるリモート端末の構成を示すブロック図である。 第1の実施形態における仮想化マシン提供サーバの構成を示すブロック図である。 第1の実施形態における操作メッセージの一例を示す図である。 第1の実施形態におけるサーバ識別子の一例を示す図である。 第1の実施形態に係る仮想化システムを実現するコンピュータのハードウエア構成を示すブロック図である。 第1の実施形態における仮想化システムの動作を示すフローチャートである。 本発明の第2の実施形態に係る仮想化システムの構成を示すブロック図である。 第2の実施形態におけるリモート端末の構成を示すブロック図である。 第2の実施形態におけるインタフェースカードの構成を示すブロック図である。 第2の実施形態における仮想化システムの仮想化構成を示すブロック図である。 第2の実施形態における仮想化マシン提供サーバのPCIバスツリーの一例を示す図である。 第2の実施形態における仮想マシンのPCIバスツリーの一例を示す図である。 第2の実施形態における仮想化ソフト及び仮想マシンの構成を示すブロック図である。 第2の実施形態におけるリモート端末の動作を示すフローチャートである。 第2の実施形態における仮想化マシン提供サーバの動作を示すフローチャートである。
本発明を実施するための形態について図面を参照して詳細に説明する。尚、各図面及び明細書記載の各実施形態において、同様の構成要素には同一の符号を付与し、説明を適宜省略する。
<<<第1の実施形態>>>
図1は、本発明の第1の実施形態に係る仮想化システム101の構成を示すブロック図である。図1に示すように、本実施形態に係る仮想化システム101は、操作ボタン(操作部或いは操作手段とも呼ばれる)210と操作通知部220とメッセージ処理部310と操作処理部320とを含む。例えば、操作ボタン210は、物理的な押しボタンである。尚、操作ボタン210は、少なくともオン/オフの信号を出力する、任意の操作手段であってよい。
図1に示す各構成要素は、ハードウエア単位の回路でも、マイクロチップに含まれるモジュールでも、コンピュータ装置の機能単位に分割された構成要素でもよい。ここでは、図1に示す構成要素が、コンピュータ装置の機能単位に分割された構成要素であるものとして説明する。
操作ボタン210及び操作通知部220は、例えば、仮想化マシン(不図示)を利用するユーザが使用する、端末に搭載されてよい。図2は、本実施形態における、操作ボタン210及び操作通知部220を含む端末である、リモート端末201の構成を示すブロック図である。
メッセージ処理部310及び操作処理部320は、例えば、仮想マシンを提供するサーバ装置に搭載されてよい。図3は、本実施形態における、メッセージ処理部310及び操作処理部320を含むサーバである、仮想化マシン提供サーバ301の構成を示すブロック図である。
===操作ボタン210===
操作ボタン210は、ユーザの操作に基づいて信号を出力する。
===操作通知部220===
操作通知部220は、操作ボタン210が出力する信号に基づいて、操作ボタン210に対して行われた操作の内容を示す第1の操作情報を生成する。
次に、操作通知部220は、その第1の操作情報に仮想マシン(不図示)を提供する仮想化マシン提供サーバ301を宛先とするヘッダを付加し、操作メッセージを生成する。例えば、その宛先は、仮想化マシン提供サーバ301に実装されるインタフェースカード(不図示)の識別子である。
次に、操作通知部220は、その操作メッセージを、ネットワーク(不図示)へ送信する。そのネットワークは、操作通知部220とメッセージ処理部310とを接続するネットワークである。換言すると、そのネットワークは、リモート端末201と仮想化マシン提供サーバ301とを接続するネットワークである。そのネットワークは、IP(Internet Protocol)ネットワークや、無線LAN、その他の任意のネットワークであってよい。
図4は、本実施形態における操作メッセージ820の一例を示す図である。図4に示すように、操作メッセージ820は、ヘッダ及び第1の操作情報を含む。
図5は、本実施形態におけるサーバ識別子831の一例を示す図である。サーバ識別子831は、例えば、宛先である仮想化マシン提供サーバ301の、インタフェースカードの識別子である。
===メッセージ処理部310===
メッセージ処理部310は、操作メッセージ820に基づいて、第2の操作情報を生成する。第2の操作情報は、その操作メッセージ820を送信したリモート端末201において、そのリモート端末201対応する仮想マシンに対し、その第1の操作情報で示される操作が行われたことを示す情報である。
具体的には、第1に、メッセージ処理部310は、操作メッセージ820をヘッダと第1の操作情報とに分離する。第2に、メッセージ処理部310は、そのヘッダに含まれる送信元の情報に基づいて、操作メッセージ820を送信したリモート端末201を特定する。第3に、メッセージ処理部310は、その特定したリモート端末201を示す情報(例えば、端末番号)とその第1の操作情報とを含む、第2の操作情報を生成する。
===操作処理部320===
操作処理部320は、その第2の操作情報に基づいて、そのリモート端末201に対応するその仮想マシンを操作する。
具体的には、操作処理部320は、その第2の操作情報に含まれるその第1の操作情報に基づいて、仮想マシンに対する指示(動作の指示)を決定する。次に、操作処理部320は、その第2の操作情報に含まれる端末番号で特定されるリモート端末201に対応するその仮想マシンに、決定したその指示を出力する。
次に、本実施形態をコンピュータで実現する場合のハードウエア単位の構成要素について、説明する。
図6は、本実施形態におけるリモート端末201及び仮想化マシン提供サーバ301のそれぞれを実現するコンピュータ700のハードウエア構成を示す図である。
図6に示すように、コンピュータ700は、プロセッサ701、記憶部702、記憶装置703、入力部704、出力部705及び通信部706を含む。更に、コンピュータ700は、外部から供給される記録媒体(または記憶媒体)707を含む。例えば、記録媒体707は、情報を非一時的に記憶する不揮発性記録媒体(非一時的記録媒体)である。また、記録媒体707は、情報を信号として保持する、一時的記録媒体であってもよい。
プロセッサ701は、オペレーティングシステム(不図示)を動作させて、コンピュータ700の全体の動作を制御する。例えば、プロセッサ701は、記憶装置703に装着された記録媒体707から、そのプログラムやデータを読み込み、読み込んだそのプログラムやそのデータを記憶部702に書き込む。ここで、そのプログラムは、例えば、後述の図7に示すフローチャートの動作をコンピュータ700に実行させるためのプログラムである。
そして、プロセッサ701は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、図2に示す操作ボタン210及び操作通知部220、或いは図3に示すメッセージ処理部310及び操作処理部320、として各種の処理を実行する。
尚、プロセッサ701は、通信網(不図示)に接続される外部コンピュータ(不図示)から、記憶部702にそのプログラムやそのデータをダウンロードしてもよい。
記憶部702は、そのプログラムやそのデータを記憶する。記憶部702は、操作メッセージ820やサーバ識別子831などを記憶してよい。記憶部702は、リモート端末201においては、図2に示す操作通知部220の一部として含まれてよい。また、記憶部702は、仮想化マシン提供サーバ301においては、図3に示すメッセージ処理部310及び操作処理部320の一部として含まれてよい。
記憶装置703は、例えば、光ディスクや、フレキシブルディスク、磁気光ディスク、外付けハードディスク半導体メモリなどであって、記録媒体707を含む。記憶装置703(記録媒体707)は、そのプログラムをコンピュータ読み取り可能に記憶する。記憶装置703は、操作メッセージ820やサーバ識別子831などを記憶してよい。記憶装置703は、リモート端末201においては、図2に示す操作通知部220一部として含まれてよい。また、記憶装置703は、仮想化マシン提供サーバ301においては、図3に示すメッセージ処理部310及び操作処理部320の一部として含まれてよい。
入力部704は、オペレータによる操作の入力や外部からの情報の入力を受け付ける。入力操作に用いられるデバイスは、例えば、マウスや、キーボード、内蔵のキーボタン及びタッチパネルなどである。図2に示す操作ボタン210は、入力部704の一部であってよい。入力部704は、リモート端末201においては、図2に示す操作通知部220一部として含まれてよい。また、入力部704は、仮想化マシン提供サーバ301においては、3に示すメッセージ処理部310及び操作処理部320の一部として含まれてもよい。
出力部705は、例えばディスプレイで実現される。出力部705は、例えばGUI(GRAPHICAL User Interface)によるオペレータへの入力要求や、オペレータに対する出力提示などのために用いられる。出力部705は、リモート端末201においては、図2に示す操作通知部220一部として含まれてよい。また、出力部705は、仮想化マシン提供サーバ301においては、図3に示すメッセージ処理部310及び操作処理部320の一部として含まれてもよい。
通信部706は、前述のインタフェースにおける通信を実現する。通信部706は、リモート端末201においては、操作通知部220の一部として含まれてよい。また、通信部706は、仮想化マシン提供サーバ301においては、メッセージ処理部310の一部として含まれてよい。
以上説明したように、図2に示すリモート端末201及び図3に示す仮想化マシン提供サーバ301のそれぞれの機能単位の各構成要素は、図6に示すハードウエア構成のコンピュータ700によって実現される。但し、コンピュータ700が備える各部の実現手段は、上記に限定されない。すなわち、コンピュータ700は、物理的に結合した1つの装置により実現されてもよいし、物理的に分離した2つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。
尚、上述のプログラムのコードを記録した記録媒体707が、コンピュータ700に供給される場合、プロセッサ701は、記録媒体707に格納されたそのプログラムのコードを読み出して実行してもよい。或いは、プロセッサ701は、記録媒体707に格納されたそのプログラムのコードを、記憶部702、記憶装置703またはその両方に格納してもよい。すなわち、本実施形態は、コンピュータ700(プロセッサ701)が実行するそのプログラム(ソフトウエア)を、一時的にまたは非一時的に、記憶する記録媒体707の実施形態を含む。尚、情報を非一時的に記憶する記憶媒体は、不揮発性記憶媒体とも呼ばれる。
以上が、本実施形態における仮想化システム101を実現するコンピュータ700の、ハードウエア単位の各構成要素についての説明である。
次に本実施形態の動作について、図面を参照して詳細に説明する。
図7は、本実施形態の動作を示すフローチャートである。尚、このフローチャートによる処理は、前述したプロセッサ701によるプログラム制御に基づいて、実行されてよい。また、処理のステップ名については、S601のように、記号で記載する。
仮想化システム101は、ユーザがリモート端末201の操作ボタン210を操作したことを契機に、図7に示すフローチャートの動作を開始する。
操作ボタン210は、ユーザの操作に基づいて、信号を出力する(ステップS601)。例えば、操作ボタン210は、押下(操作)されている間、「1」を出力する。また、操作ボタン210は、押下されていない間、「0」を出力する。
次に、操作通知部220は、操作ボタン210が出力する信号に基づいて、操作ボタン210が押下されていた時間を示す第1の操作情報を生成する(ステップS602)。
次に、操作通知部220は、生成したその第1の操作情報を含み、仮想化マシン提供サーバ301を宛先とする操作メッセージ820を生成する(ステップS603)。例えば、その宛先は、図6に示す記憶部702或いは記憶装置703に、予め記憶されていてよい。また、操作通知部220は、図6に示す入力部704を介して操作者が入力した、その宛先を取得してもよい。また、操作通知部220は、図6に示す通信部706を介して図示しない機器から、その宛先を受信してもよい。また、操作通知部220は、図6に示す記憶装置703を介して、記録媒体707に記録されたその宛先を取得してもよい。
次に、操作通知部220は、生成したその操作メッセージ820をネットワークへ送信する(ステップS604)。
次に、メッセージ処理部310は、そのネットワークからその操作メッセージ820を受信する(ステップS605)。
次に、メッセージ処理部310は、その操作メッセージ820をヘッダと第1の操作情報とに分離する(ステップS606)。
次に、メッセージ処理部310は、ヘッダに基づいて、その第1の操作情報を含む第2の操作情報を生成送信する(ステップS607)。
次に、操作処理部320は、その第2の操作情報に基づいて、仮想マシンを操作する(ステップS608)。
上述した本実施形態における効果は、資源を浪費することなく、ユーザが仮想化システム101を制御することを可能にする点である。
その理由は、以下のような構成を含むからである。即ち、第1に、操作通知部220が、操作ボタン210に対して行われた操作の内容を示す第1の操作情報に、仮想マシンを提供するサーバを宛先とするヘッダを付加した操作メッセージ820を送信する。第2に、メッセージ処理部310が、操作メッセージ820に基づいて、操作メッセージ820の送信元に対応する仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成する。第3に、操作処理部320が、第2の操作情報に基づいて、その仮想マシンにその操作に対応する動作を指示する。
<<<第1の実施形態の第1の変形例>>>
本変形例において、操作通知部220は、第1の操作情報から更に第2の操作情報を生成する。
具体的には、操作通知部220は、自身が動作するリモート端末201を示す情報とその第1の操作情報とを含む、第2の操作情報を生成する。例えば、自身が動作するリモート端末201を示す情報は、図6に示す記憶部702或いは記憶装置703に、予め記憶されていてよい。また、操作通知部220は、図6に示す入力部704を介して操作者が入力した、自身が動作するリモート端末201を示す情報を取得してもよい。また、操作通知部220は、図6に示す通信部706を介して図示しない機器から、自身が動作するリモート端末201を示す情報を受信してもよい。また、操作通知部220は、図6に示す記憶装置703を介して、記録媒体707に記録された自身が動作するリモート端末201を示す情報を取得してもよい。
次に、本変形例の操作通知部220は、その第2の操作情報を含む操作メッセージ820をネットワークへ送信する。
そして、本実施形態のメッセージ処理部310は、受信した操作メッセージ820に含まれるその第2の操作情報を、メッセージ処理部310自身が生成したものとして、そのまま利用する。
即ち、本変形例においては、メッセージ処理部310における操作メッセージ820を送信したリモート端末201を特定する動作と、第2の操作情報を生成する動作とを、操作通知部220が実行する。
本変形例は、上述のような動作とすることにより、メッセージ処理部310(即ち、仮想化マシン提供サーバ301)における負荷集中を回避することが可能となる。
<<<第1の実施形態の第2の変形例>>>
本変形例において、操作通知部220は、操作ボタン210が出力する信号に基づいて生成される操作ボタン210が押下されていた時間に対応する、仮想マシンに対する指示を示す第1の操作情報を生成する。
そして、本実施形態の操作処理部320は、その第2の操作情報に含まれるその第1の操作情報を、その第2の操作情報に含まれる端末番号で特定されるリモート端末201に対応するその仮想マシンに出力する。
即ち、本変形例においては、操作処理部320における仮想マシンに対する指示を決定する動作を、操作通知部220が実行する。
本変形例は、上述のような動作とすることにより、操作処理部320(即ち、仮想化マシン提供サーバ301)における負荷集中を回避することが可能となる。
<<<第2の実施形態>>>
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
図8は、本発明の第2の実施形態に係る仮想化システム102の構成を示すブロック図である。
図8に示すように、本実施形態における仮想化システム102は、リモート端末202と仮想化マシン提供サーバ302とネットワークスイッチ402とを備える。図8に示す例に係わらず、仮想化システム102が含むリモート端末202、仮想化マシン提供サーバ302及びネットワークスイッチ402の台数は任意の数であってよい。
リモート端末202は、ユーザが仮想マシンを操作する際に使用する端末である。
仮想化マシン提供サーバ302は、仮想化ソフト(詳細は後述)が動作し、仮想マシンを提供するサーバである。
ネットワークスイッチ402は、複数のインタフェースカード330とリモート端末202間の、フォワーディング・ルーティングを行う装置である。ネットワークスイッチ402は、周知の装置であるため、詳細な説明を省略する。
次に、リモート端末202について詳細に説明する。
図9は、リモート端末202の構成を示すブロック図である。図9に示すように、リモート端末202は、操作ボタン210、電源信号変換部222、リモート端末主処理部228及びネットワークインタフェース229を含む。
図9に示す各構成要素は、ハードウエア単位の回路でも、マイクロチップに含まれるモジュールでも、コンピュータ装置の機能単位に分割された構成要素でもよい。ここでは、図9に示す構成要素が、コンピュータ装置の機能単位に分割された構成要素であるものとして説明する。
===電源信号変換部222===
電源信号変換部222は、操作ボタン210が出力する信号に基づいて、操作ボタン210に対して行われた操作の内容を示す第1の操作情報を含む操作メッセージ820を生成し、ネットワークインタフェース229を介してネットワークへ送信する。電源信号変換部222は、A/D変換部223、カプセル化部224及び接続管理部225を含む。
A/D変換部223は、操作ボタン210が出力する信号(ここでは、ON/OFFのアナログパルス)をデジタル情報(ここでは、ONの状態であった時間を示す情報)に変換し、第1の操作情報を生成する。
カプセル化部224は、接続管理部225が決定する仮想化マシン提供サーバ302を宛先として、第1の操作情報をカプセル化して操作メッセージ820を生成し、その操作メッセージ820を出力する。
接続管理部225は、仮想化マシン提供サーバ302を特定するサーバ識別子831を保持し、そのサーバ識別子831を操作メッセージ820の宛先としてカプセル化部224に出力する。
===リモート端末主処理部228===
リモート端末主処理部228は、リモート端末202における、仮想マシンの端末としての主機能の動作部である。リモート端末主処理部228に関する技術は、周知の技術であるため、詳細な説明を省略する。
===ネットワークインタフェース229===
ネットワークインタフェース229は、仮想化マシン提供サーバ302と通信を行う。ネットワークインタフェース229に関する技術は、周知の技術であるため、詳細な説明を省略する。
===リモート端末202のハードウエア構成===
リモート端末202は、リモート端末201と同様に、図6に示すコンピュータ700によって実現されてよい。
この場合、プロセッサ701は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、電源信号変換部222、リモート端末主処理部228及びネットワークインタフェース229として、各種の処理を実行する。ここで、そのプログラムは、例えば、後述の図15に示すフローチャートの動作をコンピュータ700に実行させるためのプログラムである。
記憶部702は、サーバ識別子831及びその他の情報を記憶してよい。記憶部702は、接続管理部225及び図9に示す他の構成要素の一部として含まれてよい。
記憶装置703は、サーバ識別子831及びその他の情報を記憶してよい。記憶装置703は、接続管理部225及び図9に示す他の構成要素の一部として含まれてよい。
通信部706は、ネットワークインタフェース229の一部として含まれてよい。
以上が、リモート端末202についての詳細な説明である。
次に、仮想化マシン提供サーバ302について詳細に説明する。
図8に示すように、仮想化マシン提供サーバ302は、インタフェースカード330及びCPU/Chipset340を含む。
===インタフェースカード330===
インタフェースカード330は、リモート端末202と通信を行うためのインタフェースを搭載したボードである。
インタフェースカード330は、固有の識別子(本実施形態においては、サーバ識別子831)を有する。リモート端末202のそれぞれは、リモート端末202のそれぞれが保持するサーバ識別子831を持つインタフェースカード330と接続される。
図10は、インタフェースカード330の構成を示すブロック図である。図10に示すように、インタフェースカード330は、電源信号処理部331、ネットワークインタフェース334、インタフェースカード主処理部338及びPCI Express(登録商標) Busインタフェース339を含む。
===電源信号処理部331===
電源信号処理部331は、操作メッセージ820を受信し、操作メッセージ820に基づいて第2の操作情報を生成する。そして、電源信号処理部331は、生成した第2の操作情報を、PCI Express Busインタフェース339を介して、CPU/Chipset340へ送信する。
電源信号処理部331は、デカプセル部332及び接続管理部333を含む。
デカプセル部332は、受信した操作メッセージ820をヘッダと第1の操作情報とに分離する。
次に、デカプセル部332は、接続管理部333が出力するPCI Expressヘッダを用いて、その第1の操作情報をカプセル化して第2の操作情報を生成する。
次に、デカプセル部332は、PCI Express Busインタフェース339を介して、その第2の操作情報をCPU/Chipset340へ送信する。
接続管理部333は、そのヘッダに含まれる送信元のリモート端末202の情報、及びリモート端末202の仮想化情報に基づいて、送信元のリモート端末202を特定する。次に、接続管理部333は、その送信元のリモート端末202に対応するPCI Expressヘッダを生成し、そのPCI Expressヘッダをデカプセル部332に出力する。その仮想化情報は、後述する図12に示すような、リモート端末202のバス番号を含む情報である。
===インタフェースカード主処理部338===
インタフェースカード主処理部338は、リモート端末202のリモート端末主処理部228との通信を処理する。インタフェースカード主処理部338に関する技術は、周知の技術であるため、詳細な説明を省略する。
===ネットワークインタフェース334===
ネットワークインタフェース334は、リモート端末202と通信を行う。ネットワークインタフェース334に関する技術は、周知の技術であるため、詳細な説明を省略する。
===PCI Express Busインタフェース339===
PCI Express Busインタフェース339は、CPU/Chipset340との通信を制御する。PCI Express Busインタフェース339に関する技術は、周知の技術であるため、詳細な説明を省略する。
===CPU/Chipset340===
CPU/Chipset340は、仮想化ソフトを動作させ、仮想マシンを提供する。CPU/Chipset340に関する技術は、周知の技術であるため、詳細な説明を省略する。
次に、仮想化システム102の仮想化構成について説明する。
図11は、仮想化システム102における仮想化構成を示すブロック図である。図11の例に係わらず仮想化マシン提供サーバ302は、仮想マシン360を含んでよい。また、仮想化システム102は、任意の台数のリモート端末202を含んでよい。
図11に示すように、仮想マシン360は、仮想化ソフト350上に構築される。
仮想化ソフト350は、各リモート端末202をPCI Expressデバイスとして取り扱う。即ち、仮想化マシン提供サーバ302において、各リモート端末202は、PICバスツリーで管理され、固有のバス番号を与えられる。図12は、仮想化マシン提供サーバ302のPCI(Peripheral Component Interconnect)バスツリーの一例を示す図である。PCIバスツリーに関する技術は、周知の技術であるため、詳細な説明を省略する。
仮想化ソフト350は、仮想マシン360のそれぞれとリモート端末202のそれぞれとを固有バス番号で紐付する。即ち、仮想マシン360のそれぞれのPCIバスツリーにおいて、仮想マシン360とリモート端末202とが直接接続される。図13は、仮想マシン360のPCIバスツリーの一例を示す図である。
次に、仮想化ソフト350及び仮想マシン360について、詳細に説明する。
図14は、仮想化ソフト350及び仮想マシン360の構成を示すブロック図である。
===仮想化ソフト350===
図14に示すように、仮想化ソフト350は、電源信号処理部351、仮想マシンインタフェース354、仮想化ソフト主処理部358及びPCI Express Busインタフェース359を含む。図14に示す例に係わらず、仮想マシン360は、任意の数であってよい。
電源信号処理部351は、信号変換部352及び接続管理部353を含む。
信号変換部352は、PCI Express Busインタフェース359を介して第2の操作情報を受信する。
次に、接続管理部353は、その第2の操作情報、及びリモート端末202と仮想マシン360との対応情報を参照し、指示を出力する仮想マシン360を決定する。例えば、その対応情報は、図13に示すような仮想マシン360のPCIバスツリーにより、リモート端末202を指定する情報である。
次に、信号変換部352は、その第2の操作情報に含まれる第1の操作情報に基づいて、仮想マシン360に指示する動作を決定する。例えば、信号変換部352は、その第1の操作情報を解析し、操作ボタン210が所定の時間未満押されたことを検出した場合、その指示を出力する仮想マシン360が電源オン状態であれば、「シャットダウン」を決定する。また、信号変換部352は、操作ボタン210が所定の時間未満押されたことを検出した場合、その指示を出力する仮想マシン360が電源オフ状態であれば、電源オンを決定する。また、信号変換部352は、操作ボタン210が所定の時間以上押されたことを検出した場合、「強制電源オフ」を決定する。
次に、信号変換部352は、仮想マシンインタフェース354を介して、決定した仮想マシン360に、決定したその動作の指示を出力する。
仮想マシンインタフェース354は、仮想化ソフト350と仮想マシン360間の通信を制御する。仮想マシンインタフェース354に関する技術は、周知の技術であるため、詳細な説明を省略する。
仮想化ソフト主処理部358は、仮想マシン360とリモート端末202のリモート端末主処理部228との通信を制御する。仮想化ソフト主処理部358に関する技術は、周知の技術であるため、詳細な説明を省略する。
PCI Express Busインタフェース359は、インタフェースカード330との通信を制御する。PCI Express Busインタフェース359に関する技術は、周知の技術であるため、詳細な説明を省略する。
===仮想マシン360===
同じく図14に示すように、仮想マシン360は、OS361及び指示受信部362を含む。指示受信部362は、仮想化ソフト350が出力する指示に基づいて、OS361と連動して指示された動作を実行する。OS361及び指示受信部362に関する技術は、周知の技術であるため、詳細な説明を省略する。
===仮想化マシン提供サーバ302のハードウエア構成===
仮想化マシン提供サーバ302は、仮想化マシン提供サーバ301と同様に、図6に示すコンピュータ700によって実現されてよい。
この場合、プロセッサ701は、CPU/Chipset340に対応する。プロセッサ701は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、更に、図14に示す仮想化ソフト350及び仮想マシン360として、各種の処理を実行する。ここで、そのプログラムは、例えば、後述の図16に示すフローチャートの動作をコンピュータ700に実行させるためのプログラムである。
記憶部702は、例えばリモート端末202と仮想マシン360との対応情報や、その他の情報を記憶してよい。
記憶装置703は、例えばリモート端末202と仮想マシン360との対応情報や、その他の情報を記憶してよい。
また、通信部706は、インタフェースカード330に対応する。
以上が、仮想化マシン提供サーバ302についての詳細な説明である。
次に、本実施形態の動作について図面を参照して詳細に説明する。
図15は、本実施形態におけるリモート端末202の動作を示すフローチャートである。尚、このフローチャートによる処理は、前述したプロセッサ701によるプログラム制御に基づいて、実行されてよい。また、処理のステップ名については、S601のように、記号で記載する。
仮想化システム101は、ユーザがリモート端末202の操作ボタン210を操作したことを契機に、図15に示すフローチャートの動作を開始する。
操作ボタン210は、ユーザの操作に基づいて、信号を出力する(ステップS621)
次に、電源信号変換部222のA/D変換部223は、操作ボタン210が出力する信号を受信し、その受信した信号をデジタル情報に変換して第1の操作情報を生成する(ステップS622)。
次に、電源信号変換部222の接続管理部225は、サーバ識別子831を操作メッセージ820の宛先としてカプセル化部224に出力する(ステップS623)。
次に、電源信号変換部222のカプセル化部224は、接続管理部225から受け取ったサーバ識別子831を宛先として、第1の操作情報をカプセル化して操作メッセージ820を生成し、その操作メッセージ820を出力する(ステップS624)。
次に、ネットワークインタフェース229は、操作メッセージ820をネットワークへ送信する(ステップS625)。
図16は、本実施形態における仮想化マシン提供サーバ302の動作を示すフローチャートである。尚、このフローチャートによる処理は、前述したプロセッサ701によるプログラム制御に基づいて、実行されてよい。また、処理のステップ名については、S601のように、記号で記載する。
仮想化マシン提供サーバ302は、操作メッセージ820を受信したことを契機に、図16に示すフローチャートの動作を開始する。
インタフェースカード330のネットワークインタフェース334は、受信した操作メッセージ820を電源信号処理部331に出力する(ステップS630)。
次に、インタフェースカード330の電源信号処理部331のデカプセル部332は、操作メッセージ820をヘッダと第1の操作情報とに分離する(ステップS631)。
次に、接続管理部333は、そのヘッダを解析して送信元のリモート端末202を特定し、そのリモート端末202に対応するPCI Expressヘッダを生成する(ステップS632)。例えば、接続管理部333は、そのリモート端末202に付与されたバス番号を含むPCI Expressヘッダを生成する。
次に、デカプセル部332は、その第1の操作情報にそのPCI Expressヘッダを付加し、第2の操作情報としてPCI Express Busインタフェース339を介して出力する(ステップS633)。
次に、仮想化ソフト350の電源信号処理部351は、PCI Express Busインタフェース359を介して、その第2の操作情報を受け取る(ステップS634)。
次に、電源信号処理部351の接続管理部353は、その第2の操作情報のPCI Expressヘッダに含まれるバス番号に基づいて、仮想マシン360を特定する(ステップS635)。尚、接続管理部353は、その第2の操作情報のPCI Expressヘッダに含まれるメモリアドレスに基づいて、仮想マシン360を特定してもよい
次に、信号変換部352は、その第2の操作情報に含まれる第1の操作情報を解析し、仮想マシン360に指示する動作を決定する(ステップS636)。
次に、信号変換部352は、ステップS636で決定された指示を、ステップS635で特定された仮想マシン360に出力する(ステップS637)。
上述した本実施形態における効果は、第1の実施形態と同様に、資源を浪費することなく、ユーザが仮想化システム102を制御することを可能にする点である。
その理由は、以下のような構成を含むからである。即ち、第1に、リモート端末202の電源信号変換部222が第1の操作情報を含む操作メッセージ820を送信する。第2に、仮想化マシン提供サーバ302のインタフェースカード330及び仮想化ソフト350が操作メッセージ820に基づいて、仮想マシン360を操作する。
<<<第2の実施形態の変形例>>>
第2の実施形態おいて、仮想化システム102は、前述した第1の実施形態の第1及び2の変形例を適用されてよい。
以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。例えば、複数個の任意のその構成要素が1個のモジュールとして実現されてよい。また、その構成要素の内の任意のひとつが複数のモジュールで実現されてもよい。また、その構成要素の内の任意のひとつがその構成要素の内の任意の他のひとつであってよい。また、その構成要素の内の任意のひとつの一部と、その構成要素の内の任意の他のひとつの一部とが重複してもよい。
以上説明した各実施形態における各構成要素及び各構成要素を実現するモジュールは、必要に応じ、可能であれば、ハードウエア的に実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、コンピュータ及びプログラムで実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、ハードウエア的なモジュールとコンピュータ及びプログラムとの混在により実現されてもよい。
そのプログラムは、例えば、磁気ディスクや半導体メモリなど、コンピュータが読み取り可能な非一時的記録媒体に記録され、コンピュータに提供される。そして、そのプログラムは、コンピュータの立ち上げ時などに、非一時的記録媒体からコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
また、以上説明した各実施形態では、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は内容的に支障のない範囲で変更することができる。
更に、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。例えば、ある動作の実行中に他の動作が発生してよい。また、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複してもよい。
更に、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作との関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は内容的に支障のない範囲で変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で変更されてよい。
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)ユーザの操作に基づいて、信号を出力する操作部と、
前記信号に対応する前記操作部に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する操作通知部と、
前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理部と、
前記第2の操作情報に基づいて、前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する操作処理部と、を含む
仮想化システム。
(付記2)前記操作通知部は、前記第1の操作情報から更に前記第2の操作情報を生成し、前記第2の操作情報に前記ヘッダを付加して前記操作メッセージを生成し、
前記メッセージ処理部は、前記操作メッセージに含まれる前記第2の操作情報を、前記メッセージ処理部自身が生成したものとして利用する
付記1記載の仮想化システム。
(付記3)前記操作通知部は、前記操作部から出力される信号の物理的な変化を示す情報を前記第1の操作情報として生成する
付記1または2記載の装置。
(付記4)前記操作通知部は、前記操作部から出力される信号の物理的な変化に対応する、前記仮想マシンに対する指示を示す前記第1の操作情報を生成する
付記1乃至3のいずれか1つに記載の仮想化システム。
(付記5)前記操作部は端末に搭載され、
前記メッセージ処理部は、前記端末をPCI(Peripheral Component Interconnect) Expressデバイスと見なして、前記第2の操作情報を生成し、
前記操作処理部は、前記端末をPCI Expressデバイスと見なして、前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する
付記1乃至4のいずれか1つ項に記載の仮想化システム。
(付記6)ユーザの操作に基づいて、信号を出力する操作部と、
前記信号に対応する前記操作部に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する操作通知部と、を含み、
前記サーバは、前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理部と、前記第2の操作情報に基づいて、前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する操作処理部と、を含む
端末。
(付記7)端末が送信する操作メッセージに基づいて、前記端末に対応する前記仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理部と、
前記第2の操作情報に基づいて、前記端末に対応する仮想マシンに、前記操作に対応する動作を指示する操作処理部と、を含み、
前記操作メッセージは、前記第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して生成され、
前記第1の操作情報は、ユーザの操作に基づいて出力される操作部の信号に対応する、前記操作部に対して行われた操作の内容を示す、
サーバ。
(付記8)第1のコンピュータの操作部が、ユーザの操作に基づいて信号を出力し、
前記第1のコンピュータのプロセッサが、
前記信号に対応する前記操作部に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、
前記操作メッセージをネットワークへ送信し、
第2のコンピュータのプロセッサが、
前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、
前記第2の操作情報に基づいて前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する仮想化方法。
(付記9)操作部を備えるコンピュータに、
ユーザの操作に基づいて前記操作部が出力した信号に対応する、前記操作部に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、
前記操作メッセージをネットワークへ送信する、処理を実行させ、
前記サーバは、前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、前記第2の操作情報に基づいて前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示するプログラム。
(付記10)端末が送信する操作メッセージに基づいて、前記端末に対応する前記仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、
前記第2の操作情報に基づいて、前記端末に対応する仮想マシンに、前記操作に対応する動作を指示する、処理をコンピュータに実行させ、
前記端末は、ユーザの操作に基づいて、操作部が出力する信号に対応する前記操作部に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する、
プログラム。
(付記11)操作部を備えるコンピュータが、
ユーザの操作に基づいて前記操作部が出力した信号に対応する、前記操作部に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、
前記操作メッセージをネットワークへ送信し、
前記サーバは、前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、前記第2の操作情報に基づいて前記送信元に対応する仮想マシンに、前記操作に対応する動作を指示する
仮想化方法。
(付記12)コンピュータが、
端末が送信する操作メッセージに基づいて、前記端末に対応する前記仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、
前記第2の操作情報に基づいて、前記端末に対応する仮想マシンに、前記操作に対応する動作を指示し、
前記端末は、ユーザの操作に基づいて、操作部が出力する信号に対応する前記操作部に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する、
仮想化方法。
以上、各実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得るさまざまな変更をすることができる。
101 仮想化システム
102 仮想化システム
201 リモート端末
202 リモート端末
210 操作ボタン
220 操作通知部
222 電源信号変換部
223 A/D変換部
224 カプセル化部
225 接続管理部
228 リモート端末主処理部
229 ネットワークインタフェース
301 仮想化マシン提供サーバ
302 仮想化マシン提供サーバ
310 メッセージ処理部
320 操作処理部
330 インタフェースカード
331 電源信号処理部
332 デカプセル部
333 接続管理部
334 ネットワークインタフェース
338 インタフェースカード主処理部
339 PCI Express Busインタフェース
340 CPU/Chipset
350 仮想化ソフト
351 電源信号処理部
352 信号変換部
353 接続管理部
354 仮想マシンインタフェース
358 仮想化ソフト主処理部
359 PCI Express Busインタフェース
360 仮想マシン
361 OS
362 指示受信部
402 ネットワークスイッチ
700 コンピュータ
701 プロセッサ
702 記憶部
703 記憶装置
704 入力部
705 出力部
706 通信部
707 記録媒体
820 操作メッセージ
831 サーバ識別子

Claims (9)

  1. ユーザの操作に基づいて、信号を出力する操作手段と、
    前記信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する操作通知手段と、
    前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理手段と、
    前記第2の操作情報に基づいて、前記仮想マシンに、前記操作に対応する動作として、前記仮想マシンのシャットダウンまたは前記仮想マシンの電源オンを指示する操作処理手段と、を含み、
    前記信号は、前記操作手段への押下に基づいて出力され、
    前記操作通知手段は、前記操作手段が押下された時間を示す情報を前記第1の操作情報として生成する
    仮想化システム。
  2. ユーザの操作に基づいて、信号を出力する操作手段と、
    前記信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、前記操作メッセージをネットワークへ送信する操作通知手段と、
    前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理手段と、
    前記第2の操作情報に基づいて、前記仮想マシンに、前記操作に対応する動作として、前記仮想マシンのシャットダウンまたは前記仮想マシンの電源オンを指示する操作処理手段と、を含み、
    前記信号は、前記操作手段への所定の時間未満押下された操作に基づいて出力され、
    前記操作処理手段は、前記操作に対応する動作として、前記仮想マシンが電源オン状態であれば前記仮想マシンのシャットダウンを指示し、前記仮想マシンが電源オフ状態であれば前記仮想マシンの電源オンを指示する、
    仮想化システム。
  3. 前記操作通知手段は、前記第1の操作情報から更に前記第2の操作情報を生成し、前記第2の操作情報に前記ヘッダを付加して前記操作メッセージを生成し、
    前記メッセージ処理手段は、前記操作メッセージに含まれる前記第2の操作情報を、前記メッセージ処理手段自身が生成したものとして利用する
    請求項1又は2に記載の仮想化システム。
  4. 前記信号は、前記操作手段への押下に基づいて出力され、
    前記操作通知手段は、前記操作手段が押下された時間を示す情報に対応する、前記仮想マシンに対する指示を示す前記第1の操作情報を生成する
    請求項1乃至3のいずれか1項に記載の仮想化システム。
  5. 前記操作手段は端末に搭載され、
    前記メッセージ処理手段は、前記端末をPCI(Peripheral Component Interconnect) Expressデバイスと見なして、前記第2の操作情報を生成し、
    前記操作処理手段は、前記端末をPCI Expressデバイスと見なして、前記仮想マシンに、前記操作に対応する動作を指示する
    請求項1乃至4のいずれか1項に記載の仮想化システム。
  6. 前記信号は、前記操作手段への所定の時間以上押下された操作に基づいて出力され、
    前記操作処理手段は、前記操作に対応する動作として、前記仮想マシンの強制電源オフを指示する、
    請求項1乃至のいずれか1項に記載の仮想化システム。
  7. 端末が送信する操作メッセージに基づいて、前記端末に対応する仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成するメッセージ処理手段と、
    前記第2の操作情報に基づいて、前記仮想マシンに、前記操作に対応する動作として、前記仮想マシンが電源オン状態であれば前記仮想マシンのシャットダウンを指示し、前記仮想マシンが電源オフ状態であれば前記仮想マシンの電源オンを指示する操作処理手段と、を含み、
    前記端末は、操作手段を所定の時間未満押下するユーザの操作に基づいて、操作手段が出力する信号に対応する前記操作手段に対して行われた操作の内容を示す前記第1の操作情報に前記仮想マシンを提供するサーバを宛先とするヘッダを付加して前記操作メッセージを生成し、前記操作メッセージをネットワークへ送信する、
    サーバ。
  8. 第1のコンピュータの操作手段が、前記操作手段を所定の時間未満押下するユーザの操作に基づいて信号を出力し、
    前記第1のコンピュータのプロセッサが、
    前記信号に対応する前記操作手段に対して行われた操作の内容を示す第1の操作情報に仮想マシンを提供するサーバを宛先とするヘッダを付加して操作メッセージを生成し、
    前記操作メッセージをネットワークへ送信し、
    第2のコンピュータのプロセッサが、
    前記操作メッセージに基づいて、前記操作メッセージの送信元に対応する前記仮想マシンに対して前記第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、
    前記第2の操作情報に基づいて前記仮想マシンに、前記操作に対応する動作として、前記仮想マシンが電源オン状態であれば前記仮想マシンのシャットダウンを指示し、前記仮想マシンが電源オフ状態であれば前記仮想マシンの電源オンを指示する
    仮想化方法。
  9. 端末が送信する操作メッセージに基づいて、前記端末に対応する仮想マシンに対して第1の操作情報で示される操作が行われたことを示す、第2の操作情報を生成し、
    前記第2の操作情報に基づいて、前記仮想マシンに、前記操作に対応する動作として、前記仮想マシンが電源オン状態であれば前記仮想マシンのシャットダウンを指示し、前記仮想マシンが電源オフ状態であれば前記仮想マシンの電源オンを指示する処理をコンピュータに実行させ、
    前記端末は、操作手段を所定の時間未満押下するユーザの操作に基づいて、前記操作手段が出力する信号に対応する前記操作手段に対して行われた操作の内容を示す前記第1の操作情報に前記仮想マシンを提供するサーバを宛先とするヘッダを付加して前記操作メッセージを生成し、前記操作メッセージをネットワークへ送信する、
    プログラム。
JP2015013169A 2015-01-27 2015-01-27 仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラム Active JP6645011B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015013169A JP6645011B2 (ja) 2015-01-27 2015-01-27 仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラム
TW105100217A TWI635393B (zh) 2015-01-27 2016-01-06 虛擬化系統、伺服器、終端機、虛擬化方法及程式記錄媒體
US15/544,292 US20180011727A1 (en) 2015-01-27 2016-01-15 Virtualization system, server, terminal, virtualization method, and program recording medium
PCT/JP2016/000193 WO2016121317A1 (ja) 2015-01-27 2016-01-15 仮想化システム、サーバ、端末、仮想化方法及びプログラム記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015013169A JP6645011B2 (ja) 2015-01-27 2015-01-27 仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラム

Publications (2)

Publication Number Publication Date
JP2016139236A JP2016139236A (ja) 2016-08-04
JP6645011B2 true JP6645011B2 (ja) 2020-02-12

Family

ID=56542942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015013169A Active JP6645011B2 (ja) 2015-01-27 2015-01-27 仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラム

Country Status (4)

Country Link
US (1) US20180011727A1 (ja)
JP (1) JP6645011B2 (ja)
TW (1) TWI635393B (ja)
WO (1) WO2016121317A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102407757B1 (ko) * 2019-09-18 2022-06-10 주식회사 케이티 가상 모바일 시스템 및 가상 모바일 서비스 제공 방법

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63268035A (ja) * 1987-04-27 1988-11-04 Fujitsu Ltd ロ−カル端末シミユレ−タによるリモ−ト端末制御方式
US8335909B2 (en) * 2004-04-15 2012-12-18 Raytheon Company Coupling processors to each other for high performance computing (HPC)
US8028040B1 (en) * 2005-12-20 2011-09-27 Teradici Corporation Method and apparatus for communications between a virtualized host and remote devices
WO2008097273A1 (en) * 2006-08-10 2008-08-14 Avocent Huntsville Corporation Usb based virtual media system
JP4966942B2 (ja) * 2008-10-01 2012-07-04 株式会社日立製作所 仮想pc管理方法、仮想pc管理システム、および仮想pc管理プログラム
US8503468B2 (en) * 2008-11-05 2013-08-06 Fusion-Io, Inc. PCI express load sharing network interface controller cluster
JP5458899B2 (ja) * 2010-01-12 2014-04-02 富士通株式会社 仮想計算機、遠隔起動プログラム、遠隔起動方法及び仮想計算機システム
WO2011152910A1 (en) * 2010-06-02 2011-12-08 Vmware, Inc. Securing customer virtual machines in a multi-tenant cloud
WO2011151965A1 (ja) * 2010-06-03 2011-12-08 株式会社ソニー・コンピュータエンタテインメント 情報処理装置
JP5569197B2 (ja) * 2010-07-06 2014-08-13 富士通株式会社 計算機装置およびリセット制御プログラム
US8775590B2 (en) * 2010-09-02 2014-07-08 International Business Machines Corporation Reactive monitoring of guests in a hypervisor environment
JP5772127B2 (ja) * 2011-03-25 2015-09-02 富士通株式会社 仮想マシン管理方法、情報処理装置および仮想マシン管理プログラム
US9348396B2 (en) * 2011-06-08 2016-05-24 Nec Corporation Computer system, connection device, power supply control method, and power supply control program recording medium
US8694738B2 (en) * 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
JP2014035744A (ja) * 2012-08-10 2014-02-24 Nippon Telegr & Teleph Corp <Ntt> 検証管理装置、検証管理方法および検証管理プログラム
US9703588B2 (en) * 2014-08-12 2017-07-11 Vmware, Inc. Deployment of web client plugins in a virtualized computing environment

Also Published As

Publication number Publication date
TW201643727A (zh) 2016-12-16
WO2016121317A1 (ja) 2016-08-04
US20180011727A1 (en) 2018-01-11
JP2016139236A (ja) 2016-08-04
TWI635393B (zh) 2018-09-11

Similar Documents

Publication Publication Date Title
EP3367636B1 (en) System and method for automatically updating bios setup options
TWI584195B (zh) 伺服器系統中基於iSCSI的裸機OS映像部署及無磁碟啟動的方法
JP5569197B2 (ja) 計算機装置およびリセット制御プログラム
TW201823978A (zh) 用於自動更新數據中心中之伺服器系統之元件之韌體的電腦實施方法、系統以及非暫態電腦可讀取媒體
TW201732622A (zh) 可擴充集中式非揮發性記憶體儲存盒、電腦實施方法以及非暫態電腦可讀取儲存裝置
US20190171443A1 (en) Method of Updating Application and Recording Medium
JP6464162B2 (ja) ファームウェア仮想化のための方法および装置
EP2772858A2 (en) Management apparatus and method of managing server node
CN109936641B (zh) 域名解析的方法、虚拟交换机和分布式dns系统
WO2018205267A1 (zh) 输入设备实现方法及其实现装置
US8661238B2 (en) Identifying an OS corresponding to an address included in a magic packet and determining whether activation of the OS is permitted
JP5540793B2 (ja) 機能提供装置及びプログラム
JP6195465B2 (ja) 同期サーバ側スクリプティングを用いた遠隔カードコンテンツ管理
CN105162667B (zh) 虚拟机配置方法和装置
KR102147504B1 (ko) 다중 운영체제 장치, 통보 장치 및 그 방법
JP6172262B2 (ja) 情報処理装置
JP6645011B2 (ja) 仮想化システム、サーバ、端末、仮想化方法、及びそのためのプログラム
US10261937B2 (en) Method and system for communication of device information
CN108234174B (zh) 虚拟网络功能的管理方法和装置
JP6428047B2 (ja) 情報処理システム、管理制御方法および管理制御プログラム
JP5626839B2 (ja) 仮想計算機システム、仮想計算機制御装置および仮想計算機システムの実行方法
CN114020678A (zh) 服务器串行控制台重定向方法、装置、系统以及电子设备
JP2007307779A (ja) 組込機器、電子機器、組込機器の制御方法、プログラム及び記録媒体
JP2015056115A (ja) 仮想化制御装置、仮想化システム、仮想化方法、および、仮想化制御プログラム。
JPWO2013057795A1 (ja) 転送制御プログラム、制御装置及び転送制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190416

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190903

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191114

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20191121

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191223

R150 Certificate of patent or registration of utility model

Ref document number: 6645011

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150