WO2012060011A1 - 切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法 - Google Patents

切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法 Download PDF

Info

Publication number
WO2012060011A1
WO2012060011A1 PCT/JP2010/069703 JP2010069703W WO2012060011A1 WO 2012060011 A1 WO2012060011 A1 WO 2012060011A1 JP 2010069703 W JP2010069703 W JP 2010069703W WO 2012060011 A1 WO2012060011 A1 WO 2012060011A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual
output device
operating system
input
physical
Prior art date
Application number
PCT/JP2010/069703
Other languages
English (en)
French (fr)
Inventor
小関崇広
Original Assignee
富士通株式会社
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 富士通株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2010/069703 priority Critical patent/WO2012060011A1/ja
Priority to EP10859267.6A priority patent/EP2637103A1/en
Priority to JP2012541695A priority patent/JP5445690B2/ja
Publication of WO2012060011A1 publication Critical patent/WO2012060011A1/ja
Priority to US13/871,071 priority patent/US20130239110A1/en

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
    • 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
    • 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

Definitions

  • the present invention relates to disconnection and incorporation of input / output devices.
  • an I / O device such as a disk or a peripheral component interconnect (PCI) card is converted into a virtual I / O device by a system having a virtualization service and provided to the virtual system.
  • PCI peripheral component interconnect
  • the virtualization service has a role of converting a physical resource into a logical resource for the virtual operating system (OS) like the above function.
  • OS virtual operating system
  • I / O devices such as disks and PCI cards with the computer turned on
  • active replacement hot plug or hot swap
  • a system having a virtualization service (control OS) and a virtual I / O It is necessary to detach a device from both systems (virtual OSs) using / O and incorporate a new device after replacement.
  • control OS disconnects a device and the virtual OS forgets to disconnect the virtual device corresponding to the device, an error occurs when the virtual OS accesses the virtual device.
  • An object of the present invention is to provide a disconnection program and an embedded program that reduce troubles in disconnection or incorporation of input / output devices.
  • a disconnection program is a program that operates on a control operating system that controls a virtual operating system, and that disconnects a physical input / output device of the control operating system from the control operating system.
  • the computer that stores the virtual input / output device information associated with the virtual input / output device and the virtual operating system information associated with the virtual input / output device and the virtual operating system is received by the computer. And referring to the virtual input / output device information and the virtual operating system information, the virtual input / output device corresponding to the physical input / output device and the virtual operating system using the virtual input / output device A step of transmitting the specified virtual input / output device to the specified virtual operating system, and receiving from the specified virtual operating system that the specified virtual input / output device has been disconnected. And a step of disconnecting the physical input / output device from the control operating system after receiving the fact that the specified virtual input / output device has been disconnected.
  • An embedded program is a program that operates on a control operating system that controls a virtual operating system, and that incorporates the physical input / output device of the control operating system into the control operating system,
  • a virtual I / O device information associated with the virtual I / O device and a virtual operating system information associated with the virtual I / O device and the virtual operating system are stored in the computer, and an instruction to incorporate the physical I / O device is received.
  • the virtual input / output device information and the virtual operating system information and referring to the virtual input / output device information and the virtual operating system information, the virtual input / output device corresponding to the physical input / output device.
  • specifying the virtual operating system using the virtual input / output device sending an instruction to incorporate the specified virtual input / output device to the specified virtual operating system, and the specified virtual operating system.
  • a disconnection program is a program that operates on a control operating system that controls a virtual operating system, and that disconnects a physical input / output device related to a virtual input / output device from the control operating system.
  • the virtual input / output device is used in a computer that stores virtual input / output device information in which the virtual input / output device is associated with the device and virtual operating system information in which the virtual input / output device is associated with the virtual operating system.
  • Receiving a disconnection instruction of the physical input / output device related to the virtual input / output device from the virtual operating system and referring to the virtual input / output device information and the virtual operating system information, Equipment Identifying the physical I / O devices and other virtual I / O devices that are linked, and other virtual operating systems that are using the other virtual I / O devices; and A step of transmitting an instruction for disconnecting the input / output device, a step of receiving the disconnection of the other virtual input / output device from the other virtual operating system, and the physical input / output device related to the virtual input / output device. Detaching from the control operating system, and transmitting to the virtual operating system using the virtual input / output device that the physical input / output device related to the virtual input / output device is disconnected.
  • a disconnection program is a program that operates on a virtual operating system controlled by a control operating system and disconnects a virtual input / output device from the virtual operating system, and disconnects the virtual input / output device into a computer.
  • An embedded program is a program that operates on a control operating system that controls a virtual operating system and incorporates a physical input / output device related to a virtual input / output device into the control operating system, the physical input / output device
  • the virtual input / output device is used in a computer that stores virtual input / output device information in which the virtual input / output device is associated with the device and virtual operating system information in which the virtual input / output device is associated with the virtual operating system.
  • An embedded program is a program that operates on a virtual operating system controlled by a control operating system and incorporates a virtual input / output device into the virtual operating system, and the virtual input / output device is embedded in a computer.
  • Receiving an instruction transmitting an instruction to install a physical input / output device associated with the virtual input / output device to the control operating system, and incorporating the physical input / output device associated with the virtual input / output device.
  • FIG. 10 is a sequence diagram in the case where an I / O that is not shared by another virtual OS is disconnected from the virtual OS.
  • FIG. 11 is a sequence diagram in the case of incorporating I / O that is not shared by another virtual OS from the virtual OS.
  • FIG. 9 is a sequence diagram when an instruction to disconnect an I / O shared by a plurality of virtual OSs is issued from the virtual OS.
  • FIG. 9 is a sequence diagram when an instruction to disconnect an I / O shared by a plurality of virtual OSs is issued from the virtual OS.
  • FIG. 1 is a configuration diagram of a server according to the embodiment.
  • CPU central processing unit
  • the CPU 104-n includes a core 106-nm.
  • the core 106 executes various processes such as programs.
  • the memory 103 is a device that temporarily stores various data. For example, a random access memory (RAM) is used as the memory 103.
  • RAM random access memory
  • the disk 104 is a device for storing various data.
  • a magnetic disk device is used as the disk 104.
  • the network card 105 is an interface for performing communication.
  • identifiers disk0 and disk1 are assigned to disks, and identifiers net0 and net1 are assigned to network cards, respectively.
  • FIG. 2 is a configuration diagram of software according to the embodiment.
  • two virtual OSs 301-1 and 301-2 are operating.
  • the virtual OSs 301-1 and 301-2 are referred to as a virtual OS 1 and a virtual OS 2, respectively.
  • the control OS 201 controls the virtual OS 301. Further, the control OS 201 and the virtual OS 301 have a hot plug function (hot swap function) that dynamically disconnects I / O (including virtual I / O) from the control OS 201 or virtual OS 301.
  • hot plug function hot swap function
  • the control OS 201 includes a communication mechanism 202, a virtualization service unit 203, a maintenance program, and a driver 206.
  • the communication mechanism 202 performs communication with the virtual OS 301.
  • the virtualization service unit 203 provides a virtualization service and converts an I / O (physical input / output device) 207 that is a physical resource into a virtual I / O (virtual input / output device) 307 that is a logical resource.
  • the I / O 207 corresponds to the disk 104 and the network card 105.
  • the maintenance program 204 issues an I / O 207 disconnection instruction and installation instruction.
  • the driver 206 disconnects and incorporates the I / O 207.
  • the disconnection of I / O means that the I / O is electrically disconnected from the OS so that the I / O is not recognized from the OS and can be replaced.
  • the driver instructed to disconnect stops its I / O and ends itself.
  • the incorporation of I / O is to make the OS recognize the I / O in a state of being electrically separated, as opposed to the separation, and to make it usable.
  • the corresponding I / O is turned on to attach a driver and start I / O.
  • the virtual OS 301-m includes a communication mechanism 302-m, a maintenance program 304-m, and a driver 306-m.
  • the communication mechanism 302 communicates with the control OS 201.
  • the maintenance program 304 and the virtual I / O 307 are instructed to be disconnected and incorporated.
  • the driver 306 disconnects and incorporates the virtual I / O 307.
  • the virtual I / O disconnection means that the virtual I / O 307 is electrically disconnected from the virtual OS 301 so that the virtual I / O 307 is not recognized from the virtual OS 301 and is exchangeable. Incorporation of the virtual I / O is to make the virtual OS 301 recognize the virtual I / O 307 in a state of being electrically disconnected contrary to the disconnection, and to make it usable.
  • FIG. 3 is an example of a virtual OS information table.
  • a virtual OS name the number of virtual CPUs, a virtual memory size, and a virtual I / O are described in association with each other.
  • the number of virtual CPUs describes the number of CPUs used by the virtual OS.
  • the number of virtual CPUs is the number of cores.
  • the virtual memory size describes the memory size used by the virtual OS.
  • the virtual I / O describes the identifier of the virtual I / O used by the virtual OS.
  • the virtual OS 1 uses two CPUs, 2 gigabyte (GB) memory, and vdisk0 and vnet0 as virtual I / O.
  • the virtual OS 2 uses six CPUs, 8 GB memory, and vdisk1, vdisk2, vnet1, and vnet2 as virtual I / O.
  • FIG. 4 is an example of a virtual I / O information table.
  • I / O information table
  • I / O and virtual I / O are described in association with each other.
  • I / O an identifier of I / O is described.
  • the virtual I / O describes the identifier of the virtual I / O used on the virtual OS.
  • disk0 is used as vdisk0 and vdisk1 on the virtual OS
  • disk1 is used as vdisk2 on the virtual OS.
  • Net0 is used as vnet0 and vnet1 on the virtual OS
  • net1 is used as vet2 on the virtual OS.
  • the virtual OS information table and the virtual I / O information table are stored in the memory 103, for example.
  • FIG. 5 is an example of a format of communication data transmitted and received between the communication mechanism of the control OS and the communication mechanism of the virtual OS.
  • the communication data includes an issuer, an issue destination, virtual I / O information, control contents, and a control result.
  • the issuer is the OS from which the communication data is issued. For example, identifiers of the control OS and virtual OS are described.
  • the issue destination is an OS to which communication data is issued. For example, identifiers of the control OS and virtual OS are described.
  • the virtual I / O information is an identifier indicating an I / O to be separated or incorporated.
  • vdisk1, vnet1, etc. are described as virtual I / O information.
  • the control content is the type of control executed or executed by the control OS or virtual OS.
  • the control contents include a disconnection instruction, an installation instruction, a disconnection return, and an integration return.
  • the control result indicates whether the detachment or installation succeeded or failed (abnormal).
  • the control result is used only when the control content is separation return or built-in return.
  • FIG. 6 is a flowchart of the virtual service unit according to the embodiment.
  • the virtual service unit 203 determines the issuer of the received communication data.
  • the issue source is the driver 206 of the control OS 201
  • the control proceeds to step S502
  • the issue source is the virtual OS 301
  • the control proceeds to step S508.
  • step S502 the virtual service unit 203 refers to the virtual I / O information table and identifies which virtual I / O the specified I / O is.
  • step S503 the virtual service unit 203 refers to the virtual OS information table and identifies the virtual OS 301 that uses the identified virtual I / O.
  • step S504 the virtual service unit 203 requests the communication mechanism 202 of the control OS to perform instruction communication for the specified operation (separation or incorporation) to all the specified virtual OSs.
  • step S505 the virtual service unit 203 determines whether all responses to the designated operation are successful. If all responses are successful, control proceeds to step S506, and if one or more failures, control proceeds to step S507.
  • step S ⁇ b> 506 the virtual service unit 203 returns to the driver 506 with a success (response to the virtual I / O incorporation success).
  • step S ⁇ b> 507 the virtual service unit 203 returns to the driver 506 with a failure (a response indicating that the virtual I / O has failed to be incorporated).
  • step S508 the virtual service unit 203 refers to the virtual I / O information table and identifies an I / O and a virtual I / O related to the designated I / O.
  • step S509 the virtual service unit 203 refers to the virtual OS information table and identifies the virtual OS 301 that uses the identified virtual I / O.
  • step S510 the virtual service unit 203 determines the control content. If the control content is built-in, the control proceeds to step S511, and if it is disconnected, the control proceeds to S512.
  • step S511 the virtual service unit 203 instructs the driver 206 to incorporate the specified I / O.
  • step S512 the virtual service unit 203 requests the communication mechanism 202 of the control OS to perform instruction communication for the specified operation (detachment or incorporation) of the specified virtual I / O to all the specified virtual OSs. .
  • step S513 the virtual service unit 203 determines whether all responses to the instruction communication of the designated operation are successful. If all responses are successful, control proceeds to step S514; otherwise, control proceeds to step S517.
  • step S514 the virtual service unit 203 determines the control content. If the control content is built-in, the control proceeds to step S515, and if it is disconnected, the control proceeds to S516.
  • step S515 the virtual service unit 203 returns to the issuing virtual OS 301 with success.
  • step S516 the virtual service unit 203 instructs the driver 206 to disconnect the specified I / O.
  • step S517 the virtual service unit 203 returns to the virtual OS that issued the communication data due to failure.
  • FIG. 7 is a flowchart of the communication mechanism of the control OS according to the embodiment.
  • the communication mechanism 202 waits for communication reception.
  • the communication mechanism 202 receives a communication request from the virtualization service unit 203.
  • step S ⁇ b> 603 the communication mechanism 202 transmits communication to the corresponding virtual OS 301.
  • step S ⁇ b> 604 the communication mechanism 202 receives communication from the virtual OS 301.
  • step S605 the communication mechanism 202 notifies the virtualization service unit 203 of the received content.
  • step S ⁇ b> 606 the communication mechanism 202 receives a virtual OS information table change notification from the virtualization service unit 203.
  • the change notification includes information on the virtual OS newly added (increased) or deleted (decreased).
  • step S607 the communication mechanism 202 performs communication connection with the newly added (increased) virtual OS 301 or disconnection with the deleted (decreased) virtual OS 301.
  • FIG. 8 is a flowchart of the communication mechanism of the virtual OS according to the embodiment.
  • the communication mechanism 302 waits for communication reception. If the communication comes from the virtual OS side, the control proceeds to step S702. If the communication comes from the control OS 201, the control proceeds to step S704.
  • step S ⁇ b> 702 the communication mechanism 302 receives a communication request from the virtual OS 301.
  • step S ⁇ b> 703 the communication mechanism 302 transmits communication to the communication mechanism 202 of the control OS 201.
  • step S ⁇ b> 704 the communication mechanism 302 receives communication from the control OS 201.
  • step S705 the communication mechanism 302 instructs the driver 306 to disconnect or incorporate the I / O according to the control content included in the communication.
  • step S706 the communication mechanism 302 responds to the control OS 201 with the disconnection result or the incorporation result.
  • FIG. 9 is a flowchart of the driver of the control OS according to the embodiment.
  • the driver 206 waits for processing. If the process is an installation instruction, the control proceeds to step S802, and if the process is a disconnection instruction, the control proceeds to step S806.
  • step S802 the driver 206 receives an installation instruction.
  • step S803 the driver 206 incorporates the designated I / O.
  • step S804 the driver 206 notifies the virtualization service unit 203 of the installation target.
  • step S805 the driver 206 waits for a response from the virtualization service unit 203.
  • step S806 the driver 206 receives the disconnection instruction.
  • step S807 the driver 206 notifies the virtualization service unit 203 of the separation target.
  • step S808 the driver 206 waits for a response from the virtualization service unit 203.
  • step S809 the driver 206 receives the response from the virtualization service unit 203 and disconnects the I / O.
  • FIG. 10 is a flowchart of the virtual OS driver according to the embodiment.
  • the driver 306 waits for process reception. If the process is an installation instruction, control proceeds to step S902. If the process is a disconnection instruction, control proceeds to step S906.
  • step S902 the driver 306 receives an installation instruction.
  • step S903 the driver 306 notifies the communication mechanism 302 that virtual I / O has been incorporated.
  • step S904 the driver 306 waits for a response from the virtualization service unit.
  • step S905 after receiving the response, the driver 306 incorporates virtual I / O.
  • step S906 the driver 306 receives the disconnection instruction.
  • step S907 the driver 306 disconnects the virtual I / O.
  • step S908 the driver 306 notifies the communication mechanism 302 that the virtual I / O has been disconnected.
  • step S908 the driver 309 waits for a response from the communication mechanism 302.
  • FIG. 11 is a sequence diagram when I / O is disconnected from the control OS.
  • disk 1 is disconnected from the control OS.
  • step S1001 the maintenance program 204 instructs the driver 206 to disconnect the I / O (disk1).
  • step S1002 the driver 206 transmits a virtual I / O disconnection instruction related to disk1 to the virtualization service unit 203.
  • the virtualization service unit 203 refers to the virtual OS information table and the virtual I / O information table, and identifies the virtual I / O related to disk1 and the virtual OS using the virtual I / O.
  • vdisk2 is specified as the virtual I / O
  • virtual OS2 is specified as the virtual OS.
  • step S1004 the virtualization service unit 203 requests the communication mechanism to instruct the virtual OS 2 to disconnect the vdisk2.
  • the communication mechanism 202 transmits a virtual I / O (vdisk2) disconnection instruction to the communication mechanism 302-2 of the virtual OS2.
  • step S1006 the communication mechanism 302-2 transmits a virtual I / O (vdisk2) disconnection instruction to the driver 306-2.
  • step S1007 the driver 306-2 disconnects the virtual I / O (vdisk2).
  • step S1008 the driver 306-2 responds to the communication mechanism 302-2 that the virtual I / O (vdisk2) has been disconnected.
  • step S1009 the communication mechanism 302-2 transmits the virtual I / O (vdisk2) disconnection result of the virtual OS 2 to the control OS communication mechanism 202.
  • step S1010 the communication mechanism 202 responds to the virtualization service unit 203 with the received disconnection result of the virtual OS2.
  • step S1011 the virtualization service unit 203 responds to the driver 206 with an instruction to disconnect I / O (disk1).
  • step S1012 the driver 206 disconnects disk1.
  • step S ⁇ b> 1013 the driver 206 notifies the maintenance program 204 of completion of I / O disconnection.
  • FIG. 12 is a sequence diagram when I / O is incorporated from the control OS. Here, a case where disk1 is incorporated from the control OS will be described.
  • step S1101 the maintenance program 204 instructs the driver to incorporate I / O (disk1).
  • step S1102 the driver 206 incorporates disk1.
  • step S1103 the driver 206 transmits a virtual I / O incorporation instruction related to disk1 to the virtualization service unit 203.
  • the virtualization service unit 203 refers to the virtual OS information table and the virtual I / O information table, and identifies the virtual I / O related to disk1 and the virtual OS using the virtual I / O.
  • vdisk2 is specified as the virtual I / O
  • virtual OS2 is specified as the virtual OS.
  • step S1105 the virtualization service unit 203 requests the communication mechanism 202 to instruct the virtual OS 2 to incorporate vdisk2.
  • step S1106 the communication mechanism 202 transmits a virtual I / O (vdisk2) installation instruction to the communication mechanism 302-2 of the virtual OS2.
  • step S1107 the communication mechanism 302-2 transmits the virtual I / O (vdisk2) incorporation to the driver 306-2.
  • step S1109 the driver 306-2 responds to the communication mechanism 302-2 that virtual I / O (vdisk2) has been incorporated.
  • step S1110 the communication mechanism 302-2 transmits the virtual OS 2 virtual I / O (vdisk2) incorporation result to the control OS communication mechanism 202.
  • step S ⁇ b> 1111 the communication mechanism 202 responds to the virtualization service unit 203 with the received incorporation result of the virtual OS 2.
  • the virtualization service unit 203 responds to the driver 206 with the result of incorporating the virtual I / O (vdisk2) related to disk1.
  • the driver 206 notifies the maintenance program 204 of completion of I / O (disk1) incorporation.
  • FIG. 13 is a sequence diagram when I / O is not shared from a virtual OS to another virtual OS. It is. Here, a case where vdisk2 is disconnected from virtual OS2 will be described.
  • step S1201 the maintenance program 304-2 instructs the driver 306-2 to disconnect the I / O (vdisk2).
  • step S1202 the driver 306-2 disconnects the virtual I / O (vkisk2).
  • step S1203 the driver 306-2 transmits an instruction to disconnect the I / O related to vdisk2 to the control OS to the communication mechanism 302-2.
  • step S1204 the communication mechanism 302-2 transmits an I / O disconnection instruction related to vdisk2 to the control OS.
  • step S ⁇ b> 1205 the communication mechanism 202 receives the disconnection instruction and transmits it to the virtualization service unit 203.
  • the virtualization service unit 203 refers to the virtual OS information table and the virtual I / O information table, and uses the I / O and virtual I / O related to vdisk2 and the virtual I / O. Specify the virtual OS.
  • disk1 is specified as the I / O related to vdisk2.
  • step S1207 the virtualization service unit 203 transmits an I / O (disk1) disconnection instruction to the driver 206.
  • step S1208 the driver 206 disconnects disk1.
  • step S1209 the driver 206 responds to the virtualization service unit 203 that the I / O (disk1) has been disconnected.
  • step S1210 the virtualization service unit 203 instructs the communication mechanism 202 to transmit I / O (disk1) disconnection completion to the virtual OS 2.
  • step S1211 the communication mechanism 202 transmits I / O (disk1) disconnection completion to the virtual OS 2.
  • step S1212 the communication mechanism 302-2 responds to the driver 306-2 that the I / O related to vdisk2 has been disconnected.
  • step S1213 the driver 306-2 notifies the maintenance program 304-2 of completion of I / O (vdisk2) disconnection.
  • FIG. 14 is a sequence diagram in case of incorporating I / O not shared by other virtual OS from virtual OS It is.
  • vdisk2 is incorporated from virtual OS2 will be described.
  • step S1301 the maintenance program 304-2 instructs the driver 306-2 to incorporate I / O (vdisk2).
  • the driver 306-2 transmits an instruction to incorporate I / O related to vdisk2 to the control OS to the communication mechanism 302-2.
  • the communication mechanism 302-2 transmits an I / O incorporation instruction related to vdisk2 to the control OS.
  • step S1304 the communication mechanism 202 receives the installation instruction and transmits it to the virtualization service unit 203.
  • the virtualization service unit 203 refers to the virtual OS information table and the virtual I / O information table, and uses the I / O and virtual I / O related to vdisk2 and the virtual I / O. Identify the virtual OS.
  • disk1 is specified as the I / O related to vdisk2.
  • step S 1306 the virtualization service unit 203 transmits an I / O (disk 1) installation instruction to the driver 206.
  • step S1307 the driver 206 incorporates disk1.
  • step S1308 the driver 206 responds to the virtualization service unit that I / O (disk1) has been incorporated.
  • step S1309 the virtualization service unit 203 instructs the communication mechanism 202 to transmit completion of I / O (disk1) incorporation into the virtual OS 2.
  • step S1310 the communication mechanism 202 transmits I / O (disk1) incorporation completion to the virtual OS 2.
  • step S1311 the communication mechanism 302-2 responds to the driver 306-2 that I / O (disk1) has been incorporated.
  • step S1312 the driver 306-2 incorporates virtual I / O (vkisk2).
  • step S1313 the driver 306-2 notifies the maintenance program that I / O (vdisk2) incorporation is complete.
  • FIG. 15 shows a case in which detaching of I / O shared by multiple virtual OSs is instructed from the virtual OS It is a sequence diagram. Here, a case where vdisk0 is disconnected from the maintenance program of virtual OS1 will be described.
  • step S1401 the maintenance program 304-1 instructs the driver 306-1 to disconnect the I / O (vdisk0).
  • step S1402 the driver 306-1 disconnects the virtual I / O (vkisk0).
  • step S1403 the driver 306-1 transmits an instruction to disconnect the I / O related to vdisk0 to the control OS 201 to the communication mechanism 302-1.
  • step S1404 the communication mechanism 302-1 transmits an I / O disconnection instruction related to vdisk0 to the control OS 201.
  • step S ⁇ b> 1405 the communication mechanism 204 receives the disconnection instruction and transmits it to the virtualization service unit 203.
  • the virtualization service unit 203 refers to the virtual OS information table and the virtual I / O information table, and uses the I / O and virtual I / O related to vdisk0 and the virtual I / O.
  • disk 0 is specified as I / O related to vdisk0
  • vdisk1 is specified as virtual I / O related to vdisk0
  • virtual OS 2 is specified as a virtual OS using vdisk1.
  • step S1407 the virtualization service unit 203 requests the communication mechanism 204 to instruct the virtual OS 2 to disconnect the vdisk1.
  • step S1408 the communication mechanism 204 transmits a virtual I / O (vdisk1) disconnection instruction to the communication mechanism 302-2 of the virtual OS2.
  • step S1409 the communication mechanism 302-2 transmits a virtual I / O (vdisk1) disconnection instruction to the driver 306-2.
  • step S1410 the driver 306-2 disconnects the virtual I / O (vdisk1).
  • step S1411 the driver 306-2 responds to the communication mechanism 302-2 that the virtual I / O (vdisk1) has been disconnected.
  • step S1412 the communication mechanism 302-2 transmits the virtual I / O (vdisk1) disconnection result of the virtual OS 2 to the control OS communication mechanism 204.
  • step S ⁇ b> 1413 the communication mechanism 204 responds to the virtualization service unit 203 with the received virtual OS 2 disconnection result.
  • step S1414 the virtualization service unit 203 responds to the driver 206 with an instruction to disconnect the I / O (disk0).
  • step S1415 the driver 206 disconnects disk0.
  • step S1416 the driver 206 responds to the virtualization service unit 203 that the I / O (disk0) has been disconnected.
  • step S1417 the virtualization service unit 203 instructs the communication mechanism 204 to transmit to the virtual OS 1 completion of disconnection of I / O related to vdisk0.
  • step S1418 the communication mechanism 204 transmits to the virtual OS 1 completion of disconnection of I / O related to vdisk0.
  • step S1419 the communication mechanism 302-1 responds to the driver 306-1 that the I / O related to vdisk0 has been disconnected.
  • step S1420 the driver 306-1 notifies the maintenance program of completion of I / O (vdisk0) disconnection.
  • FIG. 16 shows a case where a virtual OS instructs to disconnect I / O shared by multiple virtual OSs. It is a sequence diagram. Here, a case where vdisk0 is incorporated from the maintenance program of virtual OS1 will be described.
  • step S1501 the maintenance program 304-1 instructs the driver 306-1 to incorporate I / O (vdisk0).
  • the driver 306-1 transmits an instruction to incorporate I / O related to vdisk0 to the control OS to the communication mechanism 302-1.
  • the communication mechanism 302-1 transmits an I / O incorporation instruction related to vdisk0 to the control OS.
  • step S1504 the communication mechanism 204 receives the installation instruction and transmits it to the virtualization service unit 203.
  • the virtualization service unit 203 refers to the virtual OS information table and the virtual I / O information table, and uses the I / O and virtual I / O related to vdisk0 and the virtual I / O. Identify the virtual OS.
  • disk 0 is specified as I / O related to vdisk0
  • vdisk1 is specified as virtual I / O related to vdisk0
  • virtual OS 2 is specified as a virtual OS using vdisk1.
  • step S1506 the virtualization service unit 203 transmits an I / O (disk0) installation instruction to the driver 206.
  • step S1507 the driver 206 incorporates disk0.
  • step S1508 the driver 206 responds to the virtualization service unit 203 that I / O (disk0) has been incorporated.
  • step S1509 the virtualization service unit 203 requests the communication mechanism 204 to instruct the virtual OS 2 to incorporate vdisk1.
  • step S1510 the communicator 204 transmits a virtual I / O (vdisk1) installation instruction to the communication mechanism 302-2 of the virtual OS2.
  • step S1511 the communication mechanism 302-2 transmits a virtual I / O (vdisk1) installation instruction to the driver 306-2.
  • step S1512 the driver 306-2 incorporates virtual I / O (vdisk1).
  • step S1513 the driver 306-2 responds to the communication mechanism 302-2 that virtual I / O (vdisk1) has been incorporated.
  • step S1514 the communication mechanism 306-2 transmits the virtual OS 2 virtual I / O (vdisk1) incorporation result to the control OS communication mechanism 204.
  • step S1515 the communication mechanism 204 responds to the virtualization service unit 203 with the received incorporation result of the virtual OS 2.
  • step S1516 the virtualization service unit 203 instructs the communication mechanism 204 to transmit the completion of I / O incorporation related to vdisk0 to the virtual OS1.
  • step S1517 the communication mechanism 204 transmits to the virtual OS 1 completion of incorporation of I / O related to vdisk0.
  • step S1518 the communication mechanism 302-1 responds to the driver 306-1 that I / O related to vdisk0 has been incorporated.
  • step S1519 the driver 306-1 incorporates virtual I / O (vkisk0).
  • step S1520 the driver 306-1 notifies the maintenance program 304-1 of completion of I / O (vdisk0) incorporation.
  • the driver 306-1 since the I / O related to the I / O to be separated or incorporated is separated or incorporated, the trouble due to the separation or forgetting to be incorporated can be reduced.

