欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于存儲(chǔ)級(jí)內(nèi)存的內(nèi)存數(shù)據(jù)快速持久化的方法

文檔序號(hào):9687361閱讀:486來源:國知局
基于存儲(chǔ)級(jí)內(nèi)存的內(nèi)存數(shù)據(jù)快速持久化的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于持久化內(nèi)存領(lǐng)域的基于混合內(nèi)存架構(gòu)的系統(tǒng)軟件技術(shù),具體地,設(shè)及 一種利用非易失內(nèi)存的內(nèi)存管理、進(jìn)程地址空間管理、地址映射技術(shù)的基于存儲(chǔ)級(jí)內(nèi)存的 內(nèi)存數(shù)據(jù)快速持久化的方法。
【背景技術(shù)】
[0002] 隨著大數(shù)據(jù)的到來,數(shù)據(jù)量的不斷增加和數(shù)據(jù)類型的日趨復(fù)雜為內(nèi)存數(shù)據(jù)持久化 提出了更高的要求。在數(shù)據(jù)處理和計(jì)算過程中,系統(tǒng)軟件的元數(shù)據(jù)、應(yīng)用程序數(shù)據(jù)W及高性 能計(jì)算的計(jì)算狀態(tài)等各種類型的數(shù)據(jù)都可能需要被高效的持久化。目前,內(nèi)存數(shù)據(jù)的持久 化一般是依賴于操作系統(tǒng)提供的一些持久原語(文件或者塊I/O)或者數(shù)據(jù)庫系統(tǒng)運(yùn)兩種技 術(shù)。當(dāng)運(yùn)用系統(tǒng)原語實(shí)現(xiàn)持久化時(shí),應(yīng)用程序需要自行關(guān)注程序代碼的原子性W確保持久 更新的完整性,同時(shí)還要設(shè)及內(nèi)存數(shù)據(jù)的序列化/反序列化操作。而數(shù)據(jù)庫系統(tǒng)并不能夠很 好地應(yīng)對(duì)系統(tǒng)軟件元數(shù)據(jù)的持久化問題,且面臨數(shù)據(jù)阻抗不匹配問題的處理。綜上所述,當(dāng) 前的內(nèi)存數(shù)據(jù)持久化的方法都會(huì)引入應(yīng)用程序的附加處理,運(yùn)無疑增加了應(yīng)用程序設(shè)計(jì)的 復(fù)雜度,層級(jí)的軟件找和頻繁的I/O操作也大大降低了數(shù)據(jù)持久化的效率。
[0003] 非易失內(nèi)存技術(shù)的發(fā)展,為內(nèi)存數(shù)據(jù)持久化提供了更為有效的解決方案。非易失 內(nèi)存由于其非易失性、可字節(jié)尋址、較低的訪存延遲W及高存儲(chǔ)密度等優(yōu)良特性,成為學(xué)術(shù) 界和商界的關(guān)注熱點(diǎn)。M.K.Qureshi等人在M.K.Qureshi,V.S;rinivasan,andJ.A.Rivers. 基于相變存儲(chǔ)器的高性能可擴(kuò)展的主存系統(tǒng).ACMSIGARCHComputerArchitecture News,VO1.37,no. 3,pp. 24-33中提出用非易失內(nèi)存構(gòu)建主存系統(tǒng)的設(shè)計(jì),并給出了一定的 性能測試指標(biāo)。J.Y.Jung等人在J.Y.JungandS.Cho.Memorage:基于新興持久性存儲(chǔ)器的 的適應(yīng)性主內(nèi)存和存儲(chǔ)架構(gòu).Proceedingsofthe27thinternationalACMconference onInternationalconferenceonsupercomputing.ACM,2013,pp. 115-126中探討了異構(gòu) 混合內(nèi)存?zhèn)€構(gòu)建W及對(duì)系統(tǒng)軟件設(shè)計(jì)的影響等。其研究表明通過內(nèi)存總線接入計(jì)算機(jī)系 統(tǒng),與DRAM-起構(gòu)建混合內(nèi)存系統(tǒng),可W最大程度得利用非易失存儲(chǔ)器件的優(yōu)良特性,同時(shí) 可W為系統(tǒng)軟件和應(yīng)用軟件的研發(fā)提供更廣闊的設(shè)計(jì)空間。
[0004] 經(jīng)檢索,H.Volos等在H.Veles,A.J.Tack,andM.M.Swift.Mnemosyne:輕型的持久 內(nèi)存系統(tǒng).ACMSIGARCHComputerArchitecture化ws,vol.39,no.l.ACM,2011,卵.91-104中提出了一種基于非易失內(nèi)存技術(shù)的持久內(nèi)存系統(tǒng),該持久內(nèi)存系統(tǒng)存在如下缺陷:
[0005] iW.Veles的持久內(nèi)存系統(tǒng)的映射機(jī)制完全依賴于傳統(tǒng)的文件系統(tǒng)的映射機(jī)制;
[0006] 2)其持久化內(nèi)存數(shù)據(jù)需要映射到固定的虛擬地址才可保證其地址映射的持久化。
[0007] 目前沒有發(fā)現(xiàn)同本發(fā)明類似技術(shù)的說明或報(bào)道,也尚未收集到國內(nèi)外類似的資 料。

