CN108595113A - 一种分区调整的方法及终端 - Google Patents

一种分区调整的方法及终端 Download PDF

Info

Publication number
CN108595113A
CN108595113A CN201810239035.9A CN201810239035A CN108595113A CN 108595113 A CN108595113 A CN 108595113A CN 201810239035 A CN201810239035 A CN 201810239035A CN 108595113 A CN108595113 A CN 108595113A
Authority
CN
China
Prior art keywords
blockette
block
terminal
size
subregion
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.)
Pending
Application number
CN201810239035.9A
Other languages
English (en)
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.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication Co Ltd
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 Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Priority to CN201810239035.9A priority Critical patent/CN108595113A/zh
Publication of CN108595113A publication Critical patent/CN108595113A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

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

Abstract

本发明实施例提供一种分区调整的方法及终端,应用于终端技术领域,以解决终端的操作系统发生故障的问题。该方法包括:在检测到触发终端升级操作系统时,获取第一分区表,该第一分区表用于指示该操作系统升级后该终端的存储空间中的M个目标分区块,该M个目标分区块包括第一系统分区块,该第一系统分区块用于存储该操作系统升级后的系统数据,M为正整数;确定该终端的存储空间中的M个当前分区块,该M个当前分区块包括第二系统分区块,该第二系统分区块用于存储该终端当前的操作系统的系统数据;在该第二系统分区块的大小小于该第一系统分区块的大小时,根据该第一分区表调整该第二系统分区块。

Description