Abstract

仮想OSを制御する制御OS上で動作し、物理I/Oを前記制御OSから切り離すプログラムであって、前記物理I/Oと仮想I/Oが対応付けられた仮想I/O情報および前記仮想I/Oと前記仮想OSが対応付けられた仮想OS情報を格納したコンピュータに、前記物理I/Oの切り離し指示を受信する工程と、前記仮想I/O情報および前記仮想OS情報を参照し、前記物理I/Oに対応する前記仮想I/Oおよび前記仮想I/Oを使用している前記仮想OSを特定する工程と、前記特定した仮想I/Oを切り離す指示を前記特定した仮想OSに送信する工程と、前記切り離した旨を前記特定した仮想OSから受信する工程と、前記切り離した旨を受信した後に、前記物理I/Oを前記制御OSから切り離す工程と、を実行させる。

Description

切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法
 本発明は、入出力装置の切り離しおよび組み込みに関する。
 仮想システム有するシステムにおいて、ディスクやPeripheral Component Interconnect(PCI)カードといったI/O装置は、仮想化サービスを持つシステムが該I/O装置を仮想I/O装置に変換し、仮想システムに提供している。
 仮想化サービスは、上記の機能のように、仮想オペレーティングシステム(OS)に対して物理資源を論理資源に変換する役割を持つ。
 コンピュータの電源を入れたままディスクやPCIカード等のデバイス(I/O装置)の交換(活性交換:hot plugまたはhot swap)を行う場合、仮想化サービスを持つシステム(制御OS)と、仮想I/Oを使用しているシステム(仮想OS)の両方でデバイスを切り離し、交換後に新しいデバイスの組み込みを行う必要がある。
 例えば、制御OSでデバイスの切り離しを行い、仮想OSで該デバイスに対応する仮想デバイスの切り離しを忘れた場合、仮想OSで該仮想デバイスにアクセスが発生するとエラーが発生してしまう。
 このように、制御OSと仮想I/Oを使用している仮想OSで、デバイスの切り離しや組み込みを行う手順は複雑であり、切り離し忘れや組み込み忘れなどの間違いが起こりやすく、トラブルの元となっているという問題があった。
