CN112558878A - 一种基于不同类型存储机制的空间调换方法 - Google Patents

一种基于不同类型存储机制的空间调换方法 Download PDF

Info

Publication number
CN112558878A
CN112558878A CN202011487024.6A CN202011487024A CN112558878A CN 112558878 A CN112558878 A CN 112558878A CN 202011487024 A CN202011487024 A CN 202011487024A CN 112558878 A CN112558878 A CN 112558878A
Authority
CN
China
Prior art keywords
storage area
address storage
address
moving
dynamic mapping
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
CN202011487024.6A
Other languages
English (en)
Other versions
CN112558878B (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.)
Beijing Huahong Integrated Circuit Design Co ltd
Original Assignee
Beijing Huahong Integrated Circuit Design Co ltd
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 Beijing Huahong Integrated Circuit Design Co ltd filed Critical Beijing Huahong Integrated Circuit Design Co ltd
Priority to CN202011487024.6A priority Critical patent/CN112558878B/zh
Publication of CN112558878A publication Critical patent/CN112558878A/zh
Application granted granted Critical
Publication of CN112558878B publication Critical patent/CN112558878B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明涉及一种基于不同类型存储机制的空间调换方法,属于数据存储技术领域,解决了现有技术中存储器的整体寿命依赖动态映射地址存储区的问题。基于不同类型存储机制的空间调换方法包括如下步骤:在存储器中划分动态映射地址存储区和固定地址存储区;基于写入动态映射地址存储区的文件数据所占物理页的数量,更新空间配置计数器的计数值;当计数值达到设定阈值时,调换动态映射地址存储区和固定地址存储区所存储的文件数据。本发明提供的基于不同类型存储机制的空间调换方法,通过当计数值达到设定阈值时调换所述动态映射地址存储区和固定地址存储区所存储的文件数据,能够有效利用固定地址存储区的擦写寿命,并提升系统的整体使用寿命性能。

Description

