CN113377391B - 镜像文件的制作和烧录的方法、装置、设备和介质 - Google Patents

镜像文件的制作和烧录的方法、装置、设备和介质 Download PDF

Info

Publication number
CN113377391B
CN113377391B CN202110826910.5A CN202110826910A CN113377391B CN 113377391 B CN113377391 B CN 113377391B CN 202110826910 A CN202110826910 A CN 202110826910A CN 113377391 B CN113377391 B CN 113377391B
Authority
CN
China
Prior art keywords
block
data
image file
length
blocks
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
CN202110826910.5A
Other languages
English (en)
Other versions
CN113377391A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202110826910.5A priority Critical patent/CN113377391B/zh
Publication of CN113377391A publication Critical patent/CN113377391A/zh
Application granted granted Critical
Publication of CN113377391B publication Critical patent/CN113377391B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开提供了一种镜像文件的制作和烧录的方法、装置、电子设备和介质,涉及数据处理技术领域,尤其涉及数据存储技术领域。实现方案为:将目标数据文件制作成稀疏镜像文件,其中,稀疏镜像文件包括多个区块;以及对多个区块中包含数据的区块中的数据进行压缩以得到目标镜像文件。

Description

镜像文件的制作和烧录的方法、装置、设备和介质
技术领域
本公开涉及数据处理领域,尤其涉及数据存储领域,具体涉及一种镜像文件的制作和烧录的方法、装置、电子设备、计算机可读存储介质和计算机程序产品。
背景技术
磁盘镜像(Disk image)是计算机领域中的一个计算机文件,其包含一个磁盘卷或数据存储设备的内容和结构,包括但不限于硬盘、软盘、磁带、光盘、闪存盘等。磁盘镜像通常是按照原介质的扇区级复制,从而完全复制存储设备文件系统的结构和内容。根据磁盘镜像的格式不同,一个镜像可能表现为一个或多个计算机文件。因为磁盘镜像包含整个磁盘的内容,所以它们通常体积庞大。部分磁盘镜像工具可以识别和忽略源介质中未使用的空间,或者压缩映像内容以减少存储镜像文件所需的空间。
在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非另有指明,否则此部分中提及的问题不应认为在任何现有技术中已被公认。
发明内容
本公开提供了一种镜像文件的制作和烧录的方法、装置、电子设备、计算机可读存储介质和计算机程序产品。
根据本公开的一方面,提供了一种镜像文件的制作方法,包括:将目标数据文件制作成稀疏镜像文件,其中,所述稀疏镜像文件包括多个区块;以及对所述多个区块中包含数据的区块中的数据进行压缩以得到目标镜像文件。
根据本公开的另一方面,提供了一种镜像文件的烧录方法,包括:读取镜像文件中的多个区块头文件,其中,所述多个区块头文件与所述镜像文件包含的多个区块一一对应,并且,所述多个区块头文件中的每一个区块头文件指示对应的区块的类型;以及将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区。
根据本公开的另一方面,提供了一种镜像文件的制作装置,包括:制作模块,被配置为将目标数据文件制作成稀疏镜像文件,其中,所述稀疏镜像文件包括多个区块;以及压缩模块,被配置为对所述多个区块中包含数据的区块中的数据进行压缩以得到目标镜像文件。
根据本公开的另一方面,提供了一种镜像文件的烧录装置,包括:读取模块,被配置为读取镜像文件中的多个区块头文件,其中,所述多个区块头文件与所述镜像文件包含的多个区块一一对应,并且,所述多个区块头文件中的每一个区块头文件指示对应的区块的类型;以及写入模块,被配置为将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述镜像文件的制作方法或镜像文件的烧录方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述镜像文件的制作方法或镜像文件的烧录方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,其中,计算机程序在被处理器执行时实现上述镜像文件的制作方法或镜像文件的烧录方法。
根据本公开的一个或多个实施,本公开提供了一种可以节省空间的镜像文件的制作方法和镜像文件的烧录方法。应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
图1示出了根据本公开示例性实施例的镜像文件的制作方法的流程图;
图2示出了根据本公开示例性实施例的稀疏镜像文件的示意图;
图3示出了根据本公开示例性实施例的镜像文件的烧录方法的流程图;
图4示出了根据本公开示例性实施例的镜像文件的制作装置的结构框图;
图5示出了根据本公开示例性实施例的镜像文件的烧录装置的结构框图;
图6示出了能够用于实现本公开的实施例的示例性电子设备的结构框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个元件与另一元件区分开。在一些示例中,要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
在本公开中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
相关技术中,稀疏镜像格式(sparse image format,简称simg)的镜像文件相对于传统的img格式的镜像文件可以占用较小的空间。然而,稀疏镜像文件中仍然有一部分数据与原磁盘中相应的数据占用同样大的空间。同时,在对稀疏镜像文件进行实际烧录时,需要先将稀疏镜像文件还原为img镜像文件再写入磁盘分区,这一过程中,需要一个与该磁盘分区同等大小或空间更大的临时缓冲区用于存放还原后的img镜像文件。当磁盘分区所占空间较大时,可能存在没有适合的临时空间的问题。
为解决上述问题中的一个或多个,本公开通过在镜像制作的过程中对数据进行进一步压缩,在镜像烧录过程中依据数据类型对镜像文件进行分块烧录,以减少存储镜像文件所占空间以及减少了镜像文件烧录过程中所需的临时空间的大小。
以下将结合附图对本公开的镜像文件的制作方法进行进一步描述。
图1是示出根据本公开示例性实施例的镜像文件的制作方法的流程图。
如图1所示,所述镜像文件的制作方法100可以包括:步骤S101、将目标数据文件制作成稀疏镜像文件,其中,所述稀疏镜像文件包括多个区块;以及步骤S102、对所述多个区块中包含数据的区块中的数据进行压缩以得到目标镜像文件。由此,在稀疏镜像文件的基础上对数据进行进一步的压缩以使最终得到的目标镜像文件相对于稀疏镜像文件占用更小的空间。
根据一些实施例,步骤S101可以进一步包括:将目标数据文件制作成img格式镜像文件;将img格式镜像文件转换为稀疏镜像格式镜像文件。其中,img镜像文件由于包含目标数据文件中的全部数据而与目标数据文件具备同样的大小,而转换为稀疏镜像文件后,由于只包含数据扇区,稀疏镜像文件所占空间要远小于img镜像文件。
根据另一些实施例,步骤S101中的目标数据文件可以是由磁盘中的原始数据制作而成的img格式镜像文件。
根据一些实施例,在稀疏镜像文件中,数据存储在多个区块(chunk)中并以数据块(data block)为单位进行存储,其中,数据块具有预设的字节长度,例如4KB,其具体的取值却决于数据所在的文件系统的类型,本公开对此不做限定。
根据一些实施例,所述稀疏镜像文件还包括稀疏头文件(sparse header),所述稀疏头文件指示所述稀疏镜像文件所包含的区块的数量和/或所述预设的字节长度的数值。由此,可以通过读取稀疏头文件来解析该稀疏镜像文件所包含的区块的数量,用于确定是否已将该稀疏镜像文件的全部区块读/写完成。
根据一些实施例,所述稀疏头文件位于所述稀疏镜像文件的开头部分,还可以用于指示与所述稀疏镜像文件对应的非稀疏格式镜像文件,即与所述稀疏镜像文件对应的img镜像文件所包含的数据块的数量。
根据一些实施例,所述稀疏镜像文件包括与所述多个区块一一对应的多个区块头文件(chunk header),所述多个区块头文件中的每一个区块头文件指示对应的区块在所述目标数据文件中对应的数据块的数量。
根据一些实施例,对于包含数据的区块,其对应的区块头文件指示该区块中所包含的数据块的数量;对于不包含具体数据的区块,其对应的区块头文件指示在所述目标数据文件中与该区块对应的数据块的数量。由此,在制作稀疏镜像文件时,即使根据需要删除了部分无用数据以节省空间,但在区块头文件中记录了该部分无用数据的长度,即数据块的数量,以使得该稀疏镜像文件可以被还原为原有的镜像文件的大小。
根据一些实施例,所述多个区块头文件中的每一个区块头文件还指示对应的区块的类型。
根据一些实施例,所述区块的类型包括下列中的任一者:原始数据区块,所述原始数据区块包含所述目标数据文件中与该区块对应的全部数据;无用区块,所述无用区块仅包含与该区块对应的区块头文件;填充数据区块,所述填充数据区块包含通过将预设的填充数据重复填写而生成的数据段,所述数据段的长度与所述目标数据文件中与该区块对应的数据的长度相同。
在一个示例中,在制作稀疏镜像文件时,根据需要将目标数据文件中的数据分为了三种类型,并将三种类型的数据分别存储在稀疏镜像文件中所对应的三种类型的区块中。原始数据区块中保留了该区块在目标数据文件中所对应的全部数据;对于无用区块,该区块在目标数据文件中所对应的数据被全部删除,并未存储在该无用区块中,仅在该无用区块的区块头文件中记录了这部分数据所具有的数据块的数量,以保证该区块可以被还原为原有数据的大小;对于填充数据区块,则用通过将预设的填充数据重复填写所生成的数据段替换了该填充数据区块在目标数据文件中与该区块对应的数据,数据段的长度等于该填充数据区块在目标数据文件中与该区块对应的数据的长度。
根据一些实施例,无用区块在目标数据文件中所对应的空间可以是未经使用的不包含数据的空间,该无用区块所对应的头文件指示这块未经使用的空间所对应的数据块的数量。
根据一些实施例,可以根据实际需要和真实的应用场景设置在填充数据区块中所填充的预设的填充数据的数据内容以及数据长度。本公开对填充数据的数据内容及长度不做限定。示例性的,填充数据可以是一个4字节的值。
图2示出了根据本公开示例性实施例的稀疏镜像文件的示意图。如图2所示,稀疏镜像文件中包括稀疏镜像头文件和多个区块,每个区块对应的区块头文件指示对应的区块的类型。图2中示例性的示出了原始数据区块以及无用区块,其中,原始数据区块201、202分别包含该区块对应的区块头文件和该区块在目标数据文件中所对应的原始数据,无用区块203仅包含该区块对应的区块头文件,而不包含具体的数据。
根据一些实施例,所述对所述多个区块中包含数据的区块中的数据进行压缩以得到目标镜像文件包括:对原始数据区块所包含的数据进行无损压缩;以及将填充数据区块所包含的所述数据段替换为所述预设的填充数据。由此,通过对原始数据区块和填充数据区块中的数据的进一步压缩,减小了目标镜像文件所占的空间。
示例性的,所述方法中的无损压缩是指资料经过压缩后,信息不被破坏,可以完全恢复到压缩前的原样。用于将原始数据区块所包含的数据进行无损压缩的无损压缩算法可以是以下算法中的任一种或其组合:DEFLATE、BZIP2、LZMA(Lempel-Ziv-Markov chain-Algorithm)和LZMA2等,本公开对所使用的无损压缩算法的具体类型不做限定。
图3是示出根据本公开示例性实施例的镜像文件的烧录方法的流程图。
如图3所示,所述镜像文件的烧录方法300可以包括:步骤S301、读取镜像文件中的多个区块头文件,其中,所述多个区块头文件与所述镜像文件包含的多个区块一一对应,并且,所述多个区块头文件中的每一个区块头文件指示对应的区块的类型;以及步骤S302、将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区。由此,依据数据的类型对镜像文件进行分块烧录,减少了镜像文件烧录过程中所需的临时空间的大小。
根据一些实施例,所述镜像文件为稀疏镜像格式镜像文件。在稀疏镜像文件中,数据存储在多个区块中并以数据块为单位进行存储,其中,数据块具有预设的字节长度,例如4KB,其具体的取值却决于数据所在的文件系统的类型,本公开对此不做限定。
根据一些实施例,所述镜像文件还包括稀疏头文件,所述稀疏头文件指示所述镜像文件所包含的区块的数量和/或所述预设的字节长度的数值。由此,可以通过读取稀疏头文件来解析该稀疏镜像文件所包含的区块的数量,在对该镜像文件进行烧录时用于确定是否已将全部区块读取并写入目标分区。
根据一些实施例,所述稀疏头文件位于所述稀疏镜像文件的开头部分。在对镜像文件进行烧录时,最先读取到所述稀疏镜像文件,以解析出镜像文件所包含的区块的数量以及所述预设的字节长度的数值以确定数据块的大小。
根据一些实施例,所述多个区块头文件中的每一个区块头文件还指示对应的区块在烧录完成后对应的数据块的数量。由此,在对每一个区块进行写入时,可以确定写入数据的长度,即写入数据的长度等于该区块的区块头文件所指示的数据块的数量与数据块的大小即预设的字节长度的数值的乘积。
根据一些实施例,所述区块的类型包括下列中的任一者:原始数据压缩区块,所述原始数据压缩区块包含压缩的数据;无用区块,所述无用区块仅包含与该区块对应的区块头文件;填充数据压缩区块,所述填充数据压缩区块包含预设的填充数据。由此,可根据区块的类型,将镜像文件分块的写入目标分区。
根据一些实施例,将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区包括:响应于确定区块的类型为原始数据压缩区块,在缓冲区域中对该区块所包含的压缩的数据进行解压缩并将解压缩后的数据写入目标分区。
示例性的,在读取到指示区块类型为原始数据压缩区块的区块头文件时,在内存中预定一块具备一定大小的缓冲区域,用于解压原始数据压缩区块中所包含的压缩的数据,并在解压缩后,将解压的数据从缓冲区域写入目标分区。其中,缓冲区域的大小通常为一个磁盘块组的空间,相比于传统方式中将稀疏镜像文件还原为img镜像文件所需的临时空间,本公开所提供的镜像文件的烧录方法减少了对大量的临时空间的占用。
根据一些实施例,所述方法还包括:响应于确定区块的类型为无用区块,将第一长度的0写入缓冲区域,并将所述第一长度的0从所述缓冲区域写入所述目标分区。
示例性的,在读取到指示区块类型为无用区块的区块头文件时,在内存中预定一块具备一定大小的缓冲区域,用补0的方式将该区块还原为原有数据区块的大小,具体的补0方式为:在该缓存区域中重复写0,直到写入0的长度为第一长度;补0完成后,将所述第一长度的0从所述缓冲区域写入所述目标分区。
根据一些实施例,将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区包括:响应于确定区块的类型为填充数据压缩区块,将所述预设的填充数据重复写入缓冲区域以使得写入的数据段的长度为第二长度,并将所述第二长度的所述数据段从所述缓冲区域写入所述目标分区。
示例性的,在读取到指示区块类型为填充数据压缩区块的区块头文件时,在内存中预定一块具备一定大小的缓冲区域,用于填充该区块并将该区块还原为原有数据区块的大小,具体的填充方式为:在该缓存区域中重复写入填充数据,直到写入填充数据的长度为第二长度;填充完成后,将重复填写为所述第二长度的所述填充数据从所述缓冲区域写入所述目标分区。
根据一些实施例,所述第一长度等于所述无用区块对应的区块头文件所指示的数据块的数量与所述预设的字节长度的数值的乘积,所述第二长度等于所述填充数据压缩区块对应的区块头文件所指示的数据块的数量与所述预设的字节长度的数值的乘积。由此,分别将无用区块和填充数据压缩区块在缓存区域中还原为其对应的原有数据的大小,同时保证了写入各个区块时写入的偏移位置是连续的,而无需调整写入的偏移位置。
根据本公开的另一方面,还提供一种镜像文件的制作装置。如图4所示,所述镜像文件的制作装置400包括:制作模块401,被配置为将目标数据文件制作成稀疏镜像文件,其中,所述稀疏镜像文件包括多个区块;以及压缩模块402,被配置为对所述多个区块中包含数据的区块中的数据进行压缩以得到目标镜像文件。
根据一些实施例,所述镜像文件的制作装置400被配置为执行以下操作:通过制作模块401将目标数据文件制作成稀疏镜像文件,其中,所述稀疏镜像文件包括多个区块;以及由压缩模块402对所述多个区块中包含数据的区块中的数据进行压缩以得到目标镜像文件。由此,在稀疏镜像文件的基础上对数据进行进一步的压缩以使最终得到的目标镜像文件相对于稀疏镜像文件占用更小的空间。
根据本公开的另一方面,还提供一种镜像文件的烧录装置。如图5所示,所述镜像文件的制作装置500包括:读取模块501,被配置为读取镜像文件中的多个区块头文件,其中,所述多个区块头文件与所述镜像文件包含的多个区块一一对应,并且,所述多个区块头文件中的每一个区块头文件指示对应的区块的类型;以及写入模块502,被配置为将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区。
根据一些实施例,所述镜像文件的烧录装置500被配置为执行以下操作:通过读取模块501读取镜像文件中的多个区块头文件,其中,所述多个区块头文件与所述镜像文件包含的多个区块一一对应,并且,所述多个区块头文件中的每一个区块头文件指示对应的区块的类型;以及由写入模块502将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区。由此,依据数据的类型对镜像文件进行分块烧录,减少了镜像文件烧录过程中所需的临时空间的大小。
根据本公开的另一方面,还提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的镜像文件的制作方法和镜像文件的烧录方法。
根据本公开的另一方面,还提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述的镜像文件的制作方法和镜像文件的烧录方法。
根据本公开的另一方面,还提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被处理器执行时实现上述的镜像文件的制作方法和镜像文件的烧录方法。
参考图6,现将描述可以作为本公开的服务器的电子设备600的结构框图,其是可以应用于本公开的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606、输出单元607、存储单元608以及通信单元609。输入单元606可以是能向设备600输入信息的任何类型的设备,输入单元606可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入,并且可以包括但不限于鼠标、键盘、触摸屏、轨迹板、轨迹球、操作杆、麦克风和/或遥控器。输出单元607可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元608可以包括但不限于磁盘、光盘。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、1302.11设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如镜像文件的制作方法和镜像文件的烧录方法。例如,在一些实施例中,镜像文件的制作方法和镜像文件的烧录方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行镜像文件的制作方法和镜像文件的烧录方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行、也可以顺序地或以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
虽然已经参照附图描述了本公开的实施例或示例,但应理解,上述的方法、系统和设备仅仅是示例性的实施例或示例,本发明的范围并不由这些实施例或示例限制,而是仅由授权后的权利要求书及其等同范围来限定。实施例或示例中的各种要素可以被省略或者可由其等同要素替代。此外,可以通过不同于本公开中描述的次序来执行各步骤。进一步地,可以以各种方式组合实施例或示例中的各种要素。重要的是随着技术的演进,在此描述的很多要素可以由本公开之后出现的等同要素进行替换。