特開2006-331421号公報 特開2009-123217号公報 特開平07-084810号公報
 本発明の課題は、入出力装置の切り離しまたは組み込みにおいて、トラブルを減少させる切り離しプログラムおよび組み込みプログラムを提供することである。
 実施の形態に係る切り離しプログラムは、仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、前記制御オペレーティングシステムの物理入出力装置を前記制御オペレーティングシステムから切り離すプログラムであって、前記物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、前記物理入出力装置の切り離し指示を受信する工程と、前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記物理入出力装置に対応する仮想入出力装置および前記仮想入出力装置を使用している前記仮想オペレーティングシステムを特定する工程と、前記特定した仮想入出力装置を切り離す指示を前記特定した仮想オペレーティングシステムに送信する工程と、前記特定した仮想入出力装置を切り離した旨を前記特定した仮想オペレーティングシステムから受信する工程と、前記特定した仮想入出力装置を切り離した旨を受信した後に、前記物理入出力装置を前記制御オペレーティングシステムから切り離す工程と、を実行させる。
 実施の形態に係る組み込みプログラムは、仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、前記制御オペレーティングシステムの物理入出力装置を前記制御オペレーティングシステムに組み込むプログラムであって、前記物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、前記物理入出力装置の組み込み指示を受信する工程と、前記物理入出力装置を前記制御オペレーティングシステムに組み込む工程と、前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記物理入出力装置に対応する前記仮想入出力装置および前記仮想入出力装置を使用している前記仮想オペレーティングシステムを特定する工程と、前記特定した仮想入出力装置を組み込む指示を前記特定した仮想オペレーティングシステムに送信する工程と、前記特定した仮想オペレーティングシステムから前記特定した仮想入出力装置を組み込んだ旨を受信する工程と、を実行させる。
 実施の形態に係る切り離しプログラムは、仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、仮想入出力装置に関連する物理入出力装置を前記制御オペレーティングシステムから切り離すプログラムであって、前記物理入出力装置と前記仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、前記仮想入出力装置を使用している前記仮想オペレーティングシステムから前記仮想入出力装置に関連する前記物理入出力装置の切り離し指示を受信する工程と、前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記仮想入出力装置に関連する前記物理入出力装置および他の仮想入出力装置、および前記他の仮想入出力装置を使用している他の仮想オペレーティングシステムを特定する工程と、前記他の仮想オペレーティングシステムに前記他の仮想入出力装置の切り離し指示を送信する工程と、前記他の仮想オペレーティングシステムから前記他の仮想入出力装置の切り離した旨を受信する工程と、前記仮想入出力装置に関連する前記物理入出力装置を前記制御オペレーティングシステムから切り離す工程と、前記仮想入出力装置を使用している前記仮想オペレーティングシステムに、前記仮想入出力装置に関連する前記物理入出力装置を切り離した旨を送信する工程と、を実行させる。
 実施の形態に係る切り離しプログラムは、制御オペレーティングシステムで制御される仮想オペレーティングシステム上で動作し、仮想入出力装置を前記仮想オペレーティングシステムから切り離すプログラムであって、コンピュータに、前記仮想入出力装置の切り離し指示を受信する工程と、前記仮想入出力装置を前記仮想オペレーティングシステムから切り離す工程と、前記仮想入出力装置に関連する物理入出力装置を切り離す指示を前記制御オペレーティングシステムに送信する工程と、前記仮想入出力装置に関連する物理入出力装置を切り離した旨を前記制御オペレーティングシステムから受信する工程と、を実行させる。
 実施の形態に係る組み込みプログラムは、仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、仮想入出力装置に関連する物理入出力装置を前記制御オペレーティングシステムに組み込むプログラムであって、前記物理入出力装置と前記仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、前記仮想入出力装置を使用している前記仮想オペレーティングシステムから前記仮想入出力装置に関連する前記物理入出力装置の組み込み指示を受信する工程と、前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記仮想入出力装置に関連する前記物理入出力装置および他の仮想入出力装置、および前記他の仮想入出力装置を使用している他の仮想オペレーティングシステムを特定する工程と、前記仮想入出力装置に関連する前記物理入出力装置を前記制御オペレーティングシステムに組み込む工程と、前記他の仮想オペレーティングシステムに前記他の仮想入出力装置の組み込み指示を送信する工程と、前記他の仮想オペレーティングシステムから前記他の仮想入出力装置の組み込んだ旨を受信する工程と、前記仮想入出力装置を使用している前記仮想オペレーティングシステムに、前記仮想入出力装置に関連する前記物理入出力装置を組み込んだ旨を送信する工程と、を実行させる。
 実施の形態に係る組み込みプログラムは、制御オペレーティングシステムで制御される仮想オペレーティングシステム上で動作し、仮想入出力装置を前記仮想オペレーティングシステムに組み込むプログラムであって、コンピュータに、前記仮想入出力装置の組み込み指示を受信する工程と、前記仮想入出力装置に関連する物理入出力装置を組み込む指示を前記制御オペレーティングシステムに送信する工程と、前記仮想入出力装置に関連する前記物理入出力装置を組み込んだ旨を前記制御オペレーティングシステムから受信する工程と、前記仮想入出力装置に関連する物理入出力装置を組み込んだ旨を受信した後に、前記仮想入出力装置を前記仮想オペレーティングシステムに組み込む工程と、を実行させる。
 実施の形態のプログラムによれば、切り離しまたは組み込み対象となる入出力装置(仮想入出力装置を含む)に関連する入出力装置の切り離しまたは組み込みを自動的に行うため、切り離しまたは組み込み忘れによるトラブルを減少させることができる。