一种分区调整的方法及终端
技术领域
本发明实施例涉及终端技术领域,尤其涉及一种分区调整的方法及终端。
背景技术
随着终端技术的发展,用户使用终端的频率越来越高,用户对终端的操作系统的系统稳定性的要求也越来越高。
升级终端的操作系统可以修复终端的漏洞(bug)或者为终端增加新的功能。通常,当终端的操作系统升级后,终端的存储空间中用于存储系统数据的分区可能不足以存储升级后的系统数据,此时可能需要调整终端的存储空间中用于存储系统数据的分区。目前调整终端的存储空间中用于存储系统数据的分区主要包括下述步骤:技术人员(例如:售后的维修员)首先将终端通过通用串行总线(Universal Serial Bus,USB)接口与电脑连接,并触发终端将终端中需要备份的数据(包括:设备信息、校准数据、出厂重要数据以及用户数据等)通过USB接口备份到电脑的存储空间中;然后再触发终端调整终端的存储空间中用于存储系统数据的分区的大小;最后技术人员再将备份到电脑的存储空间中的数据拷贝到终端的存储空间中经过调整后的对应分区中。
然而,由于上述调整分区的过程通常需要由专业的技术人员操作才能实现,而对于终端用户来说该过程操作复杂,调整难度较高,因此如果用户在终端分区未调整时(例如终端用户强制触发终端升级)触发升级终端的操作系统,那么可能使得终端的存储空间中用于存储系统数据的分区不足以存储升级后的系统数据,从而导致终端的操作系统发生故障。
发明内容
本发明实施例提供一种分区调整的方法及终端,以解决终端的操作系统发生故障的问题。
为了解决上述技术问题,本发明实施例是这样实现的:
第一方面,本发明实施例提供一种分区调整的方法,该方法包括:在检测到触发终端升级操作系统时,获取第一分区表,所述第一分区表用于指示所述操作系统升级后所述终端的存储空间中的M个目标分区块,所述M个目标分区块包括第一系统分区块,所述第一系统分区块用于存储所述操作系统升级后的系统数据,M为正整数;确定所述终端的存储空间中的M个当前分区块,所述M个当前分区块包括第二系统分区块,所述第二系统分区块用于存储所述终端当前的操作系统的系统数据;在所述第二系统分区块的大小小于所述第一系统分区块的大小时,根据所述第一分区表调整所述第二系统分区块。
第二方面,本发明实施例还提供了一种终端,该终端包括获取模块、确定模块和调整模块;所述获取模块,用于在检测到触发终端升级操作系统时,获取第一分区表,所述第一分区表用于指示所述操作系统升级后所述终端的存储空间中的M个目标分区块,所述M个目标分区块包括第一系统分区块,所述第一系统分区块用于存储所述操作系统升级后的系统数据,M为正整数;所述确定模块,用于确定所述终端的存储空间中的M个当前分区块,所述M个当前分区块包括第二系统分区块,所述第二系统分区块用于存储所述终端当前的操作系统的系统数据;所述调整模块,用于在所述第二系统分区块的大小小于所述第一系统分区块的大小时,根据所述获取模块获取的所述第一分区表调整所述第二系统分区块。
第三方面,本发明实施例提供了一种终端,包括处理器、存储器及存储在该存储器上并可在该处理器上运行的计算机程序,该计算机程序被该处理器执行时实现如第一方面所述的分区调整的方法的步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第一方面所述的分区调整的方法的步骤。
在本发明实施例中,本发明实施例提供的分区调整的方法,终端在检测到触发终端升级操作系统时,首先获取第一分区表,第一分区表用于指示操作系统升级后终端的存储空间中的M个目标分区块,M个目标分区块包括第一系统分区块,第一系统分区块用于存储操作系统升级后的系统数据;其次,终端确定终端的存储空间中的M个当前分区块,M个当前分区块包括第二系统分区块,第二系统分区块用于存储终端当前的操作系统的系统数据;最后,在第二系统分区块的大小小于第一系统分区块的大小时,终端根据第一分区表调整第二系统分区块。由于第二系统分区块的大小小于第一系统分区块的大小表示终端在升级终端的操作系统后,当前分区的系统分区块的存储空间不足以存储当前系统升级后的操作系统的系统数据,因此,在第二系统分区块的大小小于第一系统分区块的大小时根据第一分区表调整第二系统分区块,可以使得调整后的第二系统分区块的大小可以满足存储当前系统升级后的操作系统的系统数据,避免了操作系统发生故障导致的操作系统崩溃、终端无法开机或用户数据丢失的问题。
附图说明
图1为本发明实施例提供的一种可能的安卓操作系统的架构示意图;
图2为本发明实施例提供的一种分区调整的方法流程示意图;
图3为本发明实施例提供的一种存储空间分区的示意图;
图4为本发明实施例提供的又一种分区调整的方法流程示意图;
图5为本发明实施例提供的一种分区调整的示意图;
图6为本发明实施例提供的又一种分区调整的示意图;
图7为本发明实施例提供的又一种分区调整的示意图;
图8为本发明实施例提供的又一种分区调整的示意图;
图9为本发明实施例提供的一种可能的终端的结构示意图;
图10为本发明各个实施例的一种终端的硬件结构示意图。
具体实施方式
首先,介绍一下与本发明实施例相关的现有技术:
1、存储空间
存储空间指数据存储所需要的介质或者某个存储设备的总容量,例如256兆(MB)的内存、128MB的U盘(即USB闪存盘)、80GB的硬盘等。
2、分区
分区是对存储空间的一种格式化,创建分区时已经设置了存储空间的各项物理参数。
目前,终端分区主要包括:boot分区、system分区、recovery分区、userdate分区、cache分区、modem分区、sbl1(second boot loader1)分区、aboot分区、splash分区、modemst1分区、modemst2分区以及fsg分区等。其中,boot分区包括了内核(kernel)和内存盘(ramdisk)两部分,若没有boot分区,则终端通常无法启动到安卓系统。system分区除了内核(kernel)和内存盘(ramdisk),包含了整个安卓操作系统的其他数据。system分区包括安卓用户界面、和所有预装的系统应用程序。recovery分区可以使终端进入recovery程序,recovery程序的功能为Android机备份功能,是一种可以对安卓机内部的数据或系统进行修改的模式。userdate分区也叫用户数据区,包含了用户的数据:联系人、短信、设置、用户安装的程序,擦除userdate分区的数据,等同于终端恢复出厂设置。cache分区是安卓系统缓存区,保存系统最常访问的数据和应用程序,擦除了cache分区中已经保存的缓存内容,不会影响个人数据,缓存内容会在后续终端使用过程中重新自动生成。modem分区主要管理终端的基带部分以及无线管理(终端无线信号、蓝牙、无线保真(Wireless-Fidelity,wifi)等)。sbl1分区中存放引导程序,在little kernel(lk)前启动,起到引导lk的作用,lk主要是初始化相关底层硬件,起到引导boot的作用。aboot分区放置设lk相关系统文件。splash该分区主要存放开机的第一帧画面。modemst1、modemst2以及fsg用于存放终端的射频参数(与modem分区相关的一些参数)。
3、分区表
分区表是将大表的数据分成称为分区的许多小的子集,有FAT32类型,NTFST32类型,NTFS类型以及Linux类型。若存储空间丢失分区表,数据就无法按顺序读取和写入,导致无法操作。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本文中的“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。“多个”是指两个或多于两个。
需要说明的是,本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本发明实施例中的终端可以为具有操作系统的终端。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本发明实施例不作具体限定。
下面以安卓操作系统为例,介绍一下本发明实施例提供的分区调整的方法所应用的软件环境。
如图1所示,为本发明实施例提供的一种可能的安卓操作系统的架构示意图。在图1中,安卓操作系统的架构包括4层,分别为:应用程序层、应用程序框架层、系统运行库层和内核层(具体可以为Linux内核层)。
其中,应用程序层包括安卓操作系统中的各个应用程序(包括系统应用程序和第三方应用程序)。
应用程序框架层是应用程序的框架,开发人员可以在遵守应用程序的框架的开发原则的情况下,基于应用程序框架层开发一些应用程序。
系统运行库层包括库(也称为系统库)和安卓操作系统运行环境。库主要为安卓操作系统提供其所需的各类资源。安卓操作系统运行环境用于为安卓操作系统提供软件环境。
内核层是安卓操作系统的操作系统层,属于安卓操作系统软件层次的最底层。内核层基于Linux内核为安卓操作系统提供核心系统服务和与硬件相关的驱动程序。
以安卓操作系统为例,本发明实施例中,开发人员可以基于上述如图1所示的安卓操作系统的系统架构,开发实现本发明实施例提供的分区调整的方法的软件程序,从而使得该分区调整的方法可以基于如图1所示的安卓操作系统运行。即处理器或者终端设备可以通过在安卓操作系统中运行该软件程序实现本发明实施例提供的分区调整的方法。
下面结合图2对本发明实施例的分区调整的方法进行说明,图2为本发明实施例提供的一种分区调整的方法流程示意图,步骤包括S201-S203:
S201、终端在检测到触发终端升级操作系统时,获取第一分区表,第一分区表用于指示操作系统升级后终端的存储空间中的M个目标分区块,M个目标分区块包括第一系统分区块,第一系统分区块用于存储操作系统升级后的系统数据,M为正整数。
通常,终端中通常保存有终端当前操作系统对应的存储空间的分区表,为了便于说明,本发明实施例将第二分区表记为终端当前操作系统对应的分区表,第一分区表为服务器根据第二分区表、操作系统升级后的系统数据的所占的存储空间大小,以及操作系统升级后的系统数据所占的分区数量生成的,本发明实施例对此不作具体限定。
需要说明的是,终端获取第一分区表可以同操作系统的系统升级包一起获取,也可以在获取系统升级包之前获取第一分区表,本发明实施例对此不作具体限定。
需要说明的是,实际的存储空间并无“分区块”,为了便于描述,将实际的存储空间的K个分区人为划分为M个部分,每个部分包括至少一个分区,称为分区块,K为大于或等于M的正整数。
S202、终端确定终端的存储空间中的M个当前分区块,M个当前分区块包括第二系统分区块,第二系统分区块用于存储终端当前的操作系统的系统数据。
可选的,终端确定终端的存储空间中的M个当前分区块可以通过终端中的第二分区表查看,也可以直接查看终端的存储空间的实际分区,也可以通过服务器获取当前版本的操作系统对应的终端的第二分区表,本发明实施例对此不作具体限定。
需要说明的是,终端的存储空间中的M个当前分区块可能与操作系统升级后终端的存储空间中的M个目标分区块相同,也可能不同,其中,分区块的起始地址和结束地址不同、分区块内的分区的名称不同、分区块内的分区的起始地址和结束地址不同均表示M个当前分区块和M个目标分区块不同。
可选的,M个目标分区块/M个当前分区块至少还包括第一分区块、第二分区块和第三分区块;第一分区块用于存储终端的硬件数据、出厂校验数据以及操作系统的修复模式的数据(即,该分区块中的数据不需要升级);第二分区块为备用分区块;第三分区块用于存储用户数据;每个分区块包括至少一个分区,每个分区内的物理地址连续,第一分区块的结束地址与第一系统分区块的起始地址/第二系统分区块的起始地址连续,第一系统分区块的结束地址/第二系统分区块的结束地址与第二分区块的起始地址连续,第二分区块的结束地址与第三分区块的起始地址连续。
需要说明的是,本发明实施例中的“备用分区块”表示该分区块对应的分区未存储数据,或者该分区块对应的分区中存储的数据格式化后对用户数据或终端的使用无影响,终端可以使用该备用分区块调整终端的存储空间的分区,本发明实施例对此不作具体限定。
可选的,当备用分区块对应的分区中存储了数据,终端可以将存储的数据删除再使用该备份数据块调整终端的存储空间的分区。
示例性的,图3为发明实施例提供的一种存储空间的分区示意图,如图3所示,假设M为4,终端的存储空间的按照物理地址从小到大的顺序划分为Pj个分区;其中,P1分区至Pn分区为上述的第一分区块,包括用于存储终端的硬件信息的分区、用于存储终端的出厂校验信息的分区,以及存储操作系统的修复模式的数据的分区(即,系统升级过程中必须的分区,例如,存储recovery程序的recovery分区),Pn+1分区至Pm分区为上述的第二系统分区块,包括存储操作系统升级后的系统数据的分区(即,lk/boot/system等需要烧写镜像的分区,该分区块中的分区中的数据可以采用空间下载技术(Over the Air Technology,OTA)升级),Pm+1分区至Pk分区为本上述的第二分区块,Pk+1分区至Pj分区块为上述的第三分区块。通常,终端中的第二分区块至少包括一个备用分区,例如,预留分区(即“reserved”分区),其中,预留分区中未存储数据;终端中的第三分区块至少包括一个分区,即用户数据分区(即,userdate分区),其中,用户数据分区为终端存储空间的最后一个分区,用户数据分区的存储空间较大,以使得用户可以存储用户需要的数据。
需要说明的是,在实际应用中,分区表中指示了每个分区的名称(例如:label=“fsq”,表示分区的名称为“fsq”)、每个分区的存储空间的大小(例如:size_in_kb=“512”,表示该分区的大小为512Kb)、每个分区是只读(即:readonly=“true”)还是可编辑(即:readonly=“false”)等信息,当分区表中未指示每个分区的起始地址和结束地址时,则根据分区表中每个分区的顺序以及每个分区的大小自动生成每个分区的起始地址和结束地址。
S203、在第二系统分区块的大小小于第一系统分区块的大小时,终端根据第一分区表调整第二系统分区块。
通常,终端的升级操作系统时,操作系统的框架、操作系统的版本、以及该操作系统对应的终端系统的内置应用发生变化,第二系统分区块的存储空间可能不足以存储当前的操作系统升级后的系统数据。
可以理解,“第二系统分区块的大小小于第一系统分区块的大小”表示终端当前的操作系统升级后的终端的系统分区块占用的存储空间大于当前终端的系统分区块占用的存储空间。
本发明实施例提供的分区调整的方法,终端在检测到触发终端升级操作系统时,首先获取第一分区表,第一分区表用于指示操作系统升级后终端的存储空间中的M个目标分区块,M个目标分区块包括第一系统分区块,第一系统分区块用于存储操作系统升级后的系统数据;其次,终端确定终端的存储空间中的M个当前分区块,M个当前分区块包括第二系统分区块,第二系统分区块用于存储终端当前的操作系统的系统数据;最后,在第二系统分区块的大小小于第一系统分区块的大小时,终端根据第一分区表调整第二系统分区块。由于第二系统分区块的大小小于第一系统分区块的大小表示终端在升级终端的操作系统后,当前分区的系统分区块的存储空间不足以存储当前系统升级后的操作系统的系统数据,因此,在第二系统分区块的大小小于第一系统分区块的大小时根据第一分区表调整第二系统分区块,可以使得调整后的第二系统分区块的大小可以满足存储当前系统升级后的操作系统的系统数据,避免了操作系统发生故障导致的操作系统崩溃、终端无法开机或用户数据丢失的问题。
图4为本发明实施例提供的一种分区调整的方法流程示意图,如图4所示,可选的,S203中“终端根据第一分区表调整第二系统分区块”,具体可以通过T1-T3执行:
T1:终端根据第一系统分区块的大小,确定第一差值,第一差值为第一系统分区块的大小与第二系统分区块的大小的差值。
可选的,终端可以根据第一分区表和第二分区表确定第一差值,也可以根据第一分区表和存储空间当前的分区中的第一系统分区块确定第一差值,本发明实施例对此不作具体限定。
T2:若M个当前分区块中的第二分区块的大小大于或等于第一差值大小(即,M个当前分区块中的第二分区块的大小大于或等于第一系统分区块的大小与第二系统分区块的大小的差值),则终端在M个当前分区块中的第二分区块中确定第一目标分区块,第一目标分区块的大小为第一差值(即,第一目标分区块的大小为第一系统分区块的大小与第二系统分区块的大小的差值)。
可以理解,M个当前分区块中的第二分区块的大小大于或等于第一差值大小,表示终端当前存储空间中的第二系统分区块和备用分区块可以存储完操作系统升级后的系统数据。
需要说明的是,当前分区块中第二分区块中的分区可以为已经存储数据的分区,也可以为未存储数据的分区,即第一目标分区块可以包括已经存储数据的分区,也可以包括为未存储数据的分区,本发明实施例对此不作具体限定。
可选的,第一目标分区块可以第一分区表指定起始地址和结束地址的分区,也可以为终端根据当前存储空间中的第二分区块中未存储数据的分区,当第一目标分区块中已经存储数据,则将第一目标分区块中的存储空间格式化,本发明实施例对此不作具体限定。
T3:终端将第一目标分区块和第二系统分区块作为第一系统分区块。
可选的,第一目标分区块的起始地址与第一系统分区块的结束地址连续。
即,第一系统分区块的起始地址为与第二分区块的起始地址相同,第一系统分区块的结束地址为第二目标分区块的结束地址,调整分区后的第二分区块的起始地址与第二目标分区块的结束地址连续。
为了便于说明,本发明实施例中,以第一目标分区块与第一系统分区块的结束地址连续为例进行说明。
结合图3,如图5所示,为本发明实施例提供的一种分区的调整示意图,假设图5中的(a)为终端的存储空间的当前分区,物理地址1至物理地址2的存储空间为第二系统分区块的存储空间,物理地址2至物理地址4的存储空间为第二分区块的存储空间,当第二分区块的大小大于第一差值大小,假设终端确定的第一目标分区块为物理地址2至物理地址3的存储空间对应的分区,将第二分区块中物理地址2至物理地址3的存储空间调整给Pm分区,终端调整分区后的存储空间分区如图5中的(b)所示,第一系统分区块的起始地址为物理地址1,第一系统分区块的结束地址为物理地址3,第二分区块的起始地址为物理地址3,第二分区块的结束地址为物理地址4。
需要说明的是,当终端再次升级操作系统时,若第一系统分区块不足以存储再次升级后的操作系统的系统数据,结合图5中的(b),则终端可以在起始地址为物理地址3结束地址为物理地址4的第二分区块中调整终端的分区。
基于该方案,终端可以实现在M个当前分区块中的第二分区块的大小大于或等于第一系统分区块的大小与第二系统分区块的大小的差值时,将第一目标分区块和第二系统分区块作为第一系统分区块,使得操作系统升级后的系统数据可以存储在第一系统分区块中,避免了由于第二系统分区块的存储空间不足以存储操作系统升级后的系统数据,导致的操作系统崩溃、终端无法开机或用户数据丢失。
可选的,如图4所示,在T1之后,本发明实施例提供的分区调整的方法,还包括T4-T6:
T4:若M个当前分区块中的第二分区块的大小小于第一差值大小(即,M个当前分区块中的第二分区块的大小小于,第一系统分区块的大小与第二系统分区块的大小的差值),终端确定M个当前分区块中的第三分区块中空闲区域的大小是否大于或等于第一差值(即,终端确定M个当前分区块中的第三分区块中空闲区域的大小,是否大于或等于第一系统分区块的大小与第二系统分区块的大小的差值),空闲区域为M个当前分区块中的第三分区块中未存储数据的区域。
可以理解,当M个当前分区块中的第二分区块的大小小于第一差值大小,表示终端当前存储空间中的第二系统分区块和备用分区块无法存储完操作系统升级后的系统数据。
T5:若M个当前分区块中的第三分区块中空闲区域的大小大于或等于第一差值(即,M个当前分区块中的第二分区块的大小大于或等于,第一系统分区块的大小与第二系统分区块的大小的差值),则终端在M个当前分区块中的第三分区块中确定第二目标分区块,第二目标分区块的大小为第一差值(即,第二目标分区块的大小为第一系统分区块的大小与第二系统分区块的大小的差值)。
可以理解,当M个当前分区块中的第三分区块中空闲区域的大小大于或等于第一差值,表示终端当前存储空间中的第二系统分区块和存储用户数据的分区块中未存储数据的分区可以存储完操作系统升级后的系统数据。
T6:终端将第二目标分区块和第二系统分区块作为第一系统分区块。
可选的,第二目标分区块的结束地址与第三分区块中空闲区域的结束地址相同。
结合图3,如图6所示,为本发明实施例提供的一种分区的调整示意图,假设图6中的(a)为终端存储空间当前的分区,第二系统分区块的起始地址为物理地址1,结束地址为物理地址2,第三分区块的起始地址为物理地址3,结束地址为物理地址5,假设第二分区块的大小小于第一差值,终端确定的第二目标分区块为物理地址4至物理地址5之间的分区,如图6中的(b)所示,终端将物理地址4至物理地址5之间的存储空间调整给第一系统分区块,也就是说,在调整分区后,终端可以将升级后的操作系统的系统数据存储在物理地址1至物理地址2,以及物理地址4至物理地址5之间的存储区域。
可以理解,终端在选择第二目标分区块时,目标分区块的结束地址可以为存储用户数据的分区块中的最后一个分区中未使用的存储空间的结束地址,本发明实施例对此不作具体限定。
需要说明的是,当终端再次升级操作系统时,若第一系统分区块不足以存储再次升级后的操作系统的系统数据,结合图6中的(b),则终端可以在结束地址为物理地址4的第三分区块中调整终端的分区。
需要说明的是,在调整第三分区块时,可以通过resize userdate文件系统的方式先调整文件系统所占分区的尺寸。
基于该方案,若M个当前分区块中的第二分区块的大小小于第一系统分区块的大小与第二系统分区块的大小的差值,且在M个当前分区块中的第二分区块的大小大于或等于第一系统分区块的大小与第二系统分区块的大小的差值时,终端将第二目标分区块和第二系统分区块作为第一系统分区块,使得操作系统升级后的系统数据可以存储在第一系统分区块中,避免了由于第二系统分区块的存储空间不足以存储操作系统升级后的系统数据,导致的终端的操作系统崩溃、终端无法开机或用户数据丢失。
可选的,如图4所示,本发明实施例提供的分区调整的方法,在T4之后还包括T7:
T7:若M个当前分区块中的第三分区块中空闲区域的大小小于第一差值(即,M个当前分区块中的第三分区块中空闲区域的大小,小于第一系统分区块的大小与第二系统分区块的大小的差值),则终端在终端的显示界面上显示提示信息,提示信息用于指示用户删除M个当前分区块中的第三分区块中已存的用户数据。
可以理解,当M个当前分区块中的第三分区块中空闲区域的大小小于第一差值,表示终端当前存储空间中的第一系统分区块和存储用户数据的分区块中未存储数据的分区无法存储完操作系统升级后的系统数据。
可选的,本发明实施例中的显示消息可以显示在终端的通知栏中,也可以显示在升级界面中,本发明实施例对此不作具体限定。
基于该方案,当M个当前分区块中的第三分区块中空闲区域的大小小于第一系统分区块的大小与第二系统分区块的大小的差值时,终端通过向用户显示提示信息,可以使得用户在看到该提示信息删除M个当前分区块中的第三分区块中已存的用户数据,从而为第二系统分区块提供足够的存储空间。
可选的,本发明实施例提供的分区调整的方法,在T7之后还包括T8-T10:
T8:终端检测到用户的目标输入,目标输入用于删除M个当前分区块中的第三分区块中已存的用户数据。
需要说明的是,用户选择删除的数据,目标数据的类型(例如,视频类型、音频类型、图片类型或文档类型)和大小为用户选择的,本发明实施例对此不作具体限定。
T9:响应于目标输入,终端删除M个当前分区块中的第三分区块中已存的用户数据。
T10:终端确定删除已存的用户数据后的M个当前分区块中的第三分区块中未使用的存储空间大小是否大于或等于第一差值。
需要说明的是,若删除已存的用户数据后的M个当前分区块中的第三分区块中空闲区域的大小大于或等于第一差值,终端再执行上述分区调整的方法中的T4;若删除已存的用户数据后的M个当前分区块中的第三分区块中空闲区域的大小小于第一差值,终端可以再执行述分区调整的方法中的T8-T10,直到第四分区块中未使用的存储空间大小大于或等于第三目标分区块大小。
基于该方案,终端在检测到用户的目标输入之后删除M个当前分区块中的第三分区块中已存的用户数据,在删除之后,确定删除已存的用户数据后的M个当前分区块中的第三分区块中未使用的存储空间大小是否大于或等于第一差值,可以使得终端确定M个当前分区块中的第三分区块中未使用的存储空间大小是否足够存储终端的操作系统升级后的系统数据,避免了终端在未确定是否足够存储终端的操作系统升级后的系统数据下升级终端的操作系统导致的终端的操作系统崩溃、终端无法开机或用户数据丢失。
通常,终端升级操作系统时,增加新的功能并非一定增加新的分区,但是当增加的特殊功能在现有的分区中不能使得终端的功能正常使用时,可能需要在当前的存储空间中增加一个独立的分区,例如,当终端的操作系统从版本1升级到版本2时,增加了一个防盗功能,该功能的数据存储在已有的分区中不能使用该功能,因此,服务器在服务器侧生成一个新的分区表,该分区表相对于终端当前的操作系统对应的分区表增加了一个新增分区,且指示了新增分区名称,新增分区的大小以及和该分区所在的位置(起始地址和结束地址)。
可选的,第二系统分区块对应的系统数据包括X个子数据,第一系统分区块对应的系统数据包括Y个子数据,X和Y均为正整数,且X小于Y。
需要说明的是,本发明实施例中,一个子数据为系统的一个功能的数据,每个子数据对应一个独立分区,若X小于Y,表示升级后的操作系统比当前的操作系统新增加了功能,且增加的功能需要在当前的分区中划分独立的分区,当然,一个功能并不一定需要一个独立的分区。
本发明实施例中,将新增功能的数据归类于终端的系统数据,且该新增功能需要在当前的分区中划分独立的分区。
通常,减少终端的分区数量可能导致用户数据的丢失或者导致操作系统异常,因此,升级操作系统时,即便是升级后存在分区中未存储数据,一般也不会减少终端的分区数量。因此,通过对比第一分区表和第二分区表,或者根据第一分区表和终端当前的分区就可以确定新增分区的名称以及所占存储空间的大小。
可选的,若第二系统分区块中的分区数量小于第一系统分区块中的分区数量,终端可根据第一分区表和第二系统分区块确定存在新增分区以及该新增分区的大小,也可以根据第一分区表和第二分区表确定存在的新增分区以及该新增分区的大小。
需要说明的是,若存在新增分区,按照上述分区调整的方法通过第二分区块或第三分区块也可以对存储空间进行分区调整,方法可参考上述说明,在此不再赘述。
可选的,若M个当前分区块中的第二分区块的大小大于新增分区的大小,终端在M个当前分区块中的第二分区块中确定的第三目标分区块的大小等于新增分区的大小,终端将第三目标分区块调整为新增分区。
结合图3,图7为本发明实施例提供的一种分区的调整示意图。如图7中的(a)为终端的存储空间当前的分区,第二系统分区块的起始地址为物理地址1,结束地址为物理地址2,第三分区块的起始地址为物理地址2,结束地址为物理地址4。假设第二分区块的大小大于新增分区的大小,若假设终端确定的第三目标分区块包括起始地址为物理地址2,结束地址为物理地址3的存储空间,则如图7中的(b)所示,终端将物理地址2至物理地址3之间的存储空间划分为Pj+1分区,也就是说,在调整分区后,终端可以将升级后的操作系统的系统数据存储在物理地址1至物理地址3之间的存储区域,进而,第二分区块的起始地址从物理地址2变为物理地址3。
基于该方案,当终端升级操作系统时,需要在当前的存储空间中增加一个独立的分区(即,新增分区)时,若M个当前分区块中的第二分区块的大小大于新增分区的大小,终端在M个当前分区块中的第二分区块中确定的第三目标分区块的大小等于新增分区的大小,终端将第三目标分区块调整为新增分区,由于第二分区块为备用分区,在该分区内调整第三目标分区块为新增分区,可以使得终端升级操作系统后保证该分区对应的功能正常使用,且不影响升级后的操作系统。
可选的,若M个当前分区块中的第二分区块的大小小于新增分区的大小,且若M个当前分区块中的第三分区块中空闲区域的大小大于或等于大新增分区的大小,则在M个当前分区块中的第三分区块中确定第四目标分区块,将第四目标分区块调整为新增分区,第四目标分区块为M个当前分区块中的第三分区块中空闲区域中的一部分。
需要说明的是,第四目标分区块的结束地址为第三分区块的结束地址,即第四目标分区块为第三分区块中空闲区域物理地址从大到小的区域。
图8为本发明实施例提供的一种分区的调整示意图。如图8中的(a)为终端存储空间当前的分区,第二系统分区块的起始地址为物理地址1,结束地址为物理地址2,第三分区块的起始地址为物理地址3,结束地址为物理地址5,假设第二分区块的大小小于新增分区的大小,终端确定的第四目标分区块包括物理地址4至物理地址5之间的存储空间,如图8中的(b)所示,终端生成一个新增分区Pj+1,包括物理地址4至物理地址5之间的存储空间,也就是说,在调整分区后,终端可以将升级后的操作系统的系统数据存储在物理地址1至物理地址2,以及物理地址4至物理地址5之间的存储区域。
可选的,当确定第一系统分区块的尺寸大于第二系统分区块,且存在新增的分区,也可以按照上述分区调整的方法通过第二分区块或第三分区块分别进行分区调整。
基于该方案,当终端升级操作系统时,需要在当前的存储空间中增加一个独立的分区(即,新增分区)时,若M个当前分区块中的第二分区块的大小小于新增分区的大小,且若M个当前分区块中的第三分区块中空闲区域的大小大于或等于大新增分区的大小,则在M个当前分区块中的第三分区块中确定第四目标分区块,将第四目标分区块调整为新增分区,第四目标分区块为第三分区块中空闲区域物理地址从大到小的区域,在该分区内调整第四目标分区块为新增分区,可以使得终端升级操作系统后保证该分区对应的功能正常使用,而第三分区块的起始地址不作偏移,避免了用户数据的丢失。
图9为实现本发明实施例提供的一种终端的可能的结构示意图,如图9所示,终端900包括获取模块901、确定模块902和调整模块903;获取模块901,用于在检测到触发终端900升级操作系统时,获取第一分区表,第一分区表用于指示操作系统升级后终端900的存储空间中的M个目标分区块,M个目标分区块包括第一系统分区块,第一系统分区块用于存储操作系统升级后的系统数据,M为正整数;确定模块902,用于确定终端900的存储空间中的M个当前分区块,M个当前分区块包括第二系统分区块,第二系统分区块用于存储终端900当前的操作系统的系统数据;调整模块903,用于在第二系统分区块的大小小于第一系统分区块的大小时,根据获取模块901获取的第一分区表调整第二系统分区块。
可选的,M个目标分区块/M个当前分区块至少还包括第一分区块、第二分区块和第三分区块;第一分区块用于存储终端900的硬件数据、出厂校验数据以及操作系统的修复模式的数据;第二分区块为备用分区块;第三分区块用于存储用户数据;每个分区块包括至少一个分区,每个分区内的物理地址连续,第一分区块的结束地址与第一系统分区块的起始地址/第二系统分区块的起始地址连续,第一系统分区块的结束地址/第二系统分区块的结束地址与第二分区块的起始地址连续,第二分区块的结束地址与第三分区块的起始地址连续。
可选的,调整模块903,具体用于:根据第一系统分区块的大小,确定第一差值,第一差值为第一系统分区块的大小与第二系统分区块的大小的差值;若M个当前分区块中的第二分区块的大小大于或等于第一差值大小,则在M个当前分区块中的第二分区块中确定第一目标分区块,第一目标分区块的大小为第一差值;将第一目标分区块和第二系统分区块作为第一系统分区块。
可选的,第一目标区域的起始地址与第一系统分区块的结束地址连续。
可选的,调整模块903,还用于:若M个当前分区块中的第二分区块的大小小于第一差值大小,确定M个当前分区块中的第三分区块中空闲区域的大小是否大于或等于第一差值,空闲区域为M个当前分区块中的第三分区块中未存储数据的区域;若M个当前分区块中的第三分区块中空闲区域的大小大于或等于第一差值,则在M个当前分区块中的第三分区块中确定第二目标分区块,第二目标分区块的大小为第一差值;将第二目标分区块和第二系统分区块作为第一系统分区块;若M个当前分区块中的第三分区块中空闲区域的大小小于第一差值,则在终端900的显示界面上显示提示信息,提示信息用于指示用户删除M个当前分区块中的第三分区块中已存的用户数据。
可选的,第二系统分区块对应的系统数据包括X个子数据,第一系统分区块对应的系统数据包括Y个子数据,X和Y均为正整数,且X小于Y。
本发明实施例提供的终端900能够实现上述方法实施例中终端实现的各个过程,为避免重复,这里不再赘述。
图10为实现本发明各个实施例的一种终端的硬件结构示意图,该终端100包括但不限于:射频单元101、网络模块102、音频输出单元103、输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图10中示出的终端结构并不构成对终端的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,终端包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
其中,处理器110,用于在检测到触发终端升级操作系统时,获取第一分区表,第一分区表用于指示操作系统升级后终端的存储空间中的M个目标分区块,M个目标分区块包括第一系统分区块,第一系统分区块用于存储操作系统升级后的系统数据,M为正整数;确定终端的存储空间中的M个当前分区块,M个当前分区块包括第二系统分区块,第二系统分区块用于存储终端当前的操作系统的系统数据;在第二系统分区块的大小小于第一系统分区块的大小时,根据获取的第一分区表调整第二系统分区块。
本发明实施例提供的终端,在检测到用户触发终端升级终端的操作系统时,终端首先获取第一分区表,第一分区表用于指示操作系统升级后终端的存储空间中的M个目标分区块,M个目标分区块包括第一系统分区块,第一系统分区块用于存储操作系统升级后的系统数据;其次,终端确定终端的存储空间中的M个当前分区块,M个当前分区块包括第二系统分区块,第二系统分区块用于存储终端当前的操作系统的系统数据;最后,在第二系统分区块的大小小于第一系统分区块的大小时,终端根据第一分区表调整第二系统分区块。由于第二系统分区块的大小小于第一系统分区块的大小表示终端在升级终端的操作系统后,当前分区的系统分区块的存储空间不足以存储当前系统升级后的操作系统的系统数据,因此,在第二系统分区块的大小小于第一系统分区块的大小时根据第一分区表调整第二系统分区块,可以使得调整后的第二系统分区块的大小可以满足存储当前系统升级后的操作系统的系统数据,避免了操作系统发生故障导致的操作系统崩溃、终端无法开机或用户数据丢失的问题。
应理解的是,本发明实施例中,射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信系统与网络和其他设备通信。
终端通过网络模块102为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元103可以将射频单元101或网络模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103包括扬声器、蜂鸣器以及受话器等。
输入单元104用于接收音频或视频信号。输入单元104可以包括图形处理器(Graphics Processing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或其它存储介质)中或者经由射频单元101或网络模块102进行发送。麦克风1042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式时转换为可经由射频单元101发送到移动通信基站的格式输出。
终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器105还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1061。
用户输入单元107可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作)。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板1071可覆盖在显示面板1061上,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图10中,触控面板1071与显示面板1061是作为两个独立的部件来实现终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现终端的输入和输出功能,具体此处不做限定。
接口单元108为外部装置与终端100连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到终端100内的一个或多个元件或者可以用于在终端100和外部装置之间传输数据。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器110是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。处理器110可包括一个或多个处理单元;可选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
终端100还可以包括给各个部件供电的电源111(比如电池),可选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,终端100包括一些未示出的功能模块,在此不再赘述。
可选的,本发明实施例还提供一种终端,包括图10中的处理器110,存储器109,存储在存储器109上并可在所述处理器110上运行的计算机程序,该计算机程序被处理器110执行时实现上述分区调整的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述分区调整的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制时,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。

