系统升级方法、装置、电子设备和存储介质与流程

文档序号:18667589发布日期:2019-09-13 20:23阅读:159来源:国知局
系统升级方法、装置、电子设备和存储介质与流程

本申请实施例涉及计算机技术,尤其涉及一种系统升级方法、装置、电子设备和存储介质。



背景技术:

随着科技的进步,电子产品的硬件结构也随之完善,而产品的核心价值和技术更多的是体现在系统的功能上。随着软件技术的发展,电子产品的系统功能也越来越完善,系统功能成了电子产品的市场竞争力的决定因素。为了保证系统的稳定性和功能的完善性,需要时常对当前使用的系统进行升级。

目前的安卓系统的电子设备,依赖于ota(over-the-airtechnology,空中下载技术)升级,也即,当电子设备中的初始系统的基础版本出现重大异常时,就无法支持后续系统版本升级问题。现有技术中通常会使用刷机版本进行系统升级,但是这样不仅效率低,而且成本高。另外,对出现问题的基础版本进行修改,也无法将其升级到新版本。



技术实现要素:

本申请提供了一种系统升级方法、装置、电子设备和存储介质,以解决现有技术中初始系统的基础版本出现问题是无法进行系统升级以及升级时效率低、成本高的问题。

本发明采用如下技术方案:

第一方面,本申请实施例提供了一种系统升级方法,该方法包括:

检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;

应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,以升级所述初始系统中的镜像系统;

新增升级脚本,以重启升级后的镜像系统,完成镜像系统升级。

进一步的,在完成镜像系统升级之后,还包括:升级所述初始系统中的用户系统。

进一步的,升级所述初始系统中的用户系统之后,还包括:

将升级后的镜像系统的系统文件,以及,升级后的用户系统的系统文件,同步至所述初始系统中,其中,所述升级后的镜像系统的系统文件包括boot文件,所述升级后的用户系统的系统文件包括system文件。

进一步的,从服务器下载系统升级包之前,还包括:

控制当前智能终端进入系统升级模式。

进一步的,从服务器下载系统升级包之前,还包括:

判断所述服务器中是否存在对应的升级包,若是,则展示存在系统升级包的提示信息,否则,向用户展示是否进行升级的提示信息。

第二方面,本申请实施例提供了一种系统升级装置,该装置包括:

升级包下载模块,用于检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;

镜像系统升级模块,用于应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,以升级所述初始系统中的镜像系统;

重启模块,用于新增升级脚本,以重启升级后的镜像系统,完成镜像系统升级。

进一步的,还包括用户系统升级模块,用于在完成镜像系统升级之后,升级所述初始系统中的用户系统。

进一步的,还包括文件同步模块,用于在升级所述初始系统中的用户系统之后,将升级后的镜像系统的系统文件,以及,升级后的用户系统的系统文件,同步至所述初始系统中,其中,所述升级后的镜像系统的系统文件包括boot文件,所述升级后的用户系统的系统文件包括system文件。

进一步的,还包括模式切换模块,用于从服务器下载系统升级包之前,控制当前智能终端进入系统升级模式。

进一步的,还包括判断模块,用于在从服务器下载系统升级包之前,判断所述服务器中是否存在对应的升级包。

进一步的,还包括第一展示模块,用于在服务器中存在对应的升级包时,展示存在系统升级包的提示信息。

进一步的,还包括第二展示模块,用于向用户展示是否进行升级的提示信息。

第三方面,本申请实施例提供了一种电子设备,包括存储器以及一个或多个处理器;

所述存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的系统升级方法。

第四方面,本申请实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的系统升级方法。

本发明采用的技术方案中有如下有益效果:检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;这样可以通过ota升级的方式预先下载系统升级包;应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,这样可以首先解决基础内核的异常问题,然后就可以升级初始系统中的镜像系统,以支撑用户系统的升级或应用;另外,新增升级脚本,通过重启升级后的镜像系统来完成镜像系统升级。而镜像系统升级是系统升级的重要环节,在镜像系统升级完成后,可以进行后续用户系统的升级,这样,可以无需使用刷机的方式,即可实现系统版本的迭代更新,成本低且效率高。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请实施例提供的一种系统升级方法的流程图;

图2是本申请实施例提供的另一种系统升级方法的流程图;

图3是本申请实施例提供的一种系统升级装置的结构示意图;

图4是本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

首先对本申请实施例中应用的专业词语进行说明。ota升级,是android系统提供的标准软件升级方式;kernel,是操作系统内核,是指大多数操作系统的核心部分;recovery模式:可以对安卓机内部的数据或系统进行修改的模式,在这个模式下,可以进行系统升级;脚本,是一种批处理文件的延伸,是一种纯文本保存的程序,一般来说的计算机脚本程序是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等。

图1给出了本申请实施例提供的一种系统升级方法的流程图,本实施例提供的系统升级方法可以由系统升级装置来执行,该系统升级装置可通过硬件和/或软件的方式实现。参考图1,该方法具体可以包括:

s101、检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包。

具体的,本申请实施例中的电子设备以手机为例,还可以是平板、笔记本电脑、台式机或者可穿戴设备等。初始系统可以是指电子设备出厂时配置的系统。通常情况下触发升级包的下载操作有两种方式,一种方式是手机实时的监测,例如,手机在监测系统运行的过程中发现初始系统异常,进而触发升级包的下载操作,另一种方式是检测到用户升级操作,例如,当前初始系统无异常,用户想体验高版本的系统,此时,可以由用户触发升级操作。因此,本申请实施例中的系统升级方法,并不局限于系统异常时才可以进行升级。

在实际的应用过程中,ota升级包括全量升级、增量升级和差分升级,这样,系统升级包就包括全量升级包、增量升级包和差分升级包。在本申请实施例中,对升级方式不进行任何限定,因此,当采用全量升级时,则从服务器下载全量升级包;当采用增量升级时,从服务器下载增量升级包;当采用差分升级时,从服务器下载差分升级包。

s102、应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,以升级所述初始系统中的镜像系统。

具体的,基础内核数据可以是指能使kernel基础版本正常运行的数据,而kernel基础版本是操作系统内核,是指大多数操作系统的核心部分,作用尤为重要。此时,应用系统升级包中的基础内核升级数据,修改与基础内核升级数据对应的系统启动项,其中,系统启动项可以用boot表示,例如,boot.img是android系统启动所必须加载的文件,系统启动项可以是.img形式的文件。这样,在修改了与基础内核升级数据对应的系统启动项后,完成了初始系统中的镜像升级的第一步,也即,此时还没有完全升级。

s103、新增升级脚本,以重启升级后的镜像系统,完成镜像系统升级。

具体的,修改了与基础内核升级数据对应的系统启动项之后,此时需要新增升级脚本,这里新增的升级脚本可以根据修改的系统启动项的逻辑实现。然后重新启动升级后的镜像系统,这样,才实现镜像系统的完整意义上的升级。

本发明采用的技术方案中有如下有益效果:检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;这样可以通过ota升级的方式预先下载系统升级包;应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,这样可以首先解决基础内核的异常问题,然后就可以升级初始系统中的镜像系统,以支撑用户系统的升级或应用;另外,新增升级脚本,通过重启升级后的镜像系统来完成镜像系统升级。而镜像系统升级是系统升级的重要环节,在镜像系统升级完成后,可以进行后续用户系统的升级,这样,可以无需使用刷机的方式,即可实现系统版本的迭代更新,成本低且效率高。

在上述实施例的基础上,图2给出了本申请实施例提供的另一种系统升级方法的流程图。该系统升级方法是对上述系统升级的具体化。参考图2,该系统升级方法包括:

s201、控制当前智能终端进入系统升级模式。

具体的,升级模式还可以称为recovery模式,例如可以是对安卓机内部的数据或系统进行修改的模式,在这个模式下,可以进行系统升级。因此,在对系统升级之前,控制当前智能终端进入系统升级模式,只有在升级模式下,才能完成升级。此外,系统升级模式可以是用户自行切换的,例如可以点击设置选项,进行模式的切换;还可以是检测到系统异常时自动切换;这样保证了用户在正常使用智能终端时的用户体验。

s202、检测到初始系统异常或检测到用户升级操作时,判断所述服务器中是否存在对应的升级包,若是,则执行s203,否则,执行s204。

具体的,在检测到初始系统异常或者检测到用户升级操作时,首先判断服务器中是否存在对应的升级包,因为,有可能服务器中不存在对应的升级包,此时,可以一方面对用户进行提示,以提示用户进行对应的选择或操作;另一方面还可以从其他途径获取对应的升级包以供使用。需要说明的是,这里只是作为本申请的一个可选实施例,并不形成具体的限定。

s203、展示存在系统升级包的提示信息,从服务器下载系统升级包。

当服务器中存在对应的升级包时,一方面将对应的提示信息展示在用户的手机上,例如以弹窗的形式提示“存在您所需要的升级包,请下载”;另一方面,从服务器下载系统升级包。在实际的应用过程中,系统升级包的下载过程可以是自动下载的,也可以是用户看到展示在屏幕上的提示信息进行触发的,这个不进行限定。其中,所述升级包包括全量升级包、增量升级包或差分升级包。

s204、向用户展示是否进行升级的提示信息

当服务器中不存在对应的升级包时,向用户展示是否进行升级的提示信息,目的是提示用户进行下一步操作,例如选择放弃升级等。此时的提示信息可以是“是否继续升级”。

在实际的应用过程中,提示信息的展示形式可以是文字形式显示在手机的屏幕上,还可以是语音播报的形式进行显示,上述只是进行示例,并不形成具体的限定。

s205、应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,以升级所述初始系统中的镜像系统。

s206、新增升级脚本,以重启升级后的镜像系统,完成镜像系统升级。

s207、升级所述初始系统中的用户系统。

具体的,在升级完镜像系统后,保证了kernel内核的基础应用功能,此时,在升级初始系统中的用户系统,其中,升级用户系统的方式可以是现有及时中任意的用户系统的升级方式,这里不进行限定。本申请实施例中,是将镜像系统升级和用户系统升级分开,而且是先升级镜像系统,以保证系统正常升级。

s208、将升级后的镜像系统的系统文件,以及,升级后的用户系统的系统文件,同步至所述初始系统中。

具体的,当镜像系统和用户系统都升级完成后,将二者对应的系统文件分别同步至初始系统中以进行存储,这样,不仅保证了系统升级后的正常应用,还为了下次系统异常提供了准备,例如,当下次系统异常时,可以直接应用同步后的系统文件。其中,所述升级后的镜像系统的系统文件包括boot文件,所述升级后的用户系统的系统文件包括system文件。

本申请实施例中,在系统升级之前,首先控制当前智能终端进入系统升级模式,这样保证了升级过程的顺利进行;另外,还增加了判断服务器中是否存在对应的升级包的操作,当存在对应的升级包时和不存在对应的升级包时分别向用户展示对应的提示信息,这样可以及时将升级进程展示给用户,例如,不存在系统升级包时也方便进一步指导用户操作;此外,将镜像系统升级和用户系统升级分开,在完成镜像系统升级后,再进行用户系统升级,实现了镜像系统的升级,这样保证了kernel内核的基础应用功能的实现;另外,将升级后的镜像系统和用户系统中的系统文件分别同步到初始系统中,这样一方面保证了升级后的系统的正常应用,另一方面也保证了下一次系统异常时直接应用对应的系统文件,提高了系统升级过程的多种可能性。不仅减少了不必要的刷机升级、降低版本等带来的麻烦,也提升了系统迭代速度,同时解决了旧版本的系统遗留问题。

