CN106445616B - 终端设备从多系统至单系统的升级方法及装置 - Google Patents

终端设备从多系统至单系统的升级方法及装置 Download PDF

Info

Publication number
CN106445616B
CN106445616B CN201610889949.0A CN201610889949A CN106445616B CN 106445616 B CN106445616 B CN 106445616B CN 201610889949 A CN201610889949 A CN 201610889949A CN 106445616 B CN106445616 B CN 106445616B
Authority
CN
China
Prior art keywords
partition
image file
single system
file data
extracting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610889949.0A
Other languages
English (en)
Other versions
CN106445616A (zh
Inventor
赵攀
李立帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yuanxin Information Technology Group Co ltd
Original Assignee
Yuanxin Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yuanxin Technology filed Critical Yuanxin Technology
Priority to CN201610889949.0A priority Critical patent/CN106445616B/zh
Publication of CN106445616A publication Critical patent/CN106445616A/zh
Application granted granted Critical
Publication of CN106445616B publication Critical patent/CN106445616B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了终端设备从多系统至单系统的升级方法及升级装置,该升级方法包括:在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表;删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区;提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区。通过本发明,解决了现有技术在系统升级过程中无法改变终端设备中系统分区的问题,实现了将多系统的终端设备升级至单系统,解决了现有技术中无法将多系统的终端设备升级至单系统的问题,进一步地,提高了用户的使用体验。

Description

终端设备从多系统至单系统的升级方法及装置
技术领域
本发明涉及计算机技术领域,具体而言,本发明涉及一种终端设备从多系统至单系统的升级方法,及一种终端设备从多系统至单系统的升级装置。
背景技术
随着时代的发展,各种终端设备已成为人们生活中必不可少的工具,各种功能强大的终端操作系统及终端应用程序不断涌现,为用户带来了更加便捷的体验。然而,随着用户的使用需求不断的提高,出现了同一终端设备中根据不同的用户需求提供不同运行环境的解决方案,如设置特定用户在特定的受限运行环境下使用终端设备,或为同一用户在终端设备中的不同使用场景设置不同的运行环境。但是,随着用户的使用需求不断的变化,若用户已不再需要在同一终端设备中运行不同的运行环境时,现有技术,仅能将多系统的终端设备的各系统进行升级,无法将多系统的终端设备升级至单系统,用户仅可通过终端设备产商的指定售后服务机构进行单系统恢复的操作,但是,通过上述实现终端设备中运行单系统的方式,实现过程较为复杂,不但增加了用户的实现成本,且耗费用户的大量时间,从而降低了用户的使用体验。
因此,亟待需要一种将终端设备中的多操作系统升级为单操作系统的解决方案。
发明内容
为克服上述技术问题或者至少部分地解决上述技术问题,特提出以下技术方案:
本发明的实施例提出了一种终端设备从多系统至单系统的升级方法,包括:
在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表;
删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区;
提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区。
优选地,多系统中已划分的分区包括以下一种或多种分区:
各系统日志文件分区;各系统配置文件分区;各系统根文件系统分区;各系统boot分区;各系统system分区;各系统用户数据分区;各系统缓存分区。
优选地,提取系统升级包中与单系统的各个分区对应镜像文件数据,包括以下至少一种情形:
提取boot分区对应镜像文件中的系统内核数据和根文件系统数据,并写入单系统中对应的boot分区;
提取system分区对应系统镜像文件数据,并写入单系统中对应的system分区。
优选地,提取系统升级包中与单系统的各个分区对应镜像文件数据,包括:
从系统升级包中提取单系统的各个分区的镜像文件数据的位置标识信息;
根据各个分区的镜像文件数据的位置标识信息,从系统升级包中提取单系统的各个分区的镜像文件数据。
优选地,提取系统升级包中与单系统的各个分区对应镜像文件数据的步骤之后,还包括:
判断已提取的与单系统的各个分区对应镜像文件数据是否需要进行压缩处理;
若判断需要进行压缩处理,将镜像文件数据写入其对应的单系统的分区的步骤,包括:
对已提取的与单系统的各个分区对应镜像文件数据以预定压缩方式进行压缩处理,并对各压缩数据的起始位置和终止位置进行标识;
根据起始位置和终止位置的标识信息,提取各个分区对应镜像文件压缩数据;
将提取到的各个分区对应镜像文件压缩数据以预定压缩方式对应的解压方式进行解压,并将解压后的镜像文件数据写入其对应的单系统的分区。
可选地,该方法还包括:
将已获取的单系统的系统升级包存储至预定的隐藏分区中,预定的隐藏分区在删除多系统中已划分的分区时不被删除。
本发明的另一实施例提出了一种终端设备从多系统至单系统的升级装置,包括:
获取模块,用于在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表;
删除及分区模块,用于删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区;
提取及写入模块,用于提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区。
优选地,多系统中已划分的分区包括以下一种或多种分区:
各系统日志文件分区;各系统配置文件分区;各系统根文件系统分区;各系统boot分区;各系统system分区;各系统用户数据分区;各系统缓存分区。
优选地,提取及写入模块用于
提取boot分区对应镜像文件中的系统内核数据和根文件系统数据,并写入单系统中对应的boot分区;和/或
提取及写入模块用于提取system分区对应系统镜像文件数据,并写入单系统中对应的system分区。
优选地,提取及写入模块,包括:
第一提取单元,用于从系统升级包中提取单系统的各个分区的镜像文件数据的位置标识信息;
第二提取单元,用于根据各个分区的镜像文件数据的位置标识信息,从系统升级包中提取单系统的各个分区的镜像文件数据。
本发明的实施例中,提出了一种终端设备从多系统至单系统的升级方案,在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表,删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区,实现了对终端设备已划分的多系统的分区进行删除,并按照单系统的分区表进行重新分区,解决了现有技术在系统升级过程中无法改变终端设备中系统分区的问题,为实现将多系统的终端设备升级至单系统提供了必要的前提保障;提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区,实现了将多系统的终端设备升级至单系统,解决了现有技术中无法将多系统的终端设备升级至单系统的问题,进一步地,提高了用户的使用体验。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明中一个实施例的终端设备从多系统至单系统的升级方法的流程图;
图2为本发明中一个优选实施例的终端设备从多系统至单系统的升级过程流程图;
图3为本发明中另一实施例的多系统至单系统的升级装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
图1为本发明中一个实施例的终端设备从多系统至单系统的升级方法的流程图。
本发明的实施例中,各步骤所执行的内容概述如下:步骤S110:在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表;步骤S120:删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区;步骤S130:提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区。
本发明的实施例中,提出了一种终端设备从多系统至单系统的升级方法,在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表,删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区,实现了对终端设备已划分的多系统的分区进行删除,并按照单系统的分区表进行重新分区,解决了现有技术在系统升级过程中无法改变终端设备中系统分区的问题,为实现将多系统的终端设备升级至单系统提供了必要的前提保障;提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区,实现了将多系统的终端设备升级至单系统,解决了现有技术中无法将多系统的终端设备升级至单系统的问题,进一步地,提高了用户的使用体验。以下针对各个步骤的具体实现做进一步的说明:
步骤S110:在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表。
例如,在运行多系统的终端设备A中,当用户通过终端设备A的人机交互界面,点击多系统至单系统的升级按钮时,可检测到终端设备A从多系统至单系统的升级指令,随后向终端设备A系统升级服务对应的服务器发送升级请求,并接收服务器下发的单系统的系统升级包,其中,单系统的系统升级包中包括系统的镜像文件,并获取单系统的分区表;其中,单系统的分区表可以通过系统升级服务对应的服务器单独下发的方式来获取,也可以将分区表打包至单系统的系统升级包中与镜像文件一并获取,在此不做限定。
需要说明的是,本领域技术人员可以理解,镜像文件与rar、ZIP压缩包类似,它将特定的一系列文件按照一定的格式制作成单一的文件,以方便用户下载和使用,例如一个操作系统、游戏等。镜像文件还可以进一步扩展,在镜像文件中可以包含更多的信息,比如说系统文件、引导文件、分区表信息等,这样镜像文件就可以包含一个分区甚至是一块硬盘的所有信息。本发明的实施例中,镜像文件可包括单系统的系统文件、引导文件和分区表信息等。
步骤S120:删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区。
具体地,删除多系统终端设备中已划分的各分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区。
其中,多系统中已划分的分区包括以下一种或多种分区:
各系统日志文件分区;各系统配置文件分区;各系统根文件系统分区;各系统boot分区;各系统system分区;各系统用户数据分区;各系统缓存分区。
例如,在运行多系统运行环境的终端设备A中,检测到终端设备A从多系统至单系统的升级指令时,获取单系统的系统升级包的镜像文件,并从该系统升级包中获取单系统的分区表,若单系统的系统类型为Android系统时,单系统的分区表中可包括用于存储系统内核的boot分区、用于存储系统文件的system分区、用于存储系统缓存的cache分区、用于存储恢复文件的recovery分区和用于存储用户数据的userdata分区等分区;随后,删除多系统终端设备中已划分的各分区,如各系统配置文件分区、各系统根文件系统分区、各系统boot分区、各系统system分区、各系统用户数据分区、各系统缓存分区等分区,并根据获取到的单Android系统的分区表,终端设备进行重新分区,以划分成单Android系统的多个分区,如boot分区、system分区、cache分区、recovery分区和userdata分区等分区。
需要说明的是,本领域技术人员可以了解到,在多系统的终端设备中,若终端设备中的多系统中包括Android系统时,可通过Android系统提供的fastboot工具,对终端设备进行重新分区,它是Android SDK中提供的一种开发工具,支持通过USB线将手头的镜像文件更新/烧录到Android设备中;fastboot是Google定义的一种传输协议,它工作在Android设备与PC机两端;本发明的实施例中,对终端设备进行删除已有分区,以及对终端设备进行重新分区的方式可以有多种实现方式,在此不做限定。
步骤S130:提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区。
其中,提取系统升级包中与单系统的各个分区对应镜像文件数据,包括以下至少一种情形:
1)提取boot分区对应镜像文件中的系统内核数据和根文件系统数据,并写入单系统中对应的boot分区;
2)提取system分区对应系统镜像文件数据,并写入单系统中对应的system分区。
例如,在运行多系统运行环境的终端设备A中,检测到终端设备A从多系统至单系统的升级指令时,获取到单系统的Android系统升级包的镜像文件,删除多系统终端设备A中已划分的分区,并根据单Android系统的分区表对终端设备A进行重新分区,以及对单系统的Android系统升级包的镜像文件进行相应的解压,并打开终端设备A中重新划分Android系统的各分区,如图2中的步骤1;随后,顺序提取Android系统升级包中与Android系统的各个分区对应镜像文件数据,并将提取的镜像文件数据写入其对应的Android系统的分区。
优选地,在步骤S130中提取系统升级包中与单系统的各个分区对应镜像文件数据的步骤进一步包括步骤S131和步骤S132;步骤S131:从系统升级包中提取单系统的各个分区的镜像文件数据的位置标识信息;步骤S132:根据各个分区的镜像文件数据的位置标识信息,从系统升级包中提取单系统的各个分区的镜像文件数据。
例如,在运行多系统运行环境的终端设备A中,在对终端设备A升级到单系统的过程中,在对单系统的Android系统升级包的镜像文件进行相应的解压,并打开终端设备A中重新划分Android系统的各分区后,从Android系统升级包中顺序提取Android系统的各个分区的镜像文件数据的位置标识信息,如提取Android系统的boot分区的系统内核数据和根文件系统数据的镜像文件数据的起始位置标识信息,如“boot-001”,及终止位置标识信息,如“boot-500”,如图2中的步骤2;随后,根据各个分区的镜像文件数据的位置标识信息,从Android系统升级包镜像文件中提取Android系统的各个分区的镜像文件数据,如根据boot分区的镜像文件数据的位置标识信息,从Android系统升级包的镜像文件中提取起始位置从“boot-001”至终止位置为“boot-500”中的Android系统的boot分区的镜像文件数据。
优选地,在步骤S132提取系统升级包中与单系统的各个分区对应镜像文件数据的步骤之后,还包括步骤S133;步骤S133:判断已提取的与单系统的各个分区对应镜像文件数据是否需要进行压缩处理。
其中,若判断需要进行压缩处理,步骤S130中将镜像文件数据写入其对应的单系统的分区的步骤,进一步包括步骤S134、步骤S135和步骤S136;步骤S134:对已提取的与单系统的各个分区对应镜像文件数据以预定压缩方式进行压缩处理,并对各压缩数据的起始位置和终止位置进行标识;步骤S135:根据起始位置和终止位置的标识信息,提取各个分区对应镜像文件压缩数据;步骤S136:将提取到的各个分区对应镜像文件压缩数据以预定压缩方式对应的解压方式进行解压,并将解压后的镜像文件数据写入其对应的单系统的分区。
例如,接上例,判断已提取的与单Android系统的各个分区对应镜像文件数据是否需要进行压缩处理,如从Android系统升级包的镜像文件中提取boot分区的镜像文件数据之后,判断提取boot分区的镜像文件数据是否需要进行压缩处理;若需要进行压缩处理,则对已提取的与单Android系统的各个分区对应镜像文件数据以预定压缩方式进行压缩处理,并对各压缩数据的起始位置和终止位置进行标识,如对已提取boot分区的镜像文件数据以预定稀疏镜像的压缩方式进行压缩处理,将boot分区的镜像文件中删除字节为重复的0表示的数据,同时,对压缩处理后的boot分区的镜像文件数据的起始位置和终止位置进行标识,如起始位置为“boot-001”,终止位置为“boot-270”,如图2中的步骤3;随后,根据起始位置和终止位置的标识信息,提取各个分区对应镜像文件压缩数据,如根据boot分区的镜像文件数据的起始位置和终止位置的标识信息,提取从Android系统升级包的镜像文件中提取起始位置为“boot-001”至终止位置为“boot-270”的boot分区的镜像文件数据,如图2中的4.1步骤;随后,将提取到的各个分区对应镜像文件压缩数据以预定压缩方式对应的解压方式进行解压,如以预定稀疏镜像的压缩方式对应的解压方式对提取到的各个分区对应镜像文件进行解压处理,并将解压后的镜像文件数据写入其对应的单Android系统的分区,如将提取到的boot分区对应镜像文件压缩数据以预定稀疏镜像的压缩方式对应的解压方式进行解压处理,如图2中的步骤5,并将解压后的镜像文件数据写入其对应的重新划分的单Android系统的boot分区,如图2中的6步骤;若判断提取的分区的镜像文件数据不需要进行压缩处理,则读取该分区的镜像文件数据,如图2中的步骤4.2,随后将读取的该分区的镜像文件数据写入其对应的单Android系统的分区,如图2中的步骤6;当一个分区的镜像文件数据写入其对应的单Android系统的分区后,如图2中所示,顺序进行下一个分区的镜像文件读写操作,再次进入图2中的步骤2,直至所有分区的镜像文件写入其对应的单Android系统的分区,则完成将多系统的终端设备A至单Android系统的升级操作,如图2中的步骤8。
需要说明的是,本领域技术人员可以了解到,在UNIX文件操作中,文件位移量可以大于文件的当前长度,在这种情况下,对该文件的下一次写将延长该文件,并在文件中构成一个空洞。位于文件中但没有写过的字节都被设为0。如果offset比文件的当前长度更大,下一个写操作就会把文件“撑大(extend)”在文件里创造“空洞(hole)”。没有被实际写入文件的所有字节由重复的0表示(不停地填充0)。空洞是否占用硬盘空间是由文件系统(filesystem)决定的。因此,若本发明实施例中的单Android系统的升级包镜像文件中存在字节为重复的0表示的数据时,则需要采用预定的压缩方式对各分区表对应的镜像文件进行压缩处理。
在一优选实施例中,该方法还包括步骤S140;步骤S140:将已获取的单系统的系统升级包存储至预定的隐藏分区中,预定的隐藏分区在删除多系统中已划分的分区时不被删除。
例如,在运行多系统运行环境的终端设备A中,在对终端设备A升级到单Android系统的过程中,将已获取的单Android系统的系统升级包的镜像文件存储至预定的隐藏分区中,预定的隐藏分区在删除多系统中已划分的多系统的分区时不被删除,完成对终端设备A重新划分单Android系统的各个分区后,从预定的隐藏分区中获取单Android系统的系统升级包的镜像文件进行升级操作。
通过本实施例,避免了在删除多系统中已划分的分区时将已获取的单系统的系统升级包删除的情况,使得多系统的终端设备能够升级至单系统,为终端设备从多系统升级至单系统提供了重要的前提保障。
图3为本发明中另一实施例的多系统至单系统的升级装置的结构示意图。
本发明的实施例中,各模块所执行的内容概述如下:获取模块310用于在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表;删除及分区模块320用于删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区;提取及写入模块330用于提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区。
本发明的实施例中,提出了一种终端设备从多系统至单系统的升级装置,在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表,删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区,实现了对终端设备已划分的多系统的分区进行删除,并按照单系统的分区表进行重新分区,解决了现有技术在系统升级过程中无法改变终端设备中系统分区的问题,为实现将多系统的终端设备升级至单系统提供了必要的前提保障;提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区,实现了将多系统的终端设备升级至单系统,解决了现有技术中无法将多系统的终端设备升级至单系统的问题,进一步地,提高了用户的使用体验。以下针对各个模块的具体实现做进一步的说明:
获取模块310用于在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表。
例如,在运行多系统的终端设备A中,当用户通过终端设备A的人机交互界面,点击多系统至单系统的升级按钮时,获取模块310可检测到终端设备A从多系统至单系统的升级指令,随后向终端设备A系统升级服务对应的服务器发送升级请求,并接收服务器下发的单系统的系统升级包,其中,单系统的系统升级包中包括系统的镜像文件,并获取单系统的分区表;其中,单系统的分区表可以通过系统升级服务对应的服务器单独下发的方式来获取,也可以将分区表打包至单系统的系统升级包中与镜像文件一并获取,在此不做限定。
需要说明的是,本领域技术人员可以理解,镜像文件与rar、ZIP压缩包类似,它将特定的一系列文件按照一定的格式制作成单一的文件,以方便用户下载和使用,例如一个操作系统、游戏等。镜像文件还可以进一步扩展,在镜像文件中可以包含更多的信息,比如说系统文件、引导文件、分区表信息等,这样镜像文件就可以包含一个分区甚至是一块硬盘的所有信息。本发明的实施例中,镜像文件可包括单系统的系统文件、引导文件和分区表信息等。
删除及分区模块320用于删除多系统中已划分的分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区。
具体地,删除多系统终端设备中已划分的各分区,并根据单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区。
其中,多系统中已划分的分区包括以下一种或多种分区:
各系统日志文件分区;各系统配置文件分区;各系统根文件系统分区;各系统boot分区;各系统system分区;各系统用户数据分区;各系统缓存分区。
例如,在运行多系统运行环境的终端设备A中,获取模块310检测到终端设备A从多系统至单系统的升级指令时,获取单系统的系统升级包的镜像文件,并从该系统升级包中获取单系统的分区表,若单系统的系统类型为Android系统时,单系统的分区表中可包括用于存储系统内核的boot分区、用于存储系统文件的system分区、用于存储系统缓存的cache分区、用于存储恢复文件的recovery分区和用于存储用户数据的userdata分区等分区;随后,删除及分区模块320删除多系统终端设备中已划分的各分区,如各系统配置文件分区、各系统根文件系统分区、各系统boot分区、各系统system分区、各系统用户数据分区、各系统缓存分区等分区,并根据获取到的单Android系统的分区表,终端设备进行重新分区,以划分成单Android系统的多个分区,如boot分区、system分区、cache分区、recovery分区和userdata分区等分区。
需要说明的是,本领域技术人员可以了解到,在多系统的终端设备中,若终端设备中的多系统中包括Android系统时,可通过Android系统提供的fastboot工具,对终端设备进行重新分区,它是Android SDK中提供的一种开发工具,支持通过USB线将手头的镜像文件更新/烧录到Android设备中;fastboot是Google定义的一种传输协议,它工作在Android设备与PC机两端;本发明的实施例中,对终端设备进行删除已有分区,以及对终端设备进行重新分区的方式可以有多种实现方式,在此不做限定。
提取及写入模块330用于提取系统升级包中与单系统的各个分区对应镜像文件数据,并将镜像文件数据写入其对应的单系统的分区。
其中,提取及写入模块330用于提取boot分区对应镜像文件中的系统内核数据和根文件系统数据,并写入单系统中对应的boot分区;和/或
提取及写入模块330用于提取system分区对应系统镜像文件数据,并写入单系统中对应的system分区。
例如,在运行多系统运行环境的终端设备A中,获取模块310检测到终端设备A从多系统至单系统的升级指令时,获取到单系统的Android系统升级包的镜像文件,删除及分区模块320删除多系统终端设备A中已划分的分区,并根据单Android系统的分区表对终端设备A进行重新分区,以及对单系统的Android系统升级包的镜像文件进行相应的解压,并打开终端设备A中重新划分Android系统的各分区;随后,提取及写入模块330顺序提取Android系统升级包中与Android系统的各个分区对应镜像文件数据,并将提取的镜像文件数据写入其对应的Android系统的分区。
优选地,提取及写入模块330进一步包括第一提取单元和第二提取单元;第一提取单元用于从系统升级包中提取单系统的各个分区的镜像文件数据的位置标识信息;第二提取单元用于根据各个分区的镜像文件数据的位置标识信息,从系统升级包中提取单系统的各个分区的镜像文件数据。
例如,在运行多系统运行环境的终端设备A中,在对终端设备A升级到单系统的过程中,在对单系统的Android系统升级包的镜像文件进行相应的解压,并打开终端设备A中重新划分Android系统的各分区后,第一提取单元从Android系统升级包中顺序提取Android系统的各个分区的镜像文件数据的位置标识信息,如提取Android系统的boot分区的系统内核数据和根文件系统数据的镜像文件数据的起始位置标识信息,如“boot-001”,及终止位置标识信息,如“boot-500”;随后,第二提取单元根据各个分区的镜像文件数据的位置标识信息,从Android系统升级包镜像文件中提取Android系统的各个分区的镜像文件数据,如根据boot分区的镜像文件数据的位置标识信息,从Android系统升级包的镜像文件中提取起始位置从“boot-001”至终止位置为“boot-500”中的Android系统的boot分区的镜像文件数据。
优选地,提取及写入模块330还包括判断单元;判断单元用于判断已提取的与单系统的各个分区对应镜像文件数据是否需要进行压缩处理。
其中,若判断需要进行压缩处理,提取及写入模块330进一步包括压缩单元、第三提取单元和解压单元;压缩单元用于对已提取的与单系统的各个分区对应镜像文件数据以预定压缩方式进行压缩处理,并对各压缩数据的起始位置和终止位置进行标识;第三提取单元用于根据起始位置和终止位置的标识信息,提取各个分区对应镜像文件压缩数据;解压单元用于将提取到的各个分区对应镜像文件压缩数据以预定压缩方式对应的解压方式进行解压,并将解压后的镜像文件数据写入其对应的单系统的分区。
例如,接上例,判断单元判断已提取的与单Android系统的各个分区对应镜像文件数据是否需要进行压缩处理,如从Android系统升级包的镜像文件中提取boot分区的镜像文件数据之后,判断单元判断提取boot分区的镜像文件数据是否需要进行压缩处理;若需要进行压缩处理,则压缩单元对已提取的与单Android系统的各个分区对应镜像文件数据以预定压缩方式进行压缩处理,并对各压缩数据的起始位置和终止位置进行标识,如对已提取boot分区的镜像文件数据以预定稀疏镜像的压缩方式进行压缩处理,将boot分区的镜像文件中删除字节为重复的0表示的数据,同时,对压缩处理后的boot分区的镜像文件数据的起始位置和终止位置进行标识,如起始位置为“boot-001”,终止位置为“boot-270”;随后,第三提取单元根据起始位置和终止位置的标识信息,提取各个分区对应镜像文件压缩数据,如根据boot分区的镜像文件数据的起始位置和终止位置的标识信息,提取从Android系统升级包的镜像文件中提取起始位置为“boot-001”至终止位置为“boot-270”的boot分区的镜像文件数据;随后,解压单元将提取到的各个分区对应镜像文件压缩数据以预定压缩方式对应的解压方式进行解压,如以预定稀疏镜像的压缩方式对应的解压方式对提取到的各个分区对应镜像文件进行解压处理,并将解压后的镜像文件数据写入其对应的单Android系统的分区,如将提取到的boot分区对应镜像文件压缩数据以预定稀疏镜像的压缩方式对应的解压方式进行解压处理,并将解压后的镜像文件数据写入其对应的重新划分的单Android系统的boot分区;若判断提取的分区的镜像文件数据不需要进行压缩处理,则读取该分区的镜像文件数据,随后将读取的该分区的镜像文件数据写入其对应的单Android系统的分区;当一个分区的镜像文件数据写入其对应的单Android系统的分区后,提取及写入模块330顺序进行下一个分区的镜像文件读写操作,从Android系统升级包中顺序提取Android系统的下一个分区的镜像文件数据的位置标识信息,直至所有分区的镜像文件写入其对应的单Android系统的分区,则完成将多系统的终端设备A至单Android系统的升级操作。
需要说明的是,本领域技术人员可以了解到,在UNIX文件操作中,文件位移量可以大于文件的当前长度,在这种情况下,对该文件的下一次写将延长该文件,并在文件中构成一个空洞。位于文件中但没有写过的字节都被设为0。如果offset比文件的当前长度更大,下一个写操作就会把文件“撑大(extend)”在文件里创造“空洞(hole)”。没有被实际写入文件的所有字节由重复的0表示(不停地填充0)。空洞是否占用硬盘空间是由文件系统(filesystem)决定的。因此,若本发明实施例中的单Android系统的升级包镜像文件中存在字节为重复的0表示的数据时,则需要采用预定的压缩方式对各分区表对应的镜像文件进行压缩处理。
在一优选实施例中,该装置还包括存储模块;存储模块用于将已获取的单系统的系统升级包存储至预定的隐藏分区中,预定的隐藏分区在删除多系统中已划分的分区时不被删除。
例如,在运行多系统运行环境的终端设备A中,在对终端设备A升级到单Android系统的过程中,存储模块将已获取的单Android系统的系统升级包的镜像文件存储至预定的隐藏分区中,预定的隐藏分区在删除多系统中已划分的多系统的分区时不被删除,完成对终端设备A重新划分单Android系统的各个分区后,从预定的隐藏分区中获取单Android系统的系统升级包的镜像文件进行升级操作。
通过本实施例,避免了在删除多系统中已划分的分区时将已获取的单系统的系统升级包删除的情况,使得多系统的终端设备能够升级至单系统,为终端设备从多系统升级至单系统提供了重要的前提保障。
本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (7)

1.一种终端设备从多系统至单系统的升级方法,其特征在于,包括:
在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表;
删除多系统中已划分的分区,并根据所述单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区;
提取所述系统升级包中与单系统的各个分区对应镜像文件数据,并将所述镜像文件数据写入其对应的单系统的分区;
其中,所述方法还包括:
将已获取的单系统的系统升级包存储至预定的隐藏分区中,所述预定的隐藏分区在删除多系统中已划分的分区时不被删除;
所述提取所述系统升级包中与单系统的各个分区对应镜像文件数据,包括:
从所述系统升级包中提取单系统的各个分区的镜像文件数据的位置标识信息;
根据各个分区的镜像文件数据的位置标识信息,从所述系统升级包中提取单系统的各个分区的镜像文件数据。
2.根据权利要求1所述的升级方法,其特征在于,所述多系统中已划分的分区包括以下一种或多种分区:
各系统日志文件分区;各系统配置文件分区;各系统根文件系统分区;各系统boot分区;各系统system分区;各系统用户数据分区;各系统缓存分区。
3.根据权利要求1所述的升级方法,其特征在于,所述提取所述系统升级包中与单系统的各个分区对应镜像文件数据,包括以下至少一种情形:
提取boot分区对应镜像文件中的系统内核数据和根文件系统数据,并写入单系统中对应的boot分区;
提取system分区对应系统镜像文件数据,并写入单系统中对应的system分区。
4.根据权利要求1所述的升级方法,其特征在于,所述提取所述系统升级包中与单系统的各个分区对应镜像文件数据的步骤之后,还包括:
判断已提取的与单系统的各个分区对应镜像文件数据是否需要进行压缩处理;
若判断需要进行压缩处理,所述将所述镜像文件数据写入其对应的单系统的分区的步骤,包括:
对已提取的与单系统的各个分区对应镜像文件数据以预定压缩方式进行压缩处理,并对各压缩数据的起始位置和终止位置进行标识;
根据起始位置和终止位置的标识信息,提取各个分区对应镜像文件压缩数据;
将提取到的各个分区对应镜像文件压缩数据以预定压缩方式对应的解压方式进行解压,并将解压后的镜像文件数据写入其对应的单系统的分区。
5.一种终端设备从多系统至单系统的升级装置,其特征在于,包括:
获取模块,用于在多系统运行环境中检测到从多系统至单系统的升级指令时,获取单系统的系统升级包及单系统的分区表;
删除及分区模块,用于删除多系统中已划分的分区,并根据所述单系统的分区表对终端设备进行重新分区,以划分成单系统的多个分区;
提取及写入模块,用于提取所述系统升级包中与单系统的各个分区对应镜像文件数据,并将所述镜像文件数据写入其对应的单系统的分区;
其中,所述装置还包括:
存储模块,用于将已获取的单系统的系统升级包存储至预定的隐藏分区中,所述预定的隐藏分区在删除多系统中已划分的分区时不被删除;
所述提取及写入模块,包括:
第一提取单元,用于从所述系统升级包中提取单系统的各个分区的镜像文件数据的位置标识信息;
第二提取单元,用于根据各个分区的镜像文件数据的位置标识信息,从所述系统升级包中提取单系统的各个分区的镜像文件数据。
6.根据权利要求5所述的升级装置,其特征在于,所述多系统中已划分的分区包括以下一种或多种分区:
各系统日志文件分区;各系统配置文件分区;各系统根文件系统分区;各系统boot分区;各系统system分区;各系统用户数据分区;各系统缓存分区。
7.根据权利要求5所述的升级装置,其特征在于,所述提取及写入模块用于提取boot分区对应镜像文件中的系统内核数据和根文件系统数据,并写入单系统中对应的boot分区;和/或
所述提取及写入模块用于提取system分区对应系统镜像文件数据,并写入单系统中对应的system分区。
CN201610889949.0A 2016-10-12 2016-10-12 终端设备从多系统至单系统的升级方法及装置 Active CN106445616B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610889949.0A CN106445616B (zh) 2016-10-12 2016-10-12 终端设备从多系统至单系统的升级方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610889949.0A CN106445616B (zh) 2016-10-12 2016-10-12 终端设备从多系统至单系统的升级方法及装置

Publications (2)

Publication Number Publication Date
CN106445616A CN106445616A (zh) 2017-02-22
CN106445616B true CN106445616B (zh) 2020-02-11

Family

ID=58173654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610889949.0A Active CN106445616B (zh) 2016-10-12 2016-10-12 终端设备从多系统至单系统的升级方法及装置

Country Status (1)

Country Link
CN (1) CN106445616B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109298873B (zh) * 2017-07-18 2023-05-09 中兴通讯股份有限公司 一种系统升级方法及装置
CN109375937A (zh) * 2018-10-30 2019-02-22 Oppo广东移动通信有限公司 系统升级方法、装置、终端设备及存储介质
CN109358864A (zh) * 2018-12-13 2019-02-19 晶晨半导体(上海)股份有限公司 系统升级方法及装置
CN110865837B (zh) * 2019-11-14 2023-08-18 青岛海信移动通信技术有限公司 一种进行系统升级的方法和终端
CN113821234B (zh) * 2021-06-15 2023-01-03 荣耀终端有限公司 操作系统升级方法、设备、存储介质及计算机程序产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425527A (zh) * 2012-05-23 2013-12-04 腾讯科技(深圳)有限公司 多系统切换方法和切换装置
CN103984571A (zh) * 2014-05-21 2014-08-13 华为技术有限公司 一种更新操作系统分区的方法和装置
CN104182301A (zh) * 2014-08-26 2014-12-03 山东超越数控电子有限公司 一种中标麒麟操作系统的备份方法及还原方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7430661B2 (en) * 2004-09-09 2008-09-30 Hewlett-Packard Development Company, L.P. System and method of storing user data in a partition file or using a partition file containing user data
CN102141921A (zh) * 2010-02-03 2011-08-03 华为终端有限公司 一种终端设备系统升级方法及终端设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425527A (zh) * 2012-05-23 2013-12-04 腾讯科技(深圳)有限公司 多系统切换方法和切换装置
CN103984571A (zh) * 2014-05-21 2014-08-13 华为技术有限公司 一种更新操作系统分区的方法和装置
CN104182301A (zh) * 2014-08-26 2014-12-03 山东超越数控电子有限公司 一种中标麒麟操作系统的备份方法及还原方法

