[發明專利]一基于大頁的冷熱頁追蹤及壓縮回收方法有效
| 申請號: | 201710142306.4 | 申請日: | 2017-03-10 |
| 公開(公告)號: | CN106970881B | 公開(公告)日: | 2020-04-28 |
| 發明(設計)人: | 陳文智;王總輝;趙朋磊;徐浩;李國璽 | 申請(專利權)人: | 浙江大學 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02;G06F12/0882 |
| 代理公司: | 杭州天勤知識產權代理有限公司 33224 | 代理人: | 蔣瓊 |
| 地址: | 310013 浙江*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 冷熱 追蹤 壓縮 回收 方法 | ||
本發明公開了一種基于大頁的冷熱頁追蹤及壓縮回收方法,該方法采用雙標志位PG_active和Ref確定大頁的活動程度,并根據大頁的活動程度移動大頁于熱頁鏈表與冷熱鏈表之間,基于上述的內容調用相關的函數對大頁進行冷熱頁追蹤及壓縮回收。該方法使內存回收機制更加完善,內存回收力度大大加強,使相同的物理內存能夠執行更多的程序。
技術領域
本發明屬于計算機操作系統技術領域,具體涉及一種基于大頁的冷熱頁追蹤及壓縮回收方法。
背景技術
現代CPU是通過尋址來訪問內存的。32位CPU的尋址范圍是 0~0xFFFFFFFF,可支持的物理內存最大是4G。但在實踐過程中,經常會有這樣的問題,多個應用程序同時需要占用的內存總量大于4G或者程序需要使用4G內存但是可用物理內存小于4G。為了解決內存不夠用的問題,現代CPU引入內存管理單元(Memory Management Unit,MMU),MMU 的核心思想是利用虛擬地址替代物理地址,即CPU尋址時使用虛擬地址,由MMU負責將虛擬地址映射為物理地址。MMU的引入,解決了對物理內存的限制,對程序來說,就像自己在使用4G內存一樣。內存分頁(Paging) 是在使用MMU的基礎上,提出的一種內存管理機制。它將虛擬地址和物理地址按固定大小(如傳統的4KB)分割成頁(page)和頁幀(page frame),并保證頁與頁幀的大小相同。這種機制,從數據結構上,保證了訪問內存的高效,并使操作系統能支持非連續性的內存分配。
目前,linux內核中用于解決內存不夠的技術主要是基于小頁(4KB) 的頁面回收和頁交換技術。內核通過將很少使用的部分內存頁換出到塊設備,這樣就相當于提供了更多的主存。內核在基于小頁的頁交換和頁面回收的實現中,使用了很多關鍵性的技術:主動回收與被動回收相結合的交換與回收策略;使用雙標志位的冷熱頁判斷機制;引入預讀機制的缺頁異常處理;基于優先級的具有熱插拔屬性的交換區管理。
對于用作服務器的機器來說,其內存相對于普通計算機要高得多。這時候采用原始的基于4K的分頁機制已經漸漸地無法很好地適用當前的應用場景。例如:對于具有128GB內存的linux服務器來說,4KB分一頁那么共分成32M(32,000,000)個頁,這是一個非常龐大的數字,漸漸的管理這些頁需要消耗的資源會削弱分頁機制帶來的好處。同時針對用戶需要大量使用內存的情況,原有的小頁會增加缺頁次數與內存的訪問次數。因此在linux內核2.6版本以后,linux內核也引入了內存大頁的機制。但是,對于大頁的冷熱頁追蹤,當前內核并沒有實現,而是將大頁分解成多個小頁進行冷熱頁追蹤。因此實現一個基于大頁的冷熱頁追蹤是非常重要的,它對于更好的進行頁交換與頁面回收具有舉足輕重的作用。
發明內容
鑒于上述,本發明提出了一種基于大頁的冷熱頁追蹤及壓縮回收方法,該方法基于雙標志位確定大頁活動程度,能夠更加準確地將冷熱大頁進行分類,且能夠實現冷頁的壓縮回收。
本發明提出了一種基于大頁的冷熱頁追蹤及壓縮回收方法,包括以下步驟:
(1)針對每個內存節點,系統調用函數hp_kswapd,該函數hp_kswapd 啟動內核守護線程,該守護線程周期性地檢查大頁內存的使用情況;
(2)每個周期內,函數hp_kswapd調用函數hp_balance_node對大頁內存進行掃描,針對大頁內存不足的節點執行步驟(3)~步驟(6);
(3)函數hp_balance_node調用函數hp_shrink_lruvec對大頁內存不足的節點的Lru鏈表中的大頁進行處理,得到處于熱頁鏈表上的大頁數目 m,處于冷頁鏈表上的大頁數目n,若m大于n,執行步驟(4),否則,執行步驟(5);
(4)函數hp_shrink_lruvec調用函數hp_shrink_active_list判斷熱頁鏈表上的大頁的活動程度,并將熱頁鏈表上的活動程度低的冷頁大頁移動到冷頁鏈表上;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學,未經浙江大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710142306.4/2.html,轉載請聲明來源鉆瓜專利網。