実施の形態に係るサーバの構成図である。 実施の形態に係るソフトウェアの構成図である。 仮想OS情報テーブルの例である。 仮想I/O情報テーブルの例である。 制御OSの通信機構と仮想OSの通信機構との間で送受信される通信データの形式の例である。 実施の形態に係る仮想サービス部のフローチャートである。 実施の形態に係る制御OSの通信機構のフローチャートである。 実施の形態に係る仮想OSの通信機構のフローチャートである。 実施の形態に係る制御OSのドライバのフローチャートである。 実施の形態に係る仮想OSのドライバのフローチャートである。 制御OSからI/Oの切り離しを行う場合のシーケンス図である。 制御OSからI/Oの組み込みを行う場合のシーケンス図である。 仮想OSから他の仮想OSで共有されていないI/Oの切り離しを行う場合のシーケンス図である。 仮想OSから他の仮想OSで共有されていないI/Oの組み込みを行う場合のシーケンス図である。 仮想OSから複数の仮想OSで共有しているI/Oの切り離しを指示した場合のシーケンス図である。 仮想OSから複数の仮想OSで共有しているI/Oの切り離しを指示した場合のシーケンス図である。
 以下、図面を参照しながら本発明の実施の形態を説明する。
 図1は、実施の形態に係るサーバの構成図である。
 サーバ101は、Central Processing Unit(CPU)102-n(n=1~4)、メモリ103-n、ディスク104-m(m=1~2)、およびネットワークカード105-mを備える。
 CPU104-nは、コア106-n-mを備える。
 コア106は、プログラム等の各種処理を実行する。
 メモリ103は、各種データを一時的に記憶する装置である。例えば、メモリ103として、Random Access Memory(RAM)が用いられる。
 ディスク104は、各種データを記憶するための装置である。例えば、ディスク104として、磁気ディスク装置が用いられる。
 ネットワークカード105は、通信を行うためのインターフェースである。
 実施の形態において、ディスクにそれぞれdisk0、disk1という識別子を割り当て、ネットワークカードにそれぞれnet0、net1という識別子を割り当てている。
 図2は、実施の形態に係るソフトウェアの構成図である。
 実施の形態に係るサーバ101では、制御OS201および仮想OS301-m(m=1~2)がインストールされて、実行されている。実施の形態においては、2つの仮想OS301-1、301-2が動作している。なお、実施の形態において、仮想OS301-1、301-2をそれぞれ、仮想OS1、仮想OS2と呼ぶ。
 制御OS201は、仮想OS301を制御している。また制御OS201および仮想OS301は、I/O(仮想I/Oを含む)を制御OS201または仮想OS301から動的に切り離すhot plug機能(hot swap機能)を有している。
 制御OS201は、通信機構202、仮想化サービス部203、保守プログラム、ドライバ206を備える。
 通信機構202は、仮想OS301との通信を行う。
 仮想化サービス部203は、仮想化サービスを提供し、物理資源であるI/O(物理入出力装置)207を論理資源である仮想I/O(仮想入出力装置)307へ変換する。I/O207は、ディスク104およびネットワークカード105に対応する。
 保守プログラム204は、I/O207の切り離し指示や組み込み指示を行う。
 ドライバ206は、I/O207の切り離しおよび組み込みを行う。なお、I/Oの切り離しとは、I/OをOS上から電気的に切り離し、OS上から認識されないようにし、交換可能状態にすることである。処理としては、切り離しを指示されたドライバは、そのI/Oを停止させ、自身も終了する。また、I/Oの組み込みとは、切り離しとは逆に電気的に切り離された状態のI/Oを、OSに認識させ、使用可能な状態にすることである。処理としては、該当I/Oの電源をONし、ドライバのアタッチ、I/Oの起動を行う。
 仮想OS301-mは、通信機構302-m、保守プログラム304-m、およびドライバ306-mを備える。
 通信機構302は、制御OS201との通信を行う。
 保守プログラム304、仮想I/O307の切り離し指示や組み込み指示を行う。
 ドライバ306は、仮想I/O307の切り離しおよび組み込みを行う。仮想I/Oの切り離しとは、仮想I/O307を仮想OS301上から電気的に切り離し、仮想OS301上から認識されないようにし、交換可能状態にすることである。仮想I/Oの組み込みとは、切り離しとは逆に電気的に切り離された状態の仮想I/O307を、仮想OS301に認識させ、使用可能な状態にすることである。
 次に、実施の形態に係る活性交換処理で用いられる情報テーブルについて説明する。
 図3は、仮想OS情報テーブルの例である。
 仮想情報テーブルには、仮想OS名、仮想CPU数、仮想メモリサイズ、および仮想I/Oが対応付けられて記述されている。
 仮想OS名には、制御OSが制御している仮想OSの識別子が記述されている。
 仮想CPU数は、仮想OSが使用しているCPUの数が記述されている。ここでは、仮想CPU数はコア数としている。
 仮想メモリサイズには、仮想OSが使用しているメモリサイズが記述されている。
 仮想I/Oは、仮想OSが使用している仮想I/Oの識別子が記述されている。
 実施の形態において、仮想OS1は、2つのCPU、2ギガバイト(GB)のメモリ、仮想I/Oとしてvdisk0、vnet0を使用している。また、仮想OS2は、6つのCPU、8GBのメモリ、仮想I/Oとしてvdisk1、vdisk2、vnet1、vnet2を使用している。
 図4は、仮想I/O情報テーブルの例である。
 仮想I/O情報テーブルには、I/O、仮想I/Oが対応付けられて記述されている。
 I/Oには、I/Oの識別子が記述されている。
 仮想I/Oは、仮想OS上で使用されている仮想I/Oの識別子が記述されている。
 実施の形態において、disk0は、仮想OS上でvdisk0、vdisk1として使用され、disk1は、仮想OS上でvdisk2として使用されている。
 また、net0は、仮想OS上でvnet0、vnet1として使用され、net1は、仮想OS上でvet2として使用されている。
 なお、仮想OS情報テーブルおよび仮想I/O情報テーブルは、例えば、メモリ103に格納されている。
 図5は、制御OSの通信機構と仮想OSの通信機構との間で送受信される通信データの形式の例である。
 通信データには、発行元、発行先、仮想I/O情報、制御内容、および制御結果を含んでいる。
 発行元は、通信データの発行元のOSである。例えば、制御OSや仮想OSの識別子が記述される。
 発行先は、通信データの発行先のOSである。例えば、制御OSや仮想OSの識別子が記述される。
 仮想I/O情報は、切り離しまたは組み込みの対象となるI/Oを示す識別子である。例えば、仮想I/O情報として、vdisk1、vnet1等が記述される。
 制御内容は、制御OSまたは仮想OSが実行するまたは実行した制御の種類である。例えば、制御内容として、切り離し指示、組み込み指示、切り離し復帰、組み込み復帰がある。
 制御結果は、切り離しまたは組み込みが成功または失敗(異常)したかを示す。なお、制御結果は、制御内容が切り離し復帰または組み込み復帰の場合のみ用いられる。
 図6は、実施の形態に係る仮想サービス部のフローチャートである。
 ステップS501において、仮想サービス部203は、受信した通信データの発行元を判定する。発行元が制御OS201のドライバ206の場合、制御はステップS502に進み、仮想OS301の場合、制御はステップS508に進む。
 ステップS502において、仮想サービス部203は、仮想I/O情報テーブルを参照し、指定されたI/Oがどの仮想I/Oであるか特定する。
 ステップS503において、仮想サービス部203は、仮想OS情報テーブルを参照し、特定した仮想I/Oを使用している仮想OS301を特定する。
 ステップS504において、仮想サービス部203は、制御OSの通信機構202に対し、特定したすべての仮想OSに対し、指定の動作(切り離しまたは組み込み)の指示通信を依頼する。
 ステップS505において、仮想サービス部203は、指定の動作に対する応答がすべて成功であるか否か判定する。応答がすべて成功である場合、制御はステップS506に進み、1つ以上失敗の場合、制御はステップS507に進む。
 ステップS506において、仮想サービス部203は、ドライバ506に成功で復帰(仮想I/Oの組み込み成功を応答)する。
 ステップS507において、仮想サービス部203は、ドライバ506に失敗で復帰(仮想I/Oの組み込み失敗を応答)する。
 ステップS508において、仮想サービス部203は、仮想I/O情報テーブルを参照し、指定されたI/Oに関連するI/Oおよび仮想I/Oを特定する。
 ステップS509において、仮想サービス部203は、仮想OS情報テーブルを参照し、特定した仮想I/Oを使用している仮想OS301を特定する。
 ステップS510において、仮想サービス部203は、制御内容を判定する。制御内容が組み込みの場合、制御はステップS511に進み、切り離しの場合、制御はS512に進む。
 ステップS511において、仮想サービス部203は、ドライバ206に特定したI/Oの組み込みを指示する。
 ステップS512において、仮想サービス部203は、制御OSの通信機構202に対して、特定したすべての仮想OSに対し、特定した仮想I/Oの指定の動作(切り離しまたは組み込み)の指示通信を依頼する。
 ステップS513において、仮想サービス部203は、指定の動作の指示通信に対する応答がすべて成功であるか否か判定する。応答がすべて成功である場合、制御はステップS514に進み、すべて成功でない場合、制御はステップS517に進む。
 ステップS514において、仮想サービス部203は、制御内容を判定する。制御内容が組み込みの場合、制御はステップS515に進み、切り離しの場合、制御はS516に進む。
 ステップS515において、仮想サービス部203は、発行元の仮想OS301へ成功で復帰する。
 ステップS516において、仮想サービス部203は、ドライバ206に特定したI/Oの切り離し指示を行う。
 ステップS517において、仮想サービス部203は、通信データの発行元の仮想OSへ失敗で復帰する。
 図7は、実施の形態に係る制御OSの通信機構のフローチャートである。
 ステップS601において、通信機構202は、通信の受付待ちを行う。
 ステップS602において、通信機構202は、仮想化サービス部203から通信依頼を受信する。
 ステップS603において、通信機構202は、対応する仮想OS301へ通信を送信する。
 ステップS604において、通信機構202は、仮想OS301から通信を受信する。
 ステップS605において、通信機構202は、仮想化サービス部203に受信内容を通知する。
 ステップS606において、通信機構202は、仮想化サービス部203から仮想OS情報テーブルの変更通知を受信する。変更通知には、新たに追加(増加)されたまたは削除(減少)された仮想OSの情報を含んでいる。
 ステップS607において、通信機構202は、新たに追加(増加)された仮想OS301への通信接続または削除(減少)された仮想OS301との通信切断を行う。
 図8は、実施の形態に係る仮想OSの通信機構のフローチャートである。
 ステップS701において、通信機構302は、通信の受付待ちを行う。通信が仮想OS側から来た場合、制御はステップS702に進み、制御OS201から来た場合、制御はステップS704に進む。
 ステップS702において、通信機構302は、仮想OS301から通信依頼を受信する。
 ステップS703において、通信機構302は、制御OS201の通信機構202へ通信を送信する。
 ステップS704において、通信機構302は、制御OS201から通信を受信する。
 ステップS705において、通信機構302は、通信に含まれる制御内容に従い、I/Oの切り離しまたは組み込みをドライバ306に指示する。
 ステップS706において、通信機構302は、切り離し結果または組み込み結果を制御OS201へ応答する。
 図9は、実施の形態に係る制御OSのドライバのフローチャートである。
 ステップS801において、ドライバ206は、処理の受付待ちを行う。処理が組み込み指示の場合、制御はステップS802に進み、処理が切り離し指示の場合、制御はステップS806に進む。
 ステップS802において、ドライバ206は、組み込み指示を受信する。
 ステップS803において、ドライバ206は、指定されたI/Oの組み込みを行う。
 ステップS804において、ドライバ206は、仮想化サービス部203に、組み込み対象を通知する。
 ステップS805において、ドライバ206は、仮想化サービス部203からの応答を待つ。
 ステップS806において、ドライバ206は、ドライバ206は、切り離し指示を受信する。
 ステップS807において、ドライバ206は、仮想化サービス部203に、切り離し対象を通知する。
 ステップS808において、ドライバ206は、仮想化サービス部203からの応答を待つ。
 ステップS809において、ドライバ206は、仮想化サービス部203からの応答を受信し、I/Oを切り離す。
 図10は、実施の形態に係る仮想OSのドライバのフローチャートである。
 ステップS901において、ドライバ306は、処理の受付待ちを行う。処理が組み込み指示の場合、制御はステップS902に進み、処理が切り離し指示の場合、制御はステップS906に進む。
 ステップS902において、ドライバ306は、組み込み指示を受信する。
 ステップS903において、ドライバ306は、仮想I/Oの組み込みを通信機構302に通知する。
 ステップS904において、ドライバ306は、仮想化サービス部からの応答を待つ。
 ステップS905において、ドライバ306は、応答を受信した後、仮想I/Oを組み込む。
 ステップS906において、ドライバ306は、切り離し指示を受信する。
 ステップS907において、ドライバ306は、仮想I/Oを切り離す。
 ステップS908において、ドライバ306は、仮想I/Oの切り離しを通信機構302に通知する。
 ステップS908において、ドライバ309は、通信機構302からの応答を待つ。
 次に実施の形態におけるI/O(仮想I/Oを含む)の切り離しまたは組み込みの具体例について説明する。
