VIRTUALIZATION SYSTEM, SERVER, TERMINAL, VIRTUALIZATION METHOD, AND PROGRAM RECORDING MEDIUM
20180011727 · 2018-01-11
Assignee
Inventors
Cpc classification
G06F2009/45595
PHYSICS
H04L67/10
ELECTRICITY
G06F2009/45579
PHYSICS
International classification
Abstract
[Problem] To enable a user to control a virtualization system without wasting resources. [Solution] A virtualization system containing an operation unit, an operation reporting unit, a message processing unit, and an operation processing unit. The operation unit outputs a signal on the basis of a user operation. The operation reporting unit transmits to a network an operation message generated by appending, to first operation information indicating the content of the operation corresponding to that signal, a header addressed to a server providing virtual machines. The message processing unit generates second operation information indicating that the operation indicated with the first operation information has been performed with respect to the virtual machine corresponding to the transmission source of that operation message. On the basis of the second operation information, the operation processing unit instructs the virtual machine corresponding to the transmission source to perform the action corresponding to that operation.
Claims
1. A virtualization system comprising circuitry configured to: output a signal, based on an operation of a user; transmit, to a network, an operation message generated by appending a header addressed to a server configured to provide a virtual machine for first operation information indicating a content of the operation associated with the output signal; generate second operation information indicating that the operation is performed with respect to the virtual machine associated with a transmission source of the operation message, based on the operation message; and instruct an action associated with the operation to the virtual machine associated with the transmission source, based on the second operation information.
2. The virtualization system according to claim 1, wherein the circuitry configured to generate the second operation information in place of the message processing means, and generates the operation message by appending the header to the second operation information.
3. The virtualization system according to claim 1, wherein the circuitry configured to generate information indicating a change in a signal to be output from the operation means, as the first operation information.
4. The virtualization system according to claim 1, wherein the circuitry configured to generate information indicating an instruction to the virtual machine associated with a change in a signal to be output from the operation means, as the first operation information.
5. The virtualization system according to claim 1, further comprising a terminal configured to output the signal, wherein the circuitry configured to set the terminal as a PCI (Peripheral Component Interconnect) Express® device and generate the second operation information, and set the terminal as a PCI Express® device, and instruct an action associated with the operation to the virtual machine associated with the transmission source.
6-7. (canceled)
8. A virtualization method comprising: outputting a signal, based on an operation of a user; generating an operation message by appending a header addressed to a server configured to provide a virtual machine for first operation information indicating a content of the operation associated with the signal; transmitting the operation message to a network; generating second operation information indicating that the operation is performed with respect to the virtual machine associated with a transmission source of the operation message, based on the operation message; and instructing an action associated with the operation to the virtual machine associated with the transmission source, based on the second operation information.
9. (canceled)
10. A computer-readable program recording medium recording a program causing a computer to execute: a process of generating first operation information indicating that an operation indicated by second operation information is performed with respect to a virtual machine associated with a terminal, based on an operation message to be transmitted by the terminal; and a process of instructing an action associated with the operation to the virtual machine associated with the terminal, based on the first operation information, wherein the terminal generates an operation message by appending a header addressed to a server configured to provide the virtual machine for second operation information indicating a content of the operation associated with a signal to be output by operation means, based on an operation of a user, and transmits the operation message to a network.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050]
[0051]
DESCRIPTION OF EMBODIMENTS
[0052] In the following, example embodiments for implementing the present invention are described in detail with reference to the drawings. Note that in the drawings and in the example embodiments described herein, similar components are indicated with the same reference signs, and description thereof is omitted as necessary.
First Example Embodiment
[0053]
[0054] Each component illustrated in
[0055] The operation unit 210 and the operation notifying unit 220 may be loaded in a terminal to be used by a user who uses a virtualization machine (not illustrated), for instance.
[0056] The message processing unit 310 and the operation processing unit 320 may be loaded in a server device configured to provide a virtual machine, for instance.
[0057] The operation unit 210 outputs a signal based on an operation of a user. The operation unit 210 is a physical press button, for instance. Note that the operation unit 210 may be arbitrary operation means configured to output at least an on/off signal. For instance, the operation unit 210 may be a touch screen.
[0058] The operation notifying unit 220 generates first operation information indicating a content of an operation that is performed with respect to the operation unit 210, based on a signal to be output from the operation unit 210. Further, the operation notifying unit 220 generates an operation message by appending, to the first operation information, a header addressed to the server 301 configured to provide a virtual machine (not illustrated). For instance, the address is an identifier of an interface card (not illustrated) to be mounted in the server 301. Further, the header includes transmission source information.
[0059] The operation notifying unit 220 transmits the operation message to a network (not illustrated). The network is a network configured to connect between the operation notifying unit 220 and the message processing unit 310. In other words, the network connects between the remote terminal 201 and the server 301. The network may be an IP (Internet Protocol) network, a wireless LAN, or another network.
[0060]
[0061]
[0062] The message processing unit 310 generates second operation information based on the operation message 820. Second operation information is information indicating that an operation indicated by the first operation information is performed with respect to a virtual machine associated with the remote terminal 201 that transmits the operation message 820.
[0063] Specifically, firstly, the message processing unit 310 separates the operation message 820 into a header and first operation information. Secondly, the message processing unit 310 specifies the remote terminal 201 that transmits the operation message 820, based on transmission source information included in the header. Thirdly, the message processing unit 310 generates second operation information including identification information indicating the specified remote terminal 201 (e.g. a terminal number), and the first operation information.
[0064] The operation processing unit 320 operates a virtual machine associated with the remote terminal 201, based on the second operation information.
[0065] Specifically, the operation processing unit 320 determines an instruction (an instruction on an action) with respect to a virtual machine, based on first operation information included in the second operation information. Next, the operation processing unit 320 outputs a determined instruction to a virtual machine associated with the remote terminal 201 to be specified by identification information included in the second operation information.
[0066] Next, components as hardware units in a case where the example embodiment is implemented by a computer are described.
[0067]
[0068] As illustrated in
[0069] The processor 701 controls an overall operation of the computer 700 by operating an operating system (not illustrated). For instance, the processor 701 reads a program or data from the recording medium 707 mounted in the storage device 703, and writes a read program or data into the storage unit 702. In this example, the program is, for instance, a program configured to cause the computer 700 to execute an operation of the flowchart illustrated in
[0070] Further, the processor 701 executes various processes as the operation unit 201 and the operation notifying unit 220 illustrated in
[0071] Note that the processor 701 may download the program or the data into the storage unit 702 from an external computer (not illustrated) to be connected to a communication network (not illustrated).
[0072] The storage unit 702 stores the program or the data. The storage unit 702 may store the operation message 820 or the server identifier 831. The storage unit 702 may be included as a part of the operation notifying unit 220 illustrated in
[0073] The storage device 703 is, for instance, an optical disc, a flexible disk, a magneto-optical disk, an external hard disk semiconductor memory, or the like, and includes the recording medium 707. The storage device 703 (the recording medium 707) stores the program in a computer-readable manner. The storage device 703 may store the operation message 820, the server identifier 831, or the like. The storage device 703 may be included as a part of the operation notifying unit 220 illustrated in
[0074] The input unit 704 receives an operation input from an operator or an information input from the outside. A device for use in an input operation is, for instance, a mouse, a keyboard, a built-in key button, a touch panel, or the like. The operation unit 210 illustrated in
[0075] The output unit 705 is implemented by a display, for instance. The output unit 705 is used, for instance, for an input request to an operator by a GUI (Graphical User Interface), or for presentation to an operator. The output unit 705 may be included as a part of the operation notifying unit 220 illustrated in
[0076] The communication unit 706 implements communication with another device. The communication unit 706 may be included as a part of the operation notifying unit 220 in the remote terminal 201. Further, the communication unit 706 may be included as a part of the message processing unit 310 in the server 301.
[0077] As described above, components as functional units of the remote terminal 201 illustrated in
[0078] Note that in a case where the recording medium 707 having codes of the program recorded therein is supplied to the computer 700, the processor 701 may read and execute the codes of the program stored in the recording medium 707. Alternatively, the processor 701 may store the codes of the program stored in the recording medium 707 in one or both of the storage unit 702 and the storage device 703. Specifically, the example embodiment includes an example embodiment of the recording medium 707 configured to transitorily or non-transitorily store the program (a software) to be executed by the computer 700 (the processor 701). Note that a storage medium configured to non-transitorily store information is also referred to as a non-volatile storage medium.
[0079] The foregoing is description about the components as hardware units of the computer 700 configured to implement the virtualization system 101 in the example embodiment.
[0080] Next, an operation of the example embodiment is described in detail with reference to the drawings.
[0081]
[0082] The virtualization system 101 starts an operation of the flowchart illustrated in
[0083] The operation unit 210 outputs a signal based on an operation of a user (Step S601). For instance, the operation unit 210 outputs “1” during a time when a specific button is pressed (operated). Further, the operation unit 210 outputs “0” during a time when the button is not pressed.
[0084] Next, the operation notifying unit 220 generates first operation information indicating a time during which a specific button of the operation unit 210 is pressed, based on a signal to be output from the operation unit 210 (Step S602).
[0085] Next, the operation notifying unit 220 generates an operation message 820 including generated first operation information, and addressed to the server 301 (Step S603). For instance, the address may be stored in advance in the storage unit 702 or in the storage device 703 illustrated in
[0086] Next, the operation notifying unit 220 transmits the generated operation message 820 to a network (Step S604).
[0087] Next, the message processing unit 310 receives the operation message 820 via the network (Step S605).
[0088] Next, the message processing unit 310 separates the operation message 820 into a header and first operation information (Step S606).
[0089] Next, the message processing unit 310 generates and transmits second operation information including the first operation information based on a header (Step S607).
[0090] Next, the operation processing unit 320 operates a virtual machine based on the second operation information (Step S608).
[0091] An advantageous effect in the example embodiment is that a user is allowed to control the virtualization system 101 without wasting resources.
[0092] The reason for this is because the example embodiment includes the following configuration. Specifically, firstly, the operation notifying unit 220 transmits the operation message 820 obtained by appending, to first operation information indicating a content of an operation that is performed with respect to the operation unit 210, a header addressed to a server configured to provide a virtual machine. Secondly, the message processing unit 310 generates second operation information indicating that an operation indicated by first operation information is performed with respect to a virtual machine associated with a transmission source of the operation message 820, based on the operation message 820. Thirdly, the operation processing unit 320 instructs the virtual machine to perform an action associated with the operation, based on the second operation information.
First Modification Example of First Example Embodiment
[0093] In the modification example, an operation notifying unit 220 further generates second operation information from first operation information.
[0094] Specifically, the operation notifying unit 220 generates second operation information including identification information indicating a remote terminal 201, and first operation information. For instance, identification information may be stored in advance in the storage unit 702 or in the storage device 703 illustrated in
[0095] Next, the operation notifying unit 220 transmits an operation message 820 including second operation information to a network.
[0096] Further, in the modification example, a message processing unit 310 uses second operation information included in the received operation message 820 as it is, based on the premise that the message processing unit 310 itself generates the second operation information.
[0097] Specifically, in the modification example, the operation notifying unit 220 executes an operation of specifying a remote terminal 201 that transmits the operation message 820, and an operation of generating second operation information, in place of the message processing unit 310. These operations are executed by the message processing unit 310 in the first example embodiment.
[0098] The modification example makes it possible to avoid concentration of load in the message processing unit 310 (specifically, a server 301) by performing the aforementioned operation.
Second Modification Example of First Example Embodiment
[0099] In the modification example, an operation notifying unit 220 generates first operation information indicating an instruction to a virtual machine, which is generated based on a signal to be output from an operation unit 210 and is associated with a time during which an operation unit 210 is pressed.
[0100] Further, in the modification example, an operation processing unit 320 outputs first operation information included in second operation information to a virtual machine associated with a remote terminal 201 which is specified by identification information included in the second operation information.
[0101] Specifically, in the modification example, the operation notifying unit 220 executes an operation of determining an instruction to a virtual machine, in place of the operation processing unit 320.
[0102] The modification example makes it possible to avoid concentration of load to the operation processing unit 320 (specifically, a server 301) by performing the aforementioned operation.
Second Example Embodiment
[0103] Next, the second example embodiment of the present invention is described in detail with reference to the drawings. In the following, description of the example embodiment regarding the content that overlaps the aforementioned description is omitted, as far as as the description of the example embodiment remains clear.
[0104]
[0105] As illustrated in
[0106] The remote terminal 202 is a terminal to be used when a user operates a virtual machine.
[0107] The server 302 is a server on which a virtualization software (details thereof are described later) is operated, and is a server configured to provide a virtual machine.
[0108] The network switch 402 is a device configured to perform forwarding and routing between a plurality of interface cards 330 and remote terminals 202. The network switch 402 is a well-known device, and therefore, detailed description thereof is omitted.
[0109] Next, the remote terminal 202 is described in detail.
[0110]
[0111] Each component illustrated in
[0112] The power signal conversion unit 222 generates an operation message 820 including first operation information indicating a content of an operation that is performed with respect to the operation unit 210, based on a signal to be output from the operation unit 210, and transmits the generated operation message 820 to a network via the network interface 229. The power signal conversion unit 222 includes an A/D conversion unit 223, an encapsulation unit 224, and a connection management unit 225.
[0113] The A/D conversion unit 223 converts a signal to be output from the operation unit 210 (in this example, an analog pulse of an ON/OFF state) into digital information (in this example, information indicating a time during which the signal is in an ON-state), and generates first operation information.
[0114] The encapsulation unit 224 generates the operation message 820 by encapsulating first operation information by using a server 302 to be determined by the connection management unit 225 as an address, and outputs the generated operation message 820.
[0115] The connection management unit 225 stores a server identifier 831 configured to specify the server 302, and outputs the server identifier 831 to the encapsulation unit 224 as an address of the operation message 820.
[0116] The main processing unit 228 is a main functional operation unit as a terminal of a virtual machine in a remote terminal 202. The technique relating to the main processing unit 228 is a well-known technique, and therefore, detailed description thereof is omitted.
[0117] The network interface 229 communicates with the server 302. The technique relating to the network interface 229 is a well-known technique, and therefore, detailed description thereof is omitted.
[0118] The remote terminal 202 may be implemented by the computer 700 illustrated in
[0119] In this case, a processor 701 executes various processes as the power signal conversion unit 222, the main processing unit 228, and the network interface 229 according to a read program, or based on read data. In this example, the program is a program configured to cause the computer 700 to execute an operation of the flowchart illustrated in
[0120] A storage unit 702 may store the server identifier 831, and other information. The storage unit 702 may be included as a part of the connection management unit 225 and the other components illustrated in
[0121] A storage device 703 may store the server identifier 831 and other information. The storage device 703 may be included as a part of the connection management unit 225 and the other components illustrated in
[0122] A communication unit 706 may be included as a part of the network interface 229.
[0123] The foregoing is detailed description about the remote terminal 202.
[0124] Next, the server 302 is described in detail.
[0125] As illustrated in
[0126] The interface card 330 is a board on which an interface for use in communication with the remote terminal 202 is loaded. The interface card 330 includes an intrinsic identifier (the server identifier 831 in the example embodiment). Each of the remote terminals 202 is connected to the interface card 330 having the server identifier 831 to be stored by each of the remote terminals 202.
[0127]
[0128] The power signal processing unit 331 receives the operation message 820, and generates second operation information based on the operation message 820. Further, the power signal processing unit 331 transmits generated second operation information to the CPU/Chipset 340 via the PCI Express Bus interface 339.
[0129] The power signal processing unit 331 includes a decapsulation unit 332 and a connection management unit 333.
[0130] The decapsulation unit 332 separates the received operation message 820 into a header and first operation information.
[0131] Next, the decapsulation unit 332 encapsulates the first operation information with use of a PCI Express header to be output from the connection management unit 333, and generates second operation information.
[0132] Next, the decapsulation unit 332 transmits the second operation information to the CPU/Chipset 340 via the PCI Express Bus interface 339.
[0133] The connection management unit 333 specifies the remote terminal 202 as a transmission source, based on information of the remote terminal 202 as a transmission source included in a header, and virtualization information of the remote terminal 202. Next, the connection management unit 333 generates a PCI Express header associated with the remote terminal 202 as a transmission source, and outputs the PCI Express header to the decapsulation unit 332. Virtualization information is information including a bus number of the remote terminal 202, as illustrated in
[0134] The main processing unit 338 processes communication with the main processing unit 228 of the remote terminal 202. The technique relating to the main processing unit 338 is a well-known technique, and therefore, detailed description thereof is omitted.
[0135] The network interface 334 performs communication with the remote terminal 202. The technique relating to the network interface 334 is a well-known technique, and therefore, detailed description thereof is omitted.
[0136] The PCI Express Bus interface 339 controls communication with the CPU/Chipset 340. The technique relating to the PCI Express Bus interface 339 is a well-known technique, and therefore, detailed description thereof is omitted.
[0137] The CPU/Chipset 340 activates a virtualization software, and provides a virtual machine. The technique relating to the CPU/Chipset 340 is a well-known technique, and therefore, detailed description thereof is omitted.
[0138] Next, a virtualization configuration of the virtualization system 102 is described.
[0139]
[0140] As illustrated in
[0141] The virtualization software 350 handles each remote terminal 202 as a PCI Express device. Specifically, in the server 302, each remote terminal 202 is managed by a PCI bus tree, and an intrinsic bus number is given to each remote terminal 202.
[0142] The virtualization software 350 associates each of the virtual machines 360 and each of the remote terminals 202 with an intrinsic bus number. Specifically, in a PCI bus tree of each of the virtual machines 360, the virtual machine 360 and the remote terminal 202 are directly connected to each other.
[0143] Next, the virtualization software 350 and the virtual machine 360 are described in detail.
[0144]
[0145] As illustrated in
[0146] The power signal processing unit 351 includes a signal conversion unit 352 and a connection management unit 353.
[0147] The signal conversion unit 352 receives second operation information via the PCI Express Bus interface 359.
[0148] Next, the connection management unit 353 refers to correspondence information between second operation information, the remote terminals 202, and the virtual machines 360, and determines a virtual machine 360 that outputs an instruction. For instance, the correspondence information is information for designating a remote terminal 202 based on a PCI bus tree of a virtual machine 360 as illustrated in
[0149] Next, the signal conversion unit 352 determines an operation to be instructed to the virtual machine 360, based on first operation information included in the second operation information. For instance, when the signal conversion unit 352 analyzes the first operation information and detects that the operation unit 210 is pressed for a time shorter than a predetermined time, the signal conversion unit 352 determines “shut down” in a power-on state of a virtual machine 360 that outputs the instruction. Further, when the signal conversion unit 352 detects that the operation unit 210 is pressed for a time shorter than a predetermined time, and a virtual machine 360 that outputs the instruction is in a power-off state, the signal conversion unit 352 determines that the power is in an ON-state. Further, when the signal conversion unit 352 detects that the operation unit 210 is pressed for a predetermined time or longer, the signal conversion unit 352 determines “forced shut down”.
[0150] Next, the signal conversion unit 352 outputs an instruction on the determined operation to a determined virtual machine 360 via the virtual machine interface 354.
[0151] The virtual machine interface 354 controls communication between the virtualization software 350 and the virtual machine 360. The technique relating to the virtual machine interface 354 is a well-known technique, and therefore, detailed description thereof is omitted.
[0152] The main processing unit 358 controls communication between the virtual machine 360 and the main processing unit 228 of the remote terminal 202. The technique relating to the main processing unit 358 is a well-known technique, and therefore, detailed description thereof is omitted.
[0153] The PCI Express Bus interface 359 controls communication with the interface card 330. The technique relating to the PCI Express Bus interface 359 is a well-known technique, and therefore, detailed description thereof is omitted.
[0154] As illustrated in
[0155] The server 302 may be implemented by the computer 700 illustrated in
[0156] In this case, the processor 701 corresponds to the CPU/Chipset 340. The processor 701 executes various processes further as the virtualization software 350 and the virtual machine 360 illustrated in
[0157] The storage unit 702 may store correspondence information between the remote terminal 202 and the virtual machine 360, or other information, for instance.
[0158] The storage device 703 may store correspondence information between the remote terminal 202 and the virtual machine 360, or other information, for instance.
[0159] Further, the communication unit 706 corresponds to the interface card 330.
[0160] The foregoing is detailed description about the server 302.
[0161] Next, an operation of the example embodiment is described in detail with reference to the drawings.
[0162]
[0163] The virtualization system 102 starts an operation of the flowchart illustrated in
[0164] The operation unit 210 outputs a signal based on an operation of a user (Step S621).
[0165] Next, the A/D conversion unit 223 of the power signal conversion unit 222 receives a signal to be output from the operation unit 210, and converts the received signal into digital information to generate first operation information (Step S622).
[0166] Next, the connection management unit 225 of the power signal conversion unit 222 outputs the server identifier 831 to the encapsulation unit 224 as an address of the operation message 820 (Step S623).
[0167] Next, the encapsulation unit 224 of the power signal conversion unit 222 encapsulates first operation information by using the server identifier 831 received from the connection management unit 225 as an address to generate the operation message 820, and outputs the operation message 820 (Step S624).
[0168] Next, the network interface 229 transmits the operation message 820 to a network (Step S625).
[0169]
[0170] The server 301 starts an operation of the flowchart illustrated in
[0171] The network interface 334 of the interface card 330 outputs the received operation message 820 to the power signal processing unit 331 (Step S630).
[0172] Next, the decapsulation unit 332 of the power signal processing unit 331 of the interface card 330 separates the operation message 820 into a header and first operation information (Step S631).
[0173] Next, the connection management unit 333 analyzes the header to specify the remote terminal 202 as a transmission source, and generates a PCI Express header associated with the remote terminal 202 (Step S632). For instance, the connection management unit 333 generates a PCI Express header including a bus number given to the remote terminal 202.
[0174] Next, the decapsulation unit 332 appends the PCI Express header to the first operation information, and outputs the appended information as second operation information via the PCI Express Bus interface 339 (Step S633).
[0175] Next, the power signal processing unit 351 of the virtualization software 350 receives the second operation information via the PCI Express Bus interface 359 (Step S634).
[0176] Next, the connection management unit 353 of the power signal processing unit 351 specifies the virtual machine 360, based on a bus number included in a PCI Express header of the second operation information (Step S635). Note that the connection management unit 353 may specify the virtual machine 360, based on a memory address included in a PCI Express header of the second operation information.
[0177] Next, the signal conversion unit 352 analyzes first operation information included in the second operation information, and determines an operation to be instructed to the virtual machine 360 (Step S636).
[0178] Next, the signal conversion unit 352 outputs an instruction determined in Step S636 to the virtual machine 360 specified in Step S635 (Step S637).
[0179] An advantageous effect in the example embodiment described above is that the user is allowed to control the virtualization system 102 without wasting resources as well as the first example embodiment.
[0180] The reason for this is because the example embodiment includes the following configuration. Specifically, firstly, the power signal conversion unit 222 of the remote terminal 202 transmits the operation message 820 including first operation information. Secondly, the interface card 330 of the server 302 and the virtualization software 350 operate the virtual machine 360 based on the operation message 820.
Modification Example of Second Example Embodiment
[0181] In the second example embodiment, the virtualization system 102 may employ the first and second modification examples of the first example embodiment described above.
[0182] Components described in the aforementioned example embodiments may not be necessarily individually independent elements. For instance, an arbitrary plurality of components may be implemented as a module. Further, an arbitrary one of components may be implemented by a plurality of modules. Further, an arbitrary one of components may be another arbitrary one of the components. Further, a part of an arbitrary one of the components may overlap a part of another arbitrary one of the components.
[0183] Respective components, and a module configured to implement the respective components in the example embodiments described above may be implemented as a hardware unit as necessary and if possible. Further, respective components and a module configured to implement the respective components may be implemented by a computer and a program. Further, respective components and a module configured to implement the respective components may be implemented by combination of a module as a hardware unit, a computer, and a program.
[0184] The program is recorded in a computer-readable non-transitory recording medium such as a magnetic disk or a semiconductor memory, for instance, and is provided for a computer. Further, the program is read by a computer from a non-transitory recording medium when the computer is activated, or the like. The read program causes the computer to function as the components in the example embodiments described above by controlling an operation of the computer.
[0185] Further, in the example embodiments described above, a plurality of operations are described in an order in the form of a flowchart. The order of description does not limit the order in which a plurality of operations are executed. Therefore, it is possible to modify the order of the plurality of operations as long as there is no difficulty in the contents in implementing the example embodiments.
[0186] Further, in the example embodiments described above, a plurality of operations may not be executed at individually different timings. For instance, during execution of a certain operation, another operation may be executed. Further, execution timings of a certain operation and another operation may partially or entirely overlap each other.
[0187] Further, in the example embodiments described above, another operation is triggered by a certain operation. The description does not limit a relationship between a certain operation and another operation. Therefore, it is possible to modify the relationship between the plurality of operations as long as there is no difficulty in the contents in implementing the example embodiments. Further, specific description of operations of components does not limit operations of components. Therefore, specific operations of components may be modified as long as there is no difficulty in terms of functions, performances, and the other characteristics in implementing the example embodiments.
[0188] A part or the entirety of the example embodiments may be described as the following Supplemental notes, but are not limited to the following.
[0189] (Supplemental note 1)
[0190] A virtualization system including:
[0191] an operation unit configured to output a signal based on an operation of a user;
[0192] an operation notifying unit configured to transmit, to a network, an operation message generated by appending a header addressed to a server configured to provide a virtual machine for first operation information indicating a content of the operation associated with the output signal;
[0193] a message processing unit configured to generate second operation information indicating that the operation is performed with respect to the virtual machine associated with a transmission source of the operation message, based on the operation message; and
[0194] an operation processing unit configured to instruct an action associated with the operation to the virtual machine associated with the transmission source, based on the second operation information.
[0195] (Supplemental note 2)
[0196] The virtualization system according to Supplemental note 1, wherein
[0197] the operation notifying unit generates the second operation information in place of the message processing means, and generates the operation message by appending the header to the second operation information.
[0198] (Supplemental note 3)
[0199] The device according to Supplemental note 1 or 2, wherein the operation notifying unit generates information indicating a change in a signal to be output from the operation unit, as the first operation information.
[0200] (Supplemental note 4)
[0201] The virtualization system according to Supplemental note 1 or 2, wherein
[0202] the operation notifying unit generates information indicating an instruction to the virtual machine associated with a change in a signal to be output from the operation unit, as the first operation information.
[0203] (Supplemental note 5)
[0204] The virtualization system according to any one of Supplemental notes 1, 3, and 4, wherein
[0205] the operation unit is loaded in a terminal,
[0206] the message processing unit sets the terminal as a PCI (Peripheral Component Interconnect) Express device and generates the second operation information, and
[0207] the operation processing unit sets the terminal as a PCI Express device, and instructs an action associated with the operation to the virtual machine associated with the transmission source.
[0208] (Supplemental note 6)
[0209] A terminal including:
[0210] an operation unit configured to output a signal based on an operation of a user; and
[0211] an operation notifying unit configured to transmit, to a network, an operation message generated by appending a header addressed to a server configured to provide the virtual machine for first operation information indicating a content of the operation associated with the output signal, wherein
[0212] the server generates second operation information indicating that an operation indicated by the first operation information is performed with respect to the virtual machine associated with a transmission source of the operation message, based on the operation message, and instructs an action associated with the operation to the virtual machine associated with the transmission source, based on the second operation information.
[0213] (Supplemental note 7)
[0214] A server including:
[0215] a message processing unit configured to generate second operation information indicating that an operation indicated by first operation information is performed with respect to a virtual machine associated with a terminal, based on an operation message to be transmitted from the terminal; and
[0216] an operation processing unit configured to instruct an action associated with the operation to the virtual machine associated with the terminal, based on the second operation information, wherein
[0217] the terminal transmits, to a network, an operation message generated by appending a header addressed to a server configured to provide the virtual machine for first operation information indicating a content of the operation associated with a signal to be output from operation means based on an operation of a user.
[0218] (Supplemental note 8)
[0219] A virtualization method including:
[0220] outputting a signal based on an operation of a user;
[0221] generating an operation message by appending a header addressed to a server configured to provide a virtual machine for first operation information indicating a content of the operation associated with the signal;
[0222] transmitting the operation message to a network;
[0223] generating second operation information indicating that an operation indicated by the first operation information is performed with respect to the virtual machine associated with a transmission source of the operation message, based on the operation message; and
[0224] instructing an action associated with the operation to the virtual machine associated with the transmission source, based on the second operation information.
[0225] (Supplemental note 9)
[0226] A program that causes a computer to execute:
[0227] a process of generating an operation message by appending a header addressed to a server configured to provide a virtual machine for first operation information indicating a content of an operation of a user associated with a signal output based on the operation; and
[0228] a process of transmitting the operation message to a network, wherein
[0229] the server generates second operation information indicating that the operation is performed with respect to the virtual machine associated with a transmission source of the operation message, based on the operation message, and instructs an action associated with the operation to the virtual machine associated with the transmission source, based on the second operation information.
[0230] (Supplemental note 10)
[0231] A program that causes a computer to execute:
[0232] a process of generating second operation information indicating that an operation indicated by first operation information is performed with respect to a virtual machine associated with a terminal, based on an operation message to be transmitted from the terminal; and
[0233] a process of instructing an action associated with the operation to the virtual machine associated with the terminal, based on the second operation information, wherein
[0234] the terminal generates an operation message by appending a header addressed to a server configured to provide the virtual machine for first operation information indicating a content of the operation associated with a signal to be output from an operation unit, based on an operation of a user, and transmits the operation message to a network.
[0235] (Supplemental note 11)
[0236] A virtualization method including:
[0237] generating an operation message by appending a header addressed to a server configured to provide a virtual machine for first operation information indicating a content of an operation of a user associated with a signal output based on the operation;
[0238] transmitting the operation message to a network; and
[0239] generating second operation information indicating that the operation is performed with respect to the virtual machine associated with a transmission source of the operation message, based on the operation message, and instructing an action associated with the operation to the virtual machine associated with the transmission source, based on the second operation information.
[0240] (Supplemental note 12)
[0241] A virtualization method including:
[0242] generating second operation information indicating that an operation indicated by first operation information is performed with respect to a virtual machine associated with a terminal, based on an operation message to be transmitted from the terminal;
[0243] instructing an action associated with the operation to the virtual machine associated with the terminal, based on the second operation information;
[0244] generating an operation message by appending a header addressed to a server configured to provide the virtual machine for first operation information indicating a content of the operation associated with a signal to be output from an operation unit, based on an operation of a user; and
[0245] transmitting the operation message to a network.
[0246] In the aforementioned description, the present invention is described with reference to the example embodiments. The present invention, however, is not limited to the aforementioned example embodiments. The configuration and details of the present invention may be modified in various ways comprehensible to a person skilled in the art within the scope of the present invention.
[0247] This application claims the priority based on Japanese Patent Application No. 2015-013169 filed on Jan. 27, 2015, entire disclosure of which is hereby incorporated.
REFERENCE SIGNS LIST
[0248] 101 Virtualization system
[0249] 102 Virtualization system
[0250] 201 Remote terminal
[0251] 202 Remote terminal
[0252] 210 Operation unit
[0253] 220 Operation notifying unit
[0254] 222 Power signal conversion unit
[0255] 223 A/D conversion unit
[0256] 224 Encapsulation unit
[0257] 225 Connection management unit
[0258] 228 Main processing unit
[0259] 229 Network interface
[0260] 301 Server
[0261] 302 Server
[0262] 310 Message processing unit
[0263] 320 Operation processing unit
[0264] 330 Interface card
[0265] 331 Power signal processing unit
[0266] 332 Decapsulation unit
[0267] 333 Connection management unit
[0268] 334 Network interface
[0269] 338 Main processing unit
[0270] 339 PCI Express Bus interface
[0271] 340 CPU/Chipset
[0272] 350 Virtualization software
[0273] 351 Power signal processing unit
[0274] 352 Signal conversion unit
[0275] 353 Connection management unit
[0276] 354 Virtual machine interface
[0277] 358 Main processing unit
[0278] 359 PCI Express Bus interface
[0279] 360 Virtual machine
[0280] 361 OS
[0281] 362 Instruction receiving unit
[0282] 402 Network switch
[0283] 700 Computer
[0284] 701 Processor
[0285] 702 Storage unit
[0286] 703 Storage device
[0287] 704 Input unit
[0288] 705 Output unit
[0289] 706 Communication unit
[0290] 707 Recording medium
[0291] 820 Operation message
[0292] 831 Server identifier