面向新型非易失性存儲器的內(nèi)存管理系統(tǒng)設(shè)計與實現(xiàn)
發(fā)布時間:2017-09-25 20:09
本文關(guān)鍵詞:面向新型非易失性存儲器的內(nèi)存管理系統(tǒng)設(shè)計與實現(xiàn)
【摘要】:隨著云計算技術(shù)的不斷發(fā)展和規(guī)模的壯大,人們對存儲的要求越來越高,希望有高密度、高讀寫速度、低能耗的存儲介質(zhì)。而傳統(tǒng)的DRAM、flash和磁盤等產(chǎn)品都有各自的缺陷,DRAM和flash存在著密度和容量的瓶頸,磁盤的讀寫速度遠遠達不到要求。隨著存儲技術(shù)的不斷發(fā)展,PCM、MRAM等新型非易失性存儲器(統(tǒng)稱為NVM)逐漸出現(xiàn)在人們的視野范圍中,它們擁有密度高、容量大、速度快和能耗低等特點,吸引了技術(shù)人員的廣泛關(guān)注。由于NVM自身的諸多特性,許多原來的設(shè)計方案不再適合于它,需要重新設(shè)計。主要的研究方向包括用NVM代替DRAM,在NVM搭建文件系統(tǒng)等。而本文的研究方向則是用NVM替代DRAM。關(guān)于其替代方案,主要有兩種觀點,一是NVM完全替代DRAM;二是NVM和DRAM結(jié)合起來使用,即混合內(nèi)存。而現(xiàn)有的技術(shù)基礎(chǔ)上,NVM仍存在一些缺陷(相對于DRAM,其讀寫速度較慢,且存在寫磨損),這限制了NVM完全替代DRAM。因此,更多的研究著手于混合內(nèi)存上。本文就是在混合內(nèi)存場景下展開研究的。目前,有兩種方式使用NVM,一是按照傳統(tǒng)頁框管理方式,二是使用文件系統(tǒng)管理NVM。前者未充分考慮NVM持久化特性和存在著空間利用率不高的缺陷;后者未充分利用NVM隨機讀寫的特性和存在著元數(shù)據(jù)空間開銷較大的缺陷。針對上述問題,本文設(shè)計并實現(xiàn)了一種針對NVM的低元數(shù)據(jù)空間開銷的持久化頁框管理系統(tǒng)。另外,由于NVM的寫速度較DRAM慢,寫能耗較大,且存在寫磨損,本文還設(shè)計并實現(xiàn)了一種提供持久化保證的頁面置換機制,以減少NVM寫操作。上述持久化頁框管理系統(tǒng)和頁面置換機制,主要有以下特點:1.在操作系統(tǒng)內(nèi)核層建立NVM的頁框管理機制,并為該系統(tǒng)上的操作提供簡單事務(wù)性接口,保證在宕機或斷電的情況下,頁框管理系統(tǒng)數(shù)據(jù)的正確性。2.針對高空間利用率和分配效率,設(shè)計并實現(xiàn)多級空閑頁框管理機制,并設(shè)計適合的頁框分配原則。3.考慮到NVM和DRAM讀寫能耗和讀寫速度的差距,提供有數(shù)據(jù)安全保證的頁面置換機制,以實現(xiàn)NVM和DRAM間頁面的移動,達到加快熱點頁面讀寫速度和節(jié)約能耗的目的。4.用內(nèi)核模塊的方式開發(fā)實現(xiàn)持久化頁框管理系統(tǒng)和頁面置換功能,并以Linux驅(qū)動的形式方便用戶使用。最后測試并通過了持久化頁框管理系統(tǒng)和頁面置換機制的功能測試,順利完成了持久化頁框管理系統(tǒng)的元數(shù)據(jù)空間開銷對比測試,測試結(jié)果表明持久化頁框系統(tǒng)的元數(shù)據(jù)開銷很小,達到了提高空間利用率的目的。
【關(guān)鍵詞】:NVM 頁框管理 頁面置換
【學(xué)位授予單位】:電子科技大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2016
【分類號】:TP333
【目錄】:
- 摘要5-7
- ABSTRACT7-13
- 第一章 緒論13-17
- 1.1 背景及意義13-14
- 1.2 國內(nèi)外研究現(xiàn)狀和發(fā)展態(tài)勢14-15
- 1.3 研究內(nèi)容及主要工作15-16
- 1.4 章節(jié)安排16-17
- 第二章 相關(guān)技術(shù)和基礎(chǔ)理論介紹17-23
- 2.1 Linux buddy內(nèi)存系統(tǒng)技術(shù)17
- 2.2 tcmalloc內(nèi)存系統(tǒng)17-19
- 2.3 事務(wù)內(nèi)存技術(shù)19-22
- 2.3.1 問題提出19
- 2.3.2 基本原理19-20
- 2.3.3 相關(guān)特性20-22
- 2.4 本章小結(jié)22-23
- 第三章 總體設(shè)計23-53
- 3.1 系統(tǒng)總體說明23
- 3.2 需求分析23-26
- 3.2.1 功能性需求23-25
- 3.2.2 非功能性需求25-26
- 3.3 NVM管理器總體設(shè)計26-41
- 3.3.1 總體說明26-28
- 3.3.2 內(nèi)存布局及初始化28-30
- 3.3.2.1 內(nèi)存布局28-29
- 3.3.2.2 NVM總描述符29
- 3.3.2.3 NVM格式化流程29-30
- 3.3.2.4 系統(tǒng)初始化流程30
- 3.3.3 內(nèi)存池管理30-31
- 3.3.4 日志以及事務(wù)管理31-33
- 3.3.4.1 日志元數(shù)據(jù)31-32
- 3.3.4.2 日志管理器32
- 3.3.4.3 日志結(jié)構(gòu)32
- 3.3.4.4 日志寫入和讀取操作32-33
- 3.3.5 頁框管理33-37
- 3.3.5.1 分配單元描述符33
- 3.3.5.2 空閑頁框組織管理33-34
- 3.3.5.3 頁框分配和釋放原則34-35
- 3.3.5.4 頁框分配和釋放流程35-37
- 3.3.6 對象管理37-40
- 3.3.6.1 對象描述符37-38
- 3.3.6.2 對象組織管理38
- 3.3.6.3 對象分配流程38-39
- 3.3.6.4 對象映射流程39-40
- 3.3.6.5 對象增長流程40
- 3.3.7 故障恢復(fù)40-41
- 3.4 頁面置換總體設(shè)計41-52
- 3.4.1 總體說明41-42
- 3.4.2 解決方案設(shè)計42-44
- 3.4.3 數(shù)學(xué)模型建立44-46
- 3.4.3.1 置換度模型44-45
- 3.4.3.2 頁組置換模型45-46
- 3.4.4 模塊結(jié)構(gòu)46-49
- 3.4.5 典型流程分析49-52
- 3.4.5.1 頁面訪問信息統(tǒng)計49
- 3.4.5.2 頁面置換49-51
- 3.4.5.3 缺頁中斷處理51-52
- 3.5 本章小結(jié)52-53
- 第四章 NVM管理器詳細設(shè)計與實現(xiàn)53-91
- 4.1 模塊層次介紹53-54
- 4.2 內(nèi)存池管理模塊54-64
- 4.2.1 內(nèi)存池子池實現(xiàn)講解56-57
- 4.2.2 內(nèi)存池子池元素結(jié)構(gòu)57-58
- 4.2.3 內(nèi)存池子池的組織設(shè)計及實現(xiàn)58-60
- 4.2.3.1 初始化狀態(tài)58-59
- 4.2.3.2 內(nèi)存池狀態(tài)v159-60
- 4.2.3.3 內(nèi)存池子池狀態(tài)v260
- 4.2.3.4 內(nèi)存池狀態(tài)v360
- 4.2.4 內(nèi)存池子池分配釋放流程60-63
- 4.2.4.1 內(nèi)存池子池分配元素流程61-62
- 4.2.4.2 內(nèi)存池子池釋放元素流程62-63
- 4.2.5 內(nèi)存池模塊組織及主要流程63-64
- 4.2.5.1 內(nèi)存池模塊組織圖63-64
- 4.2.5.2 內(nèi)存池元素分配流程64
- 4.2.5.3 內(nèi)存池元素釋放流程64
- 4.3 頁框管理模塊64-80
- 4.3.1 分配單元描述符64-65
- 4.3.2 頁框分配算法65
- 4.3.3 空閑頁框管理模塊65-66
- 4.3.4 空閑頁框鏈表管理模塊66-68
- 4.3.5 空閑頁框樹管理模塊68-71
- 4.3.6 空閑頁框樹管理模塊主要流程描述71-73
- 4.3.6.1 精確查找流程71-73
- 4.3.6.2 非精確查找流程73
- 4.3.7 頁框分配模塊73-77
- 4.3.8 頁框釋放模塊77-78
- 4.3.9 頁框操作模塊78-79
- 4.3.10 空閑頁框組織方式79-80
- 4.4 對象管理模塊80-84
- 4.4.1 對象描述符80
- 4.4.2 對象哈希表模塊80-82
- 4.4.3 對象分配釋放模塊82
- 4.4.4 對象映射模塊82-83
- 4.4.5 對象增長縮減模塊83-84
- 4.5 事務(wù)管理模塊84-90
- 4.5.1 已修改數(shù)據(jù)表管理模塊85-86
- 4.5.2 日志模塊86-89
- 4.5.3 故障恢復(fù)模塊89
- 4.5.4 事務(wù)寫流程89-90
- 4.6 本章小結(jié)90-91
- 第五章 頁面置換詳細設(shè)計與實現(xiàn)91-103
- 5.1 數(shù)據(jù)區(qū)頁面統(tǒng)計信息器91-92
- 5.2 頁面統(tǒng)計信息收集器92
- 5.3 頁面統(tǒng)計信息發(fā)送器92-93
- 5.4 頁面訪問信息管理器93-94
- 5.5 頁組劃分器94
- 5.6 頁組篩選器94-95
- 5.7 頁映射關(guān)系管理器95-96
- 5.8 頁組移動器96
- 5.9 頁面訪問重定向器96-97
- 5.10 已提交事務(wù)日志管理器97-100
- 5.10.1 已提交日志組織方式99
- 5.10.2 已提交事務(wù)日志管理器結(jié)構(gòu)99-100
- 5.11 頁面置換管理器100-102
- 5.12 本章小結(jié)102-103
- 第六章 測試103-108
- 6.1 測試方案103-104
- 6.1.1 測試說明103
- 6.1.2 測試環(huán)境103-104
- 6.2 NVM管理器功能測試104-105
- 6.2.1 對象創(chuàng)建測試104
- 6.2.2 對象刪除測試104
- 6.2.3 對象空間增加測試104-105
- 6.2.4 對象空間減少測試105
- 6.2.5 綜合測試105
- 6.3 頁面置換功能測試105-106
- 6.4 性能測試106-107
- 6.5 本章小結(jié)107-108
- 第七章 總結(jié)與展望108-110
- 致謝110-111
- 參考文獻111-114
- 攻碩期間取得的研究成果114-115
【參考文獻】
中國期刊全文數(shù)據(jù)庫 前1條
1 張婷;李文敬;;基于多核PC的事務(wù)內(nèi)存重復(fù)探測Hash沖突檢測算法[J];現(xiàn)代計算機;2013年11期
,本文編號:919320
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/919320.html
最近更新
教材專著