Apparatus and method for providing private and shared access to host address and data spaces by guest programs in a virtual machine computer system
AssigneeInternational Business Machines Corporation
InventorsDavid P. Brelsford, Melvin M. Cutler, Jean-Louis Lafitte, Joseph M. Gdaniec, Damian L. Osisek, Kenneth E. Plambeck
Life of this patent
Estimating the term…
Abstract
A method and apparatus for providing common access to data spaces by a plurality of virtual machine guests emulated on a host computer system. A token received from a given one of the virtual machine guests is used to identify a particular host data space. The guest also supplies an offset. The offset and the identified host data space are then used to derive a host absolute address representative of a data location in the host data space.
Claims21
An apparatus for providing common access to a plurality of host address and data spaces by a plurality of virtual machine guests emulated on a host computer system, comprising:
- a computer system including a host and having a central processing unit and memory and having a host-virtual-memory host data space addressing structure which is accessed by the virtual machine guests with translation of guest storage addresses so as to provide access to the host data spaces addressed during execution of guest instructions, said host-virtual-memory host data space addressing structure including:
- first means for receiving a guest real address as an offset from at least one of the virtual machine guests, the offset being representative of a data location in a host data space;
- a plurality of host segment tables in said memory, one for each of the plurality of host data spaces, each of said host segment tables being represented by a host segment table designation;
- second means for receiving a token from said one of the virtual machine guests and for determining data identifying the one of the host data spaces the offset is to be applied to from access to a host level translation table based upon said received token, and
- wherein said host level translation table comprises a host access list having plurality of entries, each of said entries being representative of corresponding said host segment table designation;
- third means for receiving the offset from the first means and data identifying the one of the host data spaces from the second means and for deriving by means of translation a host absolute address representative of a data location in the one of the host data spaces based upon said offset and said identifying data;
- wherein said plurality of virtual machine guests accesses privately or shares said host data spaces based upon identifying data in the entries of said host access list included in said host level translation table.
A method for providing common access to a plurality of host address and data spaces by a plurality of virtual machine guests emulated on a host computer system, comprising:
- concurrently receiving a plurality of guest real address offsets and a corresponding plurality of tokens from at least one of the virtual machine guests, the guest real address offsets being representative of the identities of data locations in a plurality of host data spaces and the corresponding tokens being guest level representations of the identities of the host data spaces the offsets are to be applied to;
- providing a plurality of host segment tables in a memory, one for each of the plurality of host data spaces, each of said host segment tables being represented by a host segment table designation;
- determining the host level identities of the host data spaces the guest real address offsets are to be applied by accessing a host level translation table based upon said received tokens;
- wherein said host level translation table comprises a host access list having plurality of entries, each of said entries being representative of corresponding said host segment table designation;
- deriving from the guest real address offsets and the host level identities of the host data spaces, host absolute addresses representative of data locations in the host data spaces identified by said determining step based upon said offsets and said host level identities;
- wherein said plurality of virtual machine guests accesses privately or shares said host data spaces based upon identifying data in the entries of said host access list included in said host level translation table.
Dependencies are inferred from the claim text.