Claims (14)

1.一种分区调整的方法,应用于终端,其特征在于,所述方法包括:
在检测到触发终端升级操作系统时,获取第一分区表,所述第一分区表用于指示所述操作系统升级后所述终端的存储空间中的M个目标分区块,所述M个目标分区块包括第一系统分区块,所述第一系统分区块用于存储所述操作系统升级后的系统数据,M为正整数;
确定所述终端的存储空间中的M个当前分区块,所述M个当前分区块包括第二系统分区块,所述第二系统分区块用于存储所述终端当前的操作系统的系统数据;
在所述第二系统分区块的大小小于所述第一系统分区块的大小时,根据所述第一分区表调整所述第二系统分区块。
2.根据权利要求1所述的方法,其特征在于,所述M个目标分区块/所述M个当前分区块至少还包括第一分区块、第二分区块和第三分区块;所述第一分区块用于存储所述终端的硬件数据、出厂校验数据以及所述操作系统的修复模式的数据;所述第二分区块为备用分区块;所述第三分区块用于存储用户数据;每个分区块包括至少一个分区,每个分区内的物理地址连续,所述第一分区块的结束地址与所述第一系统分区块的起始地址/所述第二系统分区块的起始地址连续,所述第一系统分区块的结束地址/所述第二系统分区块的结束地址与所述第二分区块的起始地址连续,所述第二分区块的结束地址与所述第三分区块的起始地址连续。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一分区表调整所述第二系统分区块,包括:
根据所述第一系统分区块的大小,确定第一差值,所述第一差值为所述第一系统分区块的大小与所述第二系统分区块的大小的差值;
若所述M个当前分区块中的第二分区块的大小大于或等于所述第一差值大小,则在所述M个当前分区块中的第二分区块中确定第一目标分区块,所述第一目标分区块的大小为所述第一差值;
将所述第一目标分区块和所述第二系统分区块作为所述第一系统分区块。
4.根据权利要求3所述的方法,其特征在于,
所述第一目标分区块的起始地址与所述第一系统分区块的结束地址连续。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
若所述M个当前分区块中的第二分区块的大小小于所述第一差值大小,确定所述M个当前分区块中的第三分区块中空闲区域的大小是否大于或等于所述第一差值,所述空闲区域为所述M个当前分区块中的第三分区块中未存储数据的区域;
若所述M个当前分区块中的第三分区块中空闲区域的大小大于或等于所述第一差值,则在所述M个当前分区块中的第三分区块中确定第二目标分区块,所述第二目标分区块的大小为所述第一差值;
将所述第二目标分区块和所述第二系统分区块作为所述第一系统分区块;
若所述M个当前分区块中的第三分区块中空闲区域的大小小于所述第一差值,则在所述终端的显示界面上显示提示信息,所述提示信息用于指示用户删除所述M个当前分区块中的第三分区块中已存的用户数据。
6.根据权利要求1所述的方法,其特征在于,所述第二系统分区块对应的系统数据包括X个子数据,所述第一系统分区块对应的系统数据包括Y个子数据,X和Y均为正整数,且X小于Y。
7.一种终端,其特征在于,所述终端包括获取模块、确定模块和调整模块;
所述获取模块,用于在检测到触发终端升级操作系统时,获取第一分区表,所述第一分区表用于指示所述操作系统升级后所述终端的存储空间中的M个目标分区块,所述M个目标分区块包括第一系统分区块,所述第一系统分区块用于存储所述操作系统升级后的系统数据,M为正整数;
所述确定模块,用于确定所述终端的存储空间中的M个当前分区块,所述M个当前分区块包括第二系统分区块,所述第二系统分区块用于存储所述终端当前的操作系统的系统数据;
所述调整模块,用于在所述第二系统分区块的大小小于所述第一系统分区块的大小时,根据所述获取模块获取的所述第一分区表调整所述第二系统分区块。
8.根据权利要求7所述的终端,其特征在于,所述M个目标分区块/所述M个当前分区块至少还包括第一分区块、第二分区块和第三分区块;所述第一分区块用于存储所述终端的硬件数据、出厂校验数据以及所述操作系统的修复模式的数据;所述第二分区块为备用分区块;所述第三分区块用于存储用户数据;每个分区块包括至少一个分区,每个分区内的物理地址连续,所述第一分区块的结束地址与所述第一系统分区块的起始地址/所述第二系统分区块的起始地址连续,所述第一系统分区块的结束地址/所述第二系统分区块的结束地址与所述第二分区块的起始地址连续,所述第二分区块的结束地址与所述第三分区块的起始地址连续。
9.根据权利要求8所述的终端,其特征在于,所述调整模块,具体用于:
根据所述第一系统分区块的大小,确定第一差值,所述第一差值为所述第一系统分区块的大小与所述第二系统分区块的大小的差值;
若所述M个当前分区块中的第二分区块的大小大于或等于所述第一差值大小,则在所述M个当前分区块中的第二分区块中确定第一目标分区块,所述第一目标分区块的大小为所述第一差值;
将所述第一目标分区块和所述第二系统分区块作为所述第一系统分区块。
10.根据权利要求8所述的终端,其特征在于,
所述第一目标区域的起始地址与所述第一系统分区块的结束地址连续。
11.根据权利要求9或10所述的终端,其特征在于,所述调整模块,还用于:
若所述M个当前分区块中的第二分区块的大小小于所述第一差值大小,确定所述M个当前分区块中的第三分区块中空闲区域的大小是否大于或等于所述第一差值,所述空闲区域为所述M个当前分区块中的第三分区块中未存储数据的区域;
若所述M个当前分区块中的第三分区块中空闲区域的大小大于或等于所述第一差值,则在所述M个当前分区块中的第三分区块中确定第二目标分区块,所述第二目标分区块的大小为所述第一差值;
将所述第二目标分区块和所述第二系统分区块作为所述第一系统分区块;
若所述M个当前分区块中的第三分区块中空闲区域的大小小于所述第一差值,则在所述终端的显示界面上显示提示信息,所述提示信息用于指示用户删除所述M个当前分区块中的第三分区块中已存的用户数据。
12.根据权利要求7所述的终端,其特征在于,所述第二系统分区块对应的系统数据包括X个子数据,所述第一系统分区块对应的系统数据包括Y个子数据,X和Y均为正整数,且X小于Y。
13.一种终端,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-6中任一项所述的分区调整的方法的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述的分区调整的方法的步骤。
CN201810239035.9A 2018-03-22 2018-03-22 一种分区调整的方法及终端 Pending CN108595113A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810239035.9A CN108595113A (zh) 2018-03-22 2018-03-22 一种分区调整的方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810239035.9A CN108595113A (zh) 2018-03-22 2018-03-22 一种分区调整的方法及终端