Claims (5)

1.一种镜像文件的烧录方法,包括:
读取镜像文件中的多个区块头文件,其中,所述多个区块头文件与所述镜像文件包含的多个区块一一对应,并且,所述多个区块头文件中的每一个区块头文件指示对应的区块的类型,其中,所述区块的类型包括下列中的任一者:
原始数据压缩区块,所述原始数据压缩区块包含压缩的数据;
无用区块,所述无用区块仅包含与该区块对应的区块头文件;
填充数据压缩区块,所述填充数据压缩区块包含预设的填充数据,其中,
所述多个区块头文件中的每一个区块头文件还指示对应的区块在烧录完成后对应的数据块的数量,其中,数据块为数据的存储单位并具有预设的字节长度;以及
将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区,包括:
响应于确定区块的类型为原始数据压缩区块,在缓冲区域中对该区块所包含的压缩的数据进行解压缩并将解压缩后的数据写入目标分区;
响应于确定区块的类型为填充数据压缩区块,将所述预设的填充数据重复写入缓冲区域以使得写入的数据段的长度为第二长度,并将所述第二长度的所述数据段从所述缓冲区域写入所述目标分区;以及
响应于确定区块的类型为无用区块,将第一长度的0写入缓冲区域,并将所述第一长度的0从所述缓冲区域写入所述目标分区,其中,所述第一长度等于所述无用区块对应的区块头文件所指示的数据块的数量与所述预设的字节长度的数值的乘积,所述第二长度等于所述填充数据压缩区块对应的区块头文件所指示的数据块的数量与所述预设的字节长度的数值的乘积。
2.根据权利要求1所述的方法,所述镜像文件还包括稀疏头文件,所述稀疏头文件指示所述镜像文件所包含的区块的数量和/或所述预设的字节长度的数值。
3.一种镜像文件的烧录装置,包括:
读取模块,被配置为读取镜像文件中的多个区块头文件,其中,所述多个区块头文件与所述镜像文件包含的多个区块一一对应,并且,所述多个区块头文件中的每一个区块头文件指示对应的区块的类型,其中,所述区块的类型包括下列中的任一者:
原始数据压缩区块,所述原始数据压缩区块包含压缩的数据;
无用区块,所述无用区块仅包含与该区块对应的区块头文件;
填充数据压缩区块,所述填充数据压缩区块包含预设的填充数据,其中,所述多个区块头文件中的每一个区块头文件还指示对应的区块在烧录完成后对应的数据块的数量,其中,数据块为数据的存储单位并具有预设的字节长度;以及
写入模块,被配置为将所述多个区块中包含数据的区块中的数据以与该区块的类型对应的方式解压缩并写入目标分区,所述写入模块被进一步被配置为:
响应于确定区块的类型为原始数据压缩区块,在缓冲区域中对该区块所包含的压缩的数据进行解压缩并将解压缩后的数据写入目标分区;
响应于确定区块的类型为填充数据压缩区块,将所述预设的填充数据重复写入缓冲区域以使得写入的数据段的长度为第二长度,并将所述第二长度的所述数据段从所述缓冲区域写入所述目标分区;以及
响应于确定区块的类型为无用区块,将第一长度的0写入缓冲区域,并将所述第一长度的0从所述缓冲区域写入所述目标分区,其中,所述第一长度等于所述无用区块对应的区块头文件所指示的数据块的数量与所述预设的字节长度的数值的乘积,所述第二长度等于所述填充数据压缩区块对应的区块头文件所指示的数据块的数量与所述预设的字节长度的数值的乘积。
4.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1或2所述的方法。
5.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1或2所述的方法。
CN202110826910.5A 2021-07-21 2021-07-21 镜像文件的制作和烧录的方法、装置、设备和介质 Active CN113377391B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110826910.5A CN113377391B (zh) 2021-07-21 2021-07-21 镜像文件的制作和烧录的方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110826910.5A CN113377391B (zh) 2021-07-21 2021-07-21 镜像文件的制作和烧录的方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN113377391A CN113377391A (zh) 2021-09-10
CN113377391B true CN113377391B (zh) 2023-11-21

Family

ID=77582646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110826910.5A Active CN113377391B (zh) 2021-07-21 2021-07-21 镜像文件的制作和烧录的方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN113377391B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116467015B (zh) * 2023-06-20 2023-10-20 荣耀终端有限公司 镜像生成方法、系统启动校验方法及相关设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103324503A (zh) * 2013-05-29 2013-09-25 京东方科技集团股份有限公司 一种数据烧录系统及方法
CN103605540A (zh) * 2013-11-18 2014-02-26 四川长虹电器股份有限公司 基于安卓系统的快速写入flash镜像的方法
CN107766067A (zh) * 2017-09-28 2018-03-06 福州瑞芯微电子股份有限公司 一种提升压缩镜像烧录速度的方法、存储介质及计算机
WO2018040802A1 (zh) * 2016-08-30 2018-03-08 深圳市中兴微电子技术有限公司 一种全镜像文件的生成方法及装置、计算机存储介质
CN111966631A (zh) * 2020-07-10 2020-11-20 福建升腾资讯有限公司 一种可快速分发的镜像文件生成方法、系统、设备和介质
CN112379835A (zh) * 2020-11-12 2021-02-19 厦门市美亚柏科信息股份有限公司 一种oob区数据提取方法、终端设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665784B2 (en) * 1999-09-03 2003-12-16 Roxio, Inc. Method for writing and reading data to and from a compact disc media
US8655043B2 (en) * 2008-05-16 2014-02-18 Huron Technologies International Inc. Imaging system with dynamic range maximization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103324503A (zh) * 2013-05-29 2013-09-25 京东方科技集团股份有限公司 一种数据烧录系统及方法
CN103605540A (zh) * 2013-11-18 2014-02-26 四川长虹电器股份有限公司 基于安卓系统的快速写入flash镜像的方法
WO2018040802A1 (zh) * 2016-08-30 2018-03-08 深圳市中兴微电子技术有限公司 一种全镜像文件的生成方法及装置、计算机存储介质
CN107766067A (zh) * 2017-09-28 2018-03-06 福州瑞芯微电子股份有限公司 一种提升压缩镜像烧录速度的方法、存储介质及计算机
CN111966631A (zh) * 2020-07-10 2020-11-20 福建升腾资讯有限公司 一种可快速分发的镜像文件生成方法、系统、设备和介质
CN112379835A (zh) * 2020-11-12 2021-02-19 厦门市美亚柏科信息股份有限公司 一种oob区数据提取方法、终端设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于模糊PID的羊肉冷链运输温控系统原型设计;冯旭;李志刚;;江苏农业科学(第13期);全文 *

Also Published As

Publication number Publication date
CN113377391A (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
KR101505263B1 (ko) 데이터 중복 제거 방법 및 장치
CN107506153B (zh) 一种数据压缩方法、数据解压方法及相关系统
JP2008065834A (ja) フュージョンメモリ装置及び方法
WO2014188528A1 (ja) メモリ装置、計算機システム及びメモリ装置の制御方法
WO2020135384A1 (zh) 进行数据压缩的方法和装置
CN107797770B (zh) 一种磁盘状态信息的同步方法及装置
CN107924292A (zh) 硬件加速型存储压缩
CN105677259A (zh) 一种移动终端中存储文件的方法及移动终端
CN113377391B (zh) 镜像文件的制作和烧录的方法、装置、设备和介质
CN107766067B (zh) 一种提升压缩镜像烧录速度的方法、存储介质及计算机
CN102270262A (zh) 集成电路仿真模拟波形压缩和解压缩方法及装置
CN111491169A (zh) 一种数字图像压缩方法、装置、设备、介质
KR20150035876A (ko) 데이터 중복 제거 방법 및 장치
TW201435585A (zh) 用以存取資料之電子裝置及其資料存取方法
CN109088636B (zh) 一种数据处理方法、系统及电子设备和存储介质
CN110399371B (zh) 基于Redis数据库的减少内存消耗的方法、存储介质及设备
US11017155B2 (en) Method and system for compressing data
US11394397B2 (en) System and method for selecting a lossless compression algorithm for a data object based on performance objectives and performance metrics of a set of compression algorithms
US11562241B2 (en) Data output method, data acquisition method, device, and electronic apparatus
CN113163198A (zh) 图像压缩方法、解压方法、装置、设备及存储介质
CN114003573A (zh) 文件系统的压缩方法、装置、设备、存储介质、程序产品
US20170293452A1 (en) Storage apparatus
JP2000066844A (ja) ディスク装置圧縮システム
US20210278977A1 (en) Method and system for performing data deduplication and compression in a data cluster
US11349494B2 (en) Data compression apparatus and data compression method

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