(1)制御OSからI/Oの切り離しを行う場合
 図11は、制御OSからI/Oの切り離しを行う場合のシーケンス図である。
 ここでは、制御OSからdisk1を切り離す場合について説明する。
 ステップS1001において、保守プログラム204は、ドライバ206にI/O(disk1)切り離し指示を行う。
 ステップS1002において、ドライバ206は、disk1に関連する仮想I/Oの切り離し指示を仮想化サービス部203に送信する。
 ステップS1003において、仮想化サービス部203は、仮想OS情報テーブルおよび仮想I/O情報テーブルを参照し、disk1に関連する仮想I/Oおよび該仮想I/Oを使用している仮想OSを特定する。ここでは、仮想I/Oとしてvdisk2、仮想OSとして仮想OS2が特定される。
 ステップS1004において、仮想化サービス部203は、仮想OS2へvdisk2の切り離し指示を通信機構に依頼する。
 ステップS1005において、通信機構202は、仮想OS2の通信機構302-2に仮想I/O(vdisk2)の切り離し指示を送信する。
 ステップS1006において、通信機構302-2は、ドライバ306-2に仮想I/O(vdisk2)の切り離し指示を送信する。
 ステップS1007において、ドライバ306-2は、仮想I/O(vdisk2)を切り離す。
 ステップS1008において、ドライバ306-2は、仮想I/O(vdisk2)を切り離した旨を通信機構302-2に応答する。
 ステップS1009において、通信機構302-2は、仮想OS2の仮想I/O(vdisk2)の切り離し結果を制御OSの通信機構202に送信する。
 ステップS1010において、通信機構202は、受信した仮想OS2の切り離し結果を仮想化サービス部203に応答する。
 ステップS1011において、仮想化サービス部203は、I/O(disk1)の切り離し指示をドライバ206に応答する。
 ステップS1012において、ドライバ206は、disk1を切り離す。
 ステップS1013において、ドライバ206は、保守プログラム204にI/O切り離し完了を通知する。