【發(fā)明內(nèi)容】

[000引針對(duì)現(xiàn)有技術(shù)中存在的上述缺陷,本發(fā)明的目的是利用存儲(chǔ)級(jí)內(nèi)存天然的非易失 性w及、高密度、低延遲等優(yōu)良特性,設(shè)計(jì)并實(shí)現(xiàn)一種基于存儲(chǔ)級(jí)內(nèi)存的內(nèi)存數(shù)據(jù)快速持久 化的方法。本發(fā)明通過提供API(ApplicationProgrammingInte;rface,應(yīng)用程序編程接 口),為應(yīng)用程序提供可W直接訪存SCM(StorageClassMemo巧,存儲(chǔ)級(jí)內(nèi)存)的接口;在內(nèi) 核層,設(shè)計(jì)持久區(qū)域管理器,實(shí)現(xiàn)持久區(qū)域邏輯和物理屬性的映射W及持久區(qū)域元數(shù)據(jù)的 管理等,使得持久區(qū)域可W持久于應(yīng)用程序或系統(tǒng)的重運(yùn)行過程。
[0009]為實(shí)現(xiàn)上述目的,本發(fā)明是通過W下技術(shù)方案實(shí)現(xiàn)的。
[0010] -種基于存儲(chǔ)級(jí)內(nèi)存的內(nèi)存數(shù)據(jù)快速持久化的方法,包括如下步驟:
[0011] 步驟1:將一定容量的存儲(chǔ)級(jí)內(nèi)存(SCM)與存儲(chǔ)于此SCM的持久數(shù)據(jù)抽象為一塊持 久區(qū)域;
[0012] 步驟2:設(shè)計(jì)供應(yīng)用程序調(diào)用的API接口,響應(yīng)應(yīng)用程序?qū)Τ志脜^(qū)域訪問的訪存請(qǐng) 求;
[0013] 步驟3:對(duì)持久區(qū)域映射的用戶程序進(jìn)程地址空間進(jìn)行動(dòng)態(tài)分配和管理;
[0014] 步驟4:擴(kuò)展內(nèi)核伙伴系統(tǒng)(Buddysystem),實(shí)現(xiàn)內(nèi)核對(duì)SCM的管理和分配;
[0015] 步驟5:設(shè)計(jì)持久區(qū)域管理器,包括持久映射表W及持久對(duì)持久映射表的處理函 數(shù),實(shí)現(xiàn)持久區(qū)域元數(shù)據(jù)的管理W及對(duì)持久區(qū)域的邏輯和物理屬性的映射;
[0016]步驟6:設(shè)計(jì)針對(duì)持久區(qū)域訪存的缺頁處理函數(shù)。
[0017] 優(yōu)選地,在所述步驟1中,每一塊持久區(qū)域均通過應(yīng)用程序定義一個(gè)唯一的ID來標(biāo) 識(shí),記為P_ID。
[0018] 優(yōu)選地,在所述步驟2中,在用戶層設(shè)計(jì)API接口,應(yīng)用程序?qū)Τ志脜^(qū)域的訪問,均 通過API接口觸發(fā)請(qǐng)求;所述API接口能夠?yàn)橛脩舫绦蛱峁﹦?dòng)態(tài)地申請(qǐng)和回收持久區(qū)域的訪 問功能,同時(shí),申請(qǐng)持久區(qū)域訪問時(shí),將持久區(qū)域的唯一ID作為API調(diào)用參數(shù)。
[0019] 優(yōu)選地,在所述步驟3中,在動(dòng)態(tài)分配進(jìn)程地址空間時(shí),首先在用戶程序進(jìn)程地址 空間的地址映射段標(biāo)識(shí)4k整數(shù)倍的內(nèi)存空間,然后在該標(biāo)識(shí)的內(nèi)存空間調(diào)用內(nèi)存分配算 法,進(jìn)行動(dòng)態(tài)進(jìn)程地址空間分配。
[0020] 優(yōu)選地,在所述步驟4中,包括如下步驟:
[0021] 在內(nèi)核層對(duì)Linux內(nèi)核進(jìn)行擴(kuò)展,增加一個(gè)SCM_Z0肥內(nèi)存域,用來描述SCM,并通過 運(yùn)一擴(kuò)展,實(shí)現(xiàn)Buddysystem對(duì)DRAM和SCM的統(tǒng)一管理;
[0022] 為了提高存儲(chǔ)內(nèi)存的耐用性,在擴(kuò)展Buddysystem的同時(shí),改進(jìn)Buddysystem對(duì) 于SCM的分配和回收算法;即有效利用Buddysystem的雙向鏈表,在頁面回收時(shí),將被釋放 的頁面鏈入到相應(yīng)鏈表的表尾,從而均勻化頁面的訪存頻度,減少熱點(diǎn)頁面的形成,延長 SCM的寫壽命;
[0023]增加一個(gè)寫頻度臨界鏈表,將超過寫頻度闊值的頁面加入到寫頻度臨界鏈表,避 免由于SCM的物理故障造成的物理數(shù)據(jù)訪存錯(cuò)誤。
[0024] 優(yōu)選地,在所述步驟5中,所述持久區(qū)域管理器用于對(duì)SCM中所有持久區(qū)域進(jìn)行管 理,通過持久區(qū)域管理器實(shí)現(xiàn)持久區(qū)域的邏輯和物理屬性的映射W及持久區(qū)域元數(shù)據(jù)的管 理,具體為:
[0025] 邏輯和物理屬性的映射通過一個(gè)Ξ元組<P_ID,P_add;rJ_size>形成持久映射記 錄,其中P_ID為持久區(qū)域的唯一標(biāo)識(shí),P_acMr為存儲(chǔ)持久區(qū)域的物理起始地址,P_size為持 久區(qū)域所占空間的大小;持久映射表即為多條持久映射記錄形成的散列表,該散列表不僅 存儲(chǔ)了每個(gè)持久區(qū)域的邏輯和物理屬性的映射關(guān)系,同時(shí)記錄了每個(gè)持久區(qū)域的大小w及 起始地址等物理布局信息,因此當(dāng)創(chuàng)建、刪除或更新一個(gè)持久區(qū)域時(shí),都將觸發(fā)對(duì)持久映射 表的插入、刪除或更新一條持久映射記錄的操作。此外在系統(tǒng)初始化時(shí),Buddysystmem也 需要對(duì)持久映射表進(jìn)行掃描來構(gòu)建持久區(qū)域的空閑鏈表;
[0026] 通過tID對(duì)持久映射表進(jìn)行檢索來獲取持久區(qū)域的P_acklr,,該檢索通過哈希算 法來提高檢索速度,具體為:
[0027]1)將?_10的字符序列表示轉(zhuǎn)換成二進(jìn)制表示形式;
[0028] 2)通過混合哈希算法,對(duì)128位的二進(jìn)制P_ID進(jìn)行處理,最終得到24位的存儲(chǔ)序列 號(hào);
[0029] 3)由此存儲(chǔ)序列號(hào)再計(jì)算得到P_ID所對(duì)應(yīng)的持久映射記錄的存儲(chǔ)地址;
[0030] 將?_10二進(jìn)制表示形式的最高位作為該持久映射記錄是否有效的標(biāo)志:其中,0表 示持久映射記錄無效;1表示持久映射記錄準(zhǔn)確、完整且有效。
[0031] 優(yōu)選地,在所述步驟6中,針對(duì)持久區(qū)域訪存的缺頁處理函數(shù),具體為,WP_ID為捜 索關(guān)鍵字,檢索持久映射表,獲取相應(yīng)持久區(qū)域的物理地址,然后再更新用戶程序進(jìn)程的頁 表,實(shí)現(xiàn)虛擬地址和物理地址的映射。
[0032]與傳統(tǒng)數(shù)據(jù)持久化技術(shù)相比,本發(fā)明具有如下優(yōu)勢:
[0033] 1、本發(fā)明有效利用非易失存儲(chǔ)器件天然的非易失性W及低延遲、高密度等優(yōu)良特 性,支持應(yīng)用程序數(shù)據(jù)和系統(tǒng)數(shù)據(jù)的持久化,在保持原有編程思想的同時(shí),避免數(shù)據(jù)的序列 化/反序列化操作,同時(shí)可實(shí)現(xiàn)持久數(shù)據(jù)的原地更新,簡化了傳統(tǒng)架構(gòu)下持久數(shù)據(jù)訪存過程 中的層級(jí)調(diào)用,可有效緩解I/O瓶頸,提高持久數(shù)據(jù)的訪存性能。
[0034] 2、本發(fā)明采用持久映射管理器,通過持久映射表,利用持久區(qū)域ID,巧妙的實(shí)現(xiàn)了 持久區(qū)域邏輯與物理屬性的映射,運(yùn)種方法運(yùn)使得程序可W將持久區(qū)域當(dāng)做主存進(jìn)行處 理,不僅解除了對(duì)傳統(tǒng)文件系統(tǒng)映射機(jī)制的依賴,同時(shí)克服了虛擬地址必須固定的缺陷。
[0035]3、本發(fā)明可W有效避免傳統(tǒng)存儲(chǔ)架構(gòu)下內(nèi)存數(shù)據(jù)持久化所需的數(shù)據(jù)線性化過程, 提高數(shù)據(jù)持久化的性能;<
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
永泰县| 天峨县| 纳雍县| 修武县| 宕昌县| 拉孜县| 体育| 中江县| 凤庆县| 霍城县| 峨边| 青冈县| 周口市| 繁峙县| 和顺县| 嘉定区| 乌海市| 将乐县| 和龙市| 竹溪县| 辽源市| 亚东县| 永泰县| 罗江县| 合作市| 新兴县| 隆德县| 滨海县| 乌什县| 平邑县| 桐城市| 珲春市| 徐水县| 浦县| 鄯善县| 长丰县| 永年县| 阿巴嘎旗| 天长市| 介休市| 赞皇县|