CN113687855B - 电子设备及其系统升级包的制作方法、系统升级方法 - Google Patents
电子设备及其系统升级包的制作方法、系统升级方法 Download PDFInfo
- Publication number
- CN113687855B CN113687855B CN202110831343.2A CN202110831343A CN113687855B CN 113687855 B CN113687855 B CN 113687855B CN 202110831343 A CN202110831343 A CN 202110831343A CN 113687855 B CN113687855 B CN 113687855B
- Authority
- CN
- China
- Prior art keywords
- partition
- sensitive
- partitions
- reserved
- address
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
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)
- Stored Programmes (AREA)
Abstract
本申请涉及一种电子设备及其系统升级包的制作方法、系统升级方法,该系统升级包的制作方法包括:从系统升级包对应的系统分区中,选择出不满足对齐条件的敏感分区;按照系统分区的分区地址的递增方向,在不满足对齐条件的敏感分区前加入不存储系统数据的保留分区,以使得敏感分区满足对齐条件。通过本申请的方法,在制作系统升级包的过程中,于系统升级包的敏感分区之前填充保留分区使得敏感分区之前的系统分区和保留分区的分区大小之和满足对齐规则,这样可以避免直接将系统分区的分区大小调大或者调小,造成电子设备的操作系统无法读写系统分区,因此,能够确保系统分区的分区大小保持不变,实现敏感分区对齐。
Description
技术领域
本申请涉及终端设备领域,尤其涉及一种电子设备及其系统升级包的制作方法、系统升级方法。
背景技术
安装了操作系统的电子设备会包含多个分区,电子设备的操作系统或文件系统会对其中的一些分区进行频繁地读写数据操作,这些分区可以称为“敏感分区”。
通常,在划分敏感分区的时候,要确保敏感分区实现分区对齐。其中,分区对齐是指:敏感分区的分区起始地址与电子设备的存储装置的其中一个物理存储单元的起始地址一致,如图1(a)所示,敏感分区的分区起始地址为0x0000000,存储装置的物理存储单元的大小为512B(Byte,字节),敏感分区的分区起始地址与物理存储单元0的起始地址一致。如果敏感分区没有实现对齐,如图1(b)所示,敏感分区的分区起始地址为0x0000014,敏感分区的分区起始地址落在了物理存储单元0内。如果操作系统需要读写500B的数据的话,在图1(a)的场景下,操作系统只需要从存储装置加载物理存储单元0;而在在图1(b)的场景下,操作系统则需要从存储装置加载物理存储单元0和物理存储单元1,也就是跨物理存储单元现象,会产生额外的读写操作。
发明内容
本申请的目的在于提供一种系统升级包的制作方法,应用于电子设备。
本申请的第一方面提供了一种系统升级包的制作方法,包括:从系统升级包设置的分区信息对应的系统分区中,选择出不满足对齐条件的敏感分区;
按照系统分区的分区地址的递增方向,在不满足对齐条件的敏感分区前加入不存储系统数据的保留分区,以使得敏感分区满足对齐条件;
其中对齐条件包括:按照分区地址的递增方向,敏感分区之前的系统分区的存储容量之和为预设容量值的整数倍。
即在本申请的实施例中,这里的对齐条件可以是,例如,8MB对齐规则,也可以是4MB对齐规则或者16MB对齐规则,这里的系统分区可以是已存在分区。在制作系统升级包的过程中,于系统升级包的敏感分区之前填充保留分区使得敏感分区之前的系统分区和保留分区的分区大小之和满足对齐规则,这样可以避免直接将系统分区的分区大小调大或者调小,造成电子设备的操作系统无法读写系统分区,因此,能够确保系统分区的分区大小保持不变,实现敏感分区对齐。
在上述第一方面的一种可能的实现中,系统升级包中设置的分区信息包括系统分区的分区名称、分区地址、分区大小。
即在本申请的实施例中,系统分区按分区地址的递增方向排列。
在上述第一方面的一种可能的实现中,敏感分区的系统数据的读写操作频率高于预设的读写操作频率阈值或者系统数据的优先级高于预设的优先级阈值。
在上述第一方面的一种可能的实现中,敏感分区之前的系统分区包括系统分区中的起始分区,起始分区的分区地址包括系统分区的起始分区地址。
即在本申请的实施例中,这里的起始分区可以是系统分区中的第一个分区,例如,起始分区可以是序号为1的A分区。
在上述第一方面的一种可能的实现中,敏感分区之前的系统分区为敏感分区与另一敏感分区之间的分区,并且另一敏感分区满足对齐条件。
即在本申请的实施例中,系统分区中可以存在多个敏感分区,使得每个敏感分区之前所有的敏感分区,都满足对齐条件。
在上述第一方面的一种可能的实现中,在敏感分区前加入保留分区后,敏感分区的分区地址发生变更的情况下,记录敏感分区的分区地址后更新系统升级包的分区信息。
即在本申请的实施例中,在制作系统升级包的过程中,可以实时地提示敏感分区的分区地址发生变更,以确保制作系统升级包的准确性。
本申请的第二方面提供了一种电子设备的系统升级方法,包括:
获取对电子设备上安装的系统进行升级所需的升级包;
通过升级包对电子设备上安装的系统进行升级,其中
升级后系统的系统分区包括按照分区地址的递增方向依次排列的多个在先分区、保留分区和敏感分区,并且多个在先分区和保留分区的存储容量之和为预设存储容量的整数倍,保留分区中未存储系统数据。
即在本申请的实施例中,在电子设备的系统升级完成后,在系统分区中的敏感分区之前填充保留分区使得敏感分区之前的系统分区的分区大小之和满足预设存储容量的整数倍,这里的预设存储容量的整数倍可以是对齐条件,如8MB对齐规则,也可以是4MB对齐规则或者16MB对齐规则。这样可以避免直接将系统分区的分区大小调大或者调小。而且,保留分区中未存储系统数据使得系统无法访问,因此不会造成系统出现数据读写错误。
在上述第二方面的一种可能的实现中,敏感分区的系统数据的读写操作频率高于预设的读写操作频率阈值或者系统数据的优先级高于预设的优先级阈值。
在上述第二方面的一种可能的实现中,敏感分区之前的在先分区包括系统分区中的起始分区,起始分区的分区地址包括系统分区的起始分区地址。
在上述第二方面的一种可能的实现中,敏感分区之前的在先分区为敏感分区与另一敏感分区之间的分区,并且另一敏感分区之前的在先分区和保留分区的存储容量之和为预设存储容量的整数倍。
本申请的第三方面提供了一种电子设备,包括:
处理器,用于执行上述第一方面提供的系统升级包的制作方法;以及
存储器,可以与控制器耦合或者解耦用于存储由控制器执行的指令。
本申请的第四方面提供了一种计算机可读存储介质,计算机可读存储介质中包含有指令,当指令被电子设备的控制器执行时使电子设备实现上述第一方面提供的系统升级包的制作方法。
本申请的第五方面提供了一种计算机程序产品,包括用于电子设备的系统升级包,系统升级包包括分区信息,分区信息对应的系统分区中,存在至少一个敏感分区满足对齐条件,其中对齐条件包括:
按照系统分区的分区地址的递增方向,敏感分区之前的系统分区的存储容量之和为预设容量值的整数倍。
附图说明
图1(a)和图1(b)根据本申请的实施例示出了一种确定系统的敏感分区对齐的示意图;
图2(a)和图2(b)根据本申请的实施例示出了一种通过加入保留分区使得系统的敏感分区对齐的示意图;
图3根据本申请的实施例示出了一种服务器的结构示意图;
图4根据本申请的实施例示出了一种制作系统升级包的过程中的分区的调整方法的流程图;
图5根据本申请的实施例示出了一种提示敏感分区的分区起始地址发生变化的日志的示意图。
具体实施方式
本申请的实施例包括但不限于一种系统升级包的制作方法、系统升级方法。为了便于理解本申请的技术方案,下面先对本申请的技术方案涉及的专业术语进行解释说明。
可以理解,在本申请实施例中,电子设备的存储装置可以是硬盘(HardDisk,HD)或者是闪存(Flash),存储装置的物理存储单元可以称为扇区(sector)。
此外,可以理解,在本申请实施例中,电子设备的分区是电子设备的安装或者升级程序在安装或者更新操作系统的待升级版本的升级包时,通过读取升级包的分区表中的分区信息来确定的。这里的分区表,可以是通过服务器生成的,在生成分区表后,服务器将分区表以及升级/更新文件制作成升级包。
为了解决上述提到的跨物理存储单元现象,需要对敏感分区进行对齐,其中,对齐是指确保敏感分区的分区起始地址与一个物理存储单元的起始地址一致。
在一些实施例中,敏感分区实现分区对齐的方法,是配置一个对齐规则,例如,对于容量以GB(Gigabyte,千兆字节,一个千兆字节等于230个字节)为单位的电子设备的存储装置,对齐规则可以配置为需要确保敏感分区之前的已存在分区的分区大小之和满足8MB(Megabytes,兆字节)的整数倍,这里的8MB等于16384个存储装置的物理存储单元(512B)。具体地,如图2(a)所示,分区C为敏感分区,分区C之前包含分区A和分区B。分区A、分区B和分区C的分区大小分别为5M、9M和90M。分区A和分区B的分区大小之和为5M+9M=14M并不满足8MB对齐规则,因此,服务器可以将分区B的分区大小调整为11M,使得分区A和分区B的分区大小之和为5M+11M=16M,满足8MB对齐规则。
然而,采用图2(a)所示的敏感分区实现分区对齐的方法,需要将敏感分区之前的已存在分区的分区大小调大或者调小,这样会影响操作系统或文件系统对已存在分区的使用,例如,对于调小后的分区,操作系统可能无法再写入数据;而对于调大后的分区,操作系统可能会读取到原本不属于该分区的区域,造成操作系统报错。
为了解决图2(a)的场景所涉及的问题,在本申请的另外一些实施例中,服务器可以获取待升级版本对应的各分区的分区信息以及包含敏感分区的分区信息的敏感分区列表,确定敏感分区在上述各分区中的位置;为了使得敏感分区之前的分区的大小为对齐规则中的最小存储单元的整数倍,可以在敏感分区之前填充保留分区,进而调整敏感分区前的各分区的分区大小之和,使得敏感分区实现分区对齐;最后,将调整后的各分区的分区信息,如分区起止地址以及分区大小,写入分区表中,制作待升级版本的升级包并发送给电子设备进行升级。例如,如图2(b)所示,在本申请实施例中,在进行敏感分区的对齐时,为了使得分区A和分区B的和为8M的整数倍,服务器可以在分区C之前填充分区大小为2M的保留分区0,使得分区A、分区B以及保留分区0的分区大小之和为5M+9M+2M=16M,满足8MB对齐规则,同时,服务器也无需对分区A和/或分区B的分区大小进行调整。
可以理解,本申请技术方案中的保留分区0的类型可以是原始类型(Raw data),对于原始类型的保留分区0,保留分区0仅起到在敏感分区前填充存储装置的区域,使得各分区的地址保持连续,并且电子设备的操作系统不会将数据存储在保留分区0内,因此不会影响电子设备的操作系统对其他的各分区的使用。通过图2(b)所示的敏感分区实现分区对齐的方法,服务器可以在敏感分区之前的填充保留分区使得敏感分区之前的已存在分区和保留分区的分区大小之和满足对齐规则,避免直接将已存在分区的分区大小调大或者调小,造成电子设备的操作系统无法读写已存在分区,因此,能够确保已存在分区的分区大小保持不变,实现敏感分区对齐。
上文中提到的数字都是示例性的,在本申请的实施例中,对于对齐规则对应的大小,可以使用任意的物理存储单元的大小的整数倍,例如:4M对齐规则,16M对齐规则,在这里不做限定。
本申请的技术方案可以适用于移动终端,车载终端,智能机器人以及物联网终端等终端领域的电子设备和服务器。
本申请的实施例中电子设备是一种向用户提供语音和/或数据连通性的终端设备,常见的终端设备例如包括:车载设备、手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如包括:智能手表、智能手环、计步器等)、个人数字助理、便携式媒体播放器、导航设备、视频游戏设备、机顶盒、虚拟现实和/或增强现实设备、物联网设备、工业控制设备、流媒体客户端设备、电子书、阅读设备、POS机以及其他设备。
而本申请中的服务器可以是硬件服务器,也可以植入虚拟化环境中,例如,根据本申请的一些实施例,服务器可以是在包括一个或多个其他虚拟机的硬件服务器上执行的虚拟机。为使本申请的目的、技术方案和优点更加清楚,下面以电子设备为手机100以及服务器200为例,并结合附图对本申请的实施方式作进一步地详细描述。
图3示出了根据本申请的实施例的服务器200的结构示意图,服务器200可以包括处理器210,内部存储器220,接口模块230,电源模块240,无线通信模块250。
可以理解的是,本申请实施例示意的结构并不构成对服务器200的具体限定。在本申请另一些实施例中,服务器200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器210中还可以设置存储器,用于存储指令和数据。在本申请的实施例中,处理器210可以运行待升级版本的分区表的生成程序。
内部存储器220可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器220可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储服务器200使用过程中所创建的数据(比如音频数据,电话本等)等。在本申请的实施例中,服务器200的内部存储器220可以保持处理器210生成的分区表以及用于生成分区表的敏感分区列表。
接口模块230可以用于连接外部存储装置,例如外接硬盘,实现扩展服务器200的存储能力。外接硬盘通过接口模块230与处理器210通信,实现数据存储功能。
电源模块240用于接入电网,为处理器210,内部存储器220等供电。
无线通信模块250可以提供应用在服务器200上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等的无线通信的解决方案。
在介绍完服务器200的结构示意图后,下面通过图4对制作本申请的待升级版本的过程中,待升级版本的分区的调整方法进行详细说明。
具体地,本申请图4中的分区的调整方案可以通过服务器200的处理器210执行相关程序来实现。如图4所示,根据本申请的一个具体实施方式提供的待升级版本的分区的调整方法包括如下所示的步骤。可以理解下文中提到的数字都是示例性的,在本申请的实施例中,对于各分区的大小,分区起始地址的值,可以使用任意的数值,在这里不做限定。
S401:获取待升级版本的各分区的分区信息。
这里的待升级版本的各分区可以是手机100安装了待升级版本后,手机100的操作系统的分区,例如,待升级版本的各分区可以包括:hboot分区,system分区以及userdata分区等。其中,hboot分区用于启动操作系统;system分区用于存放操作系统的系统相关配置。userdata分区用于存放用户的数据信息,如:联系人、短信、设置、用户安装的程序等。在本申请的实施例中,为了便于描述,以A,B,C,D等字母替代实际的各分区的分区名称进行说明。
各分区的分区信息可以包括:各分区的序号、名称以及分区大小。如表1所示,其中,A分区的分区大小8M;B分区的分区大小15M;C分区的分区大小92M。
序号 | 分区名称 | 分区大小 |
1 | A | 8M |
2 | B | 15M |
3 | C | 92M |
… |
表1
可以理解,在本申请的实施例中,服务器200可以基于待升级版本对应的上一个版本的分区来确定待升级版本的各分区。服务器200也可以从手机100获取手机100的操作系统的当前版本,并根据当前版本的分区来确定待升级版本的各分区。
S402:获取敏感分区的分区信息。
这里,服务器200可以保存有记录敏感分区的分区信息的敏感分区列表,如表2所示,敏感分区列表中记录的敏感分区包括:C分区的分区大小92M,分区起始地址0x0040000。可以看出,与表1相比,表2中除了记录敏感分区的分区名称和分区大小之外,还可以记录敏感分区的分区起始地址,这是由于有些敏感分区需要使用固定分区地址的方式进行设置,如果敏感分区列表中这类敏感分区的起始地址变化,可能会对操作系统访问该敏感分区内的数据造成影响,因此,一旦该敏感分区的起始地址发生变化,需要记录该发生变化的敏感分区以生成告警日志。
序号 | 分区名称 | 分区大小 | 分区起始地址 |
1 | C | 92M | 0x1800000 |
… |
表2
S403:根据敏感分区的分区信息对各分区进行调整,获得调整后的各分区的分区信息。
在服务器200分别获取了各分区的分区信息以及敏感分区的分区信息后,服务器200根据预先配置一个对齐规则来依次确定敏感分区是否实现对齐。如果敏感分区没有实现对齐,则服务器200调整该敏感分区之前的分区。使得敏感分区实现对齐;如果该敏感分区已经对齐,则服务器200继续检测下一个敏感分区,直至敏感分区列表中的所有敏感分区都实现对齐。
下面以表1和表2中的分区信息为例,对步骤S403的过程进行说明。
例如,服务器200可以遍历表2中的敏感分区,获取敏感分区C;接着,服务器200确定敏感分区C在表1中的位置,C分区之前存在A分区和B分区,然后服务器200根据对齐规则确定A分区和B分区是否满足该对齐规则,在对齐规则为8M对齐的情况下,A分区和B分区的分区大小之和为8M+15M=23M,服务器200确定A分区和B分区的分区大小之和不满足8M的整数倍,也就是说C分区之前存在的A分区和B分区没有实现对齐,因此,服务器200在C分区之前填充一个保留分区0(reserved0),由于23M在16M和24M之间,也就是说A分区和B分区的分区大小之和更接近8M的3倍24M,服务器200设置保留分区0的分区大小为24M-23M=1M,使得A分区、B分区以及保留分区0的分区大小之和为24M,满足8M对齐的对齐规则。因此,C分区之前的分区变成A分区、B分区以及保留分区0。
S404:确认是否敏感分区的分区信息是否发生变更。
如果敏感分区的分区信息发生变化,则进入S405,记录敏感分区的名称以及变化后的分区信息。如果未发生变化,则进入S406,将调整后的各分区的分区信息写入分区表。
例如,如表3所示,在服务器200分别调整A分区、B分区、保留分区0以及C分区后,确定A分区、B分区、保留分区0以及C分区的分区信息。
序号 | 分区名称 | 分区大小 | 分区起始地址 |
1 | A | 8M | 0x0000000 |
2 | B | 15M | 0x0800000 |
3 | reserved0 | 1M | 0x1700000 |
4 | C | 92 | 0x1800000 |
… |
表3
从表3可以看出,经过调整后,敏感分区C的分区起始地址未发生变化,因此,服务器执行S406,将表3的数据写入分区表。
S405:记录敏感分区的名称以及变化后的分区信息。
如果服务器200在步骤S403中,调整了敏感分区之前的分区,使得敏感分区的分区起始地址发生变化,则服务器200将分区起始地址发生变化的敏感分区记录在告警日志中,以供开发人员验证。
S406:将调整后的各分区的分区信息写入分区表。
这里,在服务器200完成对待升级版本的各分区的调整后,服务器200将步骤S404中的表3的信息写入分区表中,以便于服务器200进一步制作待升级版本的升级包。
可以理解,在上述步骤S401至S406执行完成后,服务器200生成了待升级版本的分区表,之后,服务器200可以将待升级版本的文件以及待升级版本的分区表制作为待升级版本的升级包,发送给手机100进行升级。
上述步骤S401至S403介绍了,为了使待升级版本的各分区实现对齐,对待升级版本的各分区进行了调整后,各分区中的敏感分区的起始地址未发生改变,且各分区中仅有一个敏感分区的情况,下面将介绍对待升级版本的各分区进行了调整后,各分区中的多个敏感分区的起始地址未发生改变的情况。
在本申请的另一个实施例中,各分区的分区信息可以包括:各分区的序号、名称以及分区大小。如表4所示,其中,A分区的分区大小8M;B分区的分区大小15M;C分区的分区大小6M;D分区的分区大小92M;E分区的分区大小5M;F分区的分区大小100M。
序号 | 分区名称 | 分区大小 |
1 | A | 8M |
2 | B | 15M |
3 | C | 6M |
4 | D | 92M |
5 | E | 5M |
6 | F | 100M |
… |
表4
相对而言,服务器200中保存的记录敏感分区的分区信息的敏感分区列表,如表5所示,敏感分区列表中记录的敏感分区包括:D分区的分区大小92M,分区起始地址0x0040000;F分区的分区大小100M,分区起始地址0x0374000。
序号 | 分区名称 | 分区大小 | 分区起始地址 |
1 | D | 92M | 0x1800000 |
2 | F | 100M | 0x8600000 |
… |
表5
服务器200可以遍历表5中的敏感分区,先获取敏感分区D;接着,服务器200确定敏感分区D在表4中的位置,敏感分区D之前存在A分区,B分区和C分区,然后服务器200根据对齐规则确定A分区,B分区和C分区是否满足该对齐规则,在对齐规则为8M对齐的情况下,A分区,B分区和C分区的分区大小之和为8M+15M+6M=29M,服务器200确定A分区,B分区和C分区的分区大小之和不满足8M的整数倍,也就是说D分区之前存在的A分区,B分区和C分区没有实现对齐;因此,服务器200在D分区之前填充一个保留分区0(reserved0),由于29M在24M和32M之间,也就是说A分区,B分区和C分区的分区大小之和更接近8M的4倍32M,因此,服务器200设置保留分区0的分区大小为32M-29M=3M,使得A分区,B分区、C分区以及保留分区0的分区大小之和为32M,满足8M对齐的对齐规则。因此,D分区之前的分区变成A分区、B分区、C分区以及保留分区0。
同理,对于敏感分区F,服务器200确定敏感分区F在表1中的位置,敏感分区D之前存在A分区,B分区、C分区、保留分区0、D分区,E分区,然后服务器200根据对齐规则确定上述分区是否满足该对齐规则,在对齐规则为8M对齐的情况下,A分区,B分区、C分区、保留分区0、D分区,E分区的分区大小之和为8M+15M+6M+3M+92M+5M=129M,服务器200确定上述分区的分区大小之和不满足8M的整数倍,也就是说F分区之前存在的上述分区没有实现对齐;因此,服务器200在F分区之前填充一个保留分区1(reserved1),由于129M在128M和136M之间,也就是说A分区,B分区、C分区、保留分区0、D分区,E分区的分区大小之和更接近8M的17倍136M,因此,服务器200设置保留分区1的分区大小为136M-129M=7M,使得A分区,B分区、C分区、保留分区0、D分区,E分区以及保留分区1的分区大小之和为136M,满足8M对齐的对齐规则。因此,F分区之前的分区变成A分区,B分区、C分区、保留分区0、D分区,E分区以及保留分区1。
如表6所示,在服务器200分别调整A分区、B分区、C分区、保留分区0、D分区、E分区、保留分区1以及F分区后,确定上述分区的分区信息。
表6
可以看出,服务器200调整了敏感分区之前的分区,填充了保留分区0和保留分区1,使得敏感分区,也就是D分区和E分区的分区起始地址发生变化,如图5所示,服务器200将分区起始地址发生变化的D分区和E分区记录在告警日志中,在告警日志中,服务器200提示D分区和E分区在敏感分区表中的分区起始地址分别为0x1800000和0x8600000,而调整后的分区起始地址分别为0x2000000和0x8800000,以供开发人员验证。
应当理解的是,虽然在本文中可能使用了术语“第一”、“第二”等等来描述各个特征,但是这些特征不应当受这些术语限制。使用这些术语仅仅是为了进行区分,而不能理解为指示或暗示相对重要性。举例来说,在不背离示例性实施例的范围的情况下,第一特征可以被称为第二特征,并且类似地第二特征可以被称为第一特征。
此外,各种操作将以最有助于理解说明性实施例的方式被描述为多个彼此分离的操作;然而,描述的顺序不应被解释为暗示这些操作必须依赖描述的顺序,其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序也可以被重新安排。当所描述的操作完成时,所述处理可以被终止,但是还可以具有未包括在附图中的附加操作。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
说明书中对“一个实施例”,“实施例”,“说明性实施例”等的引用表示所描述的实施例可以包括特定特征、结构或性质,但是每个实施例也可能或不是必需包括特定的特征、结构或性质。而且,这些短语不一定是针对同一实施例。此外,当结合具体实施例描述特定特征,本领域技术人员的知识能够影响到这些特征与其他实施例的结合,无论这些实施例是否被明确描述。
除非上下文另有规定,否则术语“包含”、“具有”和“包括”是同义词。短语“A/B”表示“A或B”。短语“A和/或B”表示“(A)、(B)或(A和B)”。
如本文所使用的,术语“模块”可以指代,作为其中的一部分,或者包括:用于运行一个或多个软件或固件程序的存储器(共享、专用或组),专用集成电路(ASIC),电子电路和/或处理器(共享、专用或组),组合逻辑电路,和/或提供所述功能的其他合适组件。
在附图中,可能以特定布置和/或顺序示出了一些结构或方法特征。然而,应当理解的是,这样的特定布置和/或排序不是必需的。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来进行说明。另外,特定附图中所包含得结构或方法特征并不意味着所有实施例都需要包含这样的特征,在一些实施例中,可以不包含这些特征,或者可以将这些特征与其他特征进行组合。
上面结合附图对本申请的实施例做了详细说明,但本申请技术方案的使用不仅仅局限于本专利实施例中提及的各种应用,各种结构和变型都可以参考本申请技术方案轻易地实施,以达到本文中提及的各种有益效果。在本领域普通技术人员所具备的知识范围内,在不脱离本申请宗旨的前提下做出的各种变化,均应归属于本申请专利涵盖范围。
Claims (12)
1.一种系统升级包的制作方法,应用于电子设备,其特征在于,包括:
从系统升级包设置的分区信息对应的系统分区中,选择出不满足对齐条件的敏感分区;
按照所述系统分区的分区地址的递增方向,在不满足对齐条件的敏感分区前加入不存储系统数据的保留分区,以使得所述敏感分区满足对齐条件;
其中所述对齐条件包括:按照所述分区地址的递增方向,所述敏感分区之前的系统分区的存储容量之和为预设容量值的整数倍;
所述敏感分区包括所述电子设备的操作系统或文件系统频繁地进行读写数据操作的所述系统分区。
2.根据权利要求1所述的方法,其特征在于,所述系统升级包中设置的分区信息包括系统分区的分区名称、分区地址、分区大小。
3.根据权利要求1所述的方法,其特征在于,所述敏感分区的系统数据的读写操作频率高于预设的读写操作频率阈值或者系统数据的优先级高于预设的优先级阈值。
4.根据权利要求1所述的方法,其特征在于,所述敏感分区之前的所述系统分区包括所述系统分区中的起始分区,所述起始分区的分区地址包括所述系统分区的起始分区地址。
5.根据权利要求1所述的方法,其特征在于,所述敏感分区之前的所述系统分区为所述敏感分区与另一敏感分区之间的分区,并且所述另一敏感分区满足所述对齐条件。
6.根据权利要求2所述的方法,其特征在于,在所述敏感分区前加入所述保留分区后,所述敏感分区的分区地址发生变更的情况下,记录所述敏感分区的分区地址后更新所述系统升级包的分区信息。
7.一种电子设备的系统升级方法,其特征在于,包括:
获取对所述电子设备上安装的系统进行升级所需的升级包;
通过所述升级包对所述电子设备上安装的系统进行升级,其中
升级后所述系统的系统分区包括按照分区地址的递增方向依次排列的多个在先分区、保留分区和敏感分区,并且所述多个在先分区和保留分区的存储容量之和为预设存储容量的整数倍,所述保留分区中未存储系统数据;
其中所述敏感分区包括所述电子设备的操作系统或文件系统频繁地进行读写数据操作的所述系统分区。
8.根据权利要求7所述的方法,其特征在于,所述敏感分区的系统数据的读写操作频率高于预设的读写操作频率阈值或者系统数据的优先级高于预设的优先级阈值。
9.根据权利要求7所述的方法,其特征在于,所述敏感分区之前的在先分区包括所述系统分区中的起始分区,所述起始分区的分区地址包括所述系统分区的起始分区地址。
10.根据权利要求7所述的方法,其特征在于,所述敏感分区之前的在先分区为所述敏感分区与另一敏感分区之间的分区,并且所述另一敏感分区之前的所述在先分区和保留分区的存储容量之和为预设存储容量的整数倍。
11.一种电子设备,其特征在于,包括:
处理器,用于执行权利要求1至6中任一项所述系统升级包的制作方法;以及
存储器,可以与控制器耦合或者解耦用于存储由所述控制器执行的指令。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包含有指令,当所述指令被电子设备的控制器执行时使电子设备实现权利要求1至6中任一项所述系统升级包的制作方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110831343.2A CN113687855B (zh) | 2021-07-22 | 2021-07-22 | 电子设备及其系统升级包的制作方法、系统升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110831343.2A CN113687855B (zh) | 2021-07-22 | 2021-07-22 | 电子设备及其系统升级包的制作方法、系统升级方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113687855A CN113687855A (zh) | 2021-11-23 |
CN113687855B true CN113687855B (zh) | 2022-07-12 |
Family
ID=78577687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110831343.2A Active CN113687855B (zh) | 2021-07-22 | 2021-07-22 | 电子设备及其系统升级包的制作方法、系统升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113687855B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866862A (zh) * | 2012-07-26 | 2013-01-09 | 浪潮电子信息产业股份有限公司 | 一种基于4k扇区硬盘性能优化的方法 |
CN103221927A (zh) * | 2010-11-24 | 2013-07-24 | 索尼爱立信移动通讯有限公司 | 用于电子设备的可动态配置的嵌入式闪存 |
CN103744694A (zh) * | 2013-12-24 | 2014-04-23 | 武汉烽火众智数字技术有限责任公司 | 基于Nand闪存的动态分区搜索装置及其方法 |
CN106484448A (zh) * | 2015-08-28 | 2017-03-08 | 青岛海信移动通信技术股份有限公司 | 一种软件升级方法及装置 |
CN110532198A (zh) * | 2019-09-09 | 2019-12-03 | 成都西山居互动娱乐科技有限公司 | 一种存储空间分配的方法及装置 |
CN111131828A (zh) * | 2019-12-30 | 2020-05-08 | 芯颖科技有限公司 | 一种图像压缩方法及装置 |
CN111969638A (zh) * | 2020-08-11 | 2020-11-20 | 国网山东省电力公司电力科学研究院 | 基于整数线性规划的多直流馈入电网恢复分区方法及系统 |
CN112685227A (zh) * | 2020-12-23 | 2021-04-20 | 北京浪潮数据技术有限公司 | 一种日志管理方法、装置、设备及计算机可读存储介质 |
WO2021133405A1 (en) * | 2019-12-27 | 2021-07-01 | Hitachi Vantara Llc | Dynamic adaptive partition splitting |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102945179B (zh) * | 2012-11-28 | 2016-06-29 | 青岛海信宽带多媒体技术有限公司 | 基于mtd分区的软件升级方法和装置 |
US9923702B2 (en) * | 2013-01-25 | 2018-03-20 | Mediatek Singapore Pte. Ltd. | Sectorization feedback and multi-sector transmission in wireless networks |
CN107329805A (zh) * | 2017-07-13 | 2017-11-07 | 郑州云海信息技术有限公司 | 一种虚拟化平台高可用性的实现方法和装置 |
CN112771493B (zh) * | 2018-09-28 | 2022-06-24 | 波利伍德股份有限公司 | 将写入流分离到多个分区中 |
-
2021
- 2021-07-22 CN CN202110831343.2A patent/CN113687855B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103221927A (zh) * | 2010-11-24 | 2013-07-24 | 索尼爱立信移动通讯有限公司 | 用于电子设备的可动态配置的嵌入式闪存 |
CN102866862A (zh) * | 2012-07-26 | 2013-01-09 | 浪潮电子信息产业股份有限公司 | 一种基于4k扇区硬盘性能优化的方法 |
CN103744694A (zh) * | 2013-12-24 | 2014-04-23 | 武汉烽火众智数字技术有限责任公司 | 基于Nand闪存的动态分区搜索装置及其方法 |
CN106484448A (zh) * | 2015-08-28 | 2017-03-08 | 青岛海信移动通信技术股份有限公司 | 一种软件升级方法及装置 |
CN110532198A (zh) * | 2019-09-09 | 2019-12-03 | 成都西山居互动娱乐科技有限公司 | 一种存储空间分配的方法及装置 |
WO2021133405A1 (en) * | 2019-12-27 | 2021-07-01 | Hitachi Vantara Llc | Dynamic adaptive partition splitting |
CN111131828A (zh) * | 2019-12-30 | 2020-05-08 | 芯颖科技有限公司 | 一种图像压缩方法及装置 |
CN111969638A (zh) * | 2020-08-11 | 2020-11-20 | 国网山东省电力公司电力科学研究院 | 基于整数线性规划的多直流馈入电网恢复分区方法及系统 |
CN112685227A (zh) * | 2020-12-23 | 2021-04-20 | 北京浪潮数据技术有限公司 | 一种日志管理方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (3)
Title |
---|
Time and space partitioning security components for spacecraft flight software;James Windsor 等;《The 2011 IEEE/AIAA 30th Digital Avionics Systems Conference》;20111208;第1-14页 * |
基于高通平台的Android系统分区管理;蔡洁;《硅谷》;20141008;第7卷(第19期);第44-46页 * |
纠删码存储系统数据更新方法研究综述;张耀 等;《计算机研究与发展》;20201110;第57卷(第11期);第2419-2431页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113687855A (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11360696B2 (en) | System startup method and apparatus, electronic device, and storage medium | |
US8954805B2 (en) | Computer booting method and computer system | |
US9177652B2 (en) | Bad block compensation for solid state storage devices | |
US20200326930A1 (en) | System and Method for Modular Patch based Firmware Update | |
TW201706826A (zh) | 於異質系統記憶體中用於最佳化記憶體耗電之系統及方法 | |
CN107526687B (zh) | 多种配置的存储器系统及其操作方法 | |
WO2022095758A1 (zh) | 终端升级的方法及终端 | |
US11861349B2 (en) | Modular firmware updates in an information handling system | |
US8788800B2 (en) | OS processing method, system and non-transitory computer readable storage medium thereof | |
CN113687855B (zh) | 电子设备及其系统升级包的制作方法、系统升级方法 | |
US10635311B2 (en) | Information handling system with reduced reset during dual in-line memory module goal reconfiguration | |
US10970206B2 (en) | Flash data compression decompression method and apparatus | |
CN116679887B (zh) | 用于NAND Flash的通用控制模块及方法 | |
US20120191962A1 (en) | System and method for simulating bios rom of computing device into virtual disk | |
US10289334B2 (en) | Valid data merging method, memory controller and memory storage apparatus | |
CN110737455A (zh) | 固件的更新方法、装置及电子设备 | |
CN110618828A (zh) | 一种数据更新方法及装置 | |
CN116088758A (zh) | 优化方法、装置、计算机设备、存储介质和程序产品 | |
CN115951920A (zh) | 移动设备升级方法、装置、存储单元和移动设备 | |
CN114679465A (zh) | 资源操作方法、装置、电子设备及存储介质 | |
US20220291918A1 (en) | Patch release method, server, and terminal device | |
CN113672260A (zh) | 一种处理器cpu初始化方法 | |
US9483399B2 (en) | Sub-OS virtual memory management layer | |
US20240103725A1 (en) | Loading multi-segmented software image files into memory using a nested file structure | |
CN109388513B (zh) | 数据校验的方法、阵列控制器及硬盘 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230904 Address after: 201306 building C, No. 888, Huanhu West 2nd Road, Lingang New Area, Pudong New Area, Shanghai Patentee after: Shanghai Glory Smart Technology Development Co.,Ltd. Address before: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee before: Honor Device Co.,Ltd. |
|
TR01 | Transfer of patent right |