IP Library Granted Patent US 11,237,982
Granted Patent B2
US 11,237,982 · App. 16/774,575 · Granted Feb 1, 2022

Methods and apparatuses for managing page cache in virtualization service

Inventors: Young Ik Eom (Seoul, KR); Kwon Je Oh (Suwon-si, KR); Jong Gyu Park (Suwon-si, KR)
Assignee: Research & Business Foundation Sungkyunkwan University
G06F12/122G06F2212/601G06F2212/652
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,237,982
App. No.
16/774,575
Granted
Feb 1, 2022
Kind
B2
Abstract

Provided are a method and an apparatus for managing a page cache in a virtualization service and a method for managing a page cache in a virtualization service according to an exemplary embodiment of the present disclosure includes: comparing a weight value of a container and a weight variable of a page possessed by a process operated by the container in the virtualization service with each other, changing the weight variable of the page based on a comparison result, and managing pages of the page cache using the changed weight variable of the page.

Claims (36)

1. A method for managing a page cache in a virtualization service, which is performed by a page cache managing apparatus comprising the page cache storing pages, the method comprising:

checking a weight value of a container in the virtualization service;

comparing the weight value of the container with a weight variable of a page;

changing the weight variable of the page based on a comparison result; and

managing the pages of the page cache using the changed weight variable of the page,

wherein the weight variable of the page is an I/O weight value set in the page and stored in a page structure of the page.

2. The method of claim 1 , wherein the comparing of the weight variable of the page comprises comparing the weight value of the container and the weight variable of the page with each other, when a page requested to be read exists in the page cache.

3. The method of claim 1 , wherein the changing of the weight variable of the page comprises setting the weight variable of the page to the weight value of the container, when the weight value of the container exceeds the weight variable of the page.

4. The method of claim 1 , wherein the changing of the weight variable of the page comprises maintaining the weight variable of the page, when the weight value of the container is equal to or less than the weight variable of the page.

5. The method of claim 1 , wherein the managing of the pages of the page cache comprises setting the weight variable of the page equal to the weight value of the container and setting a chance value of the page by dividing the weight value of the container by 100 and subtracting 1 from the corresponding value to set the acquired value to the chance value of the page, when there is a free space in the page cache.

6. The method of claim 1 , wherein the managing of the pages of the page cache comprises comparing sizes of an active list and an inactive list with each other, when there is no free space in the page cache.

7. The method of claim 6 , wherein the managing of the pages of the page cache comprises separating a predetermined page quantity from a tail of the active list to prepare page eviction, when the active list of the page cache exceeds the inactive list of the page cache.

8. The method of claim 1 , wherein the managing of the pages of the page cache comprises moving a page to be evicted to a head of an active list and then subtracting a predetermined chance value, when a chance value of the page to be evicted in the page cache exceeds a predetermined threshold and the chance value of the page to be evicted exceeds a predetermined remaining chance value.

9. The method of claim 1 , wherein the managing of the pages of the page cache comprises moving a page to be evicted to a tail of an active list and then subtracting a predetermined change value, when a chance value of the page to be evicted in the page cache exceeds a predetermined threshold and the chance value of the page to be evicted is equal to or less than a predetermined remaining chance value.

10. The method of claim 1 , wherein the managing of the pages of the page cache comprises moving a page to be evicted to an inactive list, when a chance value of the page to be evicted in the page cache does not remain.

11. An apparatus for managing a page cache, the apparatus comprising:

the page cache storing pages allocated by a processor operated by a container;

a memory storing at least one command; and

the processor connected to the page cache and the memory,

wherein the processor is configured to:

check a weight value of the container,

execute the at least one command to compare the weight value of the container and a weight variable of a page with each other in a virtualization service,

change the weight variable of the page based on a comparison result, and

manage the pages of the page cache using the changed weight variable of the page,

wherein the weight variable of the page is an I/O weight value set in the page and stored in a page structure of the page.

12. The apparatus of claim 11 , wherein when a page requested to be read exists in the page cache, the processor is configured to compare the weight value of the container and the weight variable of the page with each other.

13. The apparatus of claim 11 , wherein when the weight value of the container exceeds the weight variable of the page, the processor is configured to set the weight variable of the page to the weight value of the container.

14. The apparatus of claim 11 , wherein when the weight value of the container is equal to or less than the weight variable of the page, the processor is configured to maintain the weight variable of the page.

15. The apparatus of claim 11 , wherein when there is a free space in the page cache, the processor is configured to:

set the weight variable of the page equal to the weight value of the container, and

seta chance value of the page by dividing the weight value of the container by 100 and subtracting 1 from the corresponding value to set the acquired value to the chance value of the page, when there is a free space in the page cache.

16. The apparatus of claim 11 , wherein when there is no free space in the page cache, the processor is configured to compare sizes of an active list and an inactive list with each other.

17. The apparatus of claim 16 , wherein when the active list of the page cache exceeds the inactive list of the page cache, the processor is configured to separate a predetermined page quantity from a tail of the active list to prepare page eviction.

18. The apparatus of claim 11 , wherein when a chance value of a page to be evicted in the page cache exceeds a predetermined threshold and the chance value of the page to be evicted exceeds a predetermined remaining chance value, the processor is configured to move the page to be evicted to a head of an active list and then subtracts a predetermined chance value.

19. The apparatus of claim 11 , wherein when a chance value of a page to be evicted in the page cache exceeds a predetermined threshold and the chance value of the page to be evicted is equal to or less than a predetermined remaining chance value, the processor is configured to move the page to be evicted to a tail of an active list and then subtracts a predetermined chance value.

20. The apparatus of claim 11 , wherein when a chance value of a page to be evicted in the page cache does not remain, the processor is configured to move a page to be evicted to an inactive list.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2020
From: EOM, YOUNG IK; OH, KWON JE; PARK, JONG GYU
To: RESEARCH & BUSINESS FOUNDATION SUNGKYUNKWAN UNIVERSITY
Reel/Frame 051644/0579 →
Priority Claims (1)
KR 10-2019-0018116 · Feb 15, 2019 · national
Continuity (1)
Related Publication 20200264986A1 · Aug 20, 2020