Font Size: a A A

File System Based On Persistent Memory

Posted on:2022-08-06Degree:MasterType:Thesis
Country:ChinaCandidate:R N SunFull Text:PDF
GTID:2518306524489364Subject:Master of Engineering
Abstract/Summary:PDF Full Text Request
Nowadays,with the rapid development of technology,persistent memory has gradually entered the public eye.Persistent memory also has the advantages of fast reading and writing,random addressing by byte,and no data loss when power is off.It fills the huge difference in read and write speed between traditional memory and external memory,and is expected to become a new generation Storage medium.These excellent features of persistent memory also bring many challenges to the design of the file system.First of all,most of the current mainstream file systems are based on disk implementations.The software design in the bottom layer of the operating system(block device layer)and page cache cannot fully fit the advantages of persistent memory,and there are optimizations in it.Algorithms can even have the opposite effect.Second,due to the completely different hardware differences and read-write methods between disks and persistent memory,the methods used to maintain data consistency need to be changed accordingly.Third,since persistent memory is directly connected to the memory bus,it can be addressed by bytes like traditional memory DRAM.This will cause the virtual address space where the persistent memory is located to be directly exposed to other processes in the operating system kernel,which poses a security problem.In summary,it is necessary to redesign a file system for persistent memory.In order to solve the various problems and challenges of the above-mentioned persistent memory file system,this thesis designs and implements the sunfs of this thesis,with the following main design points:1.This thesis uses file pages and file page tables,abandoning the traditional file system's organization of file data,reducing the searching path at the software level,and speeding up the speed of locating file data.On this basis,a read-write optimization strategy is proposed for write-intensive programs,while improving the efficiency of the original system calling mmap in the operating system..2.Our thesis links the log with the inode node,and the file system can find the corresponding log through the inode.This allows the recovery procedure to take advantage of the multi-processor to disperse the inode to different CPUs to speed up the speed of file data recovery after a system crach.3.For the persistent memory used by sunfs in this thesis,this article provides a page table-based protection strategy on x86-64 CPU to protect sunfs data from other kernel threads.Only when a write operation is issued by sunfs,the pages used by sunfs are set as writable,and the rest are marked as read-only.At the same time,in order to reduce the redundant page table addressing time caused by this strategy,sunfs maintains a layer of cache to cache the most recent pages in order to optimize the efficiency of the entire file system.Finally,we compared sunfs with some existing memory-based and non-volatile memory-based file systems in terms of read and write efficiency,mmap performance,cache hit rate,and TLB hit rate.From the experimental results,better results have been achieved.
Keywords/Search Tags:Linux Kernel, file system, non-volatile memory, file page
PDF Full Text Request
Related items