一种基于不同类型存储机制的空间调换方法
技术领域
本发明涉及数据存储技术领域,尤其涉及一种基于不同类型存储机制的空间调换方法。
背景技术
现有的嵌入式操作系统普遍以Flash物理器件作为存储介质,这种情况下,Flash存储器的擦写次数在很大程度上决定了存储器的使用寿命。但是,在采用现有存储访问机制访问Flash存储器的过程中,存在以下问题:
当Flash存储器采用固定地址存储的方式存储文件数据时,由于此时文件数据的物理存储位置固定,无法满足特定对擦写次数要求较高的应用需求,其存储数据的更新寿命与Flash的极限擦写性能一致,基础文件机制无法提升文件的擦写寿命。而当Flash存储器采用动态映射地址存储的方式存储文件数据时,由于此时使用的是动态的地址映射机制,文件数据的更新过程会在不同的物理页面之间进行切换,从而能够满足超过Flash硬件擦写性能的高要求。但是,这种存储方式对于擦写更新频率较低的文件数据区,其擦写寿命的利用率较低,因此,这种存储方式更适用于频繁擦写更新的文件数据应用。鉴于前述两种存储管理方式的不同特点,实际应用过程中,常将更新频率较低的文件数据存储于固定地址存储区,而将更新频率较高的文件数据存储于动态映射地址存储区(又称滚动文件存储区)。
当存储器中同时支持固定地址存储区和动态映射地址存储区时,由于存储于动态映射地址存储区的文件数据更新频率远远大于存储于固定地址存储区的文件数据,使得固定地址存储区的擦写寿命未被充分利用,存储器的整体寿命依赖动态映射地址存储区的问题。
发明内容
鉴于上述的分析,本发明实施例旨在提供一种基于不同类型存储机制的空间调换方法,用以解决现有存储器的整体寿命依赖动态映射地址存储区的问题。
本发明实施例提供了一种基于不同类型存储机制的空间调换方法,包括如下步骤:
在存储器中划分动态映射地址存储区和固定地址存储区;
基于写入动态映射地址存储区的文件数据所占物理页的数量,更新空间配置计数器的计数值;
当所述计数值达到设定阈值时,调换所述动态映射地址存储区和固定地址存储区所存储的文件数据。
在上述方案的基础上,本发明还做出了如下改进:
基于上述方法的进一步改进,所述调换所述动态映射地址存储区和固定地址存储区所存储的文件数据之后,还包括:
将原动态映射地址存储区配置为固定地址存储区,将原固定地址存储区配置为动态映射地址存储区。
基于上述方法的进一步改进,所述设定阈值取决于所述动态映射地址存储区的擦写寿命。
基于上述方法的进一步改进,所述调换所述动态映射地址存储区和固定地址存储区所存储的文件数据,包括:
基于搬移长度,进行所述动态映射地址存储区的搬移地址对应的物理页中文件数据和所述固定地址存储区的搬移地址对应的物理页中文件数据的一次搬移;
一次搬移完成后,基于更新后的搬移长度、更新后的所述动态映射地址存储区和所述固定地址存储区的搬移地址,进行下一次搬移。
基于上述方法的进一步改进,所述动态映射地址存储区的搬移地址对应的物理页中文件数据和所述固定地址存储区的搬移地址对应的物理页中文件数据的一次搬移,包括:
将所述动态映射地址存储区的搬移地址对应的物理页中的文件数据存入系统临时缓存页;
将所述固定地址存储区的搬移地址对应的物理页中的文件数据存入所述动态映射地址存储区的搬移地址对应的物理页;
将所述系统临时缓存页中的文件数据写入所述固定地址存储区的搬移地址对应的物理页。
基于上述方法的进一步改进,初始搬移长度,基于所述动态映射地址存储区和固定地址存储区中所包含物理页的数量确定;若所述固定地址存储区中所包含物理页的数量大于或等于所述动态映射地址存储区中所包含物理页的数量,将所述动态映射地址存储区的中所包含物理页的数量作为所述初始搬移长度;
一次搬移完成后,将搬移长度减1的结果作为更新后的搬移长度。
基于上述方法的进一步改进,所述动态映射地址存储区的起始搬移地址为所述动态映射地址存储区的首地址;所述固定地址存储区的起始搬移地址为所述固定地址存储区的首地址;
一次搬移完成后,将动态映射地址存储区搬移地址加1的结果作为更新后的动态映射地址存储区的搬移地址;将固定地址存储区搬移地址加1的结果作为更新后的固定地址存储区的搬移地址。
基于上述方法的进一步改进,搬移系统控制数据区中的系统存储页包括SYS_PAGE_01、SYS_PAGE_02、SYS_PAGE_03、SYS_PAGE_04;其中,
SYS_PAGE_01用于存储所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态;所述数据调换状态用于指示当前时刻固定地址存储区和动态映射地址存储区调换物理页的状态;
SYS_PAGE_02用于存储所述系统临时缓存页;
SYS_PAGE_03用于存储控制数据事务标志,所述控制数据事务标志用于指示更新或已备份SYS_PAGE_01;
SYS_PAGE_04用于备份SYS_PAGE_01。
基于上述方法的进一步改进,当所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度或数据调换状态发生变化时,将所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态备份至SYS_PAGE_04,备份完成后,修改所述控制数据事务标志为已备份SYS_PAGE_01。
基于上述方法的进一步改进,修改所述控制数据事务标志为已备份SYS_PAGE_01之后,还包括:将备份至SYS_PAGE_04的动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态存入SYS_PAGE_01中,存入完成后,修改所述控制数据事务标志为更新SYS_PAGE_01。
与现有技术相比,本发明至少可实现如下有益效果之一:
(1)存储区支持两种数据存储区的数据访问机制;
(2)在支持两种数据存储机制存储区的基础上,通过在动态映射地址存储区的擦写寿命接近上限时将其与固定地址存储区的实际存储区域进行调换,从而能够有效利用固定地址存储区的擦写寿命,并提升系统的整体使用寿命性能;
(3)给出了一种调换过程的具体实现方式,并通过设置事务机制,能够实现安全、有效的数据搬移。
(4)通过在动态映射地址存储区的擦写寿命接近上限时将其与固定地址存储区的实际存储区域进行调换,从而能够有效利用固定地址存储区的擦写寿命,并提升系统的整体使用寿命性能。
本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为本发明实施例中提供的基于不同类型存储机制的空间调换方法流程图;
图2为本发明实施例提供的动态映射地址存储区和固定地址存储区所存储的文件数据调换流程图;
图3为本发明实施例提供的一次搬移过程中动态映射地址存储区和固定地址存储区所存储的文件数据调换流程图;
图4为本发明实施例提供的异常终端恢复流程图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
首先,需要说明的是,所述固定地址存储区,用于采用逻辑地址与实际物理地址以固定不变映射的方式存储文件数据;所述动态映射地址存储区,用于采用逻辑地址与实际物理地址动态映射的方式存储文件数据。
本发明的一个具体实施例,公开了一种基于不同类型存储机制的空间调换方法,流程图如图1所示,该方法包括如下步骤:
步骤S1:在存储器中划分动态映射地址存储区和固定地址存储区;
步骤S2:基于写入动态映射地址存储区的文件数据所占物理页的数量,更新空间配置计数器的计数值;
步骤S3:当所述计数值达到设定阈值时,调换所述动态映射地址存储区和固定地址存储区所存储的文件数据。
优选地,上述方法还可以包括步骤S4:调换完成后,将原动态映射地址存储区配置为固定地址存储区,将原固定地址存储区配置为动态映射地址存储区。
优选地,在步骤S1中,可根据文件数据的更新频率划分动态映射地址存储区(D)和固定地址存储区(F1)。其中,动态映射地址存储区由唯一的有效地址映射表、已映射的物理地址页及未在地址映射表中映射的空闲物理页组成。一般地,将更新频率较低的文件数据存储于固定地址存储区,将更新频率较高的文件数据存储于动态映射地址地址区。
优选地,步骤S2中的空间配置计数器,用于存储当前累计已更新写入动态映射地址存储区的文件数据所占物理页的数量,当该数量发生变更时,实时更新空间配置计数器的计数值。
优选地,所述设定阈值取决于所述动态映射地址存储区的擦写寿命。具体地,设定阈值临近所述动态映射地址存储区的擦写寿命。通过采用这种方式设置设定阈值,能够充分利用动态映射地址存储区的擦写寿命,又能有效利用固定地址存储区的擦写寿命,提升系统的整体使用寿命性能。
考虑到空间配置计数器与动态映射地址存储区的物理页紧密关联,在实际应用过程中,可考虑将空间配置计数器存储于动态映射地址存储区的地址映射表中。
本实施例中的地址映射表,主要包含整个映射表的数据校验码、映射表版本、地址映射表标识信息、映射地址表项等关键数据项。其中,数据校验码由映射表版本、地址映射表标识信息、映射地址表项内容全部数据计算得出;数据校验码作为判断地址映射表有效性的依据。映射表版本可根据实际设计需要,定义每次映射表更新后的版本变化规则,本方法根据映射表版本判断并确定地址映射表为最近更新的有效映射表。地址映射表结构如表1所示。
表1 地址映射表结构
Figure BDA0002839614280000071
Figure BDA0002839614280000081
优选地,步骤S3的流程图如图2所示,包括:
步骤S31:基于搬移长度,进行所述动态映射地址存储区的搬移地址对应的物理页中文件数据和所述固定地址存储区的搬移地址对应的物理页中文件数据的一次搬移;
示例性地,可通过以下方式完成一次搬移,流程图如图3所示:
步骤S311:将所述动态映射地址存储区的搬移地址对应的物理页中的文件数据存入系统临时缓存页;
步骤S312:将所述固定地址存储区的搬移地址对应的物理页中的文件数据存入所述动态映射地址存储区的搬移地址对应的物理页;
步骤S313:将所述系统临时缓存页中的文件数据写入所述固定地址存储区的搬移地址对应的物理页。
步骤S32:一次搬移完成后,基于更新后的搬移长度、更新后的所述动态映射地址存储区和所述固定地址存储区的搬移地址,进行下一次搬移。
优选地,在执行上述步骤S3的过程中,可通过以下方式确定初始搬移长度及更新后的搬移长度:
初始搬移长度,基于所述动态映射地址存储区和固定地址存储区中所包含物理页的数量确定;若所述固定地址存储区中所包含物理页的数量大于或等于所述动态映射地址存储区中所包含物理页的数量,将所述动态映射地址存储区的中所包含物理页的数量作为所述初始搬移长度;一次搬移完成后,将搬移长度减1的结果作为更新后的搬移长度。
优选地,在执行上述步骤S3的过程中,可通过以下方式确定动态映射地址存储区的搬移地址、固定地址存储区的搬移地址:
所述动态映射地址存储区的起始搬移地址为所述动态映射地址存储区的首地址;所述固定地址存储区的起始搬移地址为所述固定地址存储区的首地址;一次搬移完成后,将动态映射地址存储区搬移地址加1的结果作为更新后的动态映射地址存储区的搬移地址;将固定地址存储区搬移地址加1的结果作为更新后的固定地址存储区的搬移地址。
在步骤S3中,为完成动态映射地址存储区和固定地址存储区所存储的文件数据的调换,本实施例中还设置了搬移系统控制数据区,用于存储数据调换过程中的相关数据,搬移系统控制数据区的数据结构如表2所示。优选地,为进一步提升上述数据调换的速度,可将搬移系统控制数据区设在所述存储器内。
表2 搬移系统控制数据区的数据结构
Figure BDA0002839614280000091
Figure BDA0002839614280000101
优选地,在执行步骤S3的过程中,当所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度或数据调换状态发生变化时,先将(新的修改变化的)所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态备份至SYS_PAGE_04,备份完成后,修改所述控制数据事务标志为已备份SYS_PAGE_01。然后将备份至SYS_PAGE_04的动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态存入SYS_PAGE_01中,存入完成后,修改所述控制数据事务标志为更新SYS_PAGE_01。通过执行以上操作,能够有效保证搬移过程中的数据安全,使得数据调换的流程更加安全有效。
上述搬移系统控制数据区的数据结构中的SYS_PAGE_01,还可以优选设置控制数据校验值,用于根据SYS_PAGE_01中的其他数据生成校验和;若设置控制数据校验值,则将动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态备份至SYS_PAGE_04的同时,还基于动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态生成控制数据校验值,将生成的控制数据校验值一起存入SYS_PAGE_04。此外,将备份至SYS_PAGE_04的动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态存入SYS_PAGE_01后,还基于存入SYS_PAGE_01的动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态生成另一控制数据校验值,比较该另一控制数据校验值与SYS_PAGE_04中存储的控制数据校验值,若一致,则表明SYS_PAGE_04中的数据未被篡改,SYS_PAGE_01中的数据写入成功;否则,写入不成功;通过设置控制数据校验值,能够提升关键控制数据的写入安全性。
还需要说明的是,如果在上述搬移系统控制数据区的更新过程中发生异常中断,则在系统上电复位后,通过检查控制数据事务标志,根据该标志的状态值启动调换流程恢复,从而保证整个流程完整和数据一致性;优选地,若搬移系统控制数据区的更新过程中发生异常中断,可通过执行以下操作启动调换流程,流程图如图4所示:
若控制数据事务标志为已备份SYS_PAGE_01(0A),则表明SYS_PAGE_01中存储的数据不是最新的有效数据,此时,将备份至SYS_PAGE_04中的数据恢复到SYS_PAGE_01中,并基于SYS_PAGE_01中存储的动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态,继续执行搬移过程;
若控制数据事务标志为已更新SYS_PAGE_01(FF),则表明SYS_PAGE_01中存储的数据是最新的有效数据,此时,基于SYS_PAGE_01中存储的动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态,继续执行搬移过程。
综上,与现有技术相比,本实施例提供的基于不同类型存储机制的空间调换方法,具备以下效果:
(1)存储区支持两种数据存储区的数据访问机制;
(2)在支持两种数据存储机制存储区的基础上,通过在动态映射地址存储区的擦写寿命接近上限时将其与固定地址存储区的实际存储区域进行调换,从而能够有效利用固定地址存储区的擦写寿命,并提升系统的整体使用寿命性能;
(3)给出了一种调换过程的具体实现方式,并通过设置事务机制,能够实现安全、有效的数据搬移。
(4)通过在动态映射地址存储区的擦写寿命接近上限时将其与固定地址存储区的实际存储区域进行调换,从而能够有效利用固定地址存储区的擦写寿命,并提升系统的整体使用寿命性能。
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种基于不同类型存储机制的空间调换方法,其特征在于,包括如下步骤:
在存储器中划分动态映射地址存储区和固定地址存储区;
基于写入动态映射地址存储区的文件数据所占物理页的数量,更新空间配置计数器的计数值;
当所述计数值达到设定阈值时,调换所述动态映射地址存储区和固定地址存储区所存储的文件数据。
2.根据权利要求1所述的基于不同类型存储机制的空间调换方法,其特征在于,所述调换所述动态映射地址存储区和固定地址存储区所存储的文件数据之后,还包括:
将原动态映射地址存储区配置为固定地址存储区,将原固定地址存储区配置为动态映射地址存储区。
3.根据权利要求1所述的基于不同类型存储机制的空间调换方法,其特征在于,所述设定阈值取决于所述动态映射地址存储区的擦写寿命。
4.根据权利要求1-3任一项所述的基于不同类型存储机制的空间调换方法,其特征在于,所述调换所述动态映射地址存储区和固定地址存储区所存储的文件数据,包括:
基于搬移长度,进行所述动态映射地址存储区的搬移地址对应的物理页中文件数据和所述固定地址存储区的搬移地址对应的物理页中文件数据的一次搬移;
一次搬移完成后,基于更新后的搬移长度、更新后的所述动态映射地址存储区和所述固定地址存储区的搬移地址,进行下一次搬移。
5.根据权利要求4所述的基于不同类型存储机制的空间调换方法,其特征在于,所述动态映射地址存储区的搬移地址对应的物理页中文件数据和所述固定地址存储区的搬移地址对应的物理页中文件数据的一次搬移,包括:
将所述动态映射地址存储区的搬移地址对应的物理页中的文件数据存入系统临时缓存页;
将所述固定地址存储区的搬移地址对应的物理页中的文件数据存入所述动态映射地址存储区的搬移地址对应的物理页;
将所述系统临时缓存页中的文件数据写入所述固定地址存储区的搬移地址对应的物理页。
6.根据权利要求4或5所述的基于不同类型存储机制的空间调换方法,其特征在于,初始搬移长度,基于所述动态映射地址存储区和固定地址存储区中所包含物理页的数量确定;若所述固定地址存储区中所包含物理页的数量大于或等于所述动态映射地址存储区中所包含物理页的数量,将所述动态映射地址存储区的中所包含物理页的数量作为所述初始搬移长度;
一次搬移完成后,将搬移长度减1的结果作为更新后的搬移长度。
7.根据权利要求4或5所述的基于不同类型存储机制的空间调换方法,其特征在于,
所述动态映射地址存储区的起始搬移地址为所述动态映射地址存储区的首地址;所述固定地址存储区的起始搬移地址为所述固定地址存储区的首地址;
一次搬移完成后,将动态映射地址存储区搬移地址加1的结果作为更新后的动态映射地址存储区的搬移地址;将固定地址存储区搬移地址加1的结果作为更新后的固定地址存储区的搬移地址。
8.根据权利要求4所述的基于不同类型存储机制的空间调换方法,其特征在于,
搬移系统控制数据区中的系统存储页包括SYS_PAGE_01、SYS_PAGE_02、SYS_PAGE_03、SYS_PAGE_04;其中,
SYS_PAGE_01用于存储所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态;所述数据调换状态用于指示当前时刻固定地址存储区和动态映射地址存储区调换物理页的状态;
SYS_PAGE_02用于存储所述系统临时缓存页;
SYS_PAGE_03用于存储控制数据事务标志,所述控制数据事务标志用于指示更新或已备份SYS_PAGE_01;
SYS_PAGE_04用于备份SYS_PAGE_01。
9.根据权利要求8所述的基于不同类型存储机制的空间调换方法,其特征在于,当所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度或数据调换状态发生变化时,将所述动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态备份至SYS_PAGE_04,备份完成后,修改所述控制数据事务标志为已备份SYS_PAGE_01。
10.根据权利要求9所述的基于不同类型存储机制的空间调换方法,其特征在于,修改所述控制数据事务标志为已备份SYS_PAGE_01之后,还包括:
将备份至SYS_PAGE_04的动态映射地址存储区的搬移地址、固定地址存储区的搬移地址、搬移长度和数据调换状态存入SYS_PAGE_01中,存入完成后,修改所述控制数据事务标志为更新SYS_PAGE_01。
CN202011487024.6A 2020-12-16 2020-12-16 一种基于不同类型存储机制的空间调换方法 Active CN112558878B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011487024.6A CN112558878B (zh) 2020-12-16 2020-12-16 一种基于不同类型存储机制的空间调换方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011487024.6A CN112558878B (zh) 2020-12-16 2020-12-16 一种基于不同类型存储机制的空间调换方法