Publications (1)

Publication Number Publication Date
CN108595113A true CN108595113A (zh) 2018-09-28

Family

ID=63626970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810239035.9A Pending CN108595113A (zh) 2018-03-22 2018-03-22 一种分区调整的方法及终端

Country Status (1)

Country Link
CN (1) CN108595113A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111104137A (zh) * 2019-12-06 2020-05-05 山东信通电子股份有限公司 一种ota设备的升级方法及装置
CN111274160A (zh) * 2020-01-22 2020-06-12 维沃移动通信有限公司 数据存储方法、电子设备及介质
CN111752577A (zh) * 2019-03-28 2020-10-09 深圳市优必选科技有限公司 一种系统版本的升级方法及设备
CN113225729A (zh) * 2020-01-21 2021-08-06 荣耀终端有限公司 空中下载技术ota升级的方法、设备及可读存储介质
CN113741812A (zh) * 2021-08-09 2021-12-03 浙江大华技术股份有限公司 存储器分区的更新方法、装置、电子装置和存储介质
CN113885928A (zh) * 2021-05-31 2022-01-04 荣耀终端有限公司 程序更新方法和电子设备
CN113900699A (zh) * 2021-05-26 2022-01-07 荣耀终端有限公司 一种系统升级方法和电子设备
CN114201320A (zh) * 2022-02-18 2022-03-18 深圳佰维存储科技股份有限公司 系统块升级方法、装置、可读存储介质及电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1932779A (zh) * 2006-09-20 2007-03-21 华为技术有限公司 一种更新数据的方法和装置
CN103677940A (zh) * 2013-12-27 2014-03-26 上海斐讯数据通信技术有限公司 T卡跨分区升级操作系统的方法及系统
CN104077234A (zh) * 2014-07-10 2014-10-01 三星电子(中国)研发中心 一种嵌入式系统分区的动态调整方法和装置
US20150286681A1 (en) * 2012-09-28 2015-10-08 Oracle International Corporation Techniques for partition pruning based on aggregated zone map information
CN104978223A (zh) * 2015-07-02 2015-10-14 上海市共进通信技术有限公司 实现Web方式升级设备固件的方法
CN105487903A (zh) * 2015-12-04 2016-04-13 小米科技有限责任公司 系统升级方法及装置
CN105740017A (zh) * 2016-01-29 2016-07-06 贵阳海信电子有限公司 云电视系统的升级方法及装置
CN107643898A (zh) * 2016-07-21 2018-01-30 中兴通讯股份有限公司 终端升级方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1932779A (zh) * 2006-09-20 2007-03-21 华为技术有限公司 一种更新数据的方法和装置
US20150286681A1 (en) * 2012-09-28 2015-10-08 Oracle International Corporation Techniques for partition pruning based on aggregated zone map information
CN103677940A (zh) * 2013-12-27 2014-03-26 上海斐讯数据通信技术有限公司 T卡跨分区升级操作系统的方法及系统
CN104077234A (zh) * 2014-07-10 2014-10-01 三星电子(中国)研发中心 一种嵌入式系统分区的动态调整方法和装置
CN104978223A (zh) * 2015-07-02 2015-10-14 上海市共进通信技术有限公司 实现Web方式升级设备固件的方法
CN105487903A (zh) * 2015-12-04 2016-04-13 小米科技有限责任公司 系统升级方法及装置
CN105740017A (zh) * 2016-01-29 2016-07-06 贵阳海信电子有限公司 云电视系统的升级方法及装置
CN107643898A (zh) * 2016-07-21 2018-01-30 中兴通讯股份有限公司 终端升级方法及装置

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111752577A (zh) * 2019-03-28 2020-10-09 深圳市优必选科技有限公司 一种系统版本的升级方法及设备
CN111752577B (zh) * 2019-03-28 2023-07-18 深圳市优必选科技有限公司 一种系统版本的升级方法及设备
CN111104137A (zh) * 2019-12-06 2020-05-05 山东信通电子股份有限公司 一种ota设备的升级方法及装置
CN111104137B (zh) * 2019-12-06 2023-10-20 山东信通电子股份有限公司 一种ota设备的升级方法及装置
CN113225729B (zh) * 2020-01-21 2022-07-12 荣耀终端有限公司 空中下载技术ota升级的方法、设备及可读存储介质
CN113225729A (zh) * 2020-01-21 2021-08-06 荣耀终端有限公司 空中下载技术ota升级的方法、设备及可读存储介质
CN111274160A (zh) * 2020-01-22 2020-06-12 维沃移动通信有限公司 数据存储方法、电子设备及介质
CN113900699A (zh) * 2021-05-26 2022-01-07 荣耀终端有限公司 一种系统升级方法和电子设备
CN113885928A (zh) * 2021-05-31 2022-01-04 荣耀终端有限公司 程序更新方法和电子设备
CN113741812A (zh) * 2021-08-09 2021-12-03 浙江大华技术股份有限公司 存储器分区的更新方法、装置、电子装置和存储介质
CN113741812B (zh) * 2021-08-09 2024-04-12 浙江大华技术股份有限公司 存储器分区的更新方法、装置、电子装置和存储介质
CN114201320A (zh) * 2022-02-18 2022-03-18 深圳佰维存储科技股份有限公司 系统块升级方法、装置、可读存储介质及电子设备
CN114201320B (zh) * 2022-02-18 2022-05-27 深圳佰维存储科技股份有限公司 系统块升级方法、装置、可读存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN108595113A (zh) 一种分区调整的方法及终端
AU2018200188B2 (en) Side menu displaying method and apparatus and terminal
CN110231897A (zh) 一种对象处理方法及终端设备
CN109857495A (zh) 一种显示控制方法及终端设备
CN110489385A (zh) 一种信息处理方法及终端设备
CN109743724A (zh) 一种嵌入式sim卡的管理方法及移动终端
CN109189298A (zh) 一种语言切换方法及终端
CN110457935A (zh) 一种权限配置方法及终端设备
CN109522278A (zh) 一种文件存储方法及终端设备
CN109407832A (zh) 一种终端设备的控制方法及终端设备
CN108681427A (zh) 一种访问权限控制的方法及终端设备
CN110225180A (zh) 一种内容输入方法及终端设备
CN110049187A (zh) 一种显示方法及终端设备
CN110147186A (zh) 一种应用的控制方法及终端设备
CN109816679A (zh) 一种图片处理方法及终端设备
CN108920054A (zh) 一种应用推荐方法及终端
CN109521920A (zh) 一种应用程序图标控制方法及终端设备
CN108833684A (zh) 一种信息提示方法及终端设备
CN109408080A (zh) 一种应用升级的方法及终端
CN108008892A (zh) 一种功能启用的方法及终端
CN108762799A (zh) 一种更新应用的方法及终端
CN109951373A (zh) 一种文件发送方法及终端设备
CN108810284A (zh) 一种摄像头的模式切换方法及电子设备
CN109144723A (zh) 一种分配存储空间的方法和终端
CN107704334A (zh) 一种sdk的处理方法及移动终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180928