(2)制御OSからI/Oの組み込みを行う場合
 図12は、制御OSからI/Oの組み込みを行う場合のシーケンス図である。
 ここでは、制御OSからdisk1を組み込む場合について説明する。
 ステップS1101において、保守プログラム204は、ドライバにI/O(disk1)組み込み指示を行う。
 ステップS1102において、ドライバ206は、disk1を組み込む。
 ステップS1103において、ドライバ206は、disk1に関連する仮想I/Oの組み込み指示を仮想化サービス部203に送信する。
 ステップS1104において、仮想化サービス部203は、仮想OS情報テーブルおよび仮想I/O情報テーブルを参照し、disk1に関連する仮想I/Oおよび該仮想I/Oを使用している仮想OSを特定する。ここでは、仮想I/Oとしてvdisk2、仮想OSとして仮想OS2が特定される。
 ステップS1105において、仮想化サービス部203は、仮想OS2へvdisk2の組み込み指示を通信機構202に依頼する。
 ステップS1106において、通信機構202は、仮想OS2の通信機構302-2に仮想I/O(vdisk2)の組み込み指示を送信する。
 ステップS1107において、通信機構302-2は、ドライバ306-2に仮想I/O(vdisk2)の組み込みを送信する。
 ステップS1108において、ドライバ306-2は、仮想I/O(vdisk2)を組み込む。
 ステップS1109において、ドライバ306-2は、仮想I/O(vdisk2)を組み込んだ旨を通信機構302-2に応答する。
 ステップS1110において、通信機構302-2は、仮想OS2の仮想I/O(vdisk2)の組み込み結果を制御OSの通信機構202に送信する。
 ステップS1111において、通信機構202は、受信した仮想OS2の組み込み結果を仮想化サービス部203に応答する。
 ステップS1112において、仮想化サービス部203は、disk1に関連する仮想I/O(vdisk2)の組み込み結果をドライバ206に応答する。
 ステップS1113において、ドライバ206は、保守プログラム204にI/O(disk1)組み込み完了を通知する。
(3)仮想OSから他の仮想OSで共有されていないI/Oの切り離しを行う場合
 図13は、仮想OSから他の仮想OSで共有されていないI/Oの切り離しを行う場合のシーケンス図である。
 ここでは、仮想OS2からvdisk2を切り離す場合について説明する。
 ステップS1201において、保守プログラム304-2は、ドライバ306-2にI/O(vdisk2)切り離し指示を行う。
 ステップS1202において、ドライバ306-2は、仮想I/O(vkisk2)を切り離す。
 ステップS1203において、ドライバ306-2は、制御OSへのvdisk2に関連するI/Oの切り離し指示を通信機構302-2に送信する。
 ステップS1204において、通信機構302-2は、制御OSへvdisk2に関連するI/Oの切り離し指示を送信する。
 ステップS1205において、通信機構202は、切り離し指示を受信し、仮想化サービス部203に送信する。
 ステップS1206において、仮想化サービス部203は、仮想OS情報テーブルおよび仮想I/O情報テーブルを参照し、vdisk2に関連するI/Oおよび仮想I/O、および該仮想I/Oを使用している仮想OSを特定する。ここでは、vdisk2に関連するI/Oとしてdisk1が特定される。
 ステップS1207において、仮想化サービス部203は、I/O(disk1)の切り離し指示をドライバ206に送信する。
 ステップS1208において、ドライバ206は、disk1を切り離す。
 ステップS1209において、ドライバ206は、I/O(disk1)を切り離した旨を仮想化サービス部203に応答する。
 ステップS1210において、仮想化サービス部203は、仮想OS2へのI/O(disk1)切り離し完了の送信を通信機構202に指示する。
 ステップS1211において、通信機構202は、仮想OS2へI/O(disk1)切り離し完了を送信する。
 ステップS1212において、通信機構302-2は、vdisk2に関連するI/Oを切り離した旨をドライバ306-2に応答する。
 ステップS1213において、ドライバ306-2は、保守プログラム304-2にI/O(vdisk2)切り離し完了を通知する。
(4)仮想OSから他の仮想OSで共有されていないI/Oの組み込みを行う場合
 図14は、仮想OSから他の仮想OSで共有されていないI/Oの組み込みを行う場合のシーケンス図である。
 ここでは、仮想OS2からvdisk2を組み込む場合について説明する。
 ステップS1301において、保守プログラム304-2は、ドライバ306-2にI/O(vdisk2)組み込み指示を行う。
 ステップS1302において、ドライバ306-2は、制御OSへのvdisk2に関連するI/Oの組み込み指示を通信機構302-2に送信する。
 ステップS1303において、通信機構302-2は、制御OSへvdisk2に関連するI/Oの組み込み指示を送信する。
 ステップS1304において、通信機構202は、組み込み指示を受信し、仮想化サービス部203に送信する。
 ステップS1305において、仮想化サービス部203は、仮想OS情報テーブルおよび仮想I/O情報テーブルを参照し、vdisk2に関連するI/Oおよび仮想I/O、および該仮想I/Oを使用している仮想OSを特定する。ここでは、vdisk2に関連するI/Oとしてdisk1が特定される。
 ステップS1306において、仮想化サービス部203は、I/O(disk1)の組み込み指示をドライバ206に送信する。
 ステップS1307において、ドライバ206は、disk1を組み込む。
 ステップS1308において、ドライバ206は、I/O(disk1)を組み込んだ旨を仮想化サービス部に応答する。
 ステップS1309において、仮想化サービス部203は、仮想OS2へのI/O(disk1)組み込み完了の送信を通信機構202に指示する。
 ステップS1310において、通信機構202は、仮想OS2へI/O(disk1)組み込み完了を送信する。
 ステップS1311において、通信機構302-2は、I/O(disk1)を組み込んだ旨をドライバ306-2に応答する。
 ステップS1312において、ドライバ306-2は、仮想I/O(vkisk2)を組み込む。
 ステップS1313において、ドライバ306-2は、保守プログラムにI/O(vdisk2)組み込み完了を通知する。
(5)仮想OSから複数の仮想OSで共有しているI/Oの切り離しを指示した場合
 図15は、仮想OSから複数の仮想OSで共有しているI/Oの切り離しを指示した場合のシーケンス図である。
 ここでは、仮想OS1の保守プログラムからvdisk0を切り離す場合について説明する。
 ステップS1401において、保守プログラム304-1は、ドライバ306-1にI/O(vdisk0)切り離し指示を行う。
 ステップS1402において、ドライバ306-1は、仮想I/O(vkisk0)を切り離す。
 ステップS1403において、ドライバ306-1は、制御OS201へのvdisk0に関連するI/Oの切り離し指示を通信機構302-1に送信する。
 ステップS1404において、通信機構302-1は、制御OS201へvdisk0に関連するI/Oの切り離し指示を送信する。
 ステップS1405において、通信機構204は、切り離し指示を受信し、仮想化サービス部203に送信する。
 ステップS1406において、仮想化サービス部203は、仮想OS情報テーブルおよび仮想I/O情報テーブルを参照し、vdisk0に関連するI/Oおよび仮想I/O、および該仮想I/Oを使用している仮想OSを特定する。ここでは、vdisk0に関連するI/Oとしてdisk0、vdisk0に関連する仮想I/Oとしてvdisk1、vdisk1を使用している仮想OSとして仮想OS2が特定される。
 ステップS1407において、仮想化サービス部203は、仮想OS2へvdisk1の切り離し指示を通信機構204に依頼する。
 ステップS1408において、通信機構204は、仮想OS2の通信機構302-2に仮想I/O(vdisk1)の切り離し指示を送信する。
 ステップS1409において、通信機構302-2は、ドライバ306-2に仮想I/O(vdisk1)の切り離し指示を送信する。
 ステップS1410において、ドライバ306-2は、仮想I/O(vdisk1)を切り離す。
 ステップS1411において、ドライバ306-2は、仮想I/O(vdisk1)を切り離した旨を通信機構302-2に応答する。
 ステップS1412において、通信機構302-2は、仮想OS2の仮想I/O(vdisk1)の切り離し結果を制御OSの通信機構204に送信する。
 ステップS1413において、通信機構204は、受信した仮想OS2の切り離し結果を仮想化サービス部203に応答する。
 ステップS1414において、仮想化サービス部203は、I/O(disk0)の切り離し指示をドライバ206に応答する。
 ステップS1415において、ドライバ206は、disk0を切り離す。
 ステップS1416において、ドライバ206は、I/O(disk0)を切り離した旨を仮想化サービス部203に応答する。
 ステップS1417において、仮想化サービス部203は、仮想OS1へのvdisk0に関連するI/Oの切り離し完了の送信を通信機構204に指示する。
 ステップS1418において、通信機構204は、仮想OS1へvdisk0に関連するI/Oの切り離し完了を送信する。
 ステップS1419において、通信機構302-1は、vdisk0に関連するI/Oを切り離した旨をドライバ306-1に応答する。
 ステップS1420において、ドライバ306-1は、保守プログラムにI/O(vdisk0)切り離し完了を通知する。
