Content-based, transparent sharing of memory units
AssigneeVMware, Inc.
InventorCarl A. Waldspurger
Life of this patent
Estimating the term…
Loading patent…
AssigneeVMware, Inc.
InventorCarl A. Waldspurger
Estimating the term…
A computer system has one or more software context that share use of a memory that is divided into units such as pages. In the preferred embodiment of the invention, the context are, or include, virtual machines running on a common hardware platform. The context, as opposed to merely the addresses or page numbers, of virtual memory pages that accessible to one or more contexts are examined. If two or more context pages are identical, then their memory mappings are changed to point to a single, shared copy of the page in the hardware memory, thereby freeing the memory space taken up by the redundant copies. The shared copy is ten preferable marked copy-on-write. Sharing is preferably dynamic, whereby the presence of redundant copies of pages is preferably determined by hashing page contents and performing full content comparisons only when two or more pages hash to the same key.
In a computer system that includes a hardware memory and at least one context, which has a virtual memory that is divided into a plurality of virtual memory units that are mappable to corresponding hardware memory units, a method comprising the following steps:
A method for sharing memory in a computer system comprising:
In a computer system that includes a hardware memory and at least one context, which has a virtual memory that is divided into a plurality of virtual memory units that are mappable to corresponding hardware memory units, a method comprising the following steps:
A method for sharing memory in a computer system comprising:
A computer system comprising:
A computer system comprising:
In a computer system that includes a hardware memory and at least one context, which has a virtual memory that is divided into a plurality of virtual memory units that are mappable to corresponding hardware memory units, a method comprising the following steps:
In a computer system that includes a hardware memory and at least one context, which has a virtual memory that is divided into a plurality of virtual memory units that are mappable to corresponding hardware memory units, a method comprising the following steps:
A method for sharing memory in a computer system comprising:
A method for sharing memory in a computer system comprising:
A computer system comprising:
A computer system comprising:
Dependencies are inferred from the claim text.