Method, Apparatus And Computer Programs Providing Cluster-Wide Page Management
First Claim
1. A data processing system comprising:
- a plurality of virtual machines each having associated memory pages;
a shared memory page cache that is accessible by each of the plurality of virtual machines; and
a global hash map that is accessible by each of the plurality of virtual machines;
where for a particular memory page stored in the shared memory page cache that is associated with two or more of the plurality of virtual machines there is a single key stored in the global hash map that uniquely identifies at least a storage location in the shared memory page cache of the particular memory page.
1 Assignment
0 Petitions
Accused Products
Abstract
A data processing system includes a plurality of virtual machines each having associated memory pages; a shared memory page cache that is accessible by each of the plurality of virtual machines; and a global hash map that is accessible by each of the plurality of virtual machines. The data processing system is configured such that, for a particular memory page stored in the shared memory page cache that is associated with two or more of the plurality of virtual machines, there is a single key stored in the global hash map that identifies at least a storage location in the shared memory page cache of the particular memory page. The system can be embodied at least partially in a cloud computing system.
-
Citations
20 Claims
-
1. A data processing system comprising:
-
a plurality of virtual machines each having associated memory pages; a shared memory page cache that is accessible by each of the plurality of virtual machines; and a global hash map that is accessible by each of the plurality of virtual machines;
where for a particular memory page stored in the shared memory page cache that is associated with two or more of the plurality of virtual machines there is a single key stored in the global hash map that uniquely identifies at least a storage location in the shared memory page cache of the particular memory page. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A data processing system comprising:
-
a plurality of virtual machines each having associated memory pages; a shared memory page cache that is accessible by each of the plurality of virtual machines; and a global hash map that is accessible by each of the plurality of virtual machines;
wherefor a particular memory page stored in the shared memory page cache that is associated with two or more of the plurality of virtual machines there is a single key stored in the global hash map that uniquely identifies at least a storage location in the shared memory page cache of the particular memory page; and where a hypervisor of a virtual machine is configured, prior to migrating the virtual machine from a first instance of a virtual machine to a second instance of a virtual machine, to swap-out all associated memory pages to the shared memory page cache while computing a key for each of the associated memory pages. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
Specification