数据分区的容量扩充方法、装置、电子设备、存储介质与流程

文档序号:26101493发布日期:2021-07-30 18:12阅读:75来源:国知局
数据分区的容量扩充方法、装置、电子设备、存储介质与流程

本发明涉及电子产品技术领域,尤其涉及一种数据分区的容量扩充方法、装置、电子设备、存储介质。



背景技术:

将系统程序烧写于电子设备时,需将系统程序制作成镜像文件,再使用系统程序烧写装置将该镜像文件烧写到电子设备的存储器件中。为了实现一个镜像文件的软件版本可以对应不同容量大小的存储器件,将镜像文件烧写于电子设备的存储器件时,存储器件的数据(data)分区可用容量都比物理上留给data分区的容量小,在电子设备首次开机(完成镜像文件烧写后,第一次开机)时,才会把存储器件上没有使用的物理空间都分配给data分区,实现data分区的容量扩充。该data分区的容量扩充方式,容易出现data分区无法使用、电子设备无法正常启动的情形,电子设备需要重新走生产流程,降低了生产效率。



技术实现要素:

本发明要解决的技术问题是为了克服现有技术中data分区的容量扩充方式,容易出现data分区无法使用、电子设备无法正常启动的缺陷,提供一种数据分区的容量扩充方法、装置、电子设备、存储介质。

本发明是通过下述技术方案来解决上述技术问题:

第一方面,提供一种数据分区的容量扩充方法,应用于电子设备,所述电子设备包括存储器件,所述存储器件包含数据分区;所述容量扩展方法包括:

获取所述电子设备的系统程序的镜像文件,所述镜像文件包括用于对所述存储器件的数据分区进行容量扩充的扩充程序;

将所述镜像文件烧写至所述存储器件中,并在烧写所述镜像文件的过程中,调用所述扩充程序对所述数据分区进行容量扩充。

可选地,调用所述扩充程序对所述数据分区进行容量扩充,包括:

根据所述镜像文件的配置文件确定所述数据分区的扩充容量,所述配置文件记录有所述镜像文件包含的各个子文件的文件大小;

根据所述扩充容量并调用所述扩充程序对所述数据分区进行容量扩充。

可选地,根据所述镜像文件的配置文件确定所述数据分区的扩充容量,包括:

根据所述各个子文件的文件大小确定将各个子文件烧写至所述存储器件的对应分区的占用容量;

根据所述存储器件的总容量和所述占用容量确定所述扩充容量。

可选地,所述镜像文件包含多个子文件;

将所述镜像文件烧写至所述电子设备中,包括:

根据所述镜像文件的配置文件对所述存储器件进行分区,所述配置文件记录有所述镜像文件包含的各个子文件的文件大小;

将各个子文件烧写至对应的分区中,所述存储器件的各个分区的容量与烧写的子文件的文件大小相关。

第二方面,提供一种数据分区的容量扩充装置,应用于电子设备,所述电子设备包括存储器件,所述存储器件包含数据分区;所述容量扩展装置包括:

获取模块,用于获取所述电子设备的镜像文件,所述镜像文件包括用于对所述存储器件的数据分区进行容量扩充的扩充程序;

烧写模块,用于将所述镜像文件烧写至所述存储器件中,并在烧写所述镜像文件的过程中,调用所述扩充程序对所述数据分区进行容量扩充。

可选地,所述烧写模块包括:

确定单元,用于根据所述镜像文件的配置文件确定所述数据分区的扩充容量,所述配置文件记录有所述镜像文件包含的各个子文件的文件大小;

扩充单元,用于根据所述扩充容量并调用所述扩充程序对所述数据分区进行容量扩充。

可选地,所述确定单元具体用于:

根据所述各个子文件的文件大小确定将各个子文件烧写至所述存储器件的对应分区的占用容量,并根据所述存储器件的总容量和所述分区的占用容量确定所述扩充容量。

可选地,所述镜像文件包含多个子文件;

所述烧写模块包括:

分区单元,用于根据所述镜像文件的配置文件对所述存储器件进行分区,所述配置文件记录有所述镜像文件包含的各个子文件的文件大小;

烧写单元,用于将各个子文件烧写至对应的分区中,所述存储器件的各个分区的容量与烧写的子文件的文件大小相关。

第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的数据分区的容量扩充方法。

第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一项所述的数据分区的容量扩充方法。

本发明的积极进步效果在于:

在烧写电子设备的系统程序的过程中,对存储器件的数据分区进行容量扩充,完成系统程序的烧写后,无需进行数据分区的容量扩充,从而可以尽量避免电子设备首次开机掉电时,电子设备无法正常启动的情形发生。

附图说明