(6)仮想OSから複数の仮想OSで共有しているI/Oの組み込みを指示した場合
 図16は、仮想OSから複数の仮想OSで共有しているI/Oの切り離しを指示した場合のシーケンス図である。
 ここでは、仮想OS1の保守プログラムからvdisk0を組み込む場合について説明する。
 ステップS1501において、保守プログラム304-1は、ドライバ306-1にI/O(vdisk0)組み込み指示を行う。
 ステップS1502において、ドライバ306-1は、制御OSへのvdisk0に関連するI/Oの組み込み指示を通信機構302-1に送信する。
 ステップS1503において、通信機構302-1は、制御OSへvdisk0に関連するI/Oの組み込み指示を送信する。
 ステップS1504において、通信機構204は、組み込み指示を受信し、仮想化サービス部203に送信する。
 ステップS1505において、仮想化サービス部203は、仮想OS情報テーブルおよび仮想I/O情報テーブルを参照し、vdisk0に関連するI/Oおよび仮想I/O、および該仮想I/Oを使用している仮想OSを特定する。ここでは、vdisk0に関連するI/Oとしてdisk0、vdisk0に関連する仮想I/Oとしてvdisk1、vdisk1を使用している仮想OSとして仮想OS2が特定される。
 ステップS1506において、仮想化サービス部203は、I/O(disk0)の組み込み指示をドライバ206に送信する。
 ステップS1507において、ドライバ206は、disk0を組み込む。
 ステップS1508において、ドライバ206は、I/O(disk0)を組み込んだ旨を仮想化サービス部203に応答する。
 ステップS1509において、仮想化サービス部203は、仮想OS2へvdisk1の組み込み指示を通信機構204に依頼する。
 ステップS1510において、通信機204構は、仮想OS2の通信機構302-2に仮想I/O(vdisk1)の組み込み指示を送信する。
 ステップS1511において、通信機構302-2は、ドライバ306-2に仮想I/O(vdisk1)の組み込み指示を送信する。
 ステップS1512において、ドライバ306-2は、仮想I/O(vdisk1)を組み込む。
 ステップS1513において、ドライバ306-2は、仮想I/O(vdisk1)を組み込んだ旨を通信機構302-2に応答する。
 ステップS1514において、通信機構306-2は、仮想OS2の仮想I/O(vdisk1)の組み込み結果を制御OSの通信機構204に送信する。
 ステップS1515において、通信機構204は、受信した仮想OS2の組み込み結果を仮想化サービス部203に応答する。
 ステップS1516において、仮想化サービス部203は、仮想OS1へのvdisk0に関連するI/Oの組み込み完了の送信を通信機構204に指示する。
 ステップS1517において、通信機構204は、仮想OS1へvdisk0に関連するI/Oの組み込み完了を送信する。
 ステップS1518において、通信機構302-1は、vdisk0に関連するI/Oを組み込んだ旨をドライバ306-1に応答する。
 ステップS1519において、ドライバ306-1は、仮想I/O(vkisk0)を組み込む。
 ステップS1520において、ドライバ306-1は、保守プログラム304-1にI/O(vdisk0)組み込み完了を通知する。
 実施の形態のOSによれば、切り離しまたは組み込み対象となるI/Oに関連するI/Oの切り離しまたは組み込みを連動して行うため、切り離しまたは組み込み忘れによるトラブルを減少させることができる。

Claims (10)

  1.  仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、前記制御オペレーティングシステムの物理入出力装置を前記制御オペレーティングシステムから切り離すプログラムであって、
     前記物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、
     前記物理入出力装置の切り離し指示を受信する工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記物理入出力装置に対応する仮想入出力装置および前記仮想入出力装置を使用している前記仮想オペレーティングシステムを特定する工程と、
     前記特定した仮想入出力装置を切り離す指示を前記特定した仮想オペレーティングシステムに送信する工程と、
     前記特定した仮想入出力装置を切り離した旨を前記特定した仮想オペレーティングシステムから受信する工程と、
     前記特定した仮想入出力装置を切り離した旨を受信した後に、前記物理入出力装置を前記制御オペレーティングシステムから切り離す工程と、
     を実行させることを特徴とする切り離しプログラム。
  2.  仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、前記制御オペレーティングシステムの物理入出力装置を前記制御オペレーティングシステムに組み込むプログラムであって、
     前記物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、
     前記物理入出力装置の組み込み指示を受信する工程と、
     前記物理入出力装置を前記制御オペレーティングシステムに組み込む工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記物理入出力装置に対応する前記仮想入出力装置および前記仮想入出力装置を使用している前記仮想オペレーティングシステムを特定する工程と、
     前記特定した仮想入出力装置を組み込む指示を前記特定した仮想オペレーティングシステムに送信する工程と、
     前記特定した仮想オペレーティングシステムから前記特定した仮想入出力装置を組み込んだ旨を受信する工程と、
     を実行させることを特徴とする組み込みプログラム。
  3.  仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、仮想入出力装置に関連する物理入出力装置を前記制御オペレーティングシステムから切り離すプログラムであって、
     前記物理入出力装置と前記仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、
     前記仮想入出力装置を使用している前記仮想オペレーティングシステムから前記仮想入出力装置に関連する前記物理入出力装置の切り離し指示を受信する工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記仮想入出力装置に関連する前記物理入出力装置および他の仮想入出力装置、および前記他の仮想入出力装置を使用している他の仮想オペレーティングシステムを特定する工程と、
     前記他の仮想オペレーティングシステムに前記他の仮想入出力装置の切り離し指示を送信する工程と、
     前記他の仮想オペレーティングシステムから前記他の仮想入出力装置の切り離した旨を受信する工程と、
     前記仮想入出力装置に関連する前記物理入出力装置を前記制御オペレーティングシステムから切り離す工程と、
     前記仮想入出力装置を使用している前記仮想オペレーティングシステムに、前記仮想入出力装置に関連する前記物理入出力装置を切り離した旨を送信する工程と、
     を実行させることを特徴とする切り離しプログラム。
  4.  制御オペレーティングシステムで制御される仮想オペレーティングシステム上で動作し、仮想入出力装置を前記仮想オペレーティングシステムから切り離すプログラムであって、
     コンピュータに、
     前記仮想入出力装置の切り離し指示を受信する工程と、
     前記仮想入出力装置を前記仮想オペレーティングシステムから切り離す工程と、
     前記仮想入出力装置に関連する物理入出力装置を切り離す指示を前記制御オペレーティングシステムに送信する工程と、
     前記仮想入出力装置に関連する物理入出力装置を切り離した旨を前記制御オペレーティングシステムから受信する工程と、
     を実行させることを特徴とする切り離しプログラム。
  5.  仮想オペレーティングシステムを制御する制御オペレーティングシステム上で動作し、仮想入出力装置に関連する物理入出力装置を前記制御オペレーティングシステムに組み込むプログラムであって、
     前記物理入出力装置と前記仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータに、
     前記仮想入出力装置を使用している前記仮想オペレーティングシステムから前記仮想入出力装置に関連する前記物理入出力装置の組み込み指示を受信する工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記仮想入出力装置に関連する前記物理入出力装置および他の仮想入出力装置、および前記他の仮想入出力装置を使用している他の仮想オペレーティングシステムを特定する工程と、
     前記仮想入出力装置に関連する前記物理入出力装置を前記制御オペレーティングシステムに組み込む工程と、
     前記他の仮想オペレーティングシステムに前記他の仮想入出力装置の組み込み指示を送信する工程と、
     前記他の仮想オペレーティングシステムから前記他の仮想入出力装置の組み込んだ旨を受信する工程と、
     前記仮想入出力装置を使用している前記仮想オペレーティングシステムに、前記仮想入出力装置に関連する前記物理入出力装置を組み込んだ旨を送信する工程と、
     を実行させることを特徴とする組み込みプログラム。
  6.  制御オペレーティングシステムで制御される仮想オペレーティングシステム上で動作し、仮想入出力装置を前記仮想オペレーティングシステムに組み込むプログラムであって、
     コンピュータに、
     前記仮想入出力装置の組み込み指示を受信する工程と、
     前記仮想入出力装置に関連する物理入出力装置を組み込む指示を前記制御オペレーティングシステムに送信する工程と、
     前記仮想入出力装置に関連する前記物理入出力装置を組み込んだ旨を前記制御オペレーティングシステムから受信する工程と、
     前記仮想入出力装置に関連する物理入出力装置を組み込んだ旨を受信した後に、前記仮想入出力装置を前記仮想オペレーティングシステムに組み込む工程と、
     を実行させることを特徴とする組み込みプログラム。
  7.  仮想オペレーティングシステムを制御する制御オペレーティングシステムおよび前記仮想オペレーティングシステムが動作し、物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータが行う方法であって、
     前記物理入出力装置の切り離し指示を受信する工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記物理入出力装置に対応する前記仮想入出力装置および前記仮想入出力装置を使用している前記仮想オペレーティングシステムを特定する工程と、
     前記特定した仮想入出力装置を切り離す指示を前記特定した仮想オペレーティングシステムに送信する工程と、
     前記制御オペレーションシステムから前記特定した仮想入出力装置の切り離し指示を受信する工程と、
     前記仮想オペレーティングシステムから前記特定した仮想入出力装置を切り離す工程と、
     前記特定した仮想入出力装置を切り離した旨を前記制御オペレーティングシステムに送信する工程と、
     前記特定した仮想入出力装置を切り離した旨を前記特定した仮想オペレーティングシステムから受信する工程と、
     前記特定した仮想入出力装置を切り離した旨を受信した後に、前記物理入出力装置を前記制御オペレーティングシステムから切り離す工程と、
     を有することを特徴とする切り離し方法。
  8.  仮想オペレーティングシステムを制御する制御オペレーティングシステムおよび前記仮想オペレーティングシステムが動作し、物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータが行う方法であって、
     前記物理入出力装置の組み込み指示を受信する工程と、
     前記物理入出力装置を前記制御オペレーティングシステムに組み込む工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記物理入出力装置に対応する仮想入出力装置および前記仮想入出力装置を使用している前記仮想オペレーティングシステムを特定する工程と、
     前記特定した仮想入出力装置を組み込む指示を前記特定した仮想オペレーティングシステムに送信する工程と、
     前記制御オペレーションシステムから前記特定した仮想入出力装置の組み込み指示を受信する工程と、
     前記特定した仮想オペレーティングシステムから前記特定した仮想入出力装置を組み込む工程と、
     前記特定した仮想入出力装置を組み込んだ旨を前記制御オペレーティングシステムに送信する工程と、
     前記特定した仮想オペレーティングシステムから前記特定した仮想入出力装置を組み込んだ旨を受信する工程と、
     を有することを特徴とする組み込み方法。
  9.  仮想オペレーティングシステムを制御する制御オペレーティングシステムおよび前記仮想オペレーティングシステムが動作し、物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータが行う方法であって、
     前記仮想入出力装置の切り離し指示を受信する工程と、
     前記仮想入出力装置を前記仮想オペレーティングシステムから切り離す工程と、
     前記仮想入出力装置に関連する物理入出力装置を切り離す指示を前記制御オペレーティングシステムに送信する工程と、
     前記仮想入出力装置を使用している仮想オペレーティングシステムから前記仮想入出力装置に関連する前記物理入出力装置の切り離し指示を受信する工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、仮想入出力装置に関連する前記物理入出力装置および他の仮想入出力装置、および前記他の仮想入出力装置を使用している他の仮想オペレーティングシステムを特定する工程と、
     前記他の仮想オペレーティングシステムに前記他の仮想入出力装置の切り離し指示を送信する工程と、
     前記制御オペレーションシステムから前記他の仮想入出力装置の切り離し指示を受信する工程と、
     前記他の仮想オペレーティングシステムから前記他の仮想入出力装置を切り離す工程と、
     前記他の仮想入出力装置を切り離した旨を前記制御オペレーティングシステムに送信する工程と、
     前記他の仮想オペレーティングシステムから前記他の仮想入出力装置の切り離した旨を受信する工程と、
     前記仮想入出力装置に関連する前記物理入出力装置を前記制御オペレーティングシステムから切り離す工程と、
     前記仮想入出力装置を使用している前記仮想オペレーティングシステムに、前記仮想入出力装置に関連する前記物理入出力装置を切り離した旨を送信する工程と、
     前記仮想入出力装置に関連する前記物理入出力装置を切り離した旨を前記制御オペレーティングシステムから受信する工程と、
     を有することを特徴とする切り離し方法。
  10.  仮想オペレーティングシステムを制御する制御オペレーティングシステムおよび前記仮想オペレーティングシステムが動作し、物理入出力装置と仮想入出力装置が対応付けられた仮想入出力装置情報および前記仮想入出力装置と前記仮想オペレーティングシステムが対応付けられた仮想オペレーティングシステム情報を格納したコンピュータが行う方法であって、
     前記仮想入出力装置の組み込み指示を受信する工程と、
     前記仮想入出力装置に関連する物理入出力装置を組み込む指示を前記制御オペレーティングシステムに送信する工程と、
     前記仮想入出力装置を使用している仮想オペレーティングシステムから前記仮想入出力装置に関連する前記物理入出力装置の組み込み指示を受信する工程と、
     前記仮想入出力装置情報および前記仮想オペレーティングシステム情報を参照し、前記仮想入出力装置に関連する前記物理入出力装置および他の仮想入出力装置、および前記他の仮想入出力装置を使用している他の仮想オペレーティングシステムを特定する工程と、
     前記仮想入出力装置に関連する前記物理入出力装置を前記制御オペレーティングシステムに組み込む工程と、
     前記他の仮想オペレーティングシステムに前記他の仮想入出力装置の組み込み指示を送信する工程と、
     前記制御オペレーションシステムから前記他の仮想入出力装置の組み込み指示を受信する工程と、
     前記他の仮想オペレーティングシステムから前記他の仮想入出力装置を組み込む工程と、
     前記他の仮想入出力装置を組み込んだ旨を前記制御オペレーティングシステムに送信する工程と、
     前記他の仮想オペレーティングシステムから前記他の仮想入出力装置の組み込んだ旨を受信する工程と、
     前記仮想入出力装置を使用している前記仮想オペレーティングシステムに、前記仮想入出力装置に関連する前記物理入出力装置を組み込んだ旨を送信する工程と、
     前記仮想入出力装置に関連する前記物理入出力装置を組み込んだ旨を前記制御オペレーティングシステムから受信する工程と、
     前記仮想入出力装置に関連する物理入出力装置を組み込んだ旨を受信した後に、前記仮想入出力装置を前記仮想オペレーティングシステムに組み込む工程と、
     を有することを特徴とする組み込み方法。
