Patent ID: 7313637

Claim:
A computer system, comprising: a plurality of virtual machines formed on a control program of a computer; an I/O device coupled with a PCI bus of said computer and shared among said plurality of virtual machines; a single port disposed in said I/O device and connected to said PCI bus; PCI connection allocating means for setting a state of logical connection between selected at most one of said plurality of virtual machines and said port at a time; and I/O device switching means for updating said state of logical connection set by said PCI connection allocating means according to a control signal received from said selected virtual machine, wherein said selected virtual machine changes said state of logical connection of said selected virtual machine to said I/O device according to a setting by said PCI connection allocating means, wherein in response to detection of occurrence of an error in said selected virtual machine, said selected virtual machine is deactivated, connection to said I/O device is switched to a standby virtual machine, said standby virtual machine is set as an active virtual machine, and said deactivated virtual machine is repaired and set as a standby virtual machine, wherein said plurality of virtual machine comprise first and second virtual machines, wherein said second virtual machine sends to said control program a command to switch a state of logical connection of said first virtual machine to said I/O device, said second virtual machine sends to said control program a command to deactivate or activate said first virtual machine upon detecting occurrence of an error in said first virtual machine, and said control program deactivates or activates said first virtual machine with respect to said control program in response to said command being received, wherein said control program includes a PCI connection allocating table, said PCI connection allocating table is changed so that connection with said I/O device is switched to said first virtual machine according to a control signal received, in response to said PCI connection allocating table being changed, said control program generates an interruption signal, and in response to said interruption signal being received by said first virtual machine, said first virtual machine changes connection to said I/O device, and wherein said first virtual machine is rebooted to reconstruct said first virtual machine as a standby machine and a CPU allocation rate of said first virtual machine is set to be low.