Publications (2)

Publication Number Publication Date
CN112558878A true CN112558878A (zh) 2021-03-26
CN112558878B CN112558878B (zh) 2023-07-04

Family

ID=75064088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011487024.6A Active CN112558878B (zh) 2020-12-16 2020-12-16 一种基于不同类型存储机制的空间调换方法

Country Status (1)

Country Link
CN (1) CN112558878B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1720590A (zh) * 2002-10-28 2006-01-11 桑迪士克股份有限公司 非易失性存储系统中的自动磨损平衡
US20080091871A1 (en) * 2006-10-12 2008-04-17 Alan David Bennett Non-volatile memory with worst-case control data management
US20120317342A1 (en) * 2011-06-08 2012-12-13 In-Hwan Choi Wear leveling method for non-volatile memory
CN103365786A (zh) * 2012-04-01 2013-10-23 国民技术股份有限公司 数据存储方法、装置和系统
WO2015145667A1 (ja) * 2014-03-27 2015-10-01 株式会社日立製作所 ストレージシステム
CN110543434A (zh) * 2019-09-05 2019-12-06 北京兆易创新科技股份有限公司 Nand快闪器件、存储表管理方法、设备和存储介质
CN110673789A (zh) * 2019-09-05 2020-01-10 苏州浪潮智能科技有限公司 固态硬盘的元数据存储管理方法、装置、设备及存储介质
US20200042460A1 (en) * 2018-07-31 2020-02-06 SK Hynix Inc. Apparatus and method for managing meta data for engagement of plural memory system to store data

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1720590A (zh) * 2002-10-28 2006-01-11 桑迪士克股份有限公司 非易失性存储系统中的自动磨损平衡
US20080091871A1 (en) * 2006-10-12 2008-04-17 Alan David Bennett Non-volatile memory with worst-case control data management
US20120317342A1 (en) * 2011-06-08 2012-12-13 In-Hwan Choi Wear leveling method for non-volatile memory
CN103365786A (zh) * 2012-04-01 2013-10-23 国民技术股份有限公司 数据存储方法、装置和系统
WO2015145667A1 (ja) * 2014-03-27 2015-10-01 株式会社日立製作所 ストレージシステム
US20200042460A1 (en) * 2018-07-31 2020-02-06 SK Hynix Inc. Apparatus and method for managing meta data for engagement of plural memory system to store data
CN110543434A (zh) * 2019-09-05 2019-12-06 北京兆易创新科技股份有限公司 Nand快闪器件、存储表管理方法、设备和存储介质
CN110673789A (zh) * 2019-09-05 2020-01-10 苏州浪潮智能科技有限公司 固态硬盘的元数据存储管理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112558878B (zh) 2023-07-04

