CN113741812B - 存储器分区的更新方法、装置、电子装置和存储介质 - Google Patents
存储器分区的更新方法、装置、电子装置和存储介质 Download PDFInfo
- Publication number
- CN113741812B CN113741812B CN202110909882.3A CN202110909882A CN113741812B CN 113741812 B CN113741812 B CN 113741812B CN 202110909882 A CN202110909882 A CN 202110909882A CN 113741812 B CN113741812 B CN 113741812B
- Authority
- CN
- China
- Prior art keywords
- storage area
- storage
- memory
- addresses
- corresponding relation
- 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
- 238000005192 partition Methods 0.000 title claims abstract description 121
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000008569 process Effects 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 13
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- 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/0683—Plurality of storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种存储器分区的更新方法,其中,该存储器分区的更新方法包括:基于第一空间划分结果获取多个第一存储区地址;基于多个第一存储区地址建立总存储区,并建立第一对应关系,第一对应关系为多个第一存储区地址与总存储区地址的对应关系;基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,第二对应关系为多个第二存储区地址与总存储区地址的对应关系;基于第一对应关系以及第二对应关系,建立多个第一存储区地址与多个第二存储区地址的对应关系。通过本申请,解决了相关技术中存在的不能跨分区计算起始地址的偏移量的技术问题,减少了跨分区更新存储区分区的计算进程,提高了存储区分区的更新效率。
Description
技术领域
本申请涉及计算机存储领域,特别是涉及存储器分区的更新方法、装置、电子装置和存储介质。
背景技术
在日常的计算机设备的使用过程中,计算机***的更新越来越频繁。而由于新版***软件的大小往往和旧版***软件不一致,在更新过程中可能会出现新版***的分区地址和分区大小与旧版***不一致的情形,进而导致在更新进程中发生分区不对应、地址无法访问等情形,最终导致更新进程异常或者崩溃。
为了解决***更新过程中分区不一致的情形,现有技术中都是获取新版***和旧版***分区列表,得到新版***分区的各个起始地址,计算新版***分区的各个起始地址相对于旧版***分区的各个起始地址的偏移量,得到***更新后的分区地址。但是,由于旧版***的每个分区是固定且相互独立的,因此只能在每个分区的内部计算新版***分区的起始地址的偏移量,而不能跨分区计算起始地址的偏移量。
针对相关技术中存在的不能跨分区计算起始地址的偏移量的技术问题,目前还没有提出有效的解决方案。
发明内容
在本实施例中提供了一种存储器分区的更新方法、装置、电子装置和存储介质,以解决相关技术中不能跨分区计算起始地址的偏移量的问题。
第一个方面,在本实施例中提供了一种存储器分区的更新方法,包括:
基于第一空间划分结果获取多个第一存储区地址,所述第一空间划分结果为存储器更新前的空间划分结果;
基于多个所述第一存储区地址建立总存储区,并建立第一对应关系,所述第一对应关系为多个所述第一存储区地址与总存储区地址的对应关系,所述总存储区的存储空间不小于多个所述第一存储区的存储空间之和;
基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,所述第二对应关系为多个所述第二存储区地址与总存储区地址的对应关系,所述分区更新需求为更新后的存储器的空间划分需求;
基于所述第一对应关系以及第二对应关系,建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系。
在其中的一些实施例中,所述基于多个所述第一存储区地址建立总存储区包括:
获取多个所述第一存储区的所有存储单元的数量,所述存储单元至少包括一个字节;
建立所述总存储区,所述总存储区的存储单元数量不低于多个所述第一存储区的所有存储单元的数量。
在其中的一些实施例中,所述基于分区更新需求获取多个第二存储区地址之前还包括:
获取待更新***软件的每个镜像文件的最小存储空间,所述待更新***软件为***更新过程中待安装的***软件;
基于每个所述镜像文件的最小存储空间建立与该镜像文件对应的所述第二存储区,所述第二存储区的存储空间不小于与该第二存储区对应的镜像文件的最小存储空间。
在其中的一些实施例中,所述建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系之后还包括:
获取所述待更新***软件的多个所述镜像文件,并依次基于多个所述第一存储区地址与多个所述第二存储区地址的对应关系将每个所述镜像文件存入所述第一存储区。
在其中的一些实施例中,所述建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系之后还包括:
基于多个所述第二存储区地址建立第二存储区控制单元,所述第二存储区控制单元用于执行对多个所述第二存储区的操作指令。
在其中的一些实施例中,所述基于所述第一对应关系以及第二对应关系,建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系包括:
依次在所述总存储区中获取与每个第二存储区的每个存储单元对应的总存储区的存储单元地址,并依次在多个所述第一存储区中获取与该总存储区的存储单元对应的第一存储区的存储单元地址;
将所述总存储区存储单元地址与所述第二存储区存储单元地址的对应关系保存至存储空间。
在其中的一些实施例中,所述建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系包括:
建立多个所述第一存储区地址与多个所述第二存储区地址的映射关系列表。
第二个方面,在本实施例中提供了一种存储器分区的更新装置,包括:
获取模块,用于基于第一空间划分结果获取多个第一存储区地址,所述第一空间划分结果为存储器更新前的空间划分结果;
第一关系建立模块,用于基于多个所述第一存储区地址建立总存储区,并建立第一对应关系,所述第一对应关系为多个所述第一存储区地址与总存储区地址的对应关系,所述总存储区的存储空间不小于多个所述第一存储区的存储空间之和;
第二关系建立模块,用于基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,所述第二对应关系为多个所述第二存储区地址与总存储区地址的对应关系,所述分区更新需求为更新后的存储器的空间划分需求;
第三关系建立模块,用于基于所述第一对应关系以及第二对应关系,建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系。
第三个方面,在本实施例中提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面所述的存储器分区的更新方法。
第四个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面所述的存储器分区的更新方法。
与相关技术相比,在本实施例中提供的存储器分区的更新方法,基于第一空间划分结果获取多个第一存储区地址,所述第一空间划分结果为存储器更新前的空间划分结果;基于多个所述第一存储区地址建立总存储区,并建立第一对应关系,所述第一对应关系为多个所述第一存储区地址与总存储区地址的对应关系,所述总存储区的存储空间不小于多个所述第一存储区的存储空间之和;基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,所述第二对应关系为多个所述第二存储区地址与总存储区地址的对应关系,所述分区更新需求为更新后的存储器的空间划分需求;基于所述第一对应关系以及第二对应关系,建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系。通过总存储区建立第一存储区与第二存储区的对应关系,在总存储区中获取与第二存储区的起始地址对应的总存储区地址,并进一步在第一存储区中获取与该总存储区地址对应的第一存储区地址,最终建立第二存储区起始地址与第一存储区地址的对应关系,不需要对第一存储区或者第二存储区进行拆分,解决了相关技术中存在的不能跨分区计算起始地址的偏移量的技术问题,提高了存储区分区的更新效率。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本发明一实施例的存储器分区的更新方法的终端硬件结构框图;
图2是本发明一实施例的存储器分区的更新方法的流程示意图;
图3是本发明一实施例的总存储区的示意图;
图4是本发明另一实施例的总存储区的示意图;
图5是本发明另一实施例的总存储区的示意图;
图6是本发明另一实施例的总存储区的示意图;
图7是本发明一实施例的***软件更新方法的流程示意图;
图8是本发明一实施例的存储器分区的更新装置的结构框图。
具体实施方式
为更清楚地理解本申请的目的、技术方案和优点,下面结合附图和实施例,对本申请进行了描述和说明。
除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属技术领域具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和***、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他步骤或模块(单元)。在本申请中所涉及的“连接”、“相连”、“耦接”等类似的词语并不限定于物理的或机械连接,而可以包括电气连接,无论是直接连接还是间接连接。在本申请中所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。通常情况下,字符“/”表示前后关联的对象是一种“或”的关系。在本申请中所涉及的术语“第一”、“第二”、“第三”等,只是对相似对象进行区分,并不代表针对对象的特定排序。
在本实施例中提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。比如在终端上运行,图1是本实施例的存储器分区的更新方法的终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102和用于存储数据的存储器104,其中,处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置。上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限制。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示出的不同配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如在本实施例中的存储器分区的更新方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(NetworkInterface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在计算机***软件的更新过程中,由于新版***软件与旧版***软件的文件并不一致,导致旧版***软件的存储器空间划分区域可能与新版***软件并不匹配,因此需要基于新版***软件建立新的空间划分区域。但是在***更新过程中,新的空间划分区域是一个虚拟的划分区域,因此需要将新的空间划分区域的地址映射到原有的空间划分区域地址,才能将新版***软件的相关文件存入存储器的物理区域。
而由于空间划分区域之间相互独立,无法将两个及以上的空间划分区域映射到同一个空间划分区域,即无法跨分区建立新的空间划分区域与原有的空间划分区域的映射关系。因此需要在中间建立一个总的空间区域,新的空间划分区域与原有的空间划分区域都直接与该总的空间区域建立映射关系,从而间接地建立新的空间划分区域与原有的空间划分区域的映射关系。
请参阅图2,图2是本发明一实施例的存储器分区的更新方法的流程示意图。在本实施例中,存储器分区的更新方法包括:
S202:基于第一空间划分结果获取多个第一存储区地址,第一空间划分结果为存储器更新前的空间划分结果。
示例性地,基于存储器分区更新前的空间划分结果获取多个第一存储区地址,其中,第一空间划分结果包括但不限于存储器的物理地址的空间划分结果,第一存储区包括但不限于存储器分区更新前的每个物理分区,第一存储区地址包括但不限于第一存储区的起始地址和结束地址、第一存储区的部分或者全部存储单元地址等。
示例性地,本发明中的存储器包括但不限于nand flash存储器、nor flash存储器、TF卡等非易失性存储介质。
S204:基于多个第一存储区地址建立总存储区,并建立第一对应关系,第一对应关系为多个第一存储区地址与总存储区地址的对应关系,总存储区的存储空间不小于多个第一存储区的存储空间之和。
示例性地,在多个第一存储区的基础上建立总存储区,并设立总存储区地址,将第一存储区的地址与总存储区的地址建立第一对应关系。其中,总存储区的存储空间不小于多个第一存储区的存储空间之和,从而确保第一存储区的每个地址均能在总存储区中找到对应总存储区地址。可以理解的,通常情况下***会对第一存储区进行访问,总存储区仅仅在存储器分区的更新过程中才会被访问。
请参阅图3,图3是本发明一实施例的总存储区的示意图。具体的,基于第一空间划分结果获取存储器的四个第一存储区:第一存储区1、第一存储区2、第一存储区3以及第一存储区4,在上述四个第一存储区的基础上建立总存储区,使得总存储区的空间范围覆盖四个第一存储区的空间范围。
S206:基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,第二对应关系为多个第二存储区地址与总存储区地址的对应关系,分区更新需求为更新后的存储器的空间划分需求。
示例性地,基于分区更新需求建立第二存储区,将第二存储区的每个地址与总存储区的地址建立第二对应关系。其中,分区更新需求包括存储器分区更新后的存储空间划分需求。
S208:基于第一对应关系以及第二对应关系,建立多个第一存储区地址与多个第二存储区地址的对应关系。
示例性地,在总存储区中获取与第一存储区地址相对应的总存储区地址,并在第二存储区中获取与该总存储区地址对应的第二存储区地址,从而建立第一存储区地址与第二存储区地址的对应关系。
请参阅图4,图4是本发明另一实施例的总存储区的示意图。具体的,基于分区更新需求建立第二存储区1、第二存储区2以及第二存储区3,并建立三个第二存储区地址与总存储区地址的对应关系。基于第二存储区1、第二存储区2以及第二存储3地址与总存储区地址的对应关系,以及第一存储区1、第一存储区2、第一存储区3、第一存储区4地址与总存储区地址的对应关系,建立三个第二存储区地址与四个第一存储区地址的对应关系。
本实施例基于第一空间划分结果获取多个第一存储区地址,第一空间划分结果为存储器更新前的空间划分结果;基于多个第一存储区地址建立总存储区,并建立第一对应关系,第一对应关系为多个第一存储区地址与总存储区地址的对应关系,总存储区的存储空间不小于多个第一存储区的存储空间之和;基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,第二对应关系为多个第二存储区地址与总存储区地址的对应关系,分区更新需求为更新后的存储器的空间划分需求;基于第一对应关系以及第二对应关系,建立多个第一存储区地址与多个第二存储区地址的对应关系。通过总存储区建立第一存储区与第二存储区的对应关系,在总存储区中获取与第二存储区的起始地址对应的总存储区地址,并进一步在第一存储区中获取与该总存储区地址对应的第一存储区地址,最终建立第二存储区起始地址与第一存储区地址的对应关系,基于该对应关系可以将第二存储区地址映射到总存储区地址,再进一步映射到第一存储区地址,不需要直接对第一存储区地址以及第二存储区地址直接建立对应关系,第一存储区以及第二存储区始终只与一个总存储区相对应,避免出现跨分区更新的情形,解决了相关技术中存在的不能跨分区计算起始地址的偏移量的技术问题,减少了跨分区更新存储区分区的计算进程,提高了存储区分区的更新效率。
在另一个实施例中,基于多个第一存储区地址建立总存储区包括:
步骤1:获取多个第一存储区的所有存储单元的数量,存储单元至少包括一个字节;
步骤2:建立总存储区,总存储区的存储单元数量不低于多个第一存储区的所有存储单元的数量。
示例性地,统计所有第一存储区中的存储单元的数量,并建立存储单元数量不低于所有第一存储区中的存储单元数量的总存储区,其中,存储单元是存储器的最小存储单位,可以设置为一个字节或者多个字节。
示例性地,本实施例还可以获取所有第一存储区的起始地址和结束地址,基于第一存储区的起始地址和结束地址计算每个第一存储区的存储空间,得到多个第一存储区的存储空间之和,并建立存储空间不低于多个第一存储区的存储空间之和的总存储区。
本实施例获取多个第一存储区的所有存储单元的数量,并基于多个第一存储区的所有存储单元的数量建立总存储区,基于总存储区可以实现对第一存储区内的所有存储单元的跨分区管理和映射,解决了现有技术中只能基于第一存储区对内部的存储单元进行管理的技术问题。
在另一个实施例中,基于分区更新需求获取多个第二存储区地址之前还包括:
步骤1:获取待更新***软件的每个镜像文件的最小存储空间,待更新***软件为***更新过程中待安装的***软件。
示例性地,获取待更新***软件,并进一步获取待更新***软件的每个镜像文件的最小存储空间。其中,待更新***软件是指计算机或者其他设备在***更新过程中准备安装的***软件;镜像文件是指对待更新***软件以一定的格式制作并保存的文件,包括***文件、引导文件、分区表信息等内容。
在其中一个具体实施例中,待更新***软件包括多个镜像文件以及每个镜像文件所需要的分区的起始地址以及分区大小。
步骤2:基于每个镜像文件的最小存储空间建立与该镜像文件对应的第二存储区,第二存储区的存储空间不小于与该第二存储区对应的镜像文件的最小存储空间。
示例性地,针对每个镜像文件建立一个第二存储区,并且该第二存储区的存储空间不小于该镜像文件的最小存储空间,以确保该镜像文件能够存入该第二存储区所对应的存储空间。
可以理解的,由于待更新***软件与原***软件并不一致,导致现有的存储器分区的基地址和分区大小不能适应待更新***软件,进而导致同一个镜像文件可能存在需要跨分区存储的问题。例如,待更新***软件的某镜像文件需要1000个存储单元的存储空间,而需要写入的分区只有800个存储单元,则需要对该镜像文件进行拆分才能将镜像文件存入该分区。
本实施例获取待更新***软件的每个镜像文件的最小存储空间,基于每个镜像文件的最小存储空间建立与该镜像文件对应的第二存储区,避免了直接基于第一存储区存储镜像文件产生的跨分区问题。
在另一个实施例中,建立多个第一存储区地址与多个第二存储区地址的对应关系之后还包括:
获取待更新***软件的多个镜像文件,并依次基于多个第一存储区地址与多个第二存储区地址的对应关系将每个镜像文件存入第一存储区。
示例性地,分别获取待更新***软件的每个镜像文件,并基于第二存储区地址与第一存储区地址的对应关系,依次将每个镜像文件存入相应的第一存储区。
在其中一个具体实施例中,获取待更新***软件的多个镜像文件,并基于第二存储区的存储单元大小将每个镜像文件分成多个镜像子文件,依次将每个镜像子文件存入与该镜像文件对应的第二存储区的每个存储单元对应的第一存储区的存储单元中。
在其中一个具体实施例中,获取每个第二存储区的起始地址,将每个镜像文件以及与该镜像文件相对应的第二存储区的起始地址传输给更新模块的接口,更新模块获取上述内容后对***软件进行更新,并基于第二存储区地址与第一存储区地址的对应关系将镜像文件保存至第一存储区。
本实施例获取待更新***软件的多个镜像文件,并依次基于多个第一存储区地址与多个第二存储区地址的对应关系将每个镜像文件存入相应的第二存储区对应的第一存储区,不需要对待更新***软件的镜像文件进行拆分从而直接存入第一存储区,提高了镜像文件的存储速度以及***软件的更新速度。
在另一个实施例中,建立多个第一存储区地址与多个第二存储区地址的对应关系之后还包括:
基于多个第二存储区地址建立第二存储区控制单元,第二存储区控制单元用于执行对多个第二存储区的操作指令。
示例性地,在***软件中建立第二存储区控制单元,用于实现对多个第二存储区读写、擦除、存储等操作的集中控制。
在其中一个具体实施例中,基于第二存储区控制单元实现对待更新***软件的镜像文件的存储操作。
本实施例基于多个第二存储区地址建立第二存储区控制单元,第二存储区控制单元用于执行对第二存储区的操作指令,从而对多个第二存储区进行统一操作,提高了多个第二存储区的集成度。
在另一个实施例中,基于第一对应关系以及第二对应关系,建立多个第一存储区地址与多个第二存储区地址的对应关系包括:
步骤1:依次在总存储区中获取与每个第二存储区的每个存储单元对应的总存储区的存储单元地址,并依次在多个第一存储区中获取与该总存储区的存储单元对应的第一存储区的存储单元地址;
步骤2:将总存储区存储单元地址与第二存储区存储单元地址的对应关系保存至存储空间。
示例性地,基于总存储区地址与第一存储区地址的对应关系,在总存储区中获取与第二存储区的每个存储单元对应的总存储区的存储单元地址,并基于总存储区地址与第二存储区地址的对应关系,在第一存储区中获取与该总存储区的存储单元对应的第一存储区的存储单元地址,从而建立第二存储区的存储单元地址与第一存储区的存储单元地址的对应关系,将总存储区存储单元地址与第二存储区存储单元地址的对应关系保存至相关存储空间。可以理解的,本实施例也可以将第一存储区存储单元地址与第二存储区存储单元地址的对应关系保存至相关存储空间。
请参阅图5,图5是本发明另一实施例的总存储区的示意图。具体的,建立第一存储区地址与总存储地址的对应关系,例如建立第一存储区中的3分区3单元(第3个第一存储区的第3个存储单元)地址与总分区3单元(总存储区的第3个存储单元)的对应关系,并建立第二存储区地址与总存储区地址的对应关系,例如建立第二存储区中4分区1单元与总分区3单元的对应关系。通过总分区3单元,建立了第一存储区中3分区3单元与第二存储区中4分区1单元的对应关系。
请参阅图6,图6是本发明另一实施例的总存储区的示意图。示例性地,如图6所示,当存储器中存在坏块时,可能会出现第一存储区地址与第二存储区地址不对应的情形,因此需要建立第一存储区地址与第二存储区地址的对应关系。其中,坏块是指存储器中不能进行存储或者擦写等操作的存储单元。但是由于每个第一存储区的存储空间都是固定且相互独立的,因此只能在第一存储区的存储空间范围内建立对应关系,即同一个第一存储区的地址无法与两个及以上的第二存储区的地址相对应,从而无法跨分区建立第一存储区地址与第二存储区地址的对应关系。
在其中一个具体实施例中,如图6所示,第一存储区中3分区2单元以及4分区1单元为坏块,在不存在坏块的情况下第二存储区的4分区1单元应当与第一存储区的3分区2单元相对应。当第一存储区的3分区2单元存在坏块时,则需要获取下一个存储单元即第一存储区的3分区3单元,并将其地址与第二存储区的4分区1单元相对应。
本实施例依次在总存储区中获取与每个第二存储区的每个存储单元对应的总存储区的存储单元地址,并依次在多个第一存储区中获取与该总存储区的存储单元对应的第一存储区的存储单元地址,使得第一存储区与第二存储区的存储单元能够跨分区建立对应关系,在需要访问第一存储区的存储单元时直接获取相应的第二存储区的存储单元,提高了存储区分区的访问速度。
在另一个实施例中,建立多个第一存储区地址与多个第二存储区地址的对应关系包括:
建立多个所述第一存储区地址与多个所述第二存储区地址的映射关系列表。
示例性地,基于多个第一存储区地址与多个第二存储区地址建立映射关系列表,通过映射关系列表可以基于第二存储区的存储单元地址快速访问对应的第一存储区的存储单元。
示例性地,映射关系列表还包括快速索引通道,该快速索引通道用于快速匹配第二存储区地址,并映射到相应的第一存储区的存储单元。
本实施例建立第一存储区地址与第二存储区地址的映射关系列表,在需要访问第一存储区时,可直接在映射关系列表进行检索与映射,提高了第一存储区访问的便利性,进一步提高了存储区分区的更新效率。
在另一个实施例中,多个第一存储区的存储空间之和小于或者等于存储器的存储空间。
示例性地,多个第一存储区的存储空间总和可以是全部的存储器的存储空间,也可以只是存储器存储空间的一部分。可以理解的,在存储器分区的更新过程中,仅需要对需要跨分区更新的存储器分区建立总存储区,而不需要对存储器的所有分区建立总存储区。
请参阅图7,在另一个实施例中,***软件更新方法包括:基于待更新***软件获取每个镜像文件对应的第二存储区的起始地址和存储空间,并通过总存储区建立第一存储区地址与第二存储区地址的对应关系;调用***升级接口,将第二存储区的起始地址、待更新***软件的镜像文件以及镜像文件大小传入***升级接口;通过第一存储区地址与第二存储区地址的对应关系,获取镜像文件所对应的第二存储区地址在第一存储区中的地址即实际存储地址,并通过第二存储区控制单元将镜像文件写入该实际存储地址。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中还提供了一种存储器分区的更新装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图8是本实施例的存储器分区的更新装置的结构框图,如图8所示,该装置包括:
获取模块,用于基于第一空间划分结果获取多个第一存储区地址,第一空间划分结果为存储器更新前的空间划分结果;
第一关系建立模块,用于基于多个第一存储区地址建立总存储区,并建立第一对应关系,第一对应关系为多个第一存储区地址与总存储区地址的对应关系,总存储区的存储空间不小于多个第一存储区的存储空间之和;
第一关系建立模块,还用于获取多个第一存储区的所有存储单元的数量,存储单元至少包括一个字节;
建立总存储区,总存储区的存储单元数量不低于多个第一存储区的所有存储单元的数量;
第二关系建立模块,用于基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,第二对应关系为多个第二存储区地址与总存储区地址的对应关系,分区更新需求为更新后的存储器的空间划分需求;
第三关系建立模块,用于基于第一对应关系以及第二对应关系,建立多个第一存储区地址与多个第二存储区地址的对应关系;
第三关系建立模块,还用于依次在总存储区中获取与每个第二存储区的每个存储单元对应的总存储区的存储单元地址,并依次在多个第一存储区中获取与该总存储区的存储单元对应的第一存储区的存储单元地址;
将总存储区存储单元地址与第二存储区存储单元地址的对应关系保存至存储空间;
第三关系建立模块,还用于建立多个第一存储区地址与多个第二存储区地址的映射关系列表;
存储器分区的更新装置,还包括第二存储区建立模块;
第二存储区建立模块,用于获取待更新***软件的每个镜像文件的最小存储空间,待更新***软件为***更新过程中待安装的***软件;
基于每个镜像文件的最小存储空间建立与该镜像文件对应的第二存储区,第二存储区的存储空间不小于与该第二存储区对应的镜像文件的最小存储空间;
第二存储区建立模块,还用于获取待更新***软件的多个镜像文件,并依次基于多个第一存储区地址与多个第二存储区地址的对应关系将每个镜像文件存入第一存储区;
存储器分区的更新装置,还包括控制模块;
控制模块,用于基于多个第二存储区地址建立第二存储区控制单元,第二存储区控制单元用于执行对多个第二存储区的操作指令。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
在本实施例中还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,基于第一空间划分结果获取多个第一存储区地址,第一空间划分结果为存储器更新前的空间划分结果;
S2,基于多个第一存储区地址建立总存储区,并建立第一对应关系,第一对应关系为多个第一存储区地址与总存储区地址的对应关系,总存储区的存储空间不小于多个第一存储区的存储空间之和;
S3,基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,第二对应关系为多个第二存储区地址与总存储区地址的对应关系,分区更新需求为更新后的存储器的空间划分需求;
S4,基于第一对应关系以及第二对应关系,建立多个第一存储区地址与多个第二存储区地址的对应关系。
需要说明的是,在本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,在本实施例中不再赘述。
此外,结合上述实施例中提供的存储器分区的更新方法,在本实施例中还可以提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种存储器分区的更新方法。
应该明白的是,这里描述的具体实施例只是用来解释这个应用,而不是用来对它进行限定。根据本申请提供的实施例,本领域普通技术人员在不进行创造性劳动的情况下得到的所有其它实施例,均属本申请保护范围。
显然,附图只是本申请的一些例子或实施例,对本领域的普通技术人员来说,也可以根据这些附图将本申请适用于其他类似情况,但无需付出创造性劳动。另外,可以理解的是,尽管在此开发过程中所做的工作可能是复杂和漫长的,但是,对于本领域的普通技术人员来说,根据本申请披露的技术内容进行的某些设计、制造或生产等更改仅是常规的技术手段,不应被视为本申请公开的内容不足。
“实施例”一词在本申请中指的是结合实施例描述的具体特征、结构或特性可以包括在本申请的至少一个实施例中。该短语出现在说明书中的各个位置并不一定意味着相同的实施例,也不意味着与其它实施例相互排斥而具有独立性或可供选择。本领域的普通技术人员能够清楚或隐含地理解的是,本申请中描述的实施例在没有冲突的情况下,可以与其它实施例结合。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对专利保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种存储器分区的更新方法,其特征在于,包括:
基于第一空间划分结果获取多个第一存储区地址,所述第一空间划分结果为存储器更新前的空间划分结果;
基于多个所述第一存储区地址建立总存储区,并建立第一对应关系,所述第一对应关系为多个所述第一存储区地址与总存储区地址的对应关系,所述总存储区的存储空间不小于多个所述第一存储区的存储空间之和;
基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,所述第二对应关系为多个所述第二存储区地址与总存储区地址的对应关系,所述分区更新需求为更新后的存储器的空间划分需求;
基于所述第一对应关系以及第二对应关系,建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系。
2.根据权利要求1所述的存储器分区的更新方法,其特征在于,所述基于多个所述第一存储区地址建立总存储区包括:
获取多个所述第一存储区的所有存储单元的数量,所述存储单元至少包括一个字节;
建立所述总存储区,所述总存储区的存储单元数量不低于多个所述第一存储区的所有存储单元的数量。
3.根据权利要求1所述的存储器分区的更新方法,其特征在于,所述基于分区更新需求获取多个第二存储区地址之前还包括:
获取待更新***软件的每个镜像文件的最小存储空间,所述待更新***软件为***更新过程中待安装的***软件;
基于每个所述镜像文件的最小存储空间建立与该镜像文件对应的所述第二存储区,所述第二存储区的存储空间不小于与该第二存储区对应的镜像文件的最小存储空间。
4.根据权利要求3所述的存储器分区的更新方法,其特征在于,所述建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系之后还包括:
获取所述待更新***软件的多个所述镜像文件,并依次基于多个所述第一存储区地址与多个所述第二存储区地址的对应关系将每个所述镜像文件存入所述第一存储区。
5.根据权利要求1所述的存储器分区的更新方法,其特征在于,所述建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系之后还包括:
基于多个所述第二存储区地址建立第二存储区控制单元,所述第二存储区控制单元用于执行对多个所述第二存储区的操作指令。
6.根据权利要求1所述的存储器分区的更新方法,其特征在于,所述基于所述第一对应关系以及第二对应关系,建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系包括:
依次在所述总存储区中获取与每个第二存储区的每个存储单元对应的总存储区的存储单元地址,并依次在多个所述第一存储区中获取与该总存储区的存储单元对应的第一存储区的存储单元地址;
将所述总存储区存储单元地址与所述第二存储区存储单元地址的对应关系保存至存储空间。
7.根据权利要求1所述的存储器分区的更新方法,其特征在于,所述建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系包括:
建立多个所述第一存储区地址与多个所述第二存储区地址的映射关系列表。
8.一种存储器分区的更新装置,其特征在于,包括:
获取模块,用于基于第一空间划分结果获取多个第一存储区地址,所述第一空间划分结果为存储器更新前的空间划分结果;
第一关系建立模块,用于基于多个所述第一存储区地址建立总存储区,并建立第一对应关系,所述第一对应关系为多个所述第一存储区地址与总存储区地址的对应关系,所述总存储区的存储空间不小于多个所述第一存储区的存储空间之和;
第二关系建立模块,用于基于分区更新需求获取多个第二存储区地址,并建立第二对应关系,所述第二对应关系为多个所述第二存储区地址与总存储区地址的对应关系,所述分区更新需求为更新后的存储器的空间划分需求;
第三关系建立模块,用于基于所述第一对应关系以及第二对应关系,建立多个所述第一存储区地址与多个所述第二存储区地址的对应关系。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的存储器分区的更新方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的存储器分区的更新方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110909882.3A CN113741812B (zh) | 2021-08-09 | 2021-08-09 | 存储器分区的更新方法、装置、电子装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110909882.3A CN113741812B (zh) | 2021-08-09 | 2021-08-09 | 存储器分区的更新方法、装置、电子装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113741812A CN113741812A (zh) | 2021-12-03 |
CN113741812B true CN113741812B (zh) | 2024-04-12 |
Family
ID=78730410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110909882.3A Active CN113741812B (zh) | 2021-08-09 | 2021-08-09 | 存储器分区的更新方法、装置、电子装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113741812B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103677940A (zh) * | 2013-12-27 | 2014-03-26 | 上海斐讯数据通信技术有限公司 | T卡跨分区升级操作***的方法及*** |
CN108595113A (zh) * | 2018-03-22 | 2018-09-28 | 维沃移动通信有限公司 | 一种分区调整的方法及终端 |
CN109324758A (zh) * | 2018-08-24 | 2019-02-12 | 华为技术有限公司 | 数据迁移方法、装置及存储设备 |
CN109710286A (zh) * | 2018-11-30 | 2019-05-03 | 歌尔科技有限公司 | ***升级方法、装置、设备和存储介质 |
CN112860291A (zh) * | 2021-02-08 | 2021-05-28 | 杭州涂鸦信息技术有限公司 | 固件升级方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102275710B1 (ko) * | 2015-02-02 | 2021-07-09 | 삼성전자주식회사 | 오버-라이트가 가능한 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작방법 |
TWI534618B (zh) * | 2015-07-13 | 2016-05-21 | 群聯電子股份有限公司 | 映射表更新方法、記憶體控制電路單元及記憶體儲存裝置 |
-
2021
- 2021-08-09 CN CN202110909882.3A patent/CN113741812B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103677940A (zh) * | 2013-12-27 | 2014-03-26 | 上海斐讯数据通信技术有限公司 | T卡跨分区升级操作***的方法及*** |
CN108595113A (zh) * | 2018-03-22 | 2018-09-28 | 维沃移动通信有限公司 | 一种分区调整的方法及终端 |
CN109324758A (zh) * | 2018-08-24 | 2019-02-12 | 华为技术有限公司 | 数据迁移方法、装置及存储设备 |
CN109710286A (zh) * | 2018-11-30 | 2019-05-03 | 歌尔科技有限公司 | ***升级方法、装置、设备和存储介质 |
CN112860291A (zh) * | 2021-02-08 | 2021-05-28 | 杭州涂鸦信息技术有限公司 | 固件升级方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113741812A (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108388599B (zh) | 电子装置、数据迁移及调用方法及存储介质 | |
CN112765271B (zh) | 区块链交易索引的存储方法、装置、计算机设备及介质 | |
CN111124464A (zh) | 一种用于嵌入式***的差分升级的方法、***及计算机可读存储介质 | |
CN111679728B (zh) | 数据读取方法及装置 | |
CN112035529A (zh) | 缓存方法、装置、电子设备及计算机可读存储介质 | |
KR20160048173A (ko) | 기억 처리 방법, 장치 및 단말 | |
CN113741812B (zh) | 存储器分区的更新方法、装置、电子装置和存储介质 | |
CN104063377A (zh) | 信息处理方法和使用其的电子设备 | |
CN111143240B (zh) | 图像存储方法、***及终端设备 | |
CN115718641A (zh) | 存储器模拟方法及装置、存储介质及电子装置 | |
WO2016023276A1 (zh) | 一种存储卡的数据处理方法及装置 | |
CN113986312B (zh) | 软件升级方法、装置、电子设备及计算机可读存储介质 | |
CN114253730A (zh) | 管理数据库内存的方法、装置、设备及存储介质 | |
CN112948291B (zh) | 数据传输方法、电子设备和可读存储介质 | |
CN115269530A (zh) | 数据同步方法、电子设备及计算机可读存储介质 | |
CN112380411A (zh) | 敏感词处理方法、装置、电子设备、***及存储介质 | |
CN112261168A (zh) | 一种多ip端口段用户信息查找方法、终端设备及存储介质 | |
CN110874246A (zh) | 一种模块加载方法、***及设备 | |
CN107688543B (zh) | 一种基于eeprom的数据管理方法及装置 | |
CN112579003B (zh) | 键值对的调整方法、装置、存储介质以及电子装置 | |
CN116248573B (zh) | 一种链路拼接方法、装置及存储介质 | |
CN114567644B (zh) | 一种数据同步的方法、装置及电子设备 | |
CN116739599A (zh) | 一种交易隔离处理方法及装置 | |
CN114253691A (zh) | 基于操作***的多卡自适应方法、装置和电子设备 | |
CN113568349A (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 |