COMBINING MEMORY PAGES HAVING IDENTICAL CONTENT
First Claim
1. A method in a device having a memory accessed as multiple pages, the method comprising:
- identifying two or more pages of the multiple pages having identical content;
allowing, while the two or more pages are being identified, other processes running on the device to use the two or more pages including allowing the other processes to change cache attributes of each of the two or more pages;
combining the two or more pages into a single combined page; and
updating a process page record having multiple entries pointing to the multiple pages so that entries that previously pointed to one of the two or more pages instead point to the single combined page.
2 Assignments
0 Petitions
Accused Products
Abstract
In a device having a memory accessed as multiple pages, two or more pages of the multiple pages having identical content are identified. While the two or more pages are being identified, other processes running in the device are allowed to use the two or more pages, including being allowed to change cache attributes of each of the two or more pages. The two or more pages are combined into a single combined page (e.g., a newly allocated page of the multiple pages), and a process page record having multiple entries pointing to the multiple pages is updated so that entries that previously pointed to one of the two or more pages instead point to the single page.
42 Citations
20 Claims
-
1. A method in a device having a memory accessed as multiple pages, the method comprising:
-
identifying two or more pages of the multiple pages having identical content; allowing, while the two or more pages are being identified, other processes running on the device to use the two or more pages including allowing the other processes to change cache attributes of each of the two or more pages; combining the two or more pages into a single combined page; and updating a process page record having multiple entries pointing to the multiple pages so that entries that previously pointed to one of the two or more pages instead point to the single combined page. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. One or more computer storage media having stored thereon multiple instructions that, when executed by one or more processors of a device having a memory accessed as multiple pages, implement a page combination procedure by causing the one or more processors to:
-
identify two or more pages of the multiple pages having identical content; allocate a new page of the multiple pages, the new page having the identical content as the two or more pages; and update a process page record having multiple entries pointing to the multiple pages so that entries that previously pointed to one of the two or more pages instead point to the new page. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A method in a device having a memory accessed as multiple pages, the method comprising:
-
determining, in response to an indication received from a user mode page combine policy module, to perform a page combination procedure; identifying, as part of the page combination procedure, two or more pages of the multiple pages having identical content, the multiple pages including previously combined pages that have been transferred to a storage device; allowing, while the two or more pages are being identified, other processes running on the device to use the two or more pages including allowing the other processes to change cache attributes of each of the two or more pages; combining, as part of the page combination procedure, the two or more pages into a single combined page by allocating a new page of the multiple pages and copying the content of one of the two or more pages to the new page; and updating, as part of the page combination procedure, a process page record having multiple entries pointing to the multiple pages so that entries that previously pointed to one of the two or more pages instead point to the single combined page.
-
Specification