CN116072202A - 一种存储设备的管理方法、系统及存储介质 - Google Patents
一种存储设备的管理方法、系统及存储介质 Download PDFInfo
- Publication number
- CN116072202A CN116072202A CN202211570202.0A CN202211570202A CN116072202A CN 116072202 A CN116072202 A CN 116072202A CN 202211570202 A CN202211570202 A CN 202211570202A CN 116072202 A CN116072202 A CN 116072202A
- Authority
- CN
- China
- Prior art keywords
- partition
- data
- check code
- storage device
- crc
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及智慧安全领域,具体而言,涉及一种存储设备的管理方法、系统及存储介质,该存储设备的管理方法包括:所述存储设备的数据存储包括第一分区和第二分区,其中,第一分区和第二分区至少包含相同能让系统独立运行的数据,第一分区是主使用分区,第二分区是备份分区,通过CRC对第一分区的数据进行校验,得到第一校验码;响应于第一校验码与预设校验码不一致,则通过CRC对第二分区的数据进行校验,得到第二校验码;响应于第二校验码与预设校验码一致,则通过第二分区的数据对第一分区的数据进行数据修复,响应于数据修复成功,则根据第一分区的修复数据启动系统。本发明提供的方法可以减少由于分区异常导致无有效修复机制对系统启动的影响。
Description
技术领域
本申请涉及智慧安全智慧家庭技术领域,具体而言,涉及一种存储介质的管理方法、系统及存储介质。
背景技术
随着人们使用越来越多的电子设备,对计算机存储设备的要求也在随着发展,nand flash存储器是flash存储器的一种,其内部采用非线性宏单元模式,为固态大容量内存的实现提供了廉价有效的解决方案。但由于nand flash的工艺不能保证Memory Array(存储器阵列/数组)在其生命周期中保持性能的可靠,因此,在生产中及使用过程中会产生坏块。而且频繁读写同一区域很有可能会造成nand flash损坏,导致坏块的出现。
目前常见的分区管理为uboot、内核、文件系统、应用、用户5个分区。也没有对分区权限进行管理及备份处理。用户程序运行过程中会频繁对相关分区固定位置进行读写,从而导致分区数据被破坏。更严重的情况会导致nand flash分区出现坏块,出现系统奔溃,设备变砖。而现有技术中针对分区的管理只是简单的进行备份,没有针对分区的具体情况进行针对性的细分处理。
因此,如何更好的保证基于nand flash、emmc的设备的系统的运行可靠性和稳定性,是本领域技术人员需要解决的问题。
有鉴于此特提出本申请。
发明内容
本申请要解决的技术问题在于克服现有技术的不足,提供一种存储设备的管理方法、装置及存储介质,从而更好的保证存储设备系统的运行可靠性和稳定性。
为解决上述技术问题,本发明采用技术方案的基本构思是:根据本发明实施例的第一方面,提供一种存储设备的管理方法,其中,所述存储设备的数据存储包括第一分区和第二分区,所述第一分区和第二分区至少包含相同能让系统独立运行的数据,所述第一分区是主使用分区,所述第二分区是备份分区,其特征在于,包括:通过CRC对所述第一分区的数据进行校验,得到第一校验码;响应于所述第一校验码与预设校验码不一致,则通过CRC对所述第二分区的数据进行校验,得到第二校验码;响应于所述第二校验码与所述预设校验码一致,则通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统。
可选的,所述响应于数据修复成功,则根据所述第一分区的修复数据启动系统,包括:响应于第一分区的数据修复成功,得到修复数据;通过CRC对所述修复数据进行校验,得到第三校验码;响应于所述第三校验码与预设校验码一致,则根据所述第一分区的修复数据启动系统。
可选的,所述通过所述第二分区对所述第一分区进行数据修复,还包括:响应于修复第一分区的数据失败,则根据第二分区的数据启动系统。
可选的,所述通过CRC对所述第二分区的数据进行校验,得到第二校验码,还包括:响应于所述第二校验码与所述预设校验码不一致,则发送错误报告。
可选的,所述存储设备包括至少两个子分区:系统区和用户区,其中,所述系统区至少包括内核数据和文件系统数据,所述用户区包括用户数据;将所述系统区设置为只读;将所述用户区设置为可读写,在用户使用系统的过程中,将产生的用户使用数据对所述第一分区的所述用户区的数据进行写入,并以一定的频率将写入所述第一分区的所述用户区的主要用户使用数据备份至所述第二分区的所述用户区。
可选的,对所述用户区进行分区的步骤,包括:根据读写频率和数据重要性对所述用户区划分不同的分区存储,其中,对所述第一分区的所述用户区的不同的所述分区存储设置不同的备份频率;根据不同的备份频率将所述第一分区的所述用户区的主要分区数据存储备份至所述第二分区的相应位置。
可选的,所述存储设备的管理方法还包括对目标子分区进行升级处理的方法,包括:对升级文件的版本号进行校验,响应于所述版本号与目标文件的版本号不一致,则解压缩所述升级文件至目标路径;通过CRC对所述升级文件的文件头进行校验,获取校验值和设备型号;根据所述校验值和设备型号,判断所述升级文件是否支持目标设备;响应于所述升级文件支持目标设备,则将所述升级文件写入目标子分区的第二分区;在所述第二分区对所述升级文件全部写入后,实现对所述第一分区的数据进行升级,并根据所述第一分区的升级数据启动系统。
根据本发明实施例的第二方面,提供一种如本发明实施例一的一种存储设备的管理系统,包括:第一校验单元,被配置为通过CRC对所述第一分区的数据进行校验,得到第一校验码;第二校验单元,被配置为响应于所述第一校验码与预设校验码不一致,则通过CRC对所述第二分区的数据进行校验,得到第二校验码;启动单元,被配置为响应于所述第二校验码与所述预设校验码一致,则通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统。
可选的,所述启动单元用于响应于数据修复成功,则根据所述第一分区的修复数据启动系统的方法包括:响应于第一分区的数据修复成功,得到修复数据;通过CRC对所述修复数据进行校验,得到第三校验码;响应于所述第三校验码与预设校验码一致,则根据所述第一分区的修复数据启动系统。
可选的,所述启动单元用于通过所述第二分区对所述第一分区进行数据修复,还包括:响应于修复第一分区的数据失败,则根据第二分区的数据启动系统。
可选的,所述第二校验单元用于通过CRC对所述第二分区的数据进行校验,得到第二校验码,还包括:响应于所述第二校验码与所述预设校验码不一致,则发送错误报告。
可选的,所述存储设备的管理系统中的存储设备包括至少两个子分区:系统区和用户区,其中,所述系统区至少包括内核数据和文件系统数据,所述用户区包括用户数据;将所述系统区设置为只读;将所述用户区设置为可读写,在用户使用系统的过程中,将产生的用户使用数据对所述第一分区的所述用户区的数据进行写入,并以一定的频率将写入所述第一分区的所述用户区的主要用户使用数据备份至所述第二分区的所述用户区。
可选的,对所述存储设备的用户区进行分区的步骤,包括:根据读写频率和数据重要性对所述用户区划分不同的分区存储,其中,对所述第一分区的所述用户区的不同的所述分区存储设置不同的备份频率;根据不同的备份频率将所述第一分区的所述用户区的主要分区数据存储备份至所述第二分区的相应位置。
可选的,所述存储设备的管理方系统还包括对目标子分区进行升级处理的系统,包括:解压缩单元,被配置为对升级文件的版本号进行校验,响应于所述版本号与目标文件的版本号不一致,则解压缩所述升级文件至目标路径;获取单元,被配置为通过CRC对所述升级文件的文件头进行校验,获取校验值和设备型号;判断单元,被配置为根据所述校验值和设备型号,判断所述升级文件是否支持目标设备;写入单元,被配置为响应于所述升级文件支持目标设备,则将所述升级文件写入目标子分区的第二分区;启动单元,被配置为在所述第二分区对所述升级文件全部写入后,实现对所述第一分区的数据进行升级,并根据所述第一分区的升级数据启动系统。
根据本申请实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时用于实现本公开第一方面或第一方面任意一种所述实施方式所提供的一种存储设备的管理方法。
根据本申请实施例的第四方面,提供一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行本公开第一方面或第一方面任意一种所述实施方式所提供的一种存储设备的管理方法。
采用上述技术方案后,本申请与现有技术相比具有以下有益效果:通过对所述存储设备的数据存储进行双备份,实现可对异常数据进行修复,保证系统启动,即所述存储设备的数据存储包括第一分区和第二分区,其中,所述第一分区和第二分区至少包含相同能让系统独立运行的数据,所述第一分区是主使用分区,所述第二分区是备份分区,通过CRC对所述第一分区的数据进行校验,得到第一校验码;响应于所述第一校验码与预设校验码不一致,则通过CRC对所述第二分区的数据进行校验,得到第二校验码;响应于所述第二校验码与所述预设校验码一致,则通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统。本发明提供的方法可以在第一分区数据发生异常时,可通过第二分区对异常数据快速进行修复,从而减少由于分区异常导致无有效修复机制对系统启动的影响,提高用户体验感。
下面结合附图对本发明的具体实施方式作进一步详细的描述。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种存储设备的管理方法的流程图;
图2是根据本发明实施例的一种存储设备的升级方法的流程图;
图3是根据本发明实施例的一种用于存储设备的管理系统的框图;
图4是根据本发明实施例的一种电子装置的框图。
需要说明的是,这些附图和文字描述并不旨在以任何方式限制本发明的构思范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明下述实施例将结合附图,对本发明提供的一种存储设备的管理方法进行说明。
实施例一
基于当前对人脸智能门禁、摄像机、网关等产品对系统性能稳定性、可靠性和运行效率的要求,对存储设备进行分区管理变得异常重要。为保证系统的安全性,本实施例提供了一种存储设备管理方法,其中,所述存储设备包括但不限于nand flash和emmc。这里所说的安全性包括两个方面:一是保证分区不被破坏;二是在分区破坏后,可实现快速恢复。
其中,在本实施例中,所述存储设备的数据存储采用双备份方法,即所述存储设备的数据存储包括第一分区和第二分区,所述第一分区和第二分区至少包含相同能让系统独立运行的数据,其中,所述第一分区是主使用分区,所述第二分区是备份分区。
在本实施例中,一方面,根据实际使用情况,可以将第一分区设置为主使用分区,即在每次启动时以第一分区的数据作为启动数据,用于系统启动后的运行;将第二分区设置为备份分区,即作为第一分区的备份数据,用于在第一分区的数据异常时,一方面可以实现以第二分区的数据作为启动数据,用于系统启动后的运行;另一方面可以实现通过第二分区的正常数据对第一分区的异常数据进行修复,其中,所述数据异常包括但不限于一切可以损伤正常数据的方法,如数据被破坏或数据被修改等。第二分区作为备份区的存在只针对第一分区即主使用分区的工作异常时进行启动,正常启动顺序是总是以第一分区的启动作为第一顺序。
另一方面,也可以将第二分区设置为主使用分区,那么相应的第一分区就被设置为备份分区存在,只需要满足有一个主使用分区和一个备份分区的存在,系统每次有固定的顺序进行启动即可,那么也不限于两个分区的设置,只需要保证其中一个分区作为主使用分区存在能正常启动系统即可,其他的分区都可以作为备份区的存在,且在主使用分区出现工作异常的情况下,对其他的备份区进行相应的备份顺序的设置即可。那么为了达到一个冗余和实际运行的平衡,本实施例中分为第一分区和第二分区两个分区,第一分区作为主使用分区,第二分区作为备份分区。
其中,在本实施例中,所述存储设备包括至少两个子分区:系统区和用户区。
其中,所述系统区至少包括内核数据和文件系统数据,用于系统的启动和系统的运行;将所述系统区设置为只读模式,不允许来自用户使用的写入,只能进行读取操作以防止相应的系统数据造成损坏;将所述用户区设置为可读写,在用户使用系统的过程中,将产生的用户使用数据对所述第一分区的所述用户区的数据进行写入,并以一定的频率将写入所述第一分区的所述用户区的主要用户使用数据备份至所述第二分区的所述用户区。
所述用户区包括用户数据;将用户区设置为可读写模式,可以进行读写操作,用户区的数据可以被修改,这样在不影响系统的启动和运行的情况下对用户的使用不造成阻碍,用户可以在使用系统的过程中,将使用的数据写入用户区。
在本实施例中,用户区可以包括不同的存储分区,对所述用户区进行分区的步骤,包括:根据读写频率和数据重要性对所述用户区划分不同的分区存储,其中,对所述第一分区的所述用户区的不同的所述分区存储设置不同的备份频率;根据不同的备份频率将所述第一分区的所述用户区的主要分区数据存储备份至所述第二分区的相应位置。
其中,根据读写频率和数据重要性可以将用户区划分成不同的分区存储,那么本实施例中可以将用户区分为硬件标识、配置、底库数据库(人像、权限底库)、系统日志、应用数据库(事件记录)、记录数据(图片、视频录像)、打印日志。由于nand flash、emmc的硬件特点,高频率的读写就会提高数据发生错误的几率,同时也会提高对应分区的损坏几率,那么通过对不同读写频率和数据重要性的不同对不同的用户使用产生的数据进行分区存储,能尽可能的不影响用户的使用的情况下保证数据的安全和稳定,从而达到保护用户数据安全,提高系统运行的稳定性。
在本实施例中,对于存储设备的子分区的具体分区情况可以根据表1进行配置:
表1
在本实施例中,对于debug,adb,idb,data分区,可根据需要进行大小调整或裁剪,从而减少flash空间的浪费,其中,adb,idb,data根据flash空间大小自动调节的空间比例为1:2:2。
通过对存储设备的子分区进行权限管理,将系统区设置为只读模式,将用户区设置为可读写模式,可以保证在程序运行过程中当用户区数据发生异常时,系统区不被破坏。
通过对可读写的用户区的数据进行细分处理,可以避免非必要的数据异常对整个系统数据的影响,可以降低用户分区中的数据异常或用户分区的风险,且通过设置不同的分区存储的备份频率,可以尽可能的以效率最高的方式保证用户区的数据正常。在本申请实施例中,对于用户区的细分处理方法,包括:根据读写频率和重要性对用户区划分不同的分区存储,并根据读写频率和重要性调整不同的分区存储的备份频率,对于主要分区的数据,应将其在备份分区中进行备份,而对于非主要分区的数据,基于数据变化速度快,可以不对其进行备份,包括但不限于:用户保存图片、音视频数据对data分区,调试日志、打印日志和程序异常生成的coredump文件等调试信息所在的debug分区。
在本实施例中,基于对存储设备的权限管理、细分处理和双备份处理,可以实现对优化系统启动操作和对系统的升级处理。
图1是根据本发明实施例的一种存储设备的管理方法的流程图,如图1所示,包括步骤S101~S105。
在步骤S101中,通过CRC对所述第一分区的数据进行校验,得到第一校验码。
在步骤S102中,响应于所述第一校验码与预设校验码不一致,则通过CRC对所述第二分区的数据进行校验,得到第二校验码。
在步骤S1031中,响应于所述第二校验码与所述预设校验码一致,则通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统。
在步骤S1032中,响应于所述第二校验码与所述预设校验码不一致,则发送错误报告。
在步骤S104中,响应于修复第一分区的数据失败,则根据第二分区的数据启动系统。
其中,在本申请实施例中,通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统的方法包括:
在步骤S301中,响应于第一分区的数据修复成功,得到修复数据。
在步骤S302中,通过CRC对所述修复数据进行校验,得到第三校验码。
在步骤S303中,响应于所述第三校验码与预设校验码一致,则根据所述第一分区的修复数据启动系统。
其中,CRC即循环冗余校验码(Cyclic Redundancy Check)是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。其中,CRC的基本原理是:在K位信息码后再拼接R位的校验码,整个编码长度为N位,因此,这种编码也叫(N,K)码。对于一个给定的(N,K)码,可以证明存在一个最高次幂为N-K=R的多项式G(x)。根据G(x)可以生成K位信息的校验码,而G(x)叫做这个CRC码的生成多项式。校验码的具体生成过程为:假设发送信息用信息多项式C(X)表示,将C(x)左移R位,则可表示成C(x)*x的R次方,这样C(x)的右边就会空出R位,这就是校验码的位置。通过C(x)*X的R次方除以生成多项式G(x)得到的余数就是校验码。
在本实施例中,对于系统分区数据的校验通过CRC校验实现,但也包括其他可以实现对数据进行校验的方式。
如图1所示,对系统数据的修复基于对存储设备进行分区校验,启动对第一分区进行校验,通过CRC对第一分区中的数据进行校验,得到第一校验码,其中,CRC主要是对系统区的数据进行校验。具体的,对第一分区中的内核数据,文件系统和应用程序等进行校验,判断待校验的区域中是否有破坏或者修改,若第一校验码与预设校验码一致,则判断第一分区校验正常,根据第一分区读取的数据启动系统;若第一校验码与预设校验码不一致,则判断第一分区校验不正常,即第一分区中的数据存在损坏数据或修改数据,则通过CRC对第二分区的数据进行校验,得到第二校验码,其中,所述修改数据包括丢失数据、乱码数据等。
若第二校验码与预设校验码不一致,则判断第二分区校验不正常,即第二分区中的数据存在损坏数据或修改数据,发送错误报告提醒用户对数据代码进行修改;若第二校验码与预设校验码一致,则一方面可以通过第二分区的数据对第一分区的数据进行修复,另一方面可以通过第二分区的数据启动系统。
其中,在第二校验码于预设校验码一致的情况下,说明备份分区的数据为正常数据,则对于系统的启动方式可以包括:一是通过第二分区的正常数据对第一分区的异常数据进行修复,得到第一分区的修复数据,并基于该第一分区的修复数据启动系统;二是通过第二分区的正常数据启动系统,但该启动方式存在一定缺陷,当系统启动过程中,第二分区数据发生损坏后,无法进行修复,因此本申请实施例主要是通过第二分区对第一分区数据进行修复,待修复成功后,基于第一分区的数据启动系统。
若修复完成后,通过CRC对第一分区的修复数据进行校验,得到第三校验码,若第三校验码与预设校验码一致,则说明修复成功,根据第一分区的修复数据启动系统;若第三校验码与预设校验码不一致,则说明修复失败,根据第二分区的数据启动系统。
因此,在启动系统前可以通过CRC对系统第一分区的数据进行校验,判断是否存在数据异常影响系统启动的情况,若存在异常数据,可以快速通过第二分区实现对第一分区异常数据的修复,从而启动系统,若经校验第二分区的数据存在异常不能对数据进行修复,则及时发送错误报告,提醒用户对数据进行修改。
在系统正常启动的情况下,用户使用产生的数据会写入用户区进行存储,在以第一分区为主使用区的情况下,根据不同的使用频率将使用数据存储至第一分区,系统根据第一分区的存储方式相应将用户数据存储至第二分区,其中,本申请实施例中,对于系统区的数据会全部进行备份,而对于用户区的数据,基于用户数据的重要性,对于非重要的用户数据,例如data分区、debug分区的数据不做备份处理,而对于重要的用户数据,则需要进行备份处理。
对于重要用户数据的备份方法,包括:根据用户数据写入的读写频率和重要性,对用户数据进行不同频率的备份,即对读写频率高的数据,比如系统日志等数据采用相对比较低的备份频率,而对重要性高的用户使用数据,例如记录数据(智能数据库、应用数据库)等数据,采用比较高频率的备份频率,甚至可以实时备份,即当用户产生这些数据的时候,写入第一分区相应区域的同时,将产生的数据同时备份至第一分区的相应区域。那么,在第一分区的数据损坏的时候,通过第二分区对第一分区进行备份时,除了系统数据进行恢复之外,也对备份的重要性高的数据进行同步的恢复。
通过对系统数据进行双备份,可以实现在数据出现异常的时候实现通过备份数据快速的修复主运行数据。
图2是根据本发明实施例的一种存储设备的升级方法的流程图,如图2所示,包括步骤S201~S205。
在步骤S201中,对升级文件的版本号进行校验,响应于所述版本号与目标文件的版本号不一致,则解压缩所述升级文件至目标路径。
在步骤S202中,通过CRC对所述升级文件的文件头进行校验,获取校验值和设备型号。
在步骤S203中,根据所述校验值和设备型号,判断所述升级文件是否支持目标设备。
在步骤S204中,响应于所述升级文件支持目标设备,则将所述升级文件写入目标子分区的第二分区。
在步骤S205中,在所述第二分区对所述升级文件全部写入后,实现对所述第一分区的数据进行升级,并根据所述第一分区的升级数据启动系统。
在本实施例中,当对系统进行升级操作时,首先需要将获取的升级文件上传至系统,实现系统对升级文件的判断操作,其中,获取升级文件的方法包括两种方式:第一种是通过网络提示获取升级文件;第二种是基于存储设备与USB接口的连接获取升级文件。所述判断操作包括:第一方面对升级文件的版本号进行校验,判断升级文件的版本号是否与目标文件的版本号一致,若一致,则说明此时系统已经处于最新系统,不需要再次进行升级操作;若不一致,则说明此时系统版本号还不是最新系统,因此需要继续执行升级操作,即解压所述升级文件至目标路径;第二方面首先对解压缩后的升级文件的文件头进行解析,得到所述升级文件的解析校验值和解析设备型号,然后通过CRC对所述解压缩后的升级文件进行校验,得到CRC校验值,判断所述解压校验值和所述CRC校验值是否一致,若一致,则确定所述升级文件用于对系统进行升级;第三方面,对升级文件的产品型号进行校验,判断所述升级文件是否支持当前设备,若经判断,所述升级文件支持当前设备,则将内存中保存的临时升级文件写入Flash分区内,并将升级文件写入对应的文件子分区,其中,在对系统升级处理过程中,只是将该升级文件写入存储设备对应分区的第二分区,即备份分区;在完成对第二分区数据的升级操作后,才切换至第一分区,即主运行分区,并通过第二分区实现对第一分区数据的升级操作;在实现对第一分区的升级操作后,重启系统,发送当前系统已为最新系统的提示信息并设置升级标志。
在另一种实施例中,若系统内存不足,不足以实现对存储设备所有分区同时进行升级处理时,则可以单独发送需要升级的分区文件,在完成对第一子分区的升级处理后,实现对第二子分区的升级处理。
本申请提供了一种系统升级处理的方法,可以实现在不影响系统运行的情况下,实现第系统的升级处理,且在系统升级失败的情况下,如升级过程中系统断电或人为阻止系统运行等,均可以实现不对设备的正常使用产生影响,提升用户体验感。
实施例二
图3是根据本发明实施例的一种用于存储设备的管理系统的框图,如图3所示,该系统300包括第一校验单元301,第二校验单元302,启动单元303。
第一校验单元301,被配置为通过CRC对所述第一分区的数据进行校验,得到第一校验码;
第二校验单元302,被配置为响应于所述第一校验码与预设校验码不一致,则通过CRC对所述第二分区的数据进行校验,得到第二校验码;
启动单元303,被配置为响应于所述第二校验码与所述预设校验码一致,则通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统。
可选的,所述启动单元303用于响应于数据修复成功,则根据所述第一分区的修复数据启动系统的方法包括:响应于第一分区的数据修复成功,得到修复数据;通过CRC对所述修复数据进行校验,得到第三校验码;响应于所述第三校验码与预设校验码一致,则根据所述第一分区的修复数据启动系统。
可选的,所述启动单元303用于通过所述第二分区对所述第一分区进行数据修复,还包括:响应于修复第一分区的数据失败,则根据第二分区的数据启动系统。
可选的,所述第二校验单元302用于通过CRC对所述第二分区的数据进行校验,得到第二校验码,还包括:响应于所述第二校验码与所述预设校验码不一致,则发送错误报告。
可选的,所述存储设备的管理系统300还包括分区单元304,存储设备包括至少两个子分区:系统区和用户区,其中,所述系统区至少包括内核数据和文件系统数据,所述用户区包括用户数据;将所述系统区设置为只读;将所述用户区设置为可读写,在用户使用系统的过程中,将产生的用户使用数据对所述第一分区的所述用户区的数据进行写入,并以一定的频率将写入所述第一分区的所述用户区的主要用户使用数据备份至所述第二分区的所述用户区。
可选的,所述分区单元304用于对所述存储设备的用户区进行分区的步骤,包括:根据读写频率和数据重要性对所述用户区划分不同的分区存储,其中,对所述第一分区的所述用户区的不同的所述分区存储设置不同的备份频率;根据不同的备份频率将所述第一分区的所述用户区的主要分区数据存储备份至所述第二分区的相应位置。
可选的,所述存储设备的管理方系统还包括升级单元305,用于对目标子分区进行升级处理,包括:解压缩单元,被配置为对升级文件的版本号进行校验,响应于所述版本号与目标文件的版本号不一致,则解压缩所述升级文件至目标路径;获取单元,被配置为通过CRC对所述升级文件的文件头进行校验,获取校验值和设备型号;判断单元,被配置为根据所述校验值和设备型号,判断所述升级文件是否支持目标设备;写入单元,被配置为响应于所述升级文件支持目标设备,则将所述升级文件写入目标子分区的第二分区;启动单元,被配置为在所述第二分区对所述升级文件全部写入后,实现对所述第一分区的数据进行升级,并根据所述第一分区的升级数据启动系统。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
实施例三
本发明还提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本发明提供的存储设备的管理方法的步骤。
图4是根据本发明实施例的一种电子装置的框图。如图4所示,所述电子设备包括存储器、处理器、摄像头模组,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本发明任一实施方式所述的存储设备的管理方法。
本发明至少一个实施例还提出了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明任一所述的存储设备的管理方法。
本领域技术人员应明白,本发明一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本发明一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
本发明中的“和/或”表示至少具有两者中的其中一个,例如,“A和/或B”包括三种方案:A、B、以及“A和B”。
本发明中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于用于存储设备的管理系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本发明特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的行为或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本发明中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、包括本发明中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本发明中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被用于存储设备的管理系统执行或控制用于存储设备的管理系统的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由用于存储设备的管理系统执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。
本发明中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。所述处理及逻辑流程还可以由专用逻辑电路—例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。
适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。
虽然本发明包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本发明内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
以上所述仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专利的技术人员在不脱离本发明技术方案范围内,当可利用上述提示的技术内容作出些许更动或修饰为等同变化的等效实施例,上述实施例中的实施方案也可以进一步组合或者替换,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明方案的范围内。
Claims (10)
1.一种存储设备的管理方法,其中,所述存储设备的数据存储包括第一分区和第二分区,所述第一分区和第二分区至少包含相同能让系统独立运行的数据,所述第一分区是主使用分区,所述第二分区是备份分区,其特征在于,包括:
通过CRC对所述第一分区的数据进行校验,得到第一校验码;
响应于所述第一校验码与预设校验码不一致,则通过CRC对所述第二分区的数据进行校验,得到第二校验码;
响应于所述第二校验码与所述预设校验码一致,则通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统。
2.根据权利要求1所述的存储设备的管理方法,其特征在于,
所述响应于数据修复成功,则根据所述第一分区的修复数据启动系统,包括:
响应于第一分区的数据修复成功,得到修复数据;
通过CRC对所述修复数据进行校验,得到第三校验码;
响应于所述第三校验码与预设校验码一致,则根据所述第一分区的修复数据启动系统。
3.根据权利要求2所述的存储设备的管理方法,其特征在于,
所述通过所述第二分区对所述第一分区进行数据修复,还包括:
响应于修复第一分区的数据失败,则根据第二分区的数据启动系统。
4.根据权利要求1所述的方法,其特征在于,
所述通过CRC对所述第二分区的数据进行校验,得到第二校验码,还包括:
响应于所述第二校验码与所述预设校验码不一致,则发送错误报告。
5.根据权利要求1-4任一所述的存储设备的管理方法,其特征在于,
所述存储设备包括至少两个子分区:系统区和用户区,其中,所述系统区至少包括内核数据和文件系统数据,所述用户区包括用户数据;
将所述系统区设置为只读;
将所述用户区设置为可读写,在用户使用系统的过程中,将产生的用户使用数据对所述第一分区的所述用户区的数据进行写入,并以一定的频率将写入所述第一分区的所述用户区的主要用户使用数据备份至所述第二分区的所述用户区。
6.根据权利要求5所述的存储设备的管理方法,其特征在于,
对所述用户区进行分区的步骤,包括:
根据读写频率和数据重要性对所述用户区划分不同的分区存储,其中,对所述第一分区的所述用户区的不同的所述分区存储设置不同的备份频率;
根据不同的备份频率将所述第一分区的所述用户区的主要分区数据存储备份至所述第二分区的相应位置。
7.根据权利要求1所述的存储设备的管理方法,其特征在于,
所述存储设备的管理方法还包括对目标子分区进行升级处理的方法,包括:
对升级文件的版本号进行校验,响应于所述版本号与目标文件的版本号不一致,则解压缩所述升级文件至目标路径;
通过CRC对所述升级文件的文件头进行校验,获取校验值和设备型号;
根据所述校验值和设备型号,判断所述升级文件是否支持目标设备;
响应于所述升级文件支持目标设备,则将所述升级文件写入目标子分区的第二分区;
在所述第二分区对所述升级文件全部写入后,实现对所述第一分区的数据进行升级,并根据所述第一分区的升级数据启动系统。
8.一种存储设备的管理系统,其特征在于,包括:
第一校验单元,被配置为通过CRC对所述第一分区的数据进行校验,得到
第一校验码;
第二校验单元,被配置为响应于所述第一校验码与预设校验码不一致,则通过CRC对所述第二分区的数据进行校验,得到第二校验码;
启动单元,被配置为响应于所述第二校验码与所述预设校验码一致,则通过所述第二分区的数据对所述第一分区的数据进行数据修复,响应于数据修复成功,则根据所述第一分区的修复数据启动系统。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行权利要求1至7中任一项所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211570202.0A CN116072202A (zh) | 2022-12-08 | 2022-12-08 | 一种存储设备的管理方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211570202.0A CN116072202A (zh) | 2022-12-08 | 2022-12-08 | 一种存储设备的管理方法、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116072202A true CN116072202A (zh) | 2023-05-05 |
Family
ID=86172467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211570202.0A Pending CN116072202A (zh) | 2022-12-08 | 2022-12-08 | 一种存储设备的管理方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116072202A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117724658A (zh) * | 2023-12-15 | 2024-03-19 | 北京宜通华瑞科技有限公司 | 基于嵌入式Linux系统的数据安全存储方法及系统 |
-
2022
- 2022-12-08 CN CN202211570202.0A patent/CN116072202A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117724658A (zh) * | 2023-12-15 | 2024-03-19 | 北京宜通华瑞科技有限公司 | 基于嵌入式Linux系统的数据安全存储方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11200120B2 (en) | Hybrid memory system with configurable error thresholds and failure analysis capability | |
CN105700901B (zh) | 一种启动方法、装置和计算机系统 | |
US7356744B2 (en) | Method and system for optimizing testing of memory stores | |
CN107918568B (zh) | 一种防止Linux系统重启失败的方法 | |
CN111966540B (zh) | 存储介质的管理方法、装置及可读存储介质 | |
CN111078662A (zh) | 一种区块链数据存储方法与装置 | |
CN102024502A (zh) | 闪存器件测试方法、装置及板卡和网络设备 | |
WO2017220013A1 (zh) | 业务处理方法及装置、存储介质 | |
WO2010139245A1 (zh) | 一种读写存储卡的方法及装置 | |
CN111143132A (zh) | 一种bios恢复方法、装置、设备及可读存储介质 | |
CN116072202A (zh) | 一种存储设备的管理方法、系统及存储介质 | |
CN111552592A (zh) | 一种双备份启动方法及系统 | |
CN110837444B (zh) | 一种存储器故障处理方法及装置 | |
CN108304140B (zh) | 闪存数据管理方法、装置及微控制器 | |
CN113641390B (zh) | 一种系统升级方法、装置、设备及存储介质 | |
US20020010891A1 (en) | Redundant memory access system | |
CN106250193B (zh) | 一种基于nand存储器的系统启动方法及系统 | |
CN110968456B (zh) | 分布式存储系统中故障磁盘的处理方法及装置 | |
CN115878381A (zh) | 基于srm盘的数据恢复方法及装置、存储介质、电子装置 | |
CN115562593A (zh) | 一种异常raid成员盘处理方法、装置及介质 | |
CN111611000B (zh) | 一种高可靠的固件空中升级方法及系统 | |
WO2017012507A1 (zh) | 一种数据恢复方法及装置 | |
CN110795155B (zh) | 系统启动方法及装置、电子设备、存储介质 | |
CN115686951A (zh) | 一种数据库服务器的故障处理方法和装置 | |
JP4239754B2 (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 |