Font Size: a A A

The Design And Implementation Of A Memory-mapped I/O Mechanism In Versioning In-memory File System

Posted on:2019-04-29Degree:MasterType:Thesis
Country:ChinaCandidate:Z X MaoFull Text:PDF
GTID:2428330590492294Subject:Computer technology
Abstract/Summary:PDF Full Text Request
NVM(Non-Volatile Memory)technologies,such as PCM(Phase Change Memory)and STT-RAM(Spin-Torque Transfer Memory),have been rapidly developing in recent years.It has become a research focus in both academia and industry.Non-volatile memories,with their speed comparable to DRAM,are expected to be ideal alternatives to traditional block storage,such as HDD and SSD,to provide fine-grained data persistence.Researchers have proposed many methods to optimize traditional file systems in order to utilize the fascinating features that NVM provides.DAX(Direct Access)is one of them.DAX enables applications to directly operate file blocks in NVM without going through the page cache layer.DAX-style file I/O eliminates unnecessary data copy between DRAM and NVM,thus it can significantly improve file system's performance.Unfortunately,DAX-style memorymapped I/O can cause serious consistency issue in versioning in-memory file systems that adopt CoW(Copy on Write)mechanism to solve block sharing problem among snapshots.To address this problem,we proposed a new memory-mapped I/O mechanism which records necessary information during handling page faults and remaps memory-mapped pages during snapshotting to achieve consistency between snapshots.To further study the correctness and effectiveness of the proposed mechanism,we implement it in HMVFS and conduct a series of experiments based on our implementation.The result of the experiments shows that our mechanism can achieve consistency while imposing a negligible performance overhead.
Keywords/Search Tags:Non-Volatile Memory, File System, Memory-mapped I/O
PDF Full Text Request
Related items