PCT/JP2010/069703 2010-11-05 2010-11-05 切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法 WO2012060011A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2010/069703 WO2012060011A1 (ja) 2010-11-05 2010-11-05 切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法
EP10859267.6A EP2637103A1 (en) 2010-11-05 2010-11-05 Disconnect program, embedding program, disconnect method, and embedding method
JP2012541695A JP5445690B2 (ja) 2010-11-05 2010-11-05 切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法
US13/871,071 US20130239110A1 (en) 2010-11-05 2013-04-26 Detaching method and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/069703 WO2012060011A1 (ja) 2010-11-05 2010-11-05 切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/871,071 Continuation US20130239110A1 (en) 2010-11-05 2013-04-26 Detaching method and recording medium

Publications (1)

Publication Number Publication Date
WO2012060011A1 true WO2012060011A1 (ja) 2012-05-10

Family

ID=46024141

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/069703 WO2012060011A1 (ja) 2010-11-05 2010-11-05 切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法

Country Status (4)

Country Link
US (1) US20130239110A1 (ja)
EP (1) EP2637103A1 (ja)
JP (1) JP5445690B2 (ja)
WO (1) WO2012060011A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160106513A (ko) 2015-03-02 2016-09-12 제이엔씨 주식회사 중합성 액정 조성물 및 광학 이방성 필름
KR20170022894A (ko) 2015-08-21 2017-03-02 제이엔씨 주식회사 중합성 액정 화합물, 조성물 및 그 중합체

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170074178A (ko) 2015-12-21 2017-06-29 제이엔씨 주식회사 중합성 액정 화합물, 조성물, 그 액정 중합막류 및 이들의 용도

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006085543A (ja) * 2004-09-17 2006-03-30 Hitachi Ltd 仮想計算機システム
JP2010128911A (ja) * 2008-11-28 2010-06-10 Hitachi Ltd 仮想計算機の制御方法、仮想計算機の制御プログラム及び計算機装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8907981B2 (en) * 2009-11-05 2014-12-09 International Business Machines Corporation Method and system for dynamic composing and creating 3D virtual devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006085543A (ja) * 2004-09-17 2006-03-30 Hitachi Ltd 仮想計算機システム
JP2010128911A (ja) * 2008-11-28 2010-06-10 Hitachi Ltd 仮想計算機の制御方法、仮想計算機の制御プログラム及び計算機装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160106513A (ko) 2015-03-02 2016-09-12 제이엔씨 주식회사 중합성 액정 조성물 및 광학 이방성 필름
KR20170022894A (ko) 2015-08-21 2017-03-02 제이엔씨 주식회사 중합성 액정 화합물, 조성물 및 그 중합체

Also Published As

Publication number Publication date
EP2637103A1 (en) 2013-09-11
JP5445690B2 (ja) 2014-03-19
JPWO2012060011A1 (ja) 2014-05-12
US20130239110A1 (en) 2013-09-12

Similar Documents

Publication Publication Date Title
KR101431970B1 (ko) 액세스 제어 방법, 서버 장치 및 스토리지 장치
JP5943571B2 (ja) 印刷システム、プリンター、プリントサーバー、及びその方法
EP2453349B1 (en) Print relay system, print relay system control method, and program
CN108063879B (zh) 远程支持系统及其控制方法、支持装置、信息处理装置和介质
JP6202902B2 (ja) システム、情報処理装置とその制御方法及びプログラム
CN105338048A (zh) 一种虚拟桌面基础架构下的文件传输方法和系统
JP2021002172A (ja) デイジーチェーン接続システム及びシステム制御方法
JP2014075731A (ja) クラウド間通信設定システム
JP5445690B2 (ja) 切り離しプログラム、組み込みプログラム、切り離し方法、および組み込み方法
EP2960800B1 (en) Wireless access device and wireless access system
JP2013200703A (ja) 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム
JP5052150B2 (ja) ストレージシステム
JP2010055519A (ja) ストレージシステムの制御方法、ストレージシステム、及びストレージ装置
JP2013089192A (ja) 管理装置、管理方法、およびプログラム
JP2010201862A (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP2005115603A (ja) 記憶デバイス制御装置及びその制御方法
US20160285673A1 (en) Client side host machine backup system and its implementing method
JP7240118B2 (ja) 情報処理装置、その制御方法およびプログラム
JP2011227841A (ja) 計算機システムおよび識別子管理方法
KR101137069B1 (ko) 비즈니스 인텔리전스 서비스 시스템 및 방법 그리고 이에 사용되는 서버
EP2960801B1 (en) Wireless access device and wireless access system
JP2019016995A (ja) 中継装置、制御方法、プログラム及びシステム
JP2015142368A (ja) 管理装置および管理方法
CN113434341B (zh) 一种实现冗余虚拟plc的方法、装置、设备及存储介质
CN103959889A (zh) 记录介质及其控制方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10859267

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2012541695

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2010859267

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE