System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种操作系统升级方法及电子设备技术方案_技高网

一种操作系统升级方法及电子设备技术方案

技术编号:40676206 阅读:5 留言:0更新日期:2024-03-18 19:14
本申请提供一种操作系统升级方法及电子设备。方法包括:获取第一分区表;获取第二分区表;基于第一分区表,确定电子设备的内存中的动态分区中的多个第一子分区的起始物理地址;基于第二分区表,确定动态分区中的多个第二子分区的起始物理地址;确定多个第一子分区中的第一目标子分区;将目标区域中的子分区搬移至用户数据分区,将目标区域中的子分区覆盖写入动态分区中的目标偏移地址,将动态分区的第一分区表修改为第二分区表。这样,电子设备可以对操作系统进行远程升级,实现演示机制式到商用机制式的更改,并在更改制式过程中,对分区进行按需搬移,提高分区搬移的可靠性和通用性。

【技术实现步骤摘要】

本申请涉及终端设备领域,具体涉及一种操作系统升级方法及电子设备


技术介绍

1、操作系统(operating system)是一种控制和管理电子设备的硬件和软件资源的软件系统,电子设备需要安装操作系统才可以被用户使用。示例的,电子设备为手机时,手机上需要安装手机对应的操作系统(例如:ios操作系统,安卓操作系统)才可以被用户使用。

2、电子设备的操作系统需要配置对应的制式(vendor_country,vc)。操作系统在不同制式下的系统分区存在差异。例如,演示样机的制式为demo_cn,该制式的系统分区中version子分区用于存放大量的操作演示样片,占用较大内存,而商用机的制式为all_cn,该制式的系统分区中version子分区中无需存放操作演示样片,无需较大内存。因此,在电子设备下市后,为了使演示样机也面向用户销售,需要将演示样机的制式更改为商用机的制式。

3、这样,电子设备需要对操作系统进行远程升级,实现演示机制式到商用机制式的更改,然而,目前的更改制式过程中,涉及到的分区搬移过程存在限制性强,可靠性低的问题。


技术实现思路

1、本申请实施例提供一种操作系统升级方法及电子设备,能够解决目前更改制式过程中,涉及到的分区搬移过程存在限制性强、可靠性低的问题,提高分区搬移的可靠性和通用性。

2、第一方面,本申请实施例提供一种操作系统升级方法,应用于电子设备,方法包括:获取第一分区表;获取第二分区表;基于第一分区表,确定电子设备的内存中的动态分区中的多个第一子分区的起始物理地址;基于第二分区表,确定动态分区中的多个第二子分区的起始物理地址,多个第二子分区是对多个第一子分区的至少一部分进行搬移后得到的子分区;确定多个第一子分区中的第一目标子分区,第一目标子分区是多个第一子分区中与多个第二子分区中名称相同,但是起始物理地址不同的第一个子分区;将目标区域中的子分区搬移至内存中的用户数据分区,目标区域中的子分区是多个第一子分区中位于第一目标子分区至用户数据分区之间的子分区;将目标区域中的子分区覆盖写入动态分区中的目标偏移地址,将动态分区中的第一分区表修改为第二分区表。

3、本申请实施例提供的操作系统升级方法,能够通过对第一分区表和第二分区表进行解析和比对,得到多个第一子分区和多个第二子分区中名称相同,但是起始物理地址不同的第一目标子分区,从而由第一目标子分区开始进行搬移,使未更改的分区保持原状,仅对更改的分区进行搬移,实现了分区的按需搬移,在操作系统升级过程中,提高了分区搬移过程的可靠性和通用性。

4、在一种实现方式中,获取第一分区表包括:在第一制式下,依次加载内存中的基础分区、内存中的第一静态分区以及动态分区,加载动态分区之后,获取第一分区表;获取第二分区表包括:获取系统升级包,基于系统升级包,获取第二分区表。采用本实现方式,基于虚拟a/b升级方式启动后,获取到第一分区表和第二分区表,以便于对第一分区表和第二分区表进行解析。