图1为本发明一示例性实施例提供的一种数据分区的容量扩充方法的流程图;

图2为本发明一示例性实施例提供的一种emmc存储器件的存储配置示意图;

图3为本发明一示例性实施例提供的一种数据分区的容量扩充装置的模块示意图;

图4为本发明一示例实施例示出的一种电子设备的结构示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

f2fs(flashfriendlyfilesystem)是一种较先进的文件系统,f2fs文件系统能够提升emmc(embeddedmultimediacard,嵌入式多媒体控制器)、nand(一种计算机闪存设备)等闪存类存储器件的写入速度和读取速度,对于等闪存类存储器件非常友好,目前电子设备常使用f2fs文件系统,实现文件的写入和读取。

相关技术中,使用f2fs文件系统的电子设备,在进行系统程序的烧写时,为了实现一个系统程序的镜像文件的软件版本对应不同容量大小的存储器件,将镜像文件烧写于电子设备的存储器件时,存储器件的数据(data)分区可用容量都比物理上留给data分区的容量小,在电子设备首次开机时,才会把存储器件上没有使用的物理空间都分配给data分区,实现data分区的容量扩充。

然而研究发现,在容量扩充的过程中,若是电子设备掉电,会导致f2fs文件系统损坏,data分区无法使用,电子设备要重新走生产流程,影响电子设备的生产效率。并且f2fs文件系统的损坏会导致电子设备开机后处于黑屏状态,产线上不知道电子设备黑屏的原因,需要花大量时间、精力进行故障排查,会大大影响电子设备的生产效率。

在产线上,一般将电子设备的供电端与电源的夹具连接,电源通过夹具给电子设备供电,夹具松动,会导致电子设备掉电。在容量扩充的过程中,即便重新连接夹具与电子设备的供电端,也即重新给电子设备供电,被损坏的f2fs文件系统也无法恢复,电子设备无法正常开机。

基于上述情况,本发明实施例提供一种数据分区的容量扩充方法,在烧写电子设备的系统程序的过程中,对存储器件的数据分区进行容量扩充,电子设备的首次开机不再进行数据分区的容量扩充,从而解决产线上电子设备无法正常启动的问题。

下面以存储器件为emmc为例,对存储器件的数据分区的容量扩充过程作进一步说明。

图1为本发明一示例性实施例提供的一种数据分区的容量扩充方法的流程图,该方法应用于电子设备,其中,电子设备可以但不限于是手机、平板电脑、车载设备和电子阅读器等采用安卓操作系统或ios操作系统的电子设备,该电子设备包含emmc存储器件。参见图1,该容量扩展方法包括以下步骤:

步骤101、获取电子设备的系统程序的镜像文件。

其中,该镜像文件基于系统程序生成,其包含多个子文件,可以但不限于包括操作系统的内核及在引导过程中使用的文件、f2fs文件等。镜像文件还包含用于对存储器件的数据分区进行容量扩充的扩充程序。

步骤102、将镜像文件烧写至存储器件中,并在烧写镜像文件的过程中,调用扩充程序对数据分区进行容量扩充。

在进行镜像文件烧写时,使用烧写线连接电子设备与计算机,给电子设备上电,将计算机生成的镜像文件所包含的子文件烧写至emmc存储器件中。其中,镜像文件的烧写可以但不限于使用fastboot协议(一种刷机模式协议)或者jtag(jointtestactiongroup,联合测试工作组)工具实现。

在一个实施例中,镜像文件的烧写过程中,根据镜像文件的配置文件对存储器件进行分区,配置文件记录有镜像文件所包含的各个子文件的文件大小,对存储器件进行分区也即使得存储器件的各个分区的容量与烧写至该分区的子文件的文件大小呈正相关,以成功将各个子文件烧写至对应的分区中。其中,配置文件由开发人员根据镜像文件的版本所配置。

图2为本发明一示例性实施例提供的一种emmc存储器件的存储配置示意图,该emmc存储器件包括uboot分区、system分区和data分区。uboot分区、system分区主要是为了支持emmc启动系统而设计的,将uboot分区、system分区部署于emmc存储器件的前端地址;数据分区作为内置存储供用户使用,用户使用时才会写入数据,将数据分区部署于emmc存储器件的末端地址。

需要说明的是,emmc存储器件不限于包括图2示出的3个分区,emmc存储器件还可以包括uboot分区、kernel分区、system分区和data分区4个分区,emmc存储器件所包含的分区的数量还可以是5个、6个甚至更多,本发明实施例对emmc存储器件的分区数量不作特别限定。