Also Published As

Publication number Publication date
CN106445616A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
CN106445616B (zh) 终端设备从多系统至单系统的升级方法及装置
CN108027753B (zh) 车载控制装置、程序更新系统以及保存有程序更新软件的存储介质
CN108650287B (zh) 物联网中的终端设备的升级方法、设备及计算机可读介质
EP2998861B1 (en) Implementing and deleting method and device for intelligent terminal multi-operation system
CN107229420B (zh) 数据存储方法、读取方法、删除方法和数据操作系统
US20170139786A1 (en) File level recovery using virtual machine image level backup with selective compression
CN103970557B (zh) 存储设备启动系统的方法及存储设备
CN114661322B (zh) 操作系统的升级方法、电子设备及存储介质
CN106293782A (zh) 一种系统升级方法及终端
WO2018040802A1 (zh) 一种全镜像文件的生成方法及装置、计算机存储介质
CN112181471A (zh) 差分升级方法及装置、存储介质、计算机设备
CN111258666A (zh) 计算机文件的读取方法、装置、计算机系统及存储介质
CN101587451A (zh) 一种基于efi固件的数据备份和恢复方法
CN113722150A (zh) 云硬盘数据压缩备份及恢复方法、装置、设备及存储介质
CN109918545B (zh) 传感器数据的提取方法及装置
JP2008129678A (ja) ファイル圧縮自動判定方式および方法、並びに、プログラム
US20170109239A1 (en) Efficient Processing of File System Objects for Image Level Backups
CN111552517A (zh) 应用程序启动方法、装置、电子设备及计算机存储介质
CN107220146B (zh) 一种文件扫描恢复方法及装置
CN104991796A (zh) 一种连续升级的方法及装置
CN114328134B (zh) 计算机内存动态测试系统
JP6773980B2 (ja) 情報処理装置、情報処理方法、及び、情報処理プログラム
US10387054B2 (en) Secure element including a non-volatile memory and methods for saving and restoring data including defragmenting and compressing data stored in occupied and free regions
CN112912841A (zh) 硬件升级方法、装置、设备和存储介质
CN109002710B (zh) 一种检测方法、装置及计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210205

Address after: 101300 room 153, 1 / F, building 17, 16 Caixiang East Road, Nancai Town, Shunyi District, Beijing

Patentee after: Yuanxin Information Technology Group Co.,Ltd.

Address before: 100176 room 2222, building D, building 33, 99 Kechuang 14th Street, Beijing Economic and Technological Development Zone, Beijing

Patentee before: BEIJING YUANXIN SCIENCE & TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20170222

Assignee: Beijing Yuanxin Junsheng Technology Co.,Ltd.

Assignor: Yuanxin Information Technology Group Co.,Ltd.

Contract record no.: X2021110000018

Denomination of invention: Method and device for upgrading terminal equipment from multi system to single system

Granted publication date: 20200211

License type: Common License

Record date: 20210531

EE01 Entry into force of recordation of patent licensing contract