Patent ID: 9703590
Date: 2017-07-11
CPC Classifications: G06F

Claim:
1. An information processing apparatus comprising: a processor that constructs a plurality of virtual machines; a plurality of physical devices each of which assigns a same I/O address; and a plurality of bridges that connect the processor and the plurality of physical devices, wherein the processor creates correspondence information that manages, in association with identification information of the respective physical devices, identification information of the bridges on respective paths from the processor to the respective physical devices and passage setting information indicating whether or not to permit passages of the respective paths, and when one access from one virtual machine among the plurality of virtual machines to one physical device among the plurality of physical devices allocated to the one virtual machine is detected, the processor refers to the correspondence information, sets the passage setting information of the correspondence information and a state of the bridge on the path such that the passage of the path from the processor to the one physical device is permitted, based on the identification information of the bridges and the passage setting information associated with the identification information of the one physical device in the correspondence information, and executes the one access; wherein when receiving a request to read the states of the respective bridges from the respective virtual machines, the processor determines whether or not a first value indicating a state for replying to the request is set as the states of the respective bridges in advance by the respective virtual machines, and returns a second value indicating the state of permitting the passage as the states of the respective bridges to the respective virtual machines when the first value indicating the state for replying to the request is not set in advance, or returns the first value indicating the state for replying to the request as the states of the respective bridges to the respective virtual machines when the first value is set in advance.