CN113254198A - 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法 - Google Patents

融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法 Download PDF

Info

Publication number
CN113254198A
CN113254198A CN202110489809.5A CN202110489809A CN113254198A CN 113254198 A CN113254198 A CN 113254198A CN 202110489809 A CN202110489809 A CN 202110489809A CN 113254198 A CN113254198 A CN 113254198A
Authority
CN
China
Prior art keywords
file
memory
block
mapping
read
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110489809.5A
Other languages
English (en)
Other versions
CN113254198B (zh
Inventor
王刚
赵盛
张佳辰
胡泽瑞
刘晓光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nankai University
Original Assignee
Nankai University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nankai University filed Critical Nankai University
Priority to CN202110489809.5A priority Critical patent/CN113254198B/zh
Publication of CN113254198A publication Critical patent/CN113254198A/zh
Application granted granted Critical
Publication of CN113254198B publication Critical patent/CN113254198B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法,该方法将存储资源分为普通文件与内存文件,并统一普通文件与内存文件的分配方式,进程的内存页框与文件块处于同一地址空间;进程对内存页框的匿名映射被修改为对PM数据块的映射,并通过文件预扩展策略与异步块回收策略优化内存分配效率;系统的文件读写采用从用户缓冲区的虚拟地址到目标文件块物理地址的重映射操作,以消除不必要的数据拷贝。本发明实现了单个PM分区可同时提供内存分配和文件存储服务,利用内存和文件系统统一管理的优势,通过减少数据拷贝来提升文件读写性能。

Description

融合Linux虚拟内存系统和文件系统的持久性内存统一管理 方法
技术领域
本发明属于持久性内存存储技术领域,具体涉及一种融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法。
背景技术
随着PCM、ReRAM、STT-MRAM和3D-XPoint等新型非易失存储器技术(NVM,Non-Volatile Memory)的发展,NVM和DRAM之间的速度越来越接近,基于NVM的内存设备也陆续在市场中出现,这种设备被称为持久性内存(PM,Persistent Memory)。由于PM基于NVM介质,并直接连接到内存总线,因此PM兼具内存的可字节寻址特性和外存的数据持久性特性。
不同于固态硬盘(SSD,Solid State Drive)主要针对外存储性能的改进,PM的出现还给操作系统的存储层次抽象带来了新的挑战。近年来的相关工作,大多是针对PM单纯作为内存或单纯作为外存开展研究的。其一是在内核中实现的PM感知文件系统,它们考虑到PM细粒度持久化的特点,利用了不同方法来解决崩溃一致性问题,并优化了文件操作的性能。其二是实现在用户态的PM感知文件系统,减少了内核态和用户态之间切换。PM感知文件系统需要应用程序主动利用文件映射的方式操作文件,并且由于PM分区被格式化为文件系统,应用程序无法再从该分区分配内存使用。另一方面,一些工作在现有内存管理系统的基础上针对PM加入对数据持久化的支持,优化了PM内存空间分配,降低了分配延迟,并将降低碎片率作为研究目标。这些PM内存管理系统的接口大多与现存的内存分配接口、文件操作接口不兼容,增加了现有应用程序或基础软件库的移植和维护难度。
操作系统领域现有PM虚拟化的相关工作大多从PM用作内存或PM用作存储两个方向着手,解决各自所面临的问题。但是,以PM作内存会牺牲其持久性或是需要应用适配新的编程接口,以PM作存储又会导致PM设备无法用于进程的内存分配。
发明内容
本发明的目的是为了解决当前持久性内存的资源管理方案无法兼顾持久化特性和可字节寻址特性的问题,而提出一种融合Linux虚拟内存系统和文件系统的持久性内存(PM)统一管理方法。
本发明是通过以下技术方案实现的:
一种融合Linux虚拟内存系统和文件系统的持久性内存(PM)统一管理方法,将存储资源分为普通文件与内存文件,并统一普通文件与内存文件的分配方式,进程的内存页框与文件块处于同一地址空间;
内存分配和释放:进程对内存页框的匿名映射被修改为对PM数据块的映射,并通过文件预扩展策略与异步块回收策略优化内存分配效率;
零拷贝读写:系统的文件读写采用从用户缓冲区的虚拟地址到目标文件块物理地址的重映射操作,以消除不必要的数据拷贝。
在上述技术方案中,普通文件支持直接读写操作,内存文件不支持直接读写操作,只支持被映射到进程的虚拟内存地址空间;内存文件所管理的文件块被用户进程用作易失内存使用;内存文件块和普通文件块的分配和释放都依赖于Linux内核的Ext4-DAX文件系统的块分配器。
在上述技术方案中,在用户进程申请内存时,从进程对应的内存文件末端进行扩展并将新扩展的部分映射到用户地址空间并返回这个地址;在用户进程释放内存时,首先会删除对应的虚拟映射区,然后调用ext4_punch_hole,利用文件系统的文件打洞特性将该虚拟映射区对应的内存文件块回收。
在上述技术方案中,在进程启动时为其创建内存文件,进程对内存的申请和释放会导致内存文件对文件系统块的申请和释放,其所占的文件块数也随之增加或者减小。
在上述技术方案中,PM分别用作内外存的两种模式在单个PM分区中的共存。
在上述技术方案中,所述文件预扩展策略是在进程申请内存时,以次数更少的、较大粒度的扩展代替每次分配时在线、按需的扩展:若内存文件总长度减去已分配的部分不足以满足本次分配需求,则以较大的单元对内存文件进行扩展,满足本次内存分配需求的同时为之后的分配预留空间;若之前预先扩展的部分可以满足本次需求,则可以直接分配,这降低了分配延迟;
所述异步块回收策略是利用Linux内核现有的workqueue延后执行机制,创建了一个用于内存文件块回收的后台任务队列,释放操作委托给后台线程延后处理的策略可以提升系统的整体性能。
在上述技术方案中,在进程读普通文件时,缓冲区所在的虚拟地址被通过传入MAP_FIXED参数的vm_mmap被重新映射到目标普通文件的文件块上,新的映射区通过MAP_PRIVATE保证映射区的只读属性;
在进程写普通文件时,首先找到buffer所对应的内存文件和偏移量,然后利用Ext4-DAX所实现的块交换功能,调用ext4_swap_extents将缓冲区对应的内存文件块交换到被写入的普通文件中,再将缓冲区虚拟地址通过带MAP_PRIVATE和MAP_FIXED的vm_mmap函数以只读方式重映射到刚交换的普通文件块上,最终将交换到内存文件中的数据块释放。
在上述技术方案中,对文件读写所产生的重映射缓冲区加入只读权限,以保证读写系统调用的原始语义;当重映射导致的共享区域通过虚拟地址被修改,或通过文件写调用被修改时,系统会进行写时拷贝和二次映射,将原本共享的文件块分为两份,来保证数据的完整性。
在上述技术方案中,进程的内存由内存文件所管理,当子进程以fork方式被创建后,会以只读方式共享内存区段,内核会在相关区域被修改前先进行拷贝,来打破这一区域在多个进程之间的共享,即进行内存文件的文件拷贝和对新文件的映射。
本发明的优点和有益效果为:
本发明基于Linux系统的PM感知文件系统和虚拟内存系统进行设计,实现了单个PM分区可同时提供内存分配和文件存储服务,内存与文件的分配依赖于Ext4-DAX文件系统的块分配器;进程在申请内存时对内存页框的匿名映射会被修改为对PM设备数据块文件的映射,系统以追加的方式在已分配文件块的末端进行扩展;利用内外存统一管理的特性实现内存到文件的重映射机制,避免了不必要的数据拷贝;本发明同时支持原生的文件操作接口和内存分配接口,并且利用内存和文件系统统一管理的优势,通过减少数据拷贝来提升文件读写性能。
附图说明
图1.给出了本发明所述系统的一次文件读/写流程图。
图2.给出了本发明所述系统的整体架构图。
图3.给出了本发明所述系统中内存分配的流程图。
图4.给出了本发明所述系统中零拷贝读写和写时拷贝的原理图。
对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据以上附图获得其他的相关附图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合具体实施例进一步说明本发明的技术方案。
一种融合Linux虚拟内存系统和文件系统的持久性内存(PM)统一管理方法,包括以下内容:
1.资源管理
如图2所示,本系统同时对上层应用提供内存申请和文件操作接口,在系统内部以不同文件类型分别管理内存和文件,并且与PM的DAX驱动以及内存缺页处理模块进行交互来实现内存和文件两种方式的访问,内存缺页处理模块采用MMU单元(Memory ManagementUnit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权,多用户多进程操作系统)。具体的将,在本发明所述的持久性内存统一管理系统中管理的文件分为普通文件(DAXFILE)和内存文件(DAXMEM),普通文件同其他PM感知文件系统所管理的文件类似,支持所有POSIX文件操作,而内存文件较为特殊,它不支持文件读写操作,只支持被映射到进程的虚拟内存地址空间,内存文件所管理的文件块被用户进程用作易失内存使用。内存文件块和普通文件块的分配和释放统一采用Linux内核的Ext4-DAX文件系统的块分配器。
本发明系统在进程启动时为其创建内存文件,进程对内存的申请和释放会导致内存文件对文件系统块的申请和释放,其所占的文件块数也随之增加或者减小。
本发明系统对DAXFILE文件的支持意味着应用仍然可以在系统所挂载目录中进行文件创建、删除和读写等操作,以实现PM分别用作内外存的两种模式在单个PM分区中的共存。
2.内存分配和释放
如图3所示,系统调用mmap可以将内存页或文件映射到进程地址空间,这两种映射类型分别为匿名映射和文件映射,进程的内存申请一般基于匿名映射,本发明的持久性内存统一管理系统将对DAXMEM的文件映射来代替原本的匿名映射,将进程的PM内存管理整合到系统的文件块管理中。
在Ext4-DAX文件系统中,文件的基本单元是块,文件偏移量和存储设备块地址之间存在映射关系,文件系统负责在访问文件时完成这种地址的转换。由于本发明所述持久性内存统一管理系统的内存分配由DAXMEM文件管理,因此其底层依赖于文件系统的块分配机制。基于页的内存管理底层一般采用伙伴系统来解决内存分配出现的内部碎片和外部碎片问题,而本发明所基于的Ext4-DAX文件系统则通过基于区段的块映射的方式来优化碎片问题,并保证文件的逻辑连续性。
用户进程申请内存的流程为:在用户进程通过mmap系统调用发起内存申请时,利用ext4_fallocate从进程对应的DAXMEM文件末端进行扩展并将新扩展的部分通过vm_mmap映射到用户地址空间并返回这个地址。
用户进程释放内存的流程为:首先会删除对应的虚拟映射区,然后调用ext4_punch_hole,利用Ext4-DAX文件系统的文件打洞特性将该虚拟映射区对应的DAXMEM文件块回收。值得注意的是,ext4_punch_hole的原生实现会把要释放的文件块对应的脏数据刷回,再进行文件打洞操作,但由于其本身并不利用DAXMEM文件块的数据持久性,所以本发明摒弃脏数据的刷回操作来提升内存释放性能。
DAXMEM文件是以追加的方式(即DAXMEM文件末端进行扩展)来服务内存分配的,由于用于文件扩展的开销较大,若每次在DAXMEM文件申请内存时都对它进行扩展,会对内存分配的整体开销影响较大。为了降低分配内存的延迟,优选的,本发明采用了一种将文件扩展提前的预分配策略,其思路是在进程向系统申请内存时,以次数更少的、较大粒度的扩展代替每次分配时在线、按需的扩展:即,若DAXMEM文件总长度减去已分配的部分不足以满足本次分配需求,则以较大的单元(例如预分配64MB大小的文件块)对DAXMEM文件进行扩展,满足本次内存分配需求的同时为之后的分配预留空间;若之前预先扩展的部分可以满足本次需求,则可以直接分配,这降低了分配延迟。
本发明在多个流程中利用Ext4-DAX的文件打洞操作实现了DAXMEM文件块的回收,如内存释放时、读写重映射时或者fork导致的写时拷贝时。由于文件打洞涉及到文件元数据的修改,频繁的调用会对整体性能造成损失。因此,本发明采用了一种异步块回收的策略:利用Linux内核现有的workqueue这一延后执行机制,创建了一个用于DAXMEM文件块回收的后台任务队列。
3.读写重映射(零拷贝读写)
如图4所示,本发明使用了一种称为“读写重映射”的机制,以消除不必要的拷贝。
Ext4-DAX等PM感知文件系统的文件读写越过了内核缓存区,减少了一次数据拷贝,但对于使用本发明的实例进程,由于内存(即内存文件DAXMEM)和文件(即普通文件DAXFILE)被统一分配和管理,所以读写操作的拷贝被进一步减少。这种“零拷贝”读写的思想是用重映射代替内存拷贝(即,本发明的文件读写采用从用户缓冲区的虚拟地址到目标文件块物理地址的重映射操作代替传统的将PM上文件块到用户缓冲区的拷贝操作),具体的讲:
本发明在进程读DAXFILE文件时,缓冲区所在的虚拟地址被通过传入MAP_FIXED参数的vm_mmap被重新映射到目标DAXFILE文件块上,新的映射区通过MAP_PRIVATE保证映射区的只读属性。
本发明在进程写DAXFILE文件时,系统首先找到buffer所对应的DAXMEM文件和偏移量,然后利用Ext4-DAX所实现的块交换功能,调用ext4_swap_extents将缓冲区对应的DAXMEM文件块交换到被写入的DAXFILE文件中,再将缓冲区虚拟地址通过带MAP_PRIVATE和MAP_FIXED的vm_mmap函数以只读方式重映射到刚交换的DAXFILE文件块上,最终将交换到DAXMEM文件中的数据块释放。
4.写时拷贝
读写重映射机制导致了文件块的共享,进而导致其对写时拷贝机制的依赖。写时拷贝会由两类情况所导致:一类是进程直接修改只读缓冲区,另一类是进程通过write等系统调用写入由只读缓冲区共享的文件区域。首先,本发明会根据要进行拷贝的文件及其偏移量,找到该文件块对应的PM物理地址dax_pos;之后对服务该进程内存分配的DAXMEM文件进行扩展,并定位到新扩展部分的PM物理地址dax_pos_new;最终将数据从原文件拷贝到DAXMEM中新扩展的位置。
在第一类情况中,即读写重映射产生的只读缓冲区被修改时,由于相应的页表项已经设置了写保护,程序会触发异常并陷入到内核的缺页处理流程中,本发明系统在写时拷贝之后对异常地址进行重新映射。为了处理第二类情况,即重映射的DAXFILE文件区域被文件写系统调用,本发明会在每次写入操作(daxfile_write)之前,遍历目标DAXFILE文件所关联的所有虚拟映射区,并对每个标记有读写重映射标志的虚拟映射区进行写时拷贝,拷贝后的用户虚拟地址会被再次重映射到新拷贝的区域。
以上对本发明做了示例性的描述,应该说明的是,在不脱离本发明的核心的情况下,任何简单的变形、修改或者其他本领域技术人员能够不花费创造性劳动的等同替换均落入本发明的保护范围。

Claims (10)

1.一种融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法,其特征在于:将存储资源分为普通文件与内存文件,并统一普通文件与内存文件的分配方式,进程的内存页框与文件块处于同一地址空间;
内存分配和释放:进程对内存页框的匿名映射被修改为对PM数据块的映射,并通过文件预扩展策略与异步块回收策略优化内存分配效率;
零拷贝读写:系统的文件读写采用从用户缓冲区的虚拟地址到目标文件块物理地址的重映射操作,以消除不必要的数据拷贝。
2.根据权利要求1所述的方法,其特征在于:普通文件支持直接读写操作,内存文件不支持直接读写操作,只支持被映射到进程的虚拟内存地址空间;内存文件所管理的文件块被用户进程用作易失内存使用;内存文件块和普通文件块的分配和释放都依赖于Linux内核的Ext4-DAX文件系统的块分配器。
3.根据权利要求1所述的方法,其特征在于:在用户进程申请内存时,从进程对应的内存文件末端进行扩展并将新扩展的部分映射到用户地址空间并返回这个地址;
在用户进程释放内存时,首先会删除对应的虚拟映射区,然后调用ext4_punch_hole,利用文件系统的文件打洞特性将该虚拟映射区对应的内存文件块回收。
4.根据权利要求2所述的方法,其特征在于:在进程启动时为其创建内存文件,进程对内存的申请和释放会导致内存文件对文件系统块的申请和释放,其所占的文件块数也随之增加或者减小。
5.根据权利要求3所述的方法,其特征在于:PM分别用作内外存的两种模式在单个PM分区中的共存。
6.根据权利要求1所述的方法,其特征在于:所述文件预扩展策略是在进程申请内存时,以次数更少的、较大粒度的扩展代替每次分配时在线、按需的扩展:若内存文件总长度减去已分配的部分不足以满足本次分配需求,则以较大的单元对内存文件进行扩展,满足本次内存分配需求的同时为之后的分配预留空间;若之前预先扩展的部分可以满足本次需求,则可以直接分配,这降低了分配延迟;
所述异步块回收策略是利用Linux内核现有的workqueue延后执行机制,创建了一个用于内存文件块回收的后台任务队列,释放操作委托给后台线程延后处理的策略可以提升系统的整体性能。
7.根据权利要求1所述的方法,其特征在于:在进程读普通文件时,缓冲区所在的虚拟地址被通过传入MAP_FIXED参数的vm_mmap被重新映射到目标普通文件的文件块上,新的映射区通过MAP_PRIVATE保证映射区的只读属性;
在进程写普通文件时,首先找到buffer所对应的内存文件和偏移量,然后利用Ext4-DAX所实现的块交换功能,调用ext4_swap_extents将缓冲区对应的内存文件块交换到被写入的普通文件中,再将缓冲区虚拟地址通过带MAP_PRIVATE和MAP_FIXED的vm_mmap函数以只读方式重映射到刚交换的普通文件块上,最终将交换到内存文件中的数据块释放。
8.根据权利要求7所述的方法,其特征在于:对文件读写所产生的重映射缓冲区加入只读权限,以保证读写系统调用的原始语义;
当重映射导致的共享区域通过虚拟地址被修改,或通过文件写调用被修改时,系统会进行写时拷贝和二次映射,将原本共享的文件块分为两份,来保证数据的完整性。
9.根据权利要求8所述的方法,其特征在于:进程的内存由内存文件所管理,当子进程以fork方式被创建后,会以只读方式共享内存区段,内核会在相关区域被修改前先进行拷贝,来打破这一区域在多个进程之间的共享,即进行内存文件的文件拷贝和对新文件的映射。
10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被执行时实现如权利要求1至9中任一项所述的方法的步骤。
CN202110489809.5A 2021-04-30 2021-04-30 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法 Active CN113254198B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110489809.5A CN113254198B (zh) 2021-04-30 2021-04-30 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110489809.5A CN113254198B (zh) 2021-04-30 2021-04-30 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法

Publications (2)

Publication Number Publication Date
CN113254198A true CN113254198A (zh) 2021-08-13
CN113254198B CN113254198B (zh) 2022-08-05

Family

ID=77223718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110489809.5A Active CN113254198B (zh) 2021-04-30 2021-04-30 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法

Country Status (1)

Country Link
CN (1) CN113254198B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114327270A (zh) * 2021-12-23 2022-04-12 郑州云海信息技术有限公司 一种请求处理方法、装置、设备及可读存储介质
CN115167786A (zh) * 2022-09-06 2022-10-11 浪潮电子信息产业股份有限公司 一种数据存储方法、装置、系统、设备和介质
CN115878204A (zh) * 2023-01-20 2023-03-31 北京国科环宇科技股份有限公司 一种操作系统的处理方法、装置、计算机设备和介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239225A (zh) * 2014-09-04 2014-12-24 浪潮(北京)电子信息产业有限公司 一种管理异构混合内存的方法及装置
CN110221779A (zh) * 2019-05-29 2019-09-10 清华大学 分布式持久性内存存储系统的构建方法
CN111414248A (zh) * 2019-01-04 2020-07-14 阿里巴巴集团控股有限公司 内存管理方法、装置及计算设备
CN111597124A (zh) * 2020-04-21 2020-08-28 重庆大学 持久化内存文件系统数据组织方法、系统及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239225A (zh) * 2014-09-04 2014-12-24 浪潮(北京)电子信息产业有限公司 一种管理异构混合内存的方法及装置
CN111414248A (zh) * 2019-01-04 2020-07-14 阿里巴巴集团控股有限公司 内存管理方法、装置及计算设备
CN110221779A (zh) * 2019-05-29 2019-09-10 清华大学 分布式持久性内存存储系统的构建方法
CN111597124A (zh) * 2020-04-21 2020-08-28 重庆大学 持久化内存文件系统数据组织方法、系统及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ELLIS R.GILES: "SoftWrAP: A Lightweight Framework for transaction support of storage class memory", 《IEEE XPLORE》 *
SHUOHAN CHEN: "UnistorFS: A Union Storage File System Design for Resource sharing between memory and storage on persistent ram based systems", 《ACM TRANSACTION ON STORAGE》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114327270A (zh) * 2021-12-23 2022-04-12 郑州云海信息技术有限公司 一种请求处理方法、装置、设备及可读存储介质
CN114327270B (zh) * 2021-12-23 2023-09-15 郑州云海信息技术有限公司 一种请求处理方法、装置、设备及可读存储介质
CN115167786A (zh) * 2022-09-06 2022-10-11 浪潮电子信息产业股份有限公司 一种数据存储方法、装置、系统、设备和介质
CN115878204A (zh) * 2023-01-20 2023-03-31 北京国科环宇科技股份有限公司 一种操作系统的处理方法、装置、计算机设备和介质

Also Published As

Publication number Publication date
CN113254198B (zh) 2022-08-05

Similar Documents

Publication Publication Date Title
CN113254198B (zh) 融合Linux虚拟内存系统和文件系统的持久性内存统一管理方法
JP6709245B2 (ja) 適応持続性システム、方法、インタフェース
US10552337B2 (en) Memory management and device
US11748256B2 (en) Memory system and method for controlling nonvolatile memory
US8200932B2 (en) Managing memory systems containing components with asymmetric characteristics
TWI689817B (zh) 記憶體系統及控制方法
US8555024B2 (en) Integrating data from symmetric and asymmetric memory
US7206915B2 (en) Virtual space manager for computer having a physical address extension feature
US8370533B2 (en) Executing flash storage access requests
CN110659248B (zh) 基于非易失性内存的用户态文件系统设计方法及系统
JP7490714B2 (ja) メモリシステムおよび制御方法
JP7118827B2 (ja) 情報処理装置、メモリ制御方法およびプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20210813

Assignee: FITOW (TIANJIN) DETECTION TECHNOLOGY CO.,LTD.

Assignor: NANKAI University

Contract record no.: X2024980003100

Denomination of invention: A Unified Management Method for Persistent Memory Integrating Linux Virtual Memory System and File System

Granted publication date: 20220805

License type: Common License

Record date: 20240320

EE01 Entry into force of recordation of patent licensing contract