Similar Documents

Publication Publication Date Title
CN103577121B (zh) 一种基于Nand Flash的高可靠线性文件存取方法
US9817588B2 (en) Memory device and operating method of same
US20200081832A1 (en) Mapping table updating method
KR100843543B1 (ko) 플래시 메모리 장치를 포함하는 시스템 및 그것의 데이터복구 방법
CN109643275B (zh) 存储级存储器的磨损均衡设备和方法
CN102667736B (zh) 存储器管理装置及存储器管理方法
CN101515276B (zh) 一种文件数据写操作的方法、文件数据恢复方法及系统
CN103092766B (zh) 一种用于nand flash的均衡损耗实现方法
CN102135942B (zh) 一种存储设备中实现损耗均衡的方法及存储设备
US20090100290A1 (en) Memory controller, nonvolatile memory device, nonvolatile memory system, and data writing method
CN101556555B (zh) 用于闪存的区块管理方法、其控制器与储存系统
JP2005242897A (ja) フラッシュディスク装置
CN101625897B (zh) 用于快闪存储器的数据写入方法、储存系统与控制器
CN101963891A (zh) 数据存储处理方法与装置、固态硬盘系统与数据处理系统
CN105005535A (zh) 一种分布式闪存事务处理方法
CN103996412A (zh) 一种用于智能卡非易失性存储器的掉电保护方法
CN112035294B (zh) 安全日志文件系统及其实现方法和介质
CN100454302C (zh) 一种文件管理系统及管理方法
CN107329850B (zh) 一种满足海量读写次数操作的存储器及数据存储方法
CN112347001B (zh) 闪存垃圾回收的校验方法、装置及电子设备
CN111580757B (zh) 数据写入方法、系统和固态硬盘
CN111124294B (zh) 一种扇区映射信息的管理方法及装置、存储介质和设备
US11218164B2 (en) Data storage device and non-volatile memory control method
CN112612418A (zh) 一种用于大容量NandFlash坏块管理的方法及系统
CN105335220A (zh) 一种存储设备的事务恢复方法,及装置

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