5、在一种实现方式中,获取系统升级包之后,还包括:基于系统升级包完成系统升级后,第一次进入恢复模式,调用恢复进程将电子设备的操作系统由第一制式更改为第二制式;其中,当电子设备的操作系统由第一制式更改为第二制式时,将动态分区在第一制式下的多个第三子分区更新为第二制式下的多个第一子分区。采用本实现方式,第一次进入恢复模式后可以完成制式更改,将第三子分区更新为第一子分区,以便于进一步在第二次进入恢复模式时对第一子分区进行分区搬移。

6、在一种实现方式中,第一制式包括演示机制式,第二制式包括商用机制式。采用本实现方式,表明了第一制式和第二制式的具体实现形式。

7、在一种实现方式中,基于第一分区表,确定电子设备的内存中的动态分区中的多个第一子分区的起始物理地址,包括:第二次进入恢复模式,确定每个第一子分区的连续物理块对应的第一数量,基于第一数量确定每个第一子分区的连续物理块对应的起始物理地址。采用本实现方式,可以得到第一子分区的连续物理块对应的起始物理地址,以便于与第二子分区的连续物理块对应的起始物理地址进行比对,进而进行分区搬移。

8、在一种实现方式中,基于第一分区表,确定电子设备的内存中的动态分区中的多个第一子分区的起始物理地址,包括:第二次进入恢复模式,调用恢复进程遍历第一分区表中的多个第一子分区,确定每个第一子分区的连续物理块对应的第一数量;基于第一数量反向索引至第一分区表中的第一数据结构,从第一数据结构中确定每个第一子分区的连续物理块对应的起始物理地址。采用本实现方式,可以通过恢复进程得到第一子分区的连续物理块对应的起始物理地址,以便于与第二子分区的连续物理块对应的起始物理地址进行比对,进而进行分区搬移。

9、在一种实现方式中,基于第二分区表,确定动态分区中的多个第二子分区的起始物理地址,包括:第二次进入恢复模式,确定每个第二子分区的连续物理块对应的第二数量,基于第二数量确定每个第二子分区的连续物理块对应的起始物理地址。采用本实现方式,可以得到第二子分区的连续物理块对应的起始物理地址,以便于与第一子分区的连续物理块对应的起始物理地址进行比对,进而进行分区搬移。

10、在一种实现方式中,基于第二分区表,确定动态分区中的多个第二子分区的起始物理地址,包括:第二次进入恢复模式,调用恢复进程遍历第二分区表中的多个第二子分区,确定每个第二子分区的连续物理块对应的第二数量;基于第二数量反向索引至第二分区表中的第二数据结构,从第二数据结构中确定每个第二子分区的连续物理块对应的起始物理地址。采用本实现方式,可以通过恢复进程得到第二子分区的连续物理块对应的起始物理地址,以便于与第一子分区的连续物理块对应的起始物理地址进行比对,进而进行分区搬移。

11、在一种实现方式中,第二次进入恢复模式,调用恢复进程遍历第一分区表中的多个第一子分区,确定每个第一子分区的连续物理块对应的第一数量,包括:基于第一分区表对应的第一lp元数据结构中的第一lp元数据分区表结构,遍历第一分区表中的多个第一子分区,确定每个第一子分区的索引结构;基于每个第一子分区的索引结构中的第一连续物理块数量结构,确定第一分区表中的每个第一子分区的连续物理块对应的第一数量。采用本实现方式,示出了获取第一数量的具体方式,以便于得到第一子分区的连续物理块对应的起始物理地址,与第二子分区的连续物理块对应的起始物理地址进行比对,进而进行分区搬移。

12、在一种实现方式中,第二次进入恢复模式,调用恢复进程遍历第二分区表中的多个第二子分区,确定每个第二子分区的连续物理块对应的第二数量,包括:基于第二分区表对应的第二lp元数据结构中的第二lp元数据分区表结构,遍历第二分区表中的多个第二子分区,确定每个第二子分区的索引结构;基于每个第二子分区的索引结构中的第二连续物理块数量结构,确定第二分区表中的每个第二子分区的连续物理块对应的第二数量。采用本实现方式,示出了获取第二数量的具体方式,以便于得到第二子分区的连续物理块对应本文档来自技高网...

【技术保护点】

1.一种操作系统升级方法,其特征在于,应用于电子设备,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述获取第一分区表包括:

