一种嵌入式系统更新方法、装置、电子设备及存储介质制造方法及图纸

技术编号:34860315 阅读:60 留言:0更新日期:2022-09-08 08:03
本申请提供一种嵌入式系统更新方法、装置、电子设备及存储介质,设计计算机领域。嵌入式系统更新方法,包括:在指定区域中存储的预设数据出现更新操作时,将所述预设数据备份至预留存储分区;读取所述指定区域中的预设数据,确定所述指定区域中的预设数据的更新情况;待所述指定区域中的预设数据完成更新操作后重启系统。通过将指定区域中存储的预设数据备份至预留存储分区,在指定区域中存储的预设数据更新过程中,预留存储分区中备份的预设数据始终保持不变,进而使得内核获取的数据始终保持一致,不会出现因内核前后获取的该数据不同,使得文件系统解析错误,进而导致程序无法正常运行的问题。正常运行的问题。正常运行的问题。

【技术实现步骤摘要】
一种嵌入式系统更新方法、装置、电子设备及存储介质


[0001]本申请涉及计算机领域,具体而言,涉及一种嵌入式系统更新方法、装置、电子设备及存储介质。

技术介绍

[0002]嵌入式系统中,大多将系统、可执行程序、配置存储与Flash存储器中,除了存放配置的分区可写外,其他分区大多数只能进行读操作。程序在访问flash存储器中的文件系统时,内核采用page cache(页缓存)去临时存储从flash存储器中读取的数据,当内存不足的情况下,page cache会被内核回收,如果程序再次访问该page cache数据时,内核会重新从flash存储器中再次读取该数据;此时,如果flash存储器中该数据发生更新,则内核读取得到的page cache与之前的page cache数据不同,导致文件系统解析错误,从而导致程序无法正常运行。

技术实现思路

