1.本发明涉及计算机技术领域,尤其涉及一种系统升级方法、装置、
电子设备及存储介质。
背景技术:
2.目前,可以对计算机中的操作系统进行升级,以满足该计算机的运行或操作需求。
3.但是,相关技术中,当操作系统在升级的过程中出现异常情况(例如异常断电或计算机重启)时,操作系统的升级版本可能会发生损坏,导致操作系统无法正常启动。
技术实现要素:
4.本发明提供一种系统升级方法、装置、电子设备及存储介质,解决了相关技术中,当操作系统在升级的过程中出现异常情况时,操作系统的升级版本可能会发生损坏,导致操作系统无法正常启动的技术问题。
5.第一方面,本发明提供一种系统升级方法,包括:确定电子设备的运行系统的当前运行
分区;响应于该当前运行分区为第一分区,在第二分区中升级操作系统,该电子设备中包括至少两个分区,该第一分区为该至少两个分区中的一个,该第二分区为该至少两个分区中除该第一分区以外的一个分区;响应于该操作系统升级成功,并且该电子设备的通信
模块升级成功,在该第二分区中升级预设文本文件,该预设文本文件用于启动该操作系统的内核。
6.可选地,该系统升级方法还包括:确定该运行系统的启动失败次数;响应于该启动失败次数大于或等于次数阈值,确定该运行系统的上一次运行分区;响应于该上一次运行分区为该第一分区,在该第二分区中启动该操作系统。
7.可选地,该系统升级方法还包括:响应于该启动失败次数小于该次数阈值,在该第一分区中启动该操作系统。
8.可选地,该系统升级方法还包括:确定预设存储区域中存储的配置文件的第一版本与该第一分区中包括的操作系统的版本是否相同,该第一版本为该配置文件的最高版本;响应于该第一版本与该第一分区中包括的操作系统的版本不相同,从该预设存储区域中获取第二版本的配置文件,该第二版本与该第一分区中包括的操作系统的版本相同;基于该第二版本的配置文件启动该运行系统。
9.可选地,该系统升级方法还包括:从预设存储区域获取配置文件;响应于该配置文件中存在升级失败标识,从该预设存储区域获取上一次升级该通信模块的版本标识;基于该上一次升级该通信模块的版本,对该通信模块执行升级操作。
10.第二方面,本发明提供一种系统升级装置,包括:确定模块和处理模块;
11.该确定模块,用于确定电子设备的运行系统的当前运行分区;
12.该处理模块,用于响应于该当前运行分区为第一分区,在第二分区中升级操作系统,该电子设备中包括至少两个分区,该第一分区为该至少两个分区中的一个,该第二分区
为该至少两个分区中除该第一分区以外的一个分区;
13.该处理模块,还用于响应于该操作系统升级成功,并且该电子设备的通信模块升级成功,在该第二分区中升级预设文本文件,该预设文本文件用于启动该操作系统的内核。
14.可选地,该确定模块,还用于确定该运行系统的启动失败次数;
15.该确定模块,还用于响应于该启动失败次数大于或等于次数阈值,确定该运行系统的上一次运行分区;
16.该处理模块,还用于响应于该上一次运行分区为该第一分区,在该第二分区中启动该操作系统。
17.可选地,该处理模块,还用于响应于该启动失败次数小于该次数阈值,在该第一分区中启动该操作系统。
18.可选地,该系统升级装置还包括获取模块;
19.该确定模块,还用于确定预设存储区域中存储的配置文件的第一版本与该第一分区中包括的操作系统的版本是否相同,该第一版本为该配置文件的最高版本;
20.该获取模块,用于响应于该第一版本与该第一分区中包括的操作系统的版本不相同,从该预设存储区域中获取第二版本的配置文件,该第二版本与该第一分区中包括的操作系统的版本相同;
21.该处理模块,还用于基于该第二版本的配置文件启动该运行系统。
22.可选地,该获取模块,用于从预设存储区域获取配置文件;
23.该获取模块,还用于响应于该配置文件中存在升级失败标识,从该预设存储区域获取上一次升级该通信模块的版本标识;
24.该处理模块,还用于基于该上一次升级该通信模块的版本,对该通信模块执行升级操作。
25.第三方面,本发明提供一种电子设备,包括:处理器和被配置为存储处理器可执行指令的存储器;其中,处理器被配置为执行
所述指令,以实现上述第一方面中任一种可选地系统升级方法。
26.第四方面,本发明提供一种计算机可读存储介质,计算机可读存储介质上存储有指令,当该计算机可读存储介质中的指令由电子设备执行时,使得该电子设备能够执行上述第一方面中任一种可选地系统升级方法。
27.本发明提供的系统升级方法、装置、电子设备及存储介质,电子设备可以确定该电子设备的运行系统的当前运行分区;响应于该当前运行分区为第一分区,电子设备可以在第二分区中升级操作系统;并且响应于该操作系统升级成功,并且电子设备的通信模块升级成功,电子设备可以在该第二分区中升级预设文本文件。本公开中,响应于运行电子设备的运行系统为该电子设备中的一个分区(例如第一分区),该电子设备可以在该电子设备的另一个分区(即第二分区)中执行运行系统的升级过程,包括升级操作系统,升级通信模块以及升级预设文本文件,可以避免当升级过程中出现异常情况时出现操作系统无法正常启动的情况,能够保证系统的正常升级和正常启动。
附图说明
28.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍。
29.图1为本发明实施例提供的一种电子设备的内部结构示意图;
30.图2为本发明实施例提供的另一种电子设备的内部结构示意图;
31.图3为本发明实施例提供的一种系统升级方法的流程示意图;
32.图4为本发明实施例提供的另一种系统升级方法的流程示意图;
33.图5为本发明实施例提供的另一种系统升级方法的流程示意图;
34.图6为本发明实施例提供的另一种系统升级方法的流程示意图;
35.图7为本发明实施例提供的一种运行系统的启动过程的流程示意图;
36.图8为本发明实施例提供的另一种系统升级方法的流程示意图;
37.图9为本发明实施例提供的一种运行系统的升级过程的流程示意图;
38.图10为本发明实施例提供的一种系统升级装置的结构示意图;
39.图11为本发明实施例提供的另一种系统升级装置的结构示意图。
具体实施方式
40.下面将结合附图对本发明实施例提供的系统升级方法、装置、电子设备及存储介质进行详细的描述。
41.本技术的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序,例如,第一分区和第二分区等是用于区别不同的分区,而不是用于描述分区的特定顺序。
42.此外,本技术的描述中所提到的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
43.需要说明的是,本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
44.本技术中所述“和/或”,包括用两种方法中的任意一种或者同时使用两种方法。
45.在本技术的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
46.基于背景技术中所描述,由于相关技术中,当操作系统在升级的过程中出现异常情况(例如异常断电或计算机重启)时,操作系统的升级版本可能会发生损坏,导致操作系统无法正常启动。基于此,本发明实施例提供一种系统升级方法、装置、电子设备及存储介质,响应于运行电子设备的运行系统为该电子设备中的一个分区(例如第一分区),该电子设备可以在该电子设备的另一个分区(即第二分区)中执行运行系统的升级过程,包括升级操作系统,升级通信模块以及升级预设文本文件,可以避免当升级过程中出现异常情况时出现操作系统无法正常启动的情况,能够保证系统的正常升级和正常启动。
47.本发明实施例提供的系统升级方法、装置、电子设备及存储介质,应用于电子设备的操作系统的升级场景中。本发明实施例中,响应于电子设备确定该电子设备当前的运行系统的当前运行分区,可以基于本发明实施例提供的系统升级方法对电子设备的操作系
统、通信模块以及预设文本文件进行升级。
48.示例性的,执行本发明实施例提供的日志存储方法的电子设备可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,pda)、增强现实(augmented reality,ar)\虚拟现实(virtual reality,vr)设备等。本公开对电子设备的具体形态不作特殊限制,其可以与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互。
49.如图1所示,在本发明实施例的一种实现方式中,上述电子设备可以包括看门狗模块、主路由cpu、5g模组、norflash以及nandflash。
50.其中,看门狗模块可以理解为监控模块,用于发出重启信号。
51.主路由cpu与5g模组之间可以采用高速数据总线进行读写操作。
52.norflash和nandflash均可以理解为存储区域(或存储器),其中,norflash的可靠性较高,nandflash的容量较大。
53.具体的,norflash用于存储uboot的版本(包括uboota和ubootb)以及升级启动参数(包括升级成功标识、升级失败标识以及启动失败次数等)。
54.nandflash用于存储操作系统的运行分区(包括openwrt运行区a和openwrt运行区b)以及文件系统分区,该文件系统分区包括日志存放区和openwrt配置文件存放区,该日志存放区用于存储电子设备的升级日志及启动日志,该openwrt配置文件存放区用于存储openwrt配置文件,包括不同版本的openwrt配置文件。
55.如图2所示,在本发明实施例的另一种实现方式中,上述电子设备可以包括升级系统以及系统启动加载系统。其中,该升级系统包括版本校验模块、升级参数配置模块、路由系统双分区升级模块、5g模组升级模块、升级日志记录模块以及升级回退模块。
56.具体的,版本校验模块用于对操作系统的版本、通信模块的版本以及预设文本文件的版本进行哈希校验。
57.升级参数配置模块用于配置升级参数,包括升级成功标识以及升级失败标识等,并对这些参数进行备份。
58.路由系统双分区升级模块用于将操作系统的版本写入预设存储区域中进行升级。
59.5g模组升级模块用于将通信模块(即5g模组)的版本升级到5g模组中。
60.升级日志记录模块用于记录升级过程中的日志信息。
61.升级回退模块用于进行5g模组的版本的回退,保持版本的一致性。
62.上述系统启动加载系统包括启动参数配置模块、分区切换模块、openwrt双分区系统加载模块、openwrt配置参数恢复模块以及看门狗复位模块。
63.启动参数配置模块用于从预设存储区域中获取参数,或者配置启动参数,包括启动失败次数等。
64.分区切换模块用于对运行系统的运行分区进行切换操作。
65.openwrt双分区系统加载模块用于对选定的分区(例如第一分区)加载kernel版本,rootfs版本,dtb版本。
66.openwrt配置参数恢复模块用于对升级后的上一次的参数进行恢复,保证系统参数的一致性。
67.看门狗复位模块用于实现系统异常时的重启。
68.如图3所示,本发明实施例提供的系统升级方法可以包括s101-s103。
69.s101、电子设备确定电子设备的运行系统的当前运行分区。
70.应理解,该当前运行分区为该运行系统当前运行的分区或者该电子设备中运行该运行系统的分区。
71.在本发明实施例的一种实现方式中,该电子设备中可以包括预设存储区域,该预设存储区域中存储有当前运行分区的标识。电子设备可以基于该当前运行分区的标识,确定该运行系统的当前运行分区。
72.示例性的,该预设存储区域可以为flash。
73.s102、响应于当前运行分区为第一分区,电子设备在第二分区中升级操作系统。
74.其中,该电子设备中包括至少两个分区,该第一分区为该至少两个分区中的一个,该第二分区为该至少两个分区中除该第一分区以外的一个分区。
75.应理解,响应于该当前运行分区为第一分区,说明上述运行系统当前运行的分区为第一分区,此时电子设备可以确定在该电子设备的另一个分区(例如第二分区)中升级操作系统。避免当该操作系统在升级的过程中出现异常情况(例如异常断电或计算机重启)时,导致该操作系统无法正常启动。
76.示例性的,该操作系统可以为linux系统,具体可以为openwrt系统。
77.在一种可选的实现方式中,响应于该当前运行分区为第二分区,电子设备可以在该第一分区中升级该操作系统。
78.s103、响应于操作系统升级成功,并且电子设备的通信模块升级成功,电子设备在第二分区中升级预设文本文件。
79.其中,该预设文本文件用于启动该操作系统的内核。
80.具体的,电子设备可以在该第二分区中升级该通信模块。
81.应理解,电子设备可以在升级操作系统的同时升级该通信模块,并且分别确定该操作系统是否升级成功,以及该通信模块是否升级成功。
82.响应于该操作系统升级成功,并且该通信模块升级成功,电子设备可以在该第二分区中升级该预设文本文件。响应于该预设文本文件升级成功,电子设备可以确定该电子设备的运行系统升级成功。
83.可选地,响应于该运行系统升级成功,电子设备可以配置升级成功标识,该升级成功标识用于表征该运行系统升级成功。并且该电子设备还可以将升级日志转存至上述预设存储区域。
84.示例性的,上述通信模块可以为5g模组,预设文本文件可以为uboot。
85.本发明实施例中,在电子设备对操作系统、通信模块以及预设文本文件升级之前,还可以对该操作系统的版本、该通信模块的版本以及该预设文本文件的版本进行哈希校验,以验证这些版本的完整性,进而确定是否进行后续的升级过程。
86.在一种可选的实现方式中,响应于该操作系统升级失败、该通信模块升级失败或者该预设文本升级失败,电子设备可以配置升级失败标识,该升级失败标识用于表征上述运行系统升级失败。
87.在另一种可选的实现方式中,在电子设备配置升级成功标识或者升级失败标识之
后,电子设备可以重新启动运行系统。
88.上述实施例提供的技术方案至少能够带来以下有益效果:由s101-s103可知,电子设备可以确定该电子设备的运行系统的当前运行分区;响应于该当前运行分区为第一分区,电子设备可以在第二分区中升级操作系统;并且响应于该操作系统升级成功,并且电子设备的通信模块升级成功,电子设备可以在该第二分区中升级预设文本文件。本公开实施例中,响应于运行电子设备的运行系统为该电子设备中的一个分区(例如第一分区),该电子设备可以在该电子设备的另一个分区(即第二分区)中执行运行系统的升级过程,包括升级操作系统,升级通信模块以及升级预设文本文件,可以避免当升级过程中出现异常情况时出现操作系统无法正常启动的情况,能够保证系统的正常升级和正常启动。
89.结合图3,如图4所示,本发明实施例提供的系统升级方法还可以包括s104-s106。
90.s104、电子设备确定运行系统的启动失败次数。
91.在本发明实施例的一种实现方式中,电子设备可以先获取运行系统的硬件启动标识,然后根据该硬件启动标识确定预设文本文件的启动分区,并且在该启动分区中启动预设文本文件,进而完成运行系统的启动过程。
92.s105、响应于运行系统的启动失败次数大于或等于次数阈值,电子设备确定运行系统的上一次运行分区。
93.应理解,响应于该启动失败次数大于或等于次数阈值,说明该运行系统的启动失败次数较多,基于该运行系统的当前运行分区可能无法成功启动该运行系统,此时电子设备可以确定该运行系统的上一次运行分区。
94.示例性的,上述次数阈值可以为3。
95.s106、响应于上一次运行分区为第一分区,电子设备在第二分区中启动操作系统。
96.可以理解的是,该上一次运行分区为该运行系统上一次运行的分区。
97.本发明实施例中,响应于上一次运行分区为第一分区,说明运行系统上一次运行的分区为第一分区,此时电子设备可以在该电子设备的另一个分区(即第二分区)中启动该操作系统。
98.在本发明实施例的一种实现方式中,响应于该第一次运行分区为第二分区,电子设备可以在第一分区中启动该操作系统。
99.结合图4,如图5所示,本发明实施例提供的系统升级方法还包括s107。
100.s107、响应于运行系统的启动失败次数小于次数阈值,电子设备在第一分区中启动操作系统。
101.应理解,响应于该启动失败次数小于该次数阈值,说明该运行系统的启动失败次数较少,基于该运行系统的当前运行分区可以完成该运行系统的启动过程。此时,电子设备可以确定该运行系统的当前运行分区。
102.结合上述实施例的描述,应理解,电子设备确定该运行系统当前运行分区为第一分区。此时,电子设备可以确定在该第一分区中启动该操作系统。
103.在一种可选的实现方式中,响应于该运行系统的启动次数小于该次数阈值,并且该电子设备的当前运行分区为第二分区,电子设备可以在该第二分区中启动该操作系统。
104.结合图4,如图6所示,本发明实施例提供的系统升级方法还可以包括s108-s110。
105.s108、电子设备确定预设存储区域中存储的配置文件的第一版本以及第一分区中
包括的操作系统的版本是否相同。
106.其中,该第一版本为该配置文件的最高版本。
107.应理解,该配置文件用于启动该电子设备的运行系统。
108.示例性的,该配置文件可以为openwrt配置文件。
109.s109、响应于第一版本与第一分区中包括的操作系统的版本不相同,电子设备从预设存储区域中获取第二版本的配置文件。
110.其中,该第二版本与该第一分区中包括的操作系统的版本相同。
111.应理解,上述预设存储区域中可以存储多个版本(包括第一版本和第二版本)的配置文件,该第二版本低于该第一版本。
112.应理解,响应于该第一版本与该第一分区中包括的操作系统的版本不相同,说明上述至少两个分区中的其他分区(例如第二分区)中已经执行升级操作(具体为已经升级操作系统),该预设存储区域中已经存储了新的,或者更高版本(即第一版本)的配置文件,但是该第一分区中并未执行升级操作。如果基于该第一版本的配置文件启动电子设备的运行系统(具体为在该第一分区中启动该运行系统),由于版本不匹配可能导致该运行系统启动失败。此时,电子设备可以从该预设区域中获取较低版本(具体为与该第一分区中包括的操作系统的版本相同的版本)的配置文件。
113.本发明实施例中,电子设备从预设存储区域中获取第二版本的配置文件的过程,也可以理解为配置文件(具体为第二版本的配置文件)的恢复过程,即电子设备可以恢复并使用该第二版本的配置文件。
114.可选地,电子设备还可以删除该第一版本的配置文件。
115.s110、电子设备基于第二版本的配置文件启动运行系统。
116.在本发明实施例的一种实现方式中,响应于第一版本与第一分区中包括的操作系统的版本相同,说明上述其他分区是否执行升级操作与该第一分区是否执行升级操作保持一致,即该其他分区与该第一分区均未执行升级操作,或者该其他分区与该第一分区均执行了升级操作。此时,电子设备可以基于该第一版本(即与该第一分区中包括的操作系统的版本相同的版本)的配置文件启动该运行系统。
117.以下以一个示例说明本发明实施例中电子设备的运行系统的启动过程。
118.如图7所示,该启动过程可以包括s201-s218。
119.s201、电子设备获取硬件启动标识。
120.s202、响应于uboot的启动分区为a分区,电子设备在a分区中启动uboot。
121.应理解,uboot即为上述实施例中的预设文本文件,该a分区可以理解为上述第一分区。
122.s203、响应于uboot的启动分区为b分区,电子设备在b分区中启动uboot。
123.其中,该b分区可以为上述实施例中的第二分区。
124.s204、电子设备将运行系统的启动失败次数增加预设值。
125.其中,该预设值可以为1。
126.s205、电子设备确定启动失败次数是否大于或等于次数阈值。
127.s206、响应于启动失败次数大于或等于次数阈值,电子设备确定运行系统的上一次运行分区。
128.s207、响应于上一次运行分区为a分区,电子设备在b分区中启动openwrt系统。
129.应理解,该openwrt系统为上述实施例中电子设备的操作系统。
130.s208、响应于上一次运行分区为b分区,电子设备在a分区中启动openwrt系统。
131.s209、响应于启动失败次数小于次数阈值,电子设备确定运行系统的当前运行分区。
132.s210、响应于当前运行分区为a分区,电子设备在a分区中启动openwrt系统。
133.s211、响应于当前运行分区为b分区,电子设备在b分区中启动openwrt系统。
134.s212、电子设备确定flash中存储的配置文件的第一版本与a分区中包括的操作系统的版本是否相同。
135.其中,该flash可以理解为上述预设存储区域。
136.s213、响应于第一版本与a分区中包括的操作系统的版本不相同,电子设备从flash中获取第二版本的配置文件。
137.其中,该第二版本的配置文件与该第一分区中包括的操作系统的版本相同。
138.s214、响应于第一版本与a分区中包括的操作系统的版本相同,电子设备确定是否进行了升级。
139.s215、若进行了升级,则电子设备配置升级成功标识;
140.s216、若未进行升级,则电子设备确定运行系统是否启动成功。
141.s217、若启动失败,则系统异常,电子设备基于看门狗复位重新启动运行系统。
142.s218、若启动成功,则电子设备清空启动失败次数。
143.结合图3,如图8所示,本发明实施例提供的系统升级方法还可以包括s111-s113。系统升级
144.s111、电子设备从预设存储区域获取配置文件。
145.s112、响应于配置文件中存在升级失败标识,电子设备从预设存储区域获取上一次升级通信模块的版本标识。
146.应理解,响应于配置文件中存在升级失败标识,说明运行系统升级失败。具体可以为操作系统升级失败、通信模块升级失败或者预设文本文件升级失败。此时电子设备可以获取上一次升级通信模块的版本。
147.s113、电子设备基于上一次升级通信模块的版本,对通信模块执行升级操作。
148.本发明实施例中,电子设备可以确定通信模块在上一次升级的过程中升级成功,即电子设备基于该上一次升级通信模块的版本,对通信模块执行升级操作,能够保证该通信模块升级成功,进而保证电子设备的运行系统成功升级。
149.在一种可选的实现方式中,响应于上述配置文件中存在升级失败标识,电子设备也可以从预设存储区域获取上一次升级操作系统的版本标识,并且基于该上一次升级操作系统的版本,对该操作系统执行升级操作。
150.在另一种可选的实现方式中,响应于该配置文件中存在升级失败标识,电子设备还可以从预设存储区域获取上一次升级预设文本文件的版本标识,并且基于该上一次升级预设文本文件的版本,对该预设文本文件执行升级操作。
151.以下以一个示例说明本发明实施例中电子设备的运行系统的升级过程。
152.如图9所示,该升级过程可以包括s301-s314。
153.s301、电子设备获取升级版本并校验。
154.具体的,电子设备可以获取操作系统的版本、通信模块的版本以及预设文本文件的版本,并且对这些版本进行哈希校验。
155.s302、电子设备设置升级参数。
156.其中,该升级参数包括升级失败标识以及升级成功标识。
157.s303、电子设备确定电子设备的当前运行分区。
158.s304、响应于当前运行分区为a分区,电子设备在b分区中升级openwrt系统。
159.其中,该a分区可以理解为上述第一分区,该b分区可以理解为上述第二分区,openwrt即为该电子设备的操作系统。
160.s305、响应于当前运行分区为b分区,电子设备在a分区中升级openwrt系统。
161.s306、电子设备升级5g模组。
162.应理解,该5g模组即为上述实施例中电子设备的通信模块。
163.s307、电子设备确定5g模组的升级时长是否大于或等于时长阈值。
164.可以理解的是,电子设备确定5g模组的升级时长是否大于或等于时长阈值即为确定5g模组的升级过程是否超时。
165.s308、响应于5g模组的升级时长大于或等于时长阈值,电子设备配置升级失败标识。
166.s309、响应于5g模组的升级时长小于时长阈值,电子设备确定uboot的运行分区。
167.其中,该uboot可以理解为上述预设文本文件。
168.s310、响应于uboot的运行分区为a分区,电子设备在b分区中升级uboot。
169.s311、响应于uboot的运行分区为b分区,电子设备在a分区中升级uboot。
170.s312、电子设备设置升级参数。
171.其中,该升级参数包括升级失败标识以及升级成功标识。
172.s313、电子设备将升级日志转存至flash中。
173.应理解,该flash为上述实施例中的预设存储区域。
174.s314、电子设备重新启动运行系统。
175.本发明实施例可以根据上述方法示例对电子设备等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
176.在采用对应各个功能划分各个功能模块的情况下,图10示出了上述实施例中所涉及的系统升级装置的一种可能的结构示意图,如图10所示,系统升级装置40可以包括:确定模块401和处理模块402。
177.确定模块401,用于确定电子设备的运行系统的当前运行分区。
178.处理模块402,用于响应于该当前运行分区为第一分区,在第二分区中升级操作系统,该电子设备中包括至少两个分区,该第一分区为该至少两个分区中的一个,该第二分区为该至少两个分区中除该第一分区以外的一个分区。
179.处理模块402,还用于响应于该操作系统升级成功,并且该电子设备的通信模块升
级成功,在该第二分区中升级预设文本文件,该预设文本文件用于启动该操作系统的内核。
180.可选地,确定模块401,还用于确定该运行系统的启动失败次数。
181.确定模块401,还用于响应于该启动失败次数大于或等于次数阈值,确定该运行系统的上一次运行分区。
182.处理模块402,还用于响应于该上一次运行分区为该第一分区,在该第二分区中启动该操作系统。
183.可选地,处理模块402,还用于响应于该启动失败次数小于该次数阈值,在该第一分区中启动该操作系统。
184.可选地,该系统升级装置20还包括获取模块403。
185.确定模块401,还用于确定预设存储区域中存储的配置文件的第一版本与该第一分区中包括的操作系统的版本是否相同,该第一版本为该配置文件的最高版本。
186.获取模块403,用于响应于该第一版本与该第一分区中包括的操作系统的版本不相同,从该预设存储区域中获取第二版本的配置文件,该第二版本与该第一分区中包括的操作系统的版本相同。
187.处理模块402,还用于基于该第二版本的配置文件启动该运行系统。
188.可选地,获取模块403,用于从预设存储区域获取配置文件。
189.获取模块403,还用于响应于该配置文件中存在升级失败标识,从该预设存储区域获取上一次升级该通信模块的版本标识。
190.处理模块402,还用于基于该上一次升级该通信模块的版本,对该通信模块执行升级操作。
191.在采用集成的单元的情况下,图11示出了上述实施例中所涉及的系统升级装置的一种可能的结构示意图。如图11所示,系统升级装置50可以包括:处理模块501和通信模块502。处理模块501可以用于对系统升级装置50的动作进行控制管理。通信模块502可以用于支持系统升级装置50与其他实体的通信。可选地,如图11所示,该系统升级装置50还可以包括存储模块503,用于存储系统升级装置50的程序代码和数据。
192.其中,处理模块501可以是处理器或控制器。通信模块502可以是收发器、收发电路或通信接口等。存储模块503可以是存储器。
193.其中,当处理模块501为处理器,通信模块502为收发器,存储模块503为存储器时,处理器、收发器和存储器可以通过总线连接。总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。
194.应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
195.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
196.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
197.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
198.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户终端线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
199.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
技术特征:
1.一种系统升级方法,其特征在于,包括:确定电子设备的运行系统的当前运行分区;响应于所述当前运行分区为第一分区,在第二分区中升级操作系统,所述电子设备中包括至少两个分区,所述第一分区为所述至少两个分区中的一个,所述第二分区为所述至少两个分区中除所述第一分区以外的一个分区;响应于所述操作系统升级成功,并且所述电子设备的通信模块升级成功,在所述第二分区中升级预设文本文件,所述预设文本文件用于启动所述操作系统的内核。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:确定所述运行系统的启动失败次数;响应于所述启动失败次数大于或等于次数阈值,确定所述运行系统的上一次运行分区;响应于所述上一次运行分区为所述第一分区,在所述第二分区中启动所述操作系统。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:响应于所述启动失败次数小于所述次数阈值,在所述第一分区中启动所述操作系统。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:确定预设存储区域中存储的配置文件的第一版本与所述第一分区中包括的操作系统的版本是否相同,所述第一版本为所述配置文件的最高版本;响应于所述第一版本与所述第一分区中包括的操作系统的版本不相同,从所述预设存储区域中获取第二版本的配置文件,所述第二版本与所述第一分区中包括的操作系统的版本相同;基于所述第二版本的配置文件启动所述运行系统。5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:从预设存储区域获取配置文件;响应于所述配置文件中存在升级失败标识,从所述预设存储区域获取上一次升级所述通信模块的版本标识;基于所述上一次升级所述通信模块的版本,对所述通信模块执行升级操作。6.一种系统升级装置,其特征在于,包括:确定模块和处理模块;所述确定模块,用于确定电子设备的运行系统的当前运行分区;所述处理模块,用于响应于所述当前运行分区为第一分区,在第二分区中升级操作系统,所述电子设备中包括至少两个分区,所述第一分区为所述至少两个分区中的一个,所述第二分区为所述至少两个分区中除所述第一分区以外的一个分区;所述处理模块,还用于响应于所述操作系统升级成功,并且所述电子设备的通信模块升级成功,在所述第二分区中升级预设文本文件,所述预设文本文件用于启动所述操作系统的内核。7.根据权利要求6所述的装置,其特征在于,所述确定模块,还用于确定所述运行系统的启动失败次数;所述确定模块,还用于响应于所述启动失败次数大于或等于次数阈值,确定所述运行系统的上一次运行分区;所述处理模块,还用于响应于所述上一次运行分区为所述第一分区,在所述第二分区
中启动所述操作系统。8.根据权利要求7所述的装置,其特征在于,所述处理模块,还用于响应于所述启动失败次数小于所述次数阈值,在所述第一分区中启动所述操作系统。9.根据权利要求7所述的装置,其特征在于,所述装置还包括获取模块;所述确定模块,还用于确定预设存储区域中存储的配置文件的第一版本与所述第一分区中包括的操作系统的版本是否相同,所述第一版本为所述配置文件的最高版本;所述获取模块,用于响应于所述第一版本与所述第一分区中包括的操作系统的版本不相同,从所述预设存储区域中获取第二版本的配置文件,所述第二版本与所述第一分区中包括的操作系统的版本相同;所述处理模块,还用于基于所述第二版本的配置文件启动所述运行系统。10.根据权利要求6-9中任一项所述的装置,其特征在于,所述装置还包括获取模块;所述获取模块,用于从预设存储区域获取配置文件;所述获取模块,还用于响应于所述配置文件中存在升级失败标识,从所述预设存储区域获取上一次升级所述通信模块的版本标识;所述处理模块,还用于基于所述上一次升级所述通信模块的版本,对所述通信模块执行升级操作。11.一种电子设备,其特征在于,所述电子设备包括:处理器;被配置为存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如权利要求1-5中任一项所述的系统升级方法。12.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,当所述计算机可读存储介质中的指令由电子设备执行时,使得所述电子设备能够执行如权利要求1-5中任一项所述的系统升级方法。
技术总结
本发明提供一种系统升级方法、装置、电子设备及存储介质,涉及计算机技术领域,解决了相关技术中,当操作系统在升级的过程中出现异常情况时,操作系统的升级版本可能会发生损坏,导致操作系统无法正常启动的技术问题。该方法包括:确定电子设备的运行系统的当前运行分区;响应于该当前运行分区为第一分区,在第二分区中升级操作系统,该电子设备中包括至少两个分区,该第一分区为该至少两个分区中的一个,该第二分区为该至少两个分区中除该第一分区以外的一个分区;响应于该操作系统升级成功,并且该电子设备的通信模块升级成功,在该第二分区中升级预设文本文件,该预设文本文件用于启动该操作系统的内核。用于启动该操作系统的内核。用于启动该操作系统的内核。
技术研发人员:
姜元山 陈礼波 王运付 刘霞 张光伟 陈德进
受保护的技术使用者:
中讯邮电咨询设计院有限公司
技术研发日:
2022.09.28
技术公布日:
2022/12/23