在上述实施例的基础上,图3为本申请实施例提供的一种系统升级装置的结构示意图。参考图3,本实施例提供的系统升级装置具体包括:升级包下载模块301、镜像系统升级模块302和重启模块303。

其中,升级包下载模块301,用于检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;镜像系统升级模块302,用于应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,以升级所述初始系统中的镜像系统;重启模块303,用于新增升级脚本,以重启升级后的镜像系统,完成镜像系统升级。

进一步的,还包括用户系统升级模块,用于在完成镜像系统升级之后,升级所述初始系统中的用户系统。

进一步的,还包括文件同步模块,用于在升级所述初始系统中的用户系统之后,将升级后的镜像系统的系统文件,以及,升级后的用户系统的系统文件,同步至所述初始系统中,其中,所述升级后的镜像系统的系统文件包括boot文件,所述升级后的用户系统的系统文件包括system文件。

进一步的,还包括模式切换模块,用于从服务器下载系统升级包之前,控制当前智能终端进入系统升级模式。

进一步的,还包括判断模块,用于在从服务器下载系统升级包之前,判断所述服务器中是否存在对应的升级包。

进一步的,还包括第一展示模块,用于在服务器中存在对应的升级包时,展示存在系统升级包的提示信息。

进一步的,还包括第二展示模块,用于向用户展示是否进行升级的提示信息。

本发明采用的技术方案中有如下有益效果:检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;这样可以通过ota升级的方式预先下载系统升级包;应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,这样可以首先解决基础内核的异常问题,然后就可以升级初始系统中的镜像系统,以支撑用户系统的升级或应用;另外,新增升级脚本,通过重启升级后的镜像系统来完成镜像系统升级。而镜像系统升级是系统升级的重要环节,在镜像系统升级完成后,可以进行后续用户系统的升级,这样,可以无需使用刷机的方式,即可实现系统版本的迭代更新,成本低且效率高。

本申请实施例提供的系统升级装置可以用于执行上述实施例提供的系统升级方法,具备相应的功能和有益效果。

本申请实施例提供了一种电子设备,且该设备中可集成本申请实施例提供的系统升级装置,电子设备例如可以是智能终端。图4是本申请实施例提供的一种电子设备的结构示意图。参考图4,该电子设备包括:处理器40、存储器41。该电子设备中处理器40的数量可以是一个或者多个,图4中以一个处理器40为例。该电子设备中存储器41的数量可以是一个或者多个,图4中以一个存储器41为例。该电子设备的处理器40和存储器41可以通过总线或者其他方式连接,图4中以通过总线连接为例。

存储器41作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请任意实施例所述的系统升级法对应的程序指令/模块(例如,系统升级装置中的升级包下载模块301、镜像系统升级模块302和重启模块303)。存储器41可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器41可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

处理器40通过运行存储在存储器41中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的系统升级方法,该系统升级方法包括:检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,以升级所述初始系统中的镜像系统;新增升级脚本,以重启升级后的镜像系统,完成镜像系统升级。

上述提供的设备可用于执行上述实施例提供的系统升级方法,具备相应的功能和有益效果。

本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种系统升级方法,该系统升级方法包括:检测到初始系统异常或检测到用户升级操作时,从服务器下载系统升级包,其中,所述升级包包括全量升级包、增量升级包或差分升级包;应用所述系统升级包中的基础内核升级数据,修改与所述基础内核升级数据对应的系统启动项,以升级所述初始系统中的镜像系统;新增升级脚本,以重启升级后的镜像系统,完成镜像系统升级。

存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如cd-rom、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如dram、ddrram、sram、edoram,兰巴斯(rambus)ram等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。

当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的系统升级方法,还可以执行本申请任意实施例所提供的系统升级方法中的相关操作。

上述实施例中提供的系统升级装置、存储介质及设备可执行本申请任意实施例所提供的系统升级方法,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的系统升级方法。

注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。

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