[發明專利]大數據處理中的虛擬內存管理方法及其裝置有效
| 申請號: | 201410368134.9 | 申請日: | 2014-07-30 |
| 公開(公告)號: | CN104111896B | 公開(公告)日: | 2017-07-14 |
| 發明(設計)人: | 鄭家亮;雷曉凌 | 申請(專利權)人: | 云南大學 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02;G06F9/455 |
| 代理公司: | 昆明科陽知識產權代理事務所53111 | 代理人: | 李行健 |
| 地址: | 650000*** | 國省代碼: | 云南;53 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據處理 中的 虛擬內存 管理 方法 及其 裝置 | ||
1.一種大數據處理中的虛擬內存管理方法,其特征在于其中的虛擬內存調度管理至少包括:
(1)、內存分配單元管理:基本處理和管理的內存操作以內存分配單元為單位,內存分配單元采用大小配對分配方法;大內存分配時,安排一個分配單元,分配單元大小mUnitSize=申請大小RequestSize×125%;前段大內存分配區BigMem區分配大數據,后段小內存分配區LitMem區分配小數據;小內存分配時,優先在已安排的分配單元中找LitMem空閑區,若找到分配單元向后對齊,若未找到安排分配到小內存分配區;
(2)、內存分配單元訪問關聯綜合指數:反映內存分配單元優先調出到虛擬內存的指標,第n個分配單元訪問關聯綜合指數:Xn=(當前時間-最后一次訪問時間)×Fa×Fm/Fn2,其中時間單位是毫秒,Fa為內存分配單元平均訪問頻次,Fm為內存分配單元最大訪問頻次,Fn為第n個分配單元訪問頻次;當Xn>Xa時,第n個內存分配單元可以調出到虛擬內存,其中Xa為訪問關聯綜合指數平均值;
(3)、虛擬內存調度匹配置換:
(a)虛擬內存調度僅調入或調出內存分配單元中大于大內存的分界線BigMemSize的內存塊,以減少調度執行次數,其中BigMemSize=100KB-10MB,表示大內存的分界線;
(b)內存分配單元中較小的內存塊需要時在物理內存中移動,以少量的內存數據移動增加虛擬內存調度轉換匹配率;
(c)虛擬內存調度置換比較時,源和目標內存分配單元大小相差小于25%都屬于匹配可轉換對象;
(d)物理內存中能否調出通過訪問關聯綜合指數來決定;
(e)總是保持必要可用物理內存空間,稱為最小周轉備用區MinSpareMem,來保證虛擬內存調度過程不影響系統正常運行。
2.如權利要求1所述的大數據處理中的虛擬內存管理方法,其特征在于虛擬內存調度管理按以下步驟實現:
a、初始化:向操作系統申請一塊較大且連續的物理內存,在磁盤創建或打開虛擬內存映像文件,文件大小為4G-32G;
b、小內存分配:申請分配小于BigMemSize的內存時執行小內存分配,在已安排的內存分配單元中查找L_MemArea為空、且可用大小大于申請尺寸RequestSize的單元,找到則記錄返回,未找到則在小內存分配區內分配,其中L_MemArea表示小內存分配區;
c、創建內存分配單元:根據內存分配申請尺寸大小RequestSize,在管理的物理內存建立一個大小為RequestSize×125%的內存分配單元并記錄,如果可用物理內存小于MinSpareMem時,啟動步驟i;
d、大內存分配:申請分配大于BigMemSize的內存時執行大內存分配,如果有內存分配單元的BigMem區已釋放,且大小合適,則直接選用、記錄并返回;否則,如果可用物理內存小于最小周轉備用內存MinSpareMem時,啟動調出任務,同時執行步驟c,然后把新單元返回給申請者;
e、小內存位置調整:在內存分配單元匹配處理時,不考慮小內存區是否有數據,如果內存分配單元被重新使用,且新的使用中BigMemSize會覆蓋到小內存區時,小內存區需要進行移動,移動方法為執行步驟b,并拷貝數據,然后小內存區初始化備用;
f、一般內存分配:根據申請內存大小分別選擇執行步驟b和步驟d;
g、內存數據訪問:根據地址映射表確定所訪問數據是否在物理內存中,在物理內存中直接訪問,否則選擇執行調出任務,然后執行調入任務并訪問數據;
h、內存分配單元匹配處理:源內存分配單元大小為目標內存分配單元的1/2~1倍即為匹配成功;然后檢測目標內存分配單元的小內存分配區時是否有數據,源內存分配單元的大內存區數據移到目標內存分配單元時,是否會覆蓋目標內存分配單元的小內存數據,如果會覆蓋則執行步驟e;
i、內存分配單元調出:根據內存分配單元訪問關聯綜合指數以及調出大小需求,選擇訪問關聯綜合指數最合適的調出內存分配單元,如果被調出的內存分配單元的小內存分配區有數據則執行步驟e;
j、內存分配單元調入:先執行步驟h,如果未找到匹配的內存分配單元則,則執行步驟c,將虛擬內存中目標內容拷貝到找到或新分配的內存分配單元中,記錄更新地址映射表;
K、計算內存分配單元訪問關聯綜合指數:在調出內存分配單元查找匹配時,計算當前的訪問關聯綜合指數,每個內存分配單元的訪問關聯綜合指數Xn=(當前時間-最后一次訪問時間)×Fa×Fm/Fn2。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于云南大學,未經云南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410368134.9/1.html,轉載請聲明來源鉆瓜專利網。