在一个实施例中,可以根据emmc存储器件的存储配置信息进行镜像文件的烧写,也即依次对uboot分区、system分区和data分区进行烧写。举例来说,先将对应于uboot分区的子文件烧写入uboot分区中,完成uboot分区的子文件烧写,再将对应于system分区的子文件烧写入system分区中,完成ystem分区的子文件烧写,以此类推,最后将对应于data分区的子文件烧写入data分区中,data分区包含f2fs文件系统。

将镜像文件烧写到emmc存储器件中后,emmc存储器件即具备了与镜像文件相对应的数据结构,即emmc存储器件分为uboot分区、system分区和data分区,uboot分区、system分区位于emmc存储器件的前端地址,数据分区位于emmc存储器件的末端地址,且emmc存储器件的各个分区的容量对应于烧写于其中的子文件的文件大小。

在一个实施例中,将镜像文件烧写至存储器件的过程中,先根据镜像文件的配置文件确定数据分区的扩充容量,再根据扩充容量并执行扩充程序对数据分区进行容量扩充。其中,扩充程序可以但不限于采用resize程序。

在一个实施例中,确定数据分区的扩充容量时,先根据各个子文件的文件大小确定将各个子文件烧写至存储器件的对应分区的占用容量,也即镜像文件烧写至存储器件的总的占用容量,再将存储器件的总容量与占用容量之差确定为扩充容量,也即将镜像文件烧写完之后,存储器件没有使用的物理空间都分配给数据分区。

在一个实施例中,完成镜像文件的烧写以及完成数据分区的容量扩充后,可以生成提示信息,以提示产线完成镜像文件的烧写,可以进入下一生产流程,例如,对电子设备执行开机动作,进行测试。

本发明实施例中,在烧写系统程序的镜像文件的过程中,对存储器件的数据分区进行容量扩充,完成镜像文件的烧写,也就完成了数据分区的容量扩充,电子设备首次开机不再进行数据分区的容量扩充,即便在数据分区的容量扩充过程中电子设备掉电,也不会损坏f2fs文件系统,不会造成数据分区无法使用,也就不会出现因f2fs文件系统损坏导致电子设备处于黑屏状态的情景出现。

与前述数据分区的容量扩充方法实施例相对应,本发明还提供了数据分区的容量扩充装置的实施例。

图3为本发明一示例性实施例提供的一种数据分区的容量扩充装置的模块示意图,该容量扩充装置应用于电子设备,所述电子设备包括存储器件,所述存储器件包含数据分区;所述容量扩展装置包括:

获取模块31,用于获取所述电子设备的镜像文件,所述镜像文件包括用于对所述存储器件的数据分区进行容量扩充的扩充程序;

烧写模块32,用于将所述镜像文件烧写至所述存储器件中,并在烧写所述镜像文件的过程中,调用所述扩充程序对所述数据分区进行容量扩充。

可选地,所述烧写模块包括:

确定单元,用于根据所述镜像文件的配置文件确定所述数据分区的扩充容量,所述配置文件记录有所述镜像文件包含的各个子文件的文件大小;

扩充单元,用于根据所述扩充容量并调用所述扩充程序对所述数据分区进行容量扩充。

可选地,所述确定单元具体用于:

根据所述各个子文件的文件大小确定将各个子文件烧写至所述存储器件的对应分区的占用容量,并根据所述存储器件的总容量和所述分区的占用容量确定所述扩充容量。

可选地,所述镜像文件包含多个子文件;

所述烧写模块包括:

分区单元,用于根据所述镜像文件的配置文件对所述存储器件进行分区,所述配置文件记录有所述镜像文件包含的各个子文件的文件大小;

烧写单元,用于将各个子文件烧写至对应的分区中,所述存储器件的各个分区的容量与烧写的子文件的文件大小相关。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

图4为本发明一示例实施例示出的一种电子设备的结构示意图,示出了适于用来实现本发明实施方式的示例性电子设备40的框图。图4显示的电子设备40仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图4所示,电子设备40可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备40的组件可以包括但不限于:上述至少一个处理器41、上述至少一个存储器42、连接不同系统组件(包括存储器42和处理器41)的总线43。

总线43包括数据总线、地址总线和控制总线。

存储器42可以包括易失性存储器,例如随机存取存储器(ram)421和/或高速缓存存储器422,还可以进一步包括只读存储器(rom)423。

存储器42还可以包括具有一组(至少一个)程序模块424的程序工具425(或实用工具),这样的程序模块424包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器41通过运行存储在存储器42中的计算机程序,从而执行各种功能应用以及数据处理,例如上述任一实施例所提供的方法。

电子设备40也可以与一个或多个外部设备44(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(i/o)接口45进行。并且,模型生成的电子设备40还可以通过网络适配器46与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器46通过总线43与模型生成的电子设备40的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的电子设备40使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所提供的方法。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1