[0003]本申请提供一种嵌入式系统更新方法、装置、电子设备及存储介质,以解决现有技术中由于数据发生更新,导致内核前后获取的该数据不同,使得文件系统解析错误,进而导致程序无法正常运行的问题。
[0004]第一方面,本申请提供一种嵌入式系统更新方法,包括:在指定区域中存储的预设数据出现更新操作时,将所述预设数据备份至预留存储分区;读取所述指定区域中的预设数据,确定所述指定区域中的预设数据的更新情况;待所述指定区域中的预设数据完成更新操作后重启系统。
[0005]本申请实施例中,在指定区域中存储的预设数据出现更新操作时,通过将指定区域中存储的预设数据备份至预留存储分区,在指定区域中存储的预设数据更新过程中,预留存储分区中备份的预设数据始终保持不变,进而使得内核获取的数据始终保持一致,不会出现因内核前后获取的该数据不同,使得文件系统解析错误,进而导致程序无法正常运行的问题。
[0006]结合上述第一方面提供的技术方案,在一些可能的实施方式中,所述当预设数据出现更新操作时,将所述预设数据备份至预留存储分区后,所述方法还包括:在所述指定区域中存储的预设数据更新过程中,接收数据访问请求;若所述数据访问请求为读取所述预留存储分区中预设数据的数据访问请求,读取所述预留存储分区中的预设数据。
[0007]本申请实施例中,在接收到读取预留存储分区中预设数据的数据访问请求时,读取预留存储分区中的预设数据,从而保证前后获取的预设数据始终一致,防止出现文件系统解析错误,保证程序正常运行。
[0008]结合上述第一方面提供的技术方案,在一些可能的实施方式中,所述待所述指定区域中的预设数据完成更新操作后重启系统后,所述方法还包括:删除所述预留存储分区中的预设数据。
[0009]本申请实施例中,将预留存储分区中的预设数据删除,使得在启用更新后的系统时,使用更新后的预设数据,保证更新后的系统正常运行,同时还可以释放更多的存储空间。
[0010]结合上述第一方面提供的技术方案,在一些可能的实施方式中,所述将所述预设数据备份至预留存储分区之前,所述方法还包括:基于所述预设数据,获取所述预留存储分区需要的存储空间大小;基于所述预留存储分区需要的存储空间大小,申请内存空间,其中,申请得到的内存空间为所述预留存储分区。
[0011]本申请实施例中,根据预设数据确定预留存储分区需要的存储空间大小,保证申请得到的内存空间能够存储所有的预设数据,防止出现预留存储空间不足的情况。同时,也能防止出现预留存储空间过大,占用过多内存资源的情况。
[0012]结合上述第一方面提供的技术方案,在一些可能的实施方式中,所述基于所述预留存储分区需要的存储空间大小,申请内存空间,包括:基于所述预留存储分区需要的存储空间大小,多次申请内存空间,直至申请得到的内存空间总和大于等于所述预留存储分区需要的存储空间大小。
[0013]本申请实施例中,由于一次申请的内存空间较大时,可能出现无法申请的问题,因此,可以多次申请内存空间,直至申请得到的内存空间总和大于等于预留存储分区需要的存储空间大小,将多次申请得到的所有内存空间作为预留存储分区,实现较大内存空间的申请。
[0014]结合上述第一方面提供的技术方案,在一些可能的实施方式中,每次申请的内存空间的大小为128K的整数倍。
[0015]本申请实施例中,由于flash数据访问通常按照64K/128K进行,因此,设置每次申请的内存空间的大小为128K的整数倍,有利于后续访问预留存储分区中存储的数据。
[0016]结合上述第一方面提供的技术方案,在一些可能的实施方式中,所述预设数据为只读数据。
[0017]第二方面,本申请提供一种嵌入式系统更新装置,包括备份单元、确定单元、处理单元,备份单元,用于在指定区域中存储的预设数据出现更新操作时,将所述预设数据备份至预留存储分区;确定单元,用于读取所述指定区域中的预设数据,确定所述指定区域中的预设数据的更新情况;处理单元,用于待所述指定区域中的预设数据完成更新操作后重启系统。
[0018]第三方面,本申请提供一种电子设备,包括:存储器和处理器,所述存储器和所述处理器连接;所述存储器,包括指定区域和预留存储分区,所述指定区域用于存储预设数据,所述预留存储分区用于在所述指定区域中存储的预设数据出现更新操作时,备份所述指定区域中存储的预设数据;所述处理器,用于执行如上述第一方面实施例和/或结合上述第一方面实施例的任一种可能的实施方式提供的方法。
[0019]第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被计算机运行时,执行如上述第一方面实施例和/或结合上述第一方面实施例的任一种可能的实施方式提供的方法。
附图说明
[0020]为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0021]图1为本申请实施例示出的一种嵌入式系统升级方法的流程示意图;
[0022]图2为本申请实施例示出的又一种嵌入式系统升级方法的流程示意图;
[0023]图3为本申请实施例示出的一种嵌入式系统升级装置的结构框图;
[0024]图4为本申请实施例示出的一种电子设备的结构框图。
具体实施方式
[0025]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0026]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中诸如“第一”、“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种嵌入式系统更新方法,其特征在于,包括:在指定区域中存储的预设数据出现更新操作时,将所述预设数据备份至预留存储分区;读取所述指定区域中的预设数据,确定所述指定区域中的预设数据的更新情况;待所述指定区域中的预设数据完成更新操作后重启系统。2.根据权利要求1所述的方法,其特征在于,所述在指定区域中存储的预设数据出现更新操作时,将所述预设数据备份至预留存储分区后,所述方法还包括:在所述指定区域中存储的预设数据更新过程中,接收数据访问请求;若所述数据访问请求为读取所述预留存储分区中预设数据的数据访问请求,读取所述预留存储分区中的预设数据。3.根据权利要求1所述的方法,其特征在于,所述待所述指定区域中的预设数据完成更新操作后重启系统后,所述方法还包括:删除所述预留存储分区中的预设数据。4.根据权利要求1所述的方法,其特征在于,所述将所述预设数据备份至预留存储分区之前,所述方法还包括:基于所述预设数据,获取所述预留存储分区需要的存储空间大小;基于所述预留存储分区需要的存储空间大小,申请内存空间,其中,申请得到的内存空间为所述预留存储分区。5.根据权利要求4所述的方法,其特征在于,所述基于所述预留存储分区需要的存储空间大小,申请内存空间,包括:基于所述预...

【专利技术属性】
技术研发人员:阮应达陈浪陈文荣
申请(专利权)人:杭州杰峰科技有限公司
类型:发明
国别省市:

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

1