一种机顶盒数据的备份及还原方法技术

技术编号:11625059 阅读:324 留言:0更新日期:2015-06-18 03:53
本发明专利技术提供一种机顶盒数据的备份及还原方法,在闪存flash中多开一个与需要备份数据所需最大分区同等大小的分区,数据的备份方法为:当需要备份的数据写入时,在这两个分区中分别交替存储,且每次将数据写入其中一个分区的同时,将该写入分区的最后一个字节的标志位设置为另一分区最后一个字节的标志位加1;数据的还原方法为:通过判断所述两个分区中的最后一个字节的标志位进行数据还原。本发明专利技术将两个分区的标志位及标志位的递增规则运用于数据备份的处理过程,并在数据还原时,仅需通过判断标志位的值即可得到上一次保存的数据,避免了数据的大量丢失,该方法简单有效、读写数据速度快。

【技术实现步骤摘要】
【专利说明】
本专利技术涉及。【
技术介绍
】在现阶段,机顶盒等一些终端设备存储介质是闪存flash且其主芯片不支持Iinux或unix或android等操作系统,所以现有机顶盒就没有文件系统,也就不能通过文件名来进行增删改查等操作,因此,在机顶盒中存储数据都是用的二进制的bin数据直接存储在闪存flash中,首先先在闪存flash中分配好每个块block给哪些数据用来存储,然后再通过这个block地址进行数据的增删改查等操作。对于一些常变的数据或者是一些重要的敏感的数据的存储,就要考虑可能出现数据丢失的情况,特别是在当数据正在写入闪存flash,突然断电的情况下。因此,对于需要备份的数据就必须在写入数据的时候进行备份,在数据丢失的时候能够实现数据还原。关于在闪存flash中数据存储备份的方法就是数据块存储交替进行,其具体实现方式有多种,但都存在算法复杂,数据读写操作慢等问题。【
技术实现思路
】本专利技术要解决的技术问题,在于提供,其通过简单有效的方法避免数据的大量丢失,特别是一些重要的敏感数据,且运行速度快,读写数据速度快,简单明了,易于实现。本专利技术是这样实现的:,在闪存flash中多开一个与需要备份数据所需最大分区同等大小的分区,数据的备份方法为:当需要备份的数据写入时,在这两个分区中分别交替存储,且每次将数据写入其中一个分区的同时,将该写入分区的最后一个字节的标志位设置为另一分区最后一个字节的标志位加1,标志位的值从0X01到OXFE递增循环,超过OXFE时,从0X01重新开始递增;数据的还原方法为:通过判断所述两个分区中的最后一个字节的标志位进行数据还原。进一步地,所述数据的备份方法具体为:步骤10、将所述两个分区分别标记为A分区和B分区,且将A分区和B分区对应的最后一个字节的标志位分别标记为TAGA和TAGB,当标志位的值为0X00或0XFF,则对应的分区数据是无效的,当标志位的值属于0X01到OXFE范围内,则对应的分区数据是有效的;步骤11、读取TAGA和TAGB,然后判断标志位的值:若TAGA和TAGB的值表明A分区和B分区的数据均为无效时,则表明是出厂第一次使用,将数据写入A分区,且将TAGA的值设为0X01 ;若TAGA的值表明A分区的数据为无效,TAGB的值表明B分区的数据为有效时,将数据写入A分区,且将TAGA的值设置为TAGB+1,若TAGB+1的值超过0XFE,则设置TAGA的值为0X01,重新开始递增; 若TAGA的值表明A分区的数据为有效,TAGB的值表明B分区的数据为无效时,将数据写入B分区,且将TAGB的值设置为TAGA+1,若TAGA+1的值超过OXFE,则设置TAGB的值为0X01,重新开始递增;若TAGA和TAGB对应的值是0X01和OXFE的组合或OXFE和0X01的组合时,将数据写入标志位为OXFE对应的分区,且将该分区的标志位的值设为0X02 ;若TAGA和TAGB的值均不属于上述情况,则:若TAGA大于TAGB,将数据写入B分区,并将TAGB的值设置为TAGA+1,若TAGA小于TAGB,将数据写入A分区,并将TAGA的值设置为 TAGB+1 ;若TAGA和TAGB的值相等,将数据写入A分区,且将TAGA的值设置为TAGB+1,若TAGB+1的值超过0XFE,则设置TAGA的值为0X01,重新开始递增。进一步地,所述数据的还原方法具体为:读取TAGA和TAGB的值,然后做如下判断:若TAGA和TAGB的值表明A分区和B分区的数据同时是无效的,则表明是出厂第一次使用,将读出的数据置为O ;若TAGA的值表明A分区的数据为无效,TAGB的值表明B分区的数据为有效时,读取B分区的数据进行还原;若TAGA的值表明A分区的数据为有效,TAGB的值表明B分区的数据为无效时,读取A分区的数据进行还原;若TAGA和TAGB对应的值是0X01和OXFE的组合或OXFE和0X01的组合时,则读取标志位的值为0X01对应的分区内的数据进行还原;若TAGA的值大于TAGB的值,则读取A分区的数据进行还原,否则读取B分区的数据进行还原;若TAGA和TAGB的值相等,这是异常的情况,将读出的数据置位O。本专利技术具有如下优点:本专利技术将两个分区的标志位及标志位的递增规则运用于数据备份的处理过程,并在需要数据还原时,仅需通过判断标志位的值即可得到上一次保存的数据,避免了数据的大量丢失。该方法简单有效、运行速度快,读写数据速度快,易于实现。【【附图说明】】图1为本专利技术数据备份方法流程图。图2为本专利技术数据还原方法流程图。【【具体实施方式】】下面请参照图1和图2,结合本专利技术一较佳实施例对本专利技术作进一步的说明。,在闪存flash中多开一个与需要备份数据所需最大分区同等大小的分区,数据的备份方法为:当需要备份的数据写入时,在这两个分区中分别交替存储,且每次将数据写入其中一个分区的同时,将该写入分区的最后一个字节的标志位设置为另一分区最后一个字节的标志位加1,标志位的值从0X01到OXFE递增循环,超过OXFE时,从0X01重新开始递增;数据的还原方法为:通过判断所述两个分区中的最后一个字节的标志位进行数据还原。由于机顶盒闪存flash容量有限,一般要对要存储的各类数据进行估算,然后合理的分配大小给这些数据。所述需要备份数据所需最大分区的大小也是根据上述原理得到的,比如分配给机顶盒节目库存储的最大空间大小为IM字节,然后再多开一个IM字节来备份这个节目库数据,这个IM字节是人为设定的一个值。所述数据的备份方法具体为:步骤10、将所述两个分区分别标记为A分区和B分区,且将A分区和B分区对应的最后一个字节的标志位分别标记为TAGA和TAGB,当标志位的值为0X00或0XFF,则对应的分区数据是无效的,当标志位的值属于0X01到OXFE范围内,则对应的分区数据是有效的;步骤11、读取TAGA和TAGB,然后判断标志位的值:若TAGA和TAGB的值表明A分区和B分区的数据均为无效时,则表明是出厂第一次使用,将数据写入A分区,且将TAGA的值设为0X01 ;若TAGA的值表明A分区的数据为无效,TAGB的值表明B分区的数据为有效时,将数据写入A分区,且将TAGA的值设置为TAGB+1,若TAGB+1的值超过0XFE,则设置TAGA的值为0X01,重新开始递增;若TAGA的值表明A分区当前第1页1 2 本文档来自技高网...

【技术保护点】
一种机顶盒数据的备份及还原方法,在闪存flash中多开一个与需要备份数据所需最大分区同等大小的分区,其特征在于,数据的备份方法为:当需要备份的数据写入时,在这两个分区中分别交替存储,且每次将数据写入其中一个分区的同时,将该写入分区的最后一个字节的标志位设置为另一分区最后一个字节的标志位加1,标志位的值从0X01到0XFE递增循环,超过0XFE时,从0X01重新开始递增;数据的还原方法为:通过判断所述两个分区中的最后一个字节的标志位进行数据还原。

【技术特征摘要】

【专利技术属性】
技术研发人员:李必龙
申请(专利权)人:福建新大陆通信科技股份有限公司
类型:发明
国别省市:福建;35

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

1