Patent ID: 8046521
Filing Date: 2011-10-25
Classification: G06F

Abstract:
1. A computer virtualization mechanism that causes an actual computer to simultaneously operate plural operating systems (OSs) to function as plural virtualized computers, the computer virtualization mechanism comprising: a mapping table for managing an association of identifiers of memory spaces on each of the virtualized computers (guest region identifiers (RIDs)) and identifiers used in the actual computer (physical RIDs); an RID converting section that converts the guest RIDs into the physical RIDs with emulation processing for substituting the guest RIDs as an opportunity with reference to the mapping table; and an RID table updating section that creates, when the association of the guest RIDs and the physical RIDs is not present in the mapping table, a new association of the guest RIDs and the physical RIDs and adds the new association to the mapping table, wherein the virtualized computer includes a shadow translation look-aside buffer (TLB) in which a reference result of the mapping table is used, the mapping table further includes an item indicating a number of registered entries for counting a number of the physical RIDs used in the shadow TLB, the RID table updating section is configured to: select an entry of the shadow TLB as an update object, execute a first search for an entry of the mapping table corresponding to the physical RID contained in the selected entry of the shadow TLB, reduce the number of registered entries of the entry of the mapping table obtained from the first search, in a case where the number of registered entries is 0, delete the entry of the mapping table from the mapping table, and in a case where the number of registered entries is not 0, execute a second search for another entry of the mapping table corresponding to a physical RID converted from a guest RID by the RID converting section, and increase the number of registered entries of the another entry of the mapping table obtained from the second search.