一种嵌入式设备安全格式化磁盘的系统及方法技术方案

技术编号:9463092 阅读:134 留言:0更新日期:2013-12-19 00:38
本发明专利技术提出了一种嵌入式设备安全格式化磁盘的系统,系统包括判断CPU是否有掉电仍然保存数据能力的寄存器的判断单元、进行内置磁盘划定的处理单元、进行数据值读取的读取单元以及设置数据值的设置单元;判断单元、处理单元、读取单元以及设置单元依次连接。本发明专利技术嵌入式设备安全格式化磁盘的系统及方法,有效的避免嵌入式系统内置磁盘格式化中途掉电。

【技术实现步骤摘要】
【专利摘要】本专利技术提出了一种嵌入式设备安全格式化磁盘的系统,系统包括判断CPU是否有掉电仍然保存数据能力的寄存器的判断单元、进行内置磁盘划定的处理单元、进行数据值读取的读取单元以及设置数据值的设置单元;判断单元、处理单元、读取单元以及设置单元依次连接。本专利技术嵌入式设备安全格式化磁盘的系统及方法,有效的避免嵌入式系统内置磁盘格式化中途掉电。【专利说明】
本专利技术涉及嵌入式设备领域,尤其涉及一种嵌入式设备不怕格式化中途掉电的安全格式化磁盘的系统及方法。
技术介绍
随着嵌入式设备的存储设备生产工艺设备改良,如:19纳米MLC(多阶储存单元)NAND颗粒甚至已经成为了闪存主流;卡片存储容量越来越大,售价越来越便宜,当然考虑到性价比,成本和售价也尽量低廉,在能满足基本的擦除寿命的前提(牺牲了写入次数的使用寿命,或者是写入速度等指标),换回来的是更具性价比的存储介质的产品(卡片)。但一个问题是写入速度的降低。写入速度的性能下降,总容量增大,这样格式化的过程占据的时间会加长。嵌入式设备使用文件系统,格式化的时候一般要求用户不要中断,否则会出现格式化未完成,而导致磁盘不可用。现行通用文件文件系统格式有(FAT12/16/32、exFAT【FAT64】、NTFS、EXT2、EXT3、YAFFIS (YetAnotherFlashFileSystem)、YAFFIS2 等。格式化这些文件系统格式的过程中,如果中途低电关机(掉电)等异常发生,则极为可能导致磁盘格式化未完成。但对于通用文件系统,并非所有的情况加载的时候都能准确判断出来为格式化未完成,进而虽然可以有机会加载使用,但再后续使用中会因为文件系统格式化未完成遗留的数据,导致出现磁盘数据损毁的情况,进而影响用户的使用(如出现多文件存储物理地址重叠,文件数据不完整等)。对于具体文件系统FAT16/32文件系统而言,FAT entry第二项记录FAT 被定义为” EOCmark”,用来作为 “dirty volume flags”,如果FAT16/32 文件系统有数据尚未回写(write-back)到磁盘(存储器),则FATentry 第二项记录 FAT 的值 FAT16 会是 0x7FFF,FAT32 会是 0x07FFFFFF ;如果 FAT16/32文件系统无任何回写数据(如只读,或者写入的数据都已经成功回写到磁盘),则该FATentry 第二项记录 FAT 的值 FAT16 会是 OxFFFF,FAT32 会是 OxOFFFFFFF。微软Windows 系统则利用 FAT16/32 的改 FAT的 “dirty volume flags”用来标注USB Mass storage是否安全移除磁盘(即是否所有的磁盘缓冲区均回写到磁盘);而对于格式化如果未完整,在FAT16/FAT32中并没有其它标记位做标记区分。具体不同文件系统定义各有差异,虽然一些文件系统(NTFS)内设计有操作事务实施的机制,但也存在一些文件系统在其类型的文件系统的规范(Spec)中就设计有此类别的标示位设计和约定。如果试图利用文件系统事务完整的设计避免格式化中途断电后的自动回复,则因为一些文件系统并无事务处理机制而无法实施,且对于支持事务处理的文件系统,也是需要分别对事务完整性和回退部分做实现细节,这些无疑都是工作量。嵌入式系统考虑CPU运算能力,以及实际装载的不是很充裕的内存资源,并考虑磁盘扫描和修复算法的复杂度和耗时,一般并不具备磁盘文件系统错误修复能力。(即便PC上的修复工具,也非常多,而目前也没有说能有100%的修复能力,只是可能一些情况可以修复,但修复之后也可能损失一些文件)。尤其一些嵌入式设备的应用程序或者OS非常依赖内嵌磁盘文件操作的系统,如利用DB数据访问和保存一些数据的应用类的嵌入式设备产品。一旦内置文件系统损毁,就无法使用。而对于使用电池的设备,格式化过程中如果有震动或者电池低迅速电压下降,都有机会让格式化内置磁盘的时候未能完成而对后续使用产生文件损毁的隐患(多文件重叠、索引絮乱等)。
技术实现思路
为了解决
技术介绍
中所存在的技术问题,本专利技术提出了,有效的避免嵌入式系统内置磁盘格式化中途掉电。本专利技术的技术解决方案是:一种嵌入式设备安全格式化磁盘的系统,其特征在于:所述系统包括判断CPU是否有掉电仍然保存数据能力的寄存器的判断单元、进行内置磁盘划定的处理单元、进行数据值读取的读取单元以及设置数据值的设置单元;所述判断单元、处理单元、读取单元以及设置单元依次连接。一种嵌入式设备安全格式化磁盘的系统,其特征在于:所述系统包括判断CPU是否有掉电仍然保存数据能力的寄存器的判断单元、进行内置磁盘划定的处理单元、进行数据值读取的读取单元以及设置数据值的设置单元;所述判断单元、处理单元、读取单元以及设置单元依次连接。一种嵌入式设备安全格式化磁盘的方法,其特征在于:所述方法包括以下步骤:I)判断CPU是否有掉电仍然保存数据能力的寄存器,若否,进行步骤2);2)格式化和加载内置磁盘,在内置磁盘划定一块格式化不会被擦除的区域;3)读取/设置磁碟预留约定位置的数据值,作为格式化进行中否的标记。上述步骤I)中若CPU有掉电仍然保存数据能力的寄存器,则进行以下步骤:4)选定寄存器的座位标记位;5)读取/设置选定的寄存器相关位,作为格式化进行中否的标记。上述加载内置磁盘的具体步骤是:2.1)判断是否格式化内置磁盘;若否,进行步骤2.2);2.2)读取“格式化是否进行中”的标记;2.3)判断是否读取的标记值为I ;若是,进行步骤2.4);2.4)设置格式化进行中标记值为I ;2.5)格式化磁碟并加载;2.6)清除格式化进行中标记值。上述步骤2.1)中若有格式化内置磁盘,则直接进行步骤2.4)。上述步骤2.5)若格式化磁碟过程中中途断电,则程序终止,“格式化是否进行中”的标记保持为I。本专利技术嵌入式设备安全格式化磁盘的系统及方法针对嵌入式设备内置磁盘容量越来越大,并考虑成本(性价比),格式化耗时稍微有些长的使用文件系统的系统,当格式化过程中(已经开始格式化但又未能完成格式化)中间的时段内如果嵌入式设备断电而会导致磁盘文件系统未能格式化完成而后续使用中出现磁盘文件系统数据损毁(文件使用异常)。特别设计一种格式化的防止掉电损毁文件系统的系统,不需要依赖和改变文件系统的内部实现细节(规则),避免修改不同文件系统的实现细节而带来的额外工作量,并能保持原来支持的任何类型的文件系统的功能,巧妙的设计了一种利用格式化不会抹到的标记位,来记录文件系统是否格式化完整。档文件系统格式化中途断电而能下次开机加载内置文件系统的时候自动是被到上次失败的格式化事件并重新自动完成格式化,进而有效的避免嵌入式系统内置磁盘格式化中途掉电,导致一些依靠内置磁盘中需要保存和读取文件系统的应用程序(APP)正常运行,并避免内置磁盘格式化中途断电导致文件系统后续使用中出现资料损毁(内容叠盖)的问题。【专利附图】【附图说明】图1是本专利技术的结构示意图;图2是本专利技术的方法流程图;图3是本专利技术【具体实施方式】流程图;【具体实施方式】参见图1,一种嵌入式设备安全格式化磁盘的系统,其特征在于:所述系统包括判断CPU是否有掉电仍然保存数据能本文档来自技高网
...

【技术保护点】
一种嵌入式设备安全格式化磁盘的系统,其特征在于:所述系统包括判断CPU是否有掉电仍然保存数据能力的寄存器的判断单元、进行内置磁盘划定的处理单元、进行数据值读取的读取单元以及设置数据值的设置单元;所述判断单元、处理单元、读取单元以及设置单元依次连接。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈淮琰钟辉
申请(专利权)人:无敌科技西安有限公司
类型:发明
国别省市:

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

1