3.根据权利要求2所述的方法,其特征在于,所述获取系统升级包之后,还包括:

4.根据权利要求3所述的方法,其特征在于,

5.根据权利要求3所述的方法,其特征在于,所述基于所述第一分区表,确定所述电子设备的内存中的动态分区中的多个第一子分区的起始物理地址,包括:

6.根据权利要求5所述的方法,其特征在于,所述基于所述第二分区表,确定所述动态分区中的多个第二子分区的起始物理地址,包括:

7.根据权利要求6所述的方法,其特征在于,所述第二次进入所述恢复模式,调用所述恢复进程遍历所述第一分区表中的所述多个第一子分区,确定每个第一子分区的连续物理块对应的第一数量,包括:

8.根据权利要求7所述的方法,其特征在于,所述第二次进入所述恢复模式,调用所述恢复进程遍历所述第二分区表中的所述多个第二子分区,确定每个第二子分区的连续物理块对应的第二数量,包括:

9.根据权利要求8所述的方法,其特征在于,所述第一数据结构是所述第一分区表中的第一Lp元数据连续物理块结构;

10.根据权利要求9所述的方法,其特征在于,所述第二数据结构是所述第二分区表中的第二Lp元数据连续物理块结构;

11.根据权利要求10所述的方法,其特征在于,所述确定所述多个第一子分区中的第一目标子分区,包括:

12.根据权利要求11所述的方法,其特征在于,所述将目标区域中的子分区搬移至所述内存中的用户数据分区,包括:

13.根据权利要求9所述的方法,其特征在于,所述第二次进入所述恢复模式,调用所述恢复进程遍历所述第一分区表中的所述多个第一子分区,确定每个第一子分区的连续物理块对应的第一数量之后,还包括:

14.根据权利要求13所述的方法,其特征在于,所述基于所述第一数量反向索引至所述第一分区表中的第一数据结构,从所述第一数据结构中确定所述每个第一子分区的连续物理块对应的连续物理块大小,包括:

15.根据权利要求14所述的方法,其特征在于,所述目标偏移地址的获取方式包括:

16.根据权利要求11所述的方法,其特征在于,所述将所述目标区域中的子分区覆盖写入所述动态分区中的目标偏移地址之后,还包括:

17.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有程序指令,当所述程序指令被所述处理器执行时,使得所述电子设备执行权利要求1-16中任一项所述的方法。

18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在电子设备上运行时,使得电子设备执行权利要求1-16中任一项所述的方法。

19.一种计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得电子设备执行权利要求1-16中任一项所述的方法。

...

【技术特征摘要】

1.一种操作系统升级方法,其特征在于,应用于电子设备,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述获取第一分区表包括:

3.根据权利要求2所述的方法,其特征在于,所述获取系统升级包之后,还包括:

4.根据权利要求3所述的方法,其特征在于,

5.根据权利要求3所述的方法,其特征在于,所述基于所述第一分区表,确定所述电子设备的内存中的动态分区中的多个第一子分区的起始物理地址,包括:

6.根据权利要求5所述的方法,其特征在于,所述基于所述第二分区表,确定所述动态分区中的多个第二子分区的起始物理地址,包括:

7.根据权利要求6所述的方法,其特征在于,所述第二次进入所述恢复模式,调用所述恢复进程遍历所述第一分区表中的所述多个第一子分区,确定每个第一子分区的连续物理块对应的第一数量,包括:

8.根据权利要求7所述的方法,其特征在于,所述第二次进入所述恢复模式,调用所述恢复进程遍历所述第二分区表中的所述多个第二子分区,确定每个第二子分区的连续物理块对应的第二数量,包括:

9.根据权利要求8所述的方法,其特征在于,所述第一数据结构是所述第一分区表中的第一lp元数据连续物理块结构;

10.根据权利要求9所述的方法,其特征在于,所述第二数据结构是所述第二分区表中的第二lp元数据连续物理块结构;

11.根据权利要求10所述的方法,其特征在于,所述确定所述多个第...

【专利技术属性】
技术研发人员:陈超王艳召郝庆涛郭昊
申请(专利权)人:荣耀终端有限公司
类型:发明
国别省市:

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

1