一种移动终端的数据存储方法技术

技术编号:3645968 阅读:262 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种移动终端的数据存储方法,包括:步骤一,从FLASH划分出N个BLOCK用作虚拟NvRam,进行虚拟BLOCK到物理BLOCK的映射,并对虚拟NvRam进行存储空间配置和初始化,N为大于等于2的自然数;步骤二,由虚拟NvRam根据接收操作指令的类型执行相应操作;当类型为读条目时,则根据条目分配的初始位置找到读条目的位置,进行读条目操作;当类型为写条目时,则根据条目分配的初始位置找到写条目的位置,进行写条目操作;当类型为BLOCK整理时,则检测虚拟BLOCK的预留条目并当该虚拟BLOCK的预留条目少于一设定的阀值时,进行BLOCK整理操作。采用本发明专利技术提高了数据存储效率和存储稳定性。

【技术实现步骤摘要】

本专利技术涉及数据存储技术,特别是涉及一种在移动终端中使用FLASH存 储器实现NvRam(Non Volatile RAM,非易失性存储器)非易失的数据存储方法。
技术介绍
目前,移动通讯终端(手机)的使用已经非常普及,并且对终端(手机)的存 储要求也越来越高,在终端(手机)中的非易失性存储设备中不仅存放着终端运 行的软件,还必须存放手机相关配置数据、用户资源等重要信息。在移动终端 的研制过程中,为了节约成本、简化设计,大多使用FLASH存储器来存放相 关数据。 一种方法是采用文件系统,这个方法的优点是使用简单,但是文件系 统的稳定性难以保证。因此,需要提出一种在FLASH上实现NvRam的数据 存储方法。在现有的相关专利,如专利(专利号为US2006026211,国际主分类为 G06F12/00)《Systems, methods, computer readable medium and apparatus for memory management using NvRam》中,这个专利提供在计算机系统中提供数 据存储的完整性和效率的方法。它在系统中采用两种存储介质FLASH和 NvRam,利用NvRam作为Cache(高速缓冲存储器)的功能,缓存最近的数据, 避免FLASH频繁被擦写的问题,提高了效率和FLASH的使用寿命。这种方 法虽然也是存储的方法,但实现方式与本专利技术完全不一样,本专利技术是用一种存 储介质FLASH实现NvRam和FLASH的功能。
技术实现思路
本专利技术所要解决的技术问题在于提供,用于 提高数据存储效率和存储稳定性。为了实现上述目的,本专利技术提供了,其特征在于,包括步骤--,从所述移动终端的FLASH划分出N个BLOCK用作虚拟非易失 性存储器,进行虚拟BLOCK到物理BLOCK的映射,并对虚拟非易失性存储 器进行存储空间配置和初始化,N为大于等于2的自然数;步骤二,由所述虚拟非易失性存储器根据接收的操作指令的类型执行相应 的操作;当所述操作指令的类型为读条目时,则根据条目分配的初始位置找到读条 目的位置,进行读条目操作;当所述操作指令的类型为写条目时,则根据条目分配的初始位置找到写条 目的位置,进行写条目操作;当所述操作指令的类型为BLOCK整理时,则检测虚拟BLOCK的预留条 目并当该虚拟BLOCK的预留条目少于一设定的阀值时,对该虚拟BLOCK进 行BLOCK整理操作。所述的移动终端的数据存储方法,其中,所述所述BLOCK又分为数据 BLOCK、备份BLOCK,所述数据BLOCK用于存储数据,所述备份BLOCK用于进行磁盘整理时备份数据。所述的移动终端的数据存储方法,其中,所述数据BLOCK为N-1,所述 备份BLOCK为一个。所述的移动终端的数据存储方法,其中,所述每个物理BLOCK中的信息 包括与该物理BLOCK对应的虚拟BLOCK的编号、是否可使用的表示以及 与该物理BLOCK对应的虚拟BLOCK的可用条目和预留的条目数量。所述的移动终端的数据存储方法,其中,所述每个虚拟BLOCK中设有一 用于标记对应虚拟BLOCK的信息和状态的BLOCK Info参数。所述的移动终端的数据存储方法,其中,所述每个条目中设有一用于存储 对应条目的信息的信息头。所述的移动终端的数据存储方法,其中,所述读条目操作的步骤具体为根据该条目分配的初始位置确定该条目所在的虚拟BLOCK,由该条目所 在的初始位置获得该条目所在的虚拟BLOCK的状态信息以及该条目的状态 和标志信息,再根据所述信息寻找到最终读条目的位置,进行读操作。所述的移动终端的数据存储方法,其中,所述写条目操作的歩骤具体为根据该条目分配的初始位置确定该条目所在的虚拟BLOCK,由该条目所 在的初始位置获得该条目所在的虚拟BLOCK的状态信息以及该条目的状态 和标志信息,再根据所述信息链接到最终写条目的位置,进行写操作。所述的移动终端的数据存储方法,其中,所述步骤二中,还包括一由所述 虚拟非易失性存储器判断是否有操作指令到来的步骤。所述的移动终端的数据存储方法,其中,所述步骤二中,还包括一由所述 虚拟非易失性存储器对操作指令的类型进行判断的步骤。采用本专利技术方法提高了数据存储效率和存储安全性,具体在于1) 采用条目预留的机制,提高访问特别是改写一条记录时的效率;2) 对数据采用半静态的管理,增强数据管理的透明度和稳定性。 以下结合附图和具体实施例对本专利技术进行详细描述,但不作为对本专利技术的限定。附图说明图1为本专利技术虚拟NvRam的总体流程示意图2为本专利技术读一条条目的流程示意图3为本专利技术写一条条目的流程示意图4为本专利技术整理FLASH的BLOCK空间的流程示意图。具体实施例方式如图1所示,为对虚拟NvRam操作的总体流程示意图。该虚拟NvRam 的总体流程,包括虚拟NvRam的管理、读写条目/记录和BLOCK整理操作。 具体包括如下步骤步骤IOI,首先系统上电之后要对虚拟NvRam进行初始化和配置,即对 存储空间的划分和管理以及相关信息的配置。具体地,根据产品的需要将 FLASH划分出N个BLOCK作为NvRam使用,进行虚拟/逻辑BLOCK到物 理BLOCK的映射,N值大于等于2。对虚拟NvRam进行存储空间配置和初 始化,虚拟-个NvRam的设备。本专利技术将存储空间分三级管理。第一级管理,是虚拟NvRam对物理的FLASH的BLOCK的映射。BLOCK 是FLASH的最小操作单位,也就是擦除时必须整块擦除。所以分配给虚拟NvRam的空间采用整个BLOCK空间,即采用N个BLOCK给虚拟NvRam使 用,其中N-1个BLOCK作为存储数据所用,该N-l个BLOCK又称为数据 BLOCK, —个BLOCK作为磁盘整理时备份所用,该BLOCK又称为备份 BLOCK或BAK BLOCK,这样逻辑上的N-l个数据BLOCK和一个BAK BLOCK与N个物理的BLOCK有一个动态的映射关系。对BLOCK的物理信 息、存储信息以及当前的状态进行管理。在每个物理BLOCK中包括对应的逻 辑BLOCK的编号LBN、是否可使用的标识IUF(Is Used Flag)、该BLOCK的 可用条目和预留的条目数量。另外对于每个条目(例如第几条短消息,第几条 电话本)的初始位置都映射到逻辑BLOCK的固定位置。其中,IUF用于表示当前BLOCK是否可用,如果正在进行磁盘整理时, 则BLOCK就无法使用;逻辑BLOCK的固定位置指初始化时已经分配好了该 BLOCK的固定位置。第二级管理,是BLOCK管理,在每个BLOCK都有一个BLOCK Info来 标记该BLOCK的信息和状态。BLOCK Info中包含下面状态和信息BLOCK IS—USED(该BLOCK是否可用,当磁盘清理结束后会置此位),BLOCK CLEANING(表示BLOCK正在清理中),ITEM—SIZE(条H的最大尺寸), ITEM—NUM(在此BLOCK中最多可存放的条目数),RESEVED ITEM—NUM(预 留共享的条目数),the RECORD IS—USED(初始的每条记录的使用情况),the reserved BLOCK IS—USED(预留的每条记录的使用情况)。第三级管理本文档来自技高网...

【技术保护点】
一种移动终端的数据存储方法,其特征在于,包括:步骤一,从所述移动终端的FLASH划分出N个BLOCK用作虚拟非易失性存储器,进行虚拟BLOCK到物理BLOCK的映射,并对虚拟非易失性存储器进行存储空间配置和初始化,N为大于等于2的自然数;步骤二,由所述虚拟非易失性存储器根据接收的操作指令的类型执行相应的操作;当所述操作指令的类型为读条目时,则根据条目分配的初始位置找到读条目的位置,进行读条目操作;当所述操作指令的类型为写条目时,则根据条目分配的初始位置找到写条目的位置,进行写条目操作;当所述操作指令的类型为BLOCK整理时,则检测虚拟BLOCK的预留条目并当该虚拟BLOCK的预留条目少于一设定的阀值时,对该虚拟BLOCK进行BLOCK整理操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:苏绣江叶川郑小红
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1