WO2024001543A1 - System update file configuration method and apparatus, system update method and apparatus, and storage medium - Google Patents
System update file configuration method and apparatus, system update method and apparatus, and storage medium Download PDFInfo
- Publication number
- WO2024001543A1 WO2024001543A1 PCT/CN2023/093573 CN2023093573W WO2024001543A1 WO 2024001543 A1 WO2024001543 A1 WO 2024001543A1 CN 2023093573 W CN2023093573 W CN 2023093573W WO 2024001543 A1 WO2024001543 A1 WO 2024001543A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- file
- version
- update
- mapping relationship
- system update
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Definitions
- Embodiments of the present application relate to the field of software version production and management, and in particular to a system update file configuration method, system update method, system update file configuration device, electronic equipment and storage media.
- Embodiments of the present application provide a system update file configuration method, system update method, system update file configuration device, electronic equipment, and storage media.
- embodiments of the present application provide a system update file configuration method, which includes: obtaining a target file and at least one associated file associated with the target file; obtaining a digital signature of the target file, and establishing the relationship between the digital signature and the associated file. a first mapping relationship between the target files; establishing a second mapping relationship between the target files and each of the associated files; obtaining the version difference between the original system version and the updated system version, and based on the version difference .
- the first mapping relationship and the second mapping relationship generate a system difference description file; and configure a system update file according to the system difference description file.
- embodiments of the present application provide a system update method, which includes: obtaining the system update file according to the system update file configuration method described in the first aspect; and updating the system according to the system update file. .
- embodiments of the present application provide a system update file configuration device, which device includes at least one processor; at least one memory for storing at least one program; when at least one of the programs is configured by at least one of the processors During execution, the system update file configuration method described in the first aspect is implemented.
- embodiments of the present application provide an electronic device, which includes at least one processor; at least one memory for storing at least one program; when at least one of the programs is executed by at least one of the processors Implement the system update method described in the second aspect.
- embodiments of the present application provide a computer-readable storage medium that stores computer-executable instructions, and the computer-executable instructions are used to execute the system update file configuration method as described in the first aspect. , or, the system update method as described in the second aspect.
- Figure 1 is a schematic diagram of system update
- Figure 2 is a flow chart of a system update file configuration method provided by an embodiment of the present application.
- Figure 3 is a schematic diagram of the version fingerprint tree provided by the embodiment of this application.
- Figure 4 is a schematic diagram of the configuration process of the system update file provided by the embodiment of the present application.
- Figure 5 is a schematic diagram of the difference analysis between the original system version and the updated system version provided by the embodiment of the present application;
- Figure 6 is a schematic diagram of the construction process of the version update package provided by the embodiment of the present application.
- Figure 7 is a schematic diagram of system update provided by the embodiment of the present application.
- Figure 8 is a schematic structural diagram of a system update file configuration device provided by an embodiment of the present application.
- Figure 9 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
- words such as setting, installation, and connection should be understood in a broad sense. Those skilled in the art can reasonably determine the meaning of the above words in the embodiments of this application based on the specific content of the technical solution. specific meaning.
- words such as “further”, “exemplarily” or “optionally” are used as examples, illustrations or illustrations, and should not be interpreted as being more preferable or better than other embodiments or designs.
- the use of the words “further,” “exemplarily,” or “optionally” is intended to present the relevant concepts in a specific manner.
- Point version release and rolling release are two version release methods in software development. Many Linux distributions, such as Debian, Ubuntu, Linux Mint, Fedora, etc., follow the point version release model. These systems will release a major XYZ version every few months/years.
- the point version consists of the Linux kernel, desktop environment and Made up of new versions of other software.
- the rolling release method software updates are rolled out continuously rather than in batches. This way the software is always updated.
- Rolling releases follow the same model, providing the latest Linux kernel and software versions as they are released. Arch Linux is the most typical example of a rolling distribution. When users use a rolling distribution, they will get small and frequent updates.
- point version distribution is often used for system updates.
- version management granularity of point version release is large and the support for new features is inflexible.
- embodiments of the present application provide a system update file configuration method, system update method, system update file configuration device, electronic device and storage medium, by obtaining the digital signature of the target file, and establishing a relationship between the digital signature and the target file.
- the first mapping relationship, and the establishment of a second mapping relationship between the target file and its associated associated files, so that the first mapping relationship and the second mapping relationship form a fingerprint model of the system version, and updates to the system version can be obtained
- Make an accurately described system difference description file so that system update files can be configured according to the system difference description file, making system update files more lightweight, accurate and flexible, realizing the rolling release capability of system versions, and optimizing the user experience. , improving the work efficiency of product managers and system maintenance personnel.
- Figure 1 is a schematic diagram of the system update. As shown in the figure, the system in the electronic device 100 on the left side of the figure is the original system version, and the system update file 200 is used to perform the system update. The system in the updated electronic device 100 is the updated system version, completing the system update and upgrade process. .
- Figure 2 is a flow chart of a system update file configuration method provided by an embodiment of the present application. As shown in the figure, the system update file configuration method at least includes steps S1000, S2000, S3000, S4000, and S5000.
- Step S1000 Obtain the target file and at least one associated file associated with the target file.
- the target file is a file involved in the system update.
- the target file can be any file in the system version.
- the associated files of the target file refer to the files that will be linked to each other if the target file is modified or the files that will be linked to the target file due to modifications thereof, that is, the files to which the target file has a dependency relationship.
- the target files are all files in the system version.
- the target files are files in the system version that are related to system updates.
- Step S2000 Obtain the digital signature of the target file, and establish a first mapping relationship between the digital signature and the target file.
- the digital signature of the target file can be set in advance or calculated during the system update file configuration.
- Related Technology Center After the same target file (such as a library file) is compiled repeatedly, it is mainly affected by the system time. The binary files compiled twice are different, which will also cause the same target file to have different signatures after being compiled multiple times. However, the digital signature processing in the embodiment of this application ensures that the signature of the same target file remains the same after it is compiled multiple times.
- the national cryptographic algorithm refers to the national commercial cryptographic algorithm. It is a cryptographic algorithm standard and its application specification recognized and published by the State Cryptographic Administration. Some of the cryptographic algorithms have become international standards. For example, SM series passwords, SM stands for commercial secrets, that is, commercial passwords, which refer to encryption technology used for business and not involving state secrets. SM3 is an algorithm improved on the basis of SHA-256 and is mainly used for digital signature and verification, and random number generation.
- the digital signature of the target file is generally in the form of a unique code.
- the unique code is recorded in the data structure, and a record is added to mark the mapping relationship between the unique code and the source file, that is, a digital signature is established.
- the first mapping relationship between the target file and the target file Based on this mapping relationship, a fingerprint node corresponding to the target file is formed, and multiple fingerprint nodes are aggregated to form a fingerprint tree, which can also be called a fingerprint model.
- fingerprint nodes, fingerprint trees or fingerprint models are only one form of expression, and other forms of expression, such as linked lists, graphs, and databases, can achieve the purpose of the embodiments of the present application, which is to construct a system version of holographic projection.
- Step S3000 Establish a second mapping relationship between the target file and each associated file.
- a dependency record will be added to the fingerprint node corresponding to the target file, pointing to the fingerprint node of B. Since the target file often has multiple associated files, so there are multiple such pointing relationships, that is, a second mapping relationship is formed.
- the first mapping relationship and the second mapping relationship together constitute a fingerprint tree or fingerprint model corresponding to the system version.
- This fingerprint tree or fingerprint model can accurately and effectively describe the association of each file in the system version, so that when the version is upgraded, Files modified by editing and their associated files are described in a targeted manner.
- the fingerprint tree or fingerprint model is recorded in the form of a system description file.
- Figure 3 is a schematic diagram of a version fingerprint tree provided by an embodiment of the present application, which can more intuitively display the structure of a system version fingerprint tree.
- the corresponding fingerprint node hashA is generated.
- the node stores the unique signature information of the target file.
- the node stores the mapping relationship between itself and the target file, that is, A.exe and the fingerprint.
- the mapping relationship between nodes hashA is the first mapping relationship.
- the files that A.exe depends on are libB, libC and D.config. These files are associated files.
- the associated files will also generate fingerprint nodes correspondingly, which are hashB, hashC and hashD respectively, and originally A.
- fingerprint nodes correspondingly which are hashB, hashC and hashD respectively, and originally A.
- the relationship between the exe file and libB, libC and D.config will also be reflected in the fingerprint nodes formed by it. These fingerprint nodes and the relationships between them constitute a fingerprint tree.
- Step S4000 Obtain the version difference between the original system version and the updated system version, and generate a system difference description file based on the version difference, the first mapping relationship and the second mapping relationship.
- system update file configuration method in the embodiment of the present application only analyzes and describes the differences between the original system version and the updated system version.
- an original system description file corresponding to the original system version is generated according to the original system version, the first mapping relationship and the second mapping relationship, and based on the updated system version, the first mapping relationship The mapping relationship and the second mapping relationship generate an update system description file corresponding to the updated system version. Finally, a system difference description file is obtained based on the original system description file and the updated system description file.
- a commit record for version update is obtained, and the version difference is obtained based on the commit record.
- this embodiment obtains version differences directly based on the submission record, requiring less workload for comparison and analysis of the old and new versions.
- the system difference description file describes the difference between the fingerprint trees of the two system versions.
- the difference in the fingerprint trees can reflect information such as changed source files, changed version files, version file sizes, and the impact of effective configurations.
- the system difference description file also records the fingerprint tree corresponding to the original system version and the fingerprint tree corresponding to the updated system version. Among them, the fingerprint tree corresponding to the original system version can help the user determine whether the system meets the update conditions when the user performs a system update.
- Step S5000 Configure the system update file according to the system difference description file.
- system update files usually exist in the form of rolling update packages or rolling upgrade packages, which are convenient for users to download and run.
- Figure 4 is a schematic diagram of the configuration process of the system update file provided by the embodiment of the present application, illustrating the configuration steps of the system update file. As shown in the figure, it includes at least steps S5100, S5200 and S5300.
- Step S5100 Obtain the system upgrade file according to the system difference description file.
- Step S5200 Obtain the system update operation file according to the system upgrade file.
- system update operation file generates upgrade operation steps based on the predefined global upgrade configuration. These upgrade operation steps are recorded in the system update operation file and are used to guide users to update the system according to the upgrade operation steps. .
- Step S5300 Configure the system update file according to the system difference description file, system upgrade file and system update operation file.
- FIG. 5 is a schematic diagram of difference analysis between the original system version and the updated system version provided by the embodiment of the present application.
- the submission record of the code warehouse is specified.
- the version building module 520 builds the system version before and after the submission according to the submission record, obtains the original system version and the updated system version, and combines the original system version and
- the updated system version is sent to the version analysis module, and the version analysis module 530 generates a version analysis report 540 as required, such as changed source files, changed version files, version file sizes, effects of effective configuration, etc.
- FIG. 6 is a schematic diagram of the construction process of the version update package provided by the embodiment of the present application.
- the package building module 640 compares the fingerprint differences of the two versions and generates a fingerprint upgrade tree, that is, corresponding to the system difference description file.
- the fingerprint upgrade tree includes two
- the difference description of each version also includes the fingerprint trees of the old and new versions.
- the package building module obtains the version upgrade file based on the fingerprint upgrade tree.
- the package building module generates the upgrade operation steps for this upgrade package based on the predefined global upgrade configuration.
- the package building module makes the fingerprint upgrade tree, version upgrade file, and upgrade configuration into a system.
- the update package 650 and the system update package 650 can implement rolling updates of the system.
- Embodiments of the present application also provide a system update method.
- the method includes: obtaining a system update file according to the system update file configuration method of the first aspect, and updating the system according to the system update file.
- updating the system according to the system update file includes the following specific process: obtaining the first mapping relationship and the second mapping relationship corresponding to the current system, that is, the fingerprint tree of the current system; and then obtaining the system update file.
- the first mapping relationship and the second mapping relationship corresponding to the original system version are the fingerprint tree of the original version system, and the two are compared to obtain the comparison result.
- the purpose of the comparison is to determine whether the current system meets the system update conditions. . If the comparison result is that the update requirements are met, the current system will be updated; if the comparison result is that the update requirements are not met, the current system will not be updated.
- the system update module in the current system deploys the fingerprint tree and version files in the system update package, restarts or reloads the relevant processes according to the operating steps in the upgrade configuration to complete the upgrade, and finally checks the upgrade results. Success If it fails, it will be solidified and if it fails, it will roll back.
- Figure 7 is a schematic diagram of system update provided by the embodiment of the present application. As shown in the figure, in the system 700 to be updated, there are many programs 710 running, and these program files have corresponding nodes. These nodes and their relationships constitute a fingerprint tree 720. The shaded programs and nodes in the figure correspond to each other.
- Figure 8 is a schematic structural diagram of a system update file configuration device provided by an embodiment of the present application. As shown in Figure 8, an embodiment of the present application also provides a precoding configuration device 800, including: at least one processor 820; at least one memory 810, used to store at least one program; when at least one program is processed by at least one When the processor is executed, the above system update file configuration method is implemented.
- a precoding configuration device 800 including: at least one processor 820; at least one memory 810, used to store at least one program; when at least one program is processed by at least one When the processor is executed, the above system update file configuration method is implemented.
- Figure 9 is a schematic structural diagram of an electronic device provided by an embodiment of the present application. As shown in Figure 9, an embodiment of the present application also provides a precoding configuration device 900, including: at least one processor 920; at least one memory 910, used to store One less program; the above system update method is implemented when at least one program is executed by at least one of the processors.
- a precoding configuration device 900 including: at least one processor 920; at least one memory 910, used to store One less program; the above system update method is implemented when at least one program is executed by at least one of the processors.
- An embodiment of the present application also provides a computer-readable storage medium that stores computer-executable instructions.
- the computer-executable instructions are used to execute the system update file configuration method provided in the embodiment of the present application, or, as implemented in the present application.
- the system update method provided in the example.
- An embodiment of the present application also provides a computer program product, which includes a computer program or computer instructions.
- the computer program or computer instructions are stored in a computer-readable storage medium.
- the processor of the computer device reads the computer program from the computer-readable storage medium.
- Programs or computer instructions, the processor executes the computer program or computer instructions, causing the computer device to execute the system update file configuration method provided in any embodiment of the present application, or the system update method provided in the embodiment of the present application.
- the system update file configuration method obtains the digital signature of the target file, establishes a first mapping relationship between the digital signature and the target file, and establishes a second mapping relationship between the target file and its associated associated files.
- the mapping relationship enables the first mapping relationship and the second mapping relationship to form a fingerprint model of the system version, which can obtain a system difference description file that accurately describes the update of the system version, so that the system update file can be based on the system difference description file.
- the configuration makes the system update files more lightweight, accurate and flexible, realizes the rolling release capability of system versions, optimizes the user experience, and improves the work efficiency of product managers and system maintenance personnel.
- the division between functional modules/modules mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may consist of several physical components. Components execute cooperatively. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit . Such software may be distributed on computer-readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media).
- computer storage media includes volatile and nonvolatile media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. removable, removable and non-removable media.
- Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disk (DVD) or other optical disk storage, magnetic cassettes, tapes, disk storage or other magnetic storage devices, or may Any other medium used to store the desired information and that can be accessed by a computer.
- communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media .
- a component may be, but is not limited to, a process, processor, object, executable file, thread of execution, program or computer running on a processor.
- applications running on the computing device and the computing device may be components.
- One or more components can reside in a process or thread of execution, and the component can be localized on one computer or distributed between 2 or more computers. Additionally, these components can execute from various computer-readable media having various data structures stored thereon.
- a component may, for example, be based on data having one or more data packets (e.g., data from two components interacting with another component, such as a local system, a distributed system, or a network, e.g., via Signals (Internet for interacting with other systems) Signals are communicated through local or remote processes.
- data packets e.g., data from two components interacting with another component, such as a local system, a distributed system, or a network, e.g., via Signals (Internet for interacting with other systems) Signals are communicated through local or remote processes.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
Description
相关申请的交叉引用Cross-references to related applications
本申请基于申请号为202210760740.X、申请日为2022年6月30日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。This application is filed based on the Chinese patent application with application number 202210760740.
本申请实施例涉及软件版本制作和管理领域,特别涉及一种系统更新文件配置方法、系统更新方法、系统更新文件配置装置、电子设备及存储介质。Embodiments of the present application relate to the field of software version production and management, and in particular to a system update file configuration method, system update method, system update file configuration device, electronic equipment and storage media.
软件开发中有两种版本发行方式:点版本发行和滚动发行。以Linux操作系统发行版为例,ubuntu采用点版本发行方式,一般每几个月发布一个新的点版本,用户根据这个新的点版本专门升级系统;而Arch Linux采用滚动发行方式,用户会得的小而频繁的更新,使用户一直使用最新的发行版。There are two version release methods in software development: point version release and rolling release. Taking the Linux operating system distribution as an example, Ubuntu uses a point version release method. Generally, a new point version is released every few months, and users specifically upgrade the system based on this new point version; while Arch Linux uses a rolling release method, and users will have Small, frequent updates keep users on the latest release.
以通信领域为例,出于成本和稳定性的综合考虑,往往采用点版本发行方式进行系统更新。然而,点版本发行的版本管理粒度大,对新功能的支持不灵活。因此,如何提供更加轻量、精准和灵活的系统更新文件,从而实现系统版本的滚动发行能力,是亟待解决的问题。Taking the communications field as an example, due to comprehensive considerations of cost and stability, point version distribution is often used for system updates. However, the version management granularity of point version release is large and the support for new features is inflexible. Therefore, how to provide more lightweight, accurate and flexible system update files to achieve the rolling release capability of system versions is an issue that needs to be solved urgently.
发明内容Contents of the invention
本申请实施例提供一种系统更新文件配置方法、系统更新方法、系统更新文件配置装置、电子设备及存储介质。Embodiments of the present application provide a system update file configuration method, system update method, system update file configuration device, electronic equipment, and storage media.
第一方面,本申请实施例提供一种系统更新文件配置方法,包括:获取目标文件和与所述目标文件关联的至少一个关联文件;获取目标文件的数字签名,并建立所述数字签名与所述目标文件之间的第一映射关系;建立所述目标文件与各所述关联文件之间的第二映射关系;获取原始系统版本与更新系统版本之间的版本差异,并根据所述版本差异、所述第一映射关系与所述第二映射关系,生成系统差异描述文件;根据所述系统差异描述文件,配置系统更新文件。In a first aspect, embodiments of the present application provide a system update file configuration method, which includes: obtaining a target file and at least one associated file associated with the target file; obtaining a digital signature of the target file, and establishing the relationship between the digital signature and the associated file. a first mapping relationship between the target files; establishing a second mapping relationship between the target files and each of the associated files; obtaining the version difference between the original system version and the updated system version, and based on the version difference . The first mapping relationship and the second mapping relationship generate a system difference description file; and configure a system update file according to the system difference description file.
第二方面,本申请实施例提供一种系统更新方法,包括:根据第一方面所述的系统更新文件配置方法,得到所述系统更新文件;根据所述系统更新文件,对所述系统进行更新。In a second aspect, embodiments of the present application provide a system update method, which includes: obtaining the system update file according to the system update file configuration method described in the first aspect; and updating the system according to the system update file. .
第三方面,本申请实施例提供一种系统更新文件配置装置,所述装置包括至少一个处理器;至少一个存储器,用于存储至少一个程序;当至少一个所述程序被至少一个所述处理器执行时实现如第一方面所述的系统更新文件配置方法。In a third aspect, embodiments of the present application provide a system update file configuration device, which device includes at least one processor; at least one memory for storing at least one program; when at least one of the programs is configured by at least one of the processors During execution, the system update file configuration method described in the first aspect is implemented.
第四方面,本申请实施例提供一种电子设备,所述电子设备包括至少一个处理器;至少一个存储器,用于存储至少一个程序;当至少一个所述程序被至少一个所述处理器执行时实现如第二方面所述的系统更新方法。 In a fourth aspect, embodiments of the present application provide an electronic device, which includes at least one processor; at least one memory for storing at least one program; when at least one of the programs is executed by at least one of the processors Implement the system update method described in the second aspect.
第五方面,本申请实施例提供计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于执行如第一方面所述的系统更新文件配置方法,或,如第二方面所述的系统更新方法。In a fifth aspect, embodiments of the present application provide a computer-readable storage medium that stores computer-executable instructions, and the computer-executable instructions are used to execute the system update file configuration method as described in the first aspect. , or, the system update method as described in the second aspect.
图1是系统更新的示意图;Figure 1 is a schematic diagram of system update;
图2是本申请实施例提供的系统更新文件配置方法流程图;Figure 2 is a flow chart of a system update file configuration method provided by an embodiment of the present application;
图3是本申请实施例提供的版本指纹树示意图;Figure 3 is a schematic diagram of the version fingerprint tree provided by the embodiment of this application;
图4是本申请实施例提供的系统更新文件的配置过程示意图;Figure 4 is a schematic diagram of the configuration process of the system update file provided by the embodiment of the present application;
图5是本申请实施例提供的对原始系统版本与更新系统版本的差异分析示意图;Figure 5 is a schematic diagram of the difference analysis between the original system version and the updated system version provided by the embodiment of the present application;
图6是本申请实施例提供的版本更新包的构建过程示意图;Figure 6 is a schematic diagram of the construction process of the version update package provided by the embodiment of the present application;
图7是本申请实施例提供的系统更新示意图;Figure 7 is a schematic diagram of system update provided by the embodiment of the present application;
图8是本申请实施例提供的系统更新文件配置装置的结构示意图;Figure 8 is a schematic structural diagram of a system update file configuration device provided by an embodiment of the present application;
图9是本申请实施例提供的电子设备结构示意图。Figure 9 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。In order to make the purpose, technical solutions and advantages of the present application more clear, the present application will be further described in detail below with reference to the drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present application and are not used to limit the present application.
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。It should be noted that although the functional modules are divided in the device schematic diagram and the logical sequence is shown in the flow chart, in some cases, the modules can be divided into different modules in the device or the order in the flow chart can be executed. The steps shown or described. The terms "first", "second", etc. in the description, claims, and above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific sequence or sequence.
本申请实施例的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本申请实施例中的具体含义。本申请实施例中,“进一步地”、“示例性地”或者“可选地”等词用于表示作为例子、例证或说明,不应被解释为比其它实施例或设计方案更优选或更具有优势。使用“进一步地”、“示例性地”或者“可选地”等词旨在以具体方式呈现相关概念。In the description of the embodiments of this application, unless otherwise explicitly limited, words such as setting, installation, and connection should be understood in a broad sense. Those skilled in the art can reasonably determine the meaning of the above words in the embodiments of this application based on the specific content of the technical solution. specific meaning. In the embodiments of this application, words such as "further", "exemplarily" or "optionally" are used as examples, illustrations or illustrations, and should not be interpreted as being more preferable or better than other embodiments or designs. Advantages. The use of the words "further," "exemplarily," or "optionally" is intended to present the relevant concepts in a specific manner.
点版本发行和滚动发行是软件开发中的两种版本发行方式。许多Linux发行版,如Debian、Ubuntu、Linux Mint、Fedora等都遵循点版本发行的模式,这些系统每隔几个月/年就会发布一个主要的XYZ版本,点版本由Linux内核、桌面环境和其他软件的新版本组成。当一个新的点版本发行版的主要版本发布时,用户需要专门来升级其系统。而滚动发行方式中软件的更新是连续推出的,而不是分批的版本。这样软件就能始终保持更新。滚动发行遵循同样的模式,它提供最新的Linux内核和软件版本,且在发布时就提供。Arch Linux是滚动发行版中最典型的例子,当用户使用一个滚动发行版时,会得到小而频繁的更新。Point version release and rolling release are two version release methods in software development. Many Linux distributions, such as Debian, Ubuntu, Linux Mint, Fedora, etc., follow the point version release model. These systems will release a major XYZ version every few months/years. The point version consists of the Linux kernel, desktop environment and Made up of new versions of other software. When a new major version of a point release distribution is released, users need to specifically upgrade their systems. In the rolling release method, software updates are rolled out continuously rather than in batches. This way the software is always updated. Rolling releases follow the same model, providing the latest Linux kernel and software versions as they are released. Arch Linux is the most typical example of a rolling distribution. When users use a rolling distribution, they will get small and frequent updates.
以通信领域为例,出于成本和稳定性的综合考虑,往往采用点版本发行方式进行系统更新。然而,点版本发行的版本管理粒度大,对新功能的支持不灵活。有时为了支持一个新特 性,不得不升级大版本,对于研发人员和用户都不够友好。Taking the communications field as an example, due to comprehensive considerations of cost and stability, point version distribution is often used for system updates. However, the version management granularity of point version release is large and the support for new features is inflexible. Sometimes in order to support a new feature It has to upgrade a large version, which is not friendly enough for developers and users.
基于此,本申请实施例提供一种系统更新文件配置方法、系统更新方法、系统更新文件配置装置、电子设备及存储介质,通过获取目标文件的数字签名,并建立数字签名与目标文件之间的第一映射关系,以及建立目标文件与其关联的各关联文件之间的第二映射关系,使第一映射关系与第二映射关系形成了系统版本的指纹模型,能够得到对系统版本的更新之处做出精准描述的系统差异描述文件,使系统更新文件能够根据系统差异描述文件进行配置,使系统更新文件更加轻量、精准和灵活,实现了系统版本的滚动发行能力,优化了用户的使用感受,提升了产品经理和系统维护人员的工作效率。Based on this, embodiments of the present application provide a system update file configuration method, system update method, system update file configuration device, electronic device and storage medium, by obtaining the digital signature of the target file, and establishing a relationship between the digital signature and the target file. The first mapping relationship, and the establishment of a second mapping relationship between the target file and its associated associated files, so that the first mapping relationship and the second mapping relationship form a fingerprint model of the system version, and updates to the system version can be obtained Make an accurately described system difference description file, so that system update files can be configured according to the system difference description file, making system update files more lightweight, accurate and flexible, realizing the rolling release capability of system versions, and optimizing the user experience. , improving the work efficiency of product managers and system maintenance personnel.
图1是系统更新的示意图。如图所示,图中左侧的电子设备100中的系统为原始系统版本,利用系统更新文件200进行系统更新,更新后的电子设备100中的系统为更新系统版本,完成系统更新升级的过程。Figure 1 is a schematic diagram of the system update. As shown in the figure, the system in the electronic device 100 on the left side of the figure is the original system version, and the system update file 200 is used to perform the system update. The system in the updated electronic device 100 is the updated system version, completing the system update and upgrade process. .
图2是本申请实施例提供的系统更新文件配置方法流程图。如图所示,系统更新文件配置方法至少包括步骤S1000、S2000、S3000、S4000、S5000。Figure 2 is a flow chart of a system update file configuration method provided by an embodiment of the present application. As shown in the figure, the system update file configuration method at least includes steps S1000, S2000, S3000, S4000, and S5000.
步骤S1000:获取目标文件和与目标文件关联的至少一个关联文件,目标文件为系统更新涉及的文件。Step S1000: Obtain the target file and at least one associated file associated with the target file. The target file is a file involved in the system update.
需要说明的是,目标文件可以是系统版本中的任一文件。目标文件的关联文件是指目标文件的修改会引起联动的文件或者因为其修改而导致目标文件联动的文件,即目标文件具有依赖关系的文件。It should be noted that the target file can be any file in the system version. The associated files of the target file refer to the files that will be linked to each other if the target file is modified or the files that will be linked to the target file due to modifications thereof, that is, the files to which the target file has a dependency relationship.
在一实施例中,目标文件是系统版本中的所有文件。In one embodiment, the target files are all files in the system version.
在另一实施例中,目标文件是系统版本中与系统更新相关的文件。In another embodiment, the target files are files in the system version that are related to system updates.
步骤S2000:获取目标文件的数字签名,并建立数字签名与所述目标文件之间的第一映射关系。Step S2000: Obtain the digital signature of the target file, and establish a first mapping relationship between the digital signature and the target file.
需要说明的是,目标文件的数字签名可以是提前设置的,也可以是在系统更新文件配置的过程中计算得到的。相关技术中心,同一个目标文件(如库文件)重复编译后,主要受到系统时间的影响,两次编译的二进制文件是不同的,也会导致同一个目标文件多次编译后,其签名不同。但是本申请实施例中的数字签名处理,保证同一个目标文件多次编译后,其签名仍然相同。It should be noted that the digital signature of the target file can be set in advance or calculated during the system update file configuration. Related Technology Center: After the same target file (such as a library file) is compiled repeatedly, it is mainly affected by the system time. The binary files compiled twice are different, which will also cause the same target file to have different signatures after being compiled multiple times. However, the digital signature processing in the embodiment of this application ensures that the signature of the same target file remains the same after it is compiled multiple times.
还需要说明的是,数字签名的计算方式多种多样,如RSA加密算法、国密算法等,任何一种签名算法应用在本申请实施例中,均可以实施。但是出于对安全自主可控考虑,本申请实施例采用了国密算法进行数字签名的生成。国密算法是指国家商用密码算法。是由国家密码管理局认定和公布的密码算法标准及其应用规范,其中部分密码算法已经成为国际标准。如SM系列密码,SM代表商密,即商业密码,是指用于商业的、不涉及国家秘密的密码技术。其中SM3是在SHA-256基础上改进的一种算法,主要用于数字签名和验证、随机数生成。It should also be noted that there are various calculation methods for digital signatures, such as RSA encryption algorithm, national secret algorithm, etc., and any signature algorithm can be implemented in the embodiments of this application. However, for the sake of independent and controllable security, the embodiment of this application uses the national secret algorithm to generate digital signatures. The national cryptographic algorithm refers to the national commercial cryptographic algorithm. It is a cryptographic algorithm standard and its application specification recognized and published by the State Cryptographic Administration. Some of the cryptographic algorithms have become international standards. For example, SM series passwords, SM stands for commercial secrets, that is, commercial passwords, which refer to encryption technology used for business and not involving state secrets. SM3 is an algorithm improved on the basis of SHA-256 and is mainly used for digital signature and verification, and random number generation.
在一实施例中,目标文件的数字签名,一般表现为唯一码的形式,将该唯一码记录在数据结构中,并添加一个记录,标记该唯一码和来源文件的映射关系,即建立数字签名与所述目标文件之间的第一映射关系。基于此种映射关系,形成了一个对应于该目标文件的指纹节点,多个指纹节点聚集形成指纹树,也可以称为指纹模型。 In one embodiment, the digital signature of the target file is generally in the form of a unique code. The unique code is recorded in the data structure, and a record is added to mark the mapping relationship between the unique code and the source file, that is, a digital signature is established. The first mapping relationship between the target file and the target file. Based on this mapping relationship, a fingerprint node corresponding to the target file is formed, and multiple fingerprint nodes are aggregated to form a fingerprint tree, which can also be called a fingerprint model.
可以理解的是,指纹节点、指纹树或者指纹模型只是一种表现形式,其他表现形式,例如链表、图、数据库均可实现本申请实施例的目的,即构建系统版本的全息投影。It can be understood that fingerprint nodes, fingerprint trees or fingerprint models are only one form of expression, and other forms of expression, such as linked lists, graphs, and databases, can achieve the purpose of the embodiments of the present application, which is to construct a system version of holographic projection.
步骤S3000:建立目标文件与各关联文件之间的第二映射关系。Step S3000: Establish a second mapping relationship between the target file and each associated file.
需要说明的是,当目标文件具有与其有依赖关系的关联文件时,为了表现其相互关联关系,会在目标文件对应的指纹节点添加一条依赖记录,指向B的指纹节点,由于目标文件往往具有多个关联文件,因此就具有多条这样的指向关系,即形成了第二映射关系。第一映射关系与第二映射关系共同构成了系统版本对应的指纹树或指纹模型,这个指纹树或指纹模型能够精准有效地描述系统版本中各文件的关联关系,这样在版本升级时,就能够有针对性地描述有编辑修改的文件及其关联文件,在本申请实施例中,采用系统描述文件的形式对指纹树或指纹模型进行记载。It should be noted that when the target file has associated files that are dependent on it, in order to show their interdependence, a dependency record will be added to the fingerprint node corresponding to the target file, pointing to the fingerprint node of B. Since the target file often has multiple associated files, so there are multiple such pointing relationships, that is, a second mapping relationship is formed. The first mapping relationship and the second mapping relationship together constitute a fingerprint tree or fingerprint model corresponding to the system version. This fingerprint tree or fingerprint model can accurately and effectively describe the association of each file in the system version, so that when the version is upgraded, Files modified by editing and their associated files are described in a targeted manner. In the embodiment of the present application, the fingerprint tree or fingerprint model is recorded in the form of a system description file.
图3是本申请实施例提供的版本指纹树示意图,能够更加直观地展现系统版本指纹树的结构。如图所示,编译版本文件,完成一个目标编译后,生成相应的指纹节点hashA,节点存储了目标文件的唯一签名信息,同时节点存储了自身与目标文件的映射关系,即A.exe与指纹节点hashA之间的映射关系为第一映射关系。在图中可以看出,A.exe所依赖的文件有libB、libC与D.config,这些文件就是关联文件,关联文件也会对应生成指纹节点,分别为hashB、hashC与hashD,且原本A.exe文件与libB、libC与D.config之间的关系也会在其形成的指纹节点中体现,这些指纹节点及其之间的关联关系,构成了指纹树。Figure 3 is a schematic diagram of a version fingerprint tree provided by an embodiment of the present application, which can more intuitively display the structure of a system version fingerprint tree. As shown in the figure, after compiling a version file and completing a target compilation, the corresponding fingerprint node hashA is generated. The node stores the unique signature information of the target file. At the same time, the node stores the mapping relationship between itself and the target file, that is, A.exe and the fingerprint. The mapping relationship between nodes hashA is the first mapping relationship. As can be seen in the figure, the files that A.exe depends on are libB, libC and D.config. These files are associated files. The associated files will also generate fingerprint nodes correspondingly, which are hashB, hashC and hashD respectively, and originally A. The relationship between the exe file and libB, libC and D.config will also be reflected in the fingerprint nodes formed by it. These fingerprint nodes and the relationships between them constitute a fingerprint tree.
步骤S4000:获取原始系统版本与更新系统版本之间的版本差异,并根据版本差异、第一映射关系与第二映射关系,生成系统差异描述文件。Step S4000: Obtain the version difference between the original system version and the updated system version, and generate a system difference description file based on the version difference, the first mapping relationship and the second mapping relationship.
需要说明的是,为了实现更加灵活的滚动更新,本申请实施例中的系统更新文件配置方法仅针对原始系统版本和更新系统版本的差异之处进行分析和描述。It should be noted that, in order to achieve more flexible rolling updates, the system update file configuration method in the embodiment of the present application only analyzes and describes the differences between the original system version and the updated system version.
在一实施例中,通过获取原始系统版本与更新系统版本,根据原始系统版本、第一映射关系与第二映射关系,生成与原始系统版本对应的原始系统描述文件,根据更新系统版本、第一映射关系与第二映射关系,生成与更新系统版本对应的更新系统描述文件,最后根据原始系统描述文件与更新系统描述文件,得到系统差异描述文件。In one embodiment, by obtaining the original system version and the updated system version, an original system description file corresponding to the original system version is generated according to the original system version, the first mapping relationship and the second mapping relationship, and based on the updated system version, the first mapping relationship The mapping relationship and the second mapping relationship generate an update system description file corresponding to the updated system version. Finally, a system difference description file is obtained based on the original system description file and the updated system description file.
在另一实施例中,通过获取用于版本更新的提交记录,并根据提交记录,得到版本差异。相较于上一实施例,本实施例直接根据提交记录获得版本差异,对新旧两个版本的比较及分析工作量更少。In another embodiment, a commit record for version update is obtained, and the version difference is obtained based on the commit record. Compared with the previous embodiment, this embodiment obtains version differences directly based on the submission record, requiring less workload for comparison and analysis of the old and new versions.
需要说明的是,系统差异描述文件描述的是两个系统版本指纹树的差异,指纹树的差异,能够反映变化的源文件、变化的版本文件、版本文件大小、生效配置影响等信息。系统差异描述文件中还记载有原始系统版本对应的指纹树以及更新系统版本对应的指纹树,其中,原始系统版本对应的指纹树能够在用户进行系统更新时,帮助用户判断系统是否具备更新条件。It should be noted that the system difference description file describes the difference between the fingerprint trees of the two system versions. The difference in the fingerprint trees can reflect information such as changed source files, changed version files, version file sizes, and the impact of effective configurations. The system difference description file also records the fingerprint tree corresponding to the original system version and the fingerprint tree corresponding to the updated system version. Among them, the fingerprint tree corresponding to the original system version can help the user determine whether the system meets the update conditions when the user performs a system update.
步骤S5000:根据系统差异描述文件,配置系统更新文件。Step S5000: Configure the system update file according to the system difference description file.
需要说明的是,系统更新文件通常以滚动更新包或者滚动升级包的形式存在,方便用户进行下载及运行。It should be noted that system update files usually exist in the form of rolling update packages or rolling upgrade packages, which are convenient for users to download and run.
图4是本申请实施例提供的系统更新文件的配置过程示意图,说明了系统更新文件的配置步骤。如图所示,至少包括步骤S5100、S5200以及S5300。 Figure 4 is a schematic diagram of the configuration process of the system update file provided by the embodiment of the present application, illustrating the configuration steps of the system update file. As shown in the figure, it includes at least steps S5100, S5200 and S5300.
步骤S5100:根据系统差异描述文件,得到系统升级文件。Step S5100: Obtain the system upgrade file according to the system difference description file.
步骤S5200:根据系统升级文件,得到系统更新操作文件。Step S5200: Obtain the system update operation file according to the system upgrade file.
需要说明的是,系统更新操作文件是根据预定义的全局升级配置,生成升级操作步骤,这些升级操作步骤记载在系统更新操作文件中,用于指导用户待升级的系统按照升级操作步骤进行系统更新。It should be noted that the system update operation file generates upgrade operation steps based on the predefined global upgrade configuration. These upgrade operation steps are recorded in the system update operation file and are used to guide users to update the system according to the upgrade operation steps. .
步骤S5300:根据系统差异描述文件、系统升级文件与系统更新操作文件,配置系统更新文件。Step S5300: Configure the system update file according to the system difference description file, system upgrade file and system update operation file.
图5是本申请实施例提供的对原始系统版本与更新系统版本的差异分析示意图。如图所示,在代码仓库510中,指定代码仓库的提交记录,版本构建模块520根据提交记录,构建提交前、后的系统版本,得到原始系统版本以及更新系统版本,并将原始系统版本以及更新系统版本发送给版本分析模块,版本分析模块530按照要求生成版本分析报告540,例如变化的源文件、变化的版本文件、版本文件大小、生效配置影响等。FIG. 5 is a schematic diagram of difference analysis between the original system version and the updated system version provided by the embodiment of the present application. As shown in the figure, in the code warehouse 510, the submission record of the code warehouse is specified. The version building module 520 builds the system version before and after the submission according to the submission record, obtains the original system version and the updated system version, and combines the original system version and The updated system version is sent to the version analysis module, and the version analysis module 530 generates a version analysis report 540 as required, such as changed source files, changed version files, version file sizes, effects of effective configuration, etc.
图6是本申请实施例提供的版本更新包的构建过程示意图。如图所示,提交原始系统版本610、更新系统版本620以及更新策略630,包构建模块640比较两个版本的指纹差异,生成指纹升级树,即对应于系统差异描述文件,指纹升级树包含两个版本的差异描述,还包含新旧两个版本的指纹树。包构建模块基于指纹升级树,获取版本升级文件,包构建模块根据预定义的全局升级配置,生成本升级包的升级操作步骤,包构建模块将指纹升级树、版本升级文件、升级配置制作成系统更新包650,系统更新包650可以实现系统的滚动更新。Figure 6 is a schematic diagram of the construction process of the version update package provided by the embodiment of the present application. As shown in the figure, the original system version 610, the updated system version 620 and the update policy 630 are submitted. The package building module 640 compares the fingerprint differences of the two versions and generates a fingerprint upgrade tree, that is, corresponding to the system difference description file. The fingerprint upgrade tree includes two The difference description of each version also includes the fingerprint trees of the old and new versions. The package building module obtains the version upgrade file based on the fingerprint upgrade tree. The package building module generates the upgrade operation steps for this upgrade package based on the predefined global upgrade configuration. The package building module makes the fingerprint upgrade tree, version upgrade file, and upgrade configuration into a system. The update package 650 and the system update package 650 can implement rolling updates of the system.
本申请实施例还提供了一种系统更新方法,方法包括:根据第一方面的系统更新文件配置方法,得到系统更新文件,并根据系统更新文件,对系统进行更新。Embodiments of the present application also provide a system update method. The method includes: obtaining a system update file according to the system update file configuration method of the first aspect, and updating the system according to the system update file.
在一实施例中,根据系统更新文件,对系统进行更新包括以下具体过程:获取当前系统对应的第一映射关系与所述第二映射关系,即当前系统的指纹树;再获取系统更新文件中原始系统版本对应的所述第一映射关系与所述第二映射关系,即原始版本系统的指纹树,并将两者进行比较,得到比较结果,比较的目的是判断当前系统是否具备系统更新条件。如果比较结果为满足更新要求,对当前系统进行更新;如果比较结果为不满足更新要求,则不对当前系统进行更新。在进行系统更新时,当前系统中的系统更新模块部署系统更新包内的指纹树和版本文件,根据升级配置内的操作步骤,对相关进程执行重启或重新加载完成升级,最后检验升级结果,成功则固化,失败则回退。In one embodiment, updating the system according to the system update file includes the following specific process: obtaining the first mapping relationship and the second mapping relationship corresponding to the current system, that is, the fingerprint tree of the current system; and then obtaining the system update file. The first mapping relationship and the second mapping relationship corresponding to the original system version are the fingerprint tree of the original version system, and the two are compared to obtain the comparison result. The purpose of the comparison is to determine whether the current system meets the system update conditions. . If the comparison result is that the update requirements are met, the current system will be updated; if the comparison result is that the update requirements are not met, the current system will not be updated. When performing system updates, the system update module in the current system deploys the fingerprint tree and version files in the system update package, restarts or reloads the relevant processes according to the operating steps in the upgrade configuration to complete the upgrade, and finally checks the upgrade results. Success If it fails, it will be solidified and if it fails, it will roll back.
图7是本申请实施例提供的系统更新示意图。如图所示,在待更新系统700中,运行有诸多程序710,这些程序文件有对应的节点,这些节点及其关联关系构成了指纹树720。图中采用阴影标注的程序与节点是对应的。Figure 7 is a schematic diagram of system update provided by the embodiment of the present application. As shown in the figure, in the system 700 to be updated, there are many programs 710 running, and these program files have corresponding nodes. These nodes and their relationships constitute a fingerprint tree 720. The shaded programs and nodes in the figure correspond to each other.
图8是本申请实施例提供的系统更新文件配置装置的结构示意图。如图8所示,本申请一实施例还提供了一种预编码配置装置800,包括:至少一个处理器820;至少一个存储器810,用于存储至少一个程序;当至少一个程序被至少一个所述处理器执行时实现上述系统更新文件配置方法。Figure 8 is a schematic structural diagram of a system update file configuration device provided by an embodiment of the present application. As shown in Figure 8, an embodiment of the present application also provides a precoding configuration device 800, including: at least one processor 820; at least one memory 810, used to store at least one program; when at least one program is processed by at least one When the processor is executed, the above system update file configuration method is implemented.
图9是本申请实施例提供的电子设备结构示意图。如图9所示,本申请一实施例还提供了一种预编码配置装置900,包括:至少一个处理器920;至少一个存储器910,用于存储至 少一个程序;当至少一个程序被至少一个所述处理器执行时实现上述系统更新方法。Figure 9 is a schematic structural diagram of an electronic device provided by an embodiment of the present application. As shown in Figure 9, an embodiment of the present application also provides a precoding configuration device 900, including: at least one processor 920; at least one memory 910, used to store One less program; the above system update method is implemented when at least one program is executed by at least one of the processors.
本申请一实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,该计算机可执行指令用于执行如本申请实施例提供的系统更新文件配置方法,或,如本申请实施例提供的系统更新方法。An embodiment of the present application also provides a computer-readable storage medium that stores computer-executable instructions. The computer-executable instructions are used to execute the system update file configuration method provided in the embodiment of the present application, or, as implemented in the present application. The system update method provided in the example.
本申请一实施例还提供了一种计算机程序产品,包括计算机程序或计算机指令,该计算机程序或计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取计算机程序或计算机指令,处理器执行计算机程序或计算机指令,使得计算机设备执行如本申请任一实施例提供的系统更新文件配置方法,或,如本申请实施例提供的系统更新方法。An embodiment of the present application also provides a computer program product, which includes a computer program or computer instructions. The computer program or computer instructions are stored in a computer-readable storage medium. The processor of the computer device reads the computer program from the computer-readable storage medium. Programs or computer instructions, the processor executes the computer program or computer instructions, causing the computer device to execute the system update file configuration method provided in any embodiment of the present application, or the system update method provided in the embodiment of the present application.
本申请实施例提供的系统更新文件配置方法,通过获取目标文件的数字签名,并建立数字签名与目标文件之间的第一映射关系,以及建立目标文件与其关联的各关联文件之间的第二映射关系,使第一映射关系与第二映射关系形成了系统版本的指纹模型,能够得到对系统版本的更新之处做出精准描述的系统差异描述文件,使系统更新文件能够根据系统差异描述文件进行配置,使系统更新文件更加轻量、精准和灵活,实现了系统版本的滚动发行能力,优化了用户的使用感受,提升了产品经理和系统维护人员的工作效率。The system update file configuration method provided by the embodiment of the present application obtains the digital signature of the target file, establishes a first mapping relationship between the digital signature and the target file, and establishes a second mapping relationship between the target file and its associated associated files. The mapping relationship enables the first mapping relationship and the second mapping relationship to form a fingerprint model of the system version, which can obtain a system difference description file that accurately describes the update of the system version, so that the system update file can be based on the system difference description file. The configuration makes the system update files more lightweight, accurate and flexible, realizes the rolling release capability of system versions, optimizes the user experience, and improves the work efficiency of product managers and system maintenance personnel.
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/模块可以被实施为软件、固件、硬件及其适当的组合。Those of ordinary skill in the art can understand that all or some steps in the methods, systems, and functional modules/modules in the devices disclosed above can be implemented as software, firmware, hardware, and appropriate combinations thereof.
在硬件实施方式中,在以上描述中提及的功能模块/模块之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。In hardware implementations, the division between functional modules/modules mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may consist of several physical components. Components execute cooperatively. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit . Such software may be distributed on computer-readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). As is known to those of ordinary skill in the art, the term computer storage media includes volatile and nonvolatile media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. removable, removable and non-removable media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disk (DVD) or other optical disk storage, magnetic cassettes, tapes, disk storage or other magnetic storage devices, or may Any other medium used to store the desired information and that can be accessed by a computer. Additionally, it is known to those of ordinary skill in the art that communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media .
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程或执行线程中,部件可位于一个计算机上或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自于自与本地系统、分布式系统或网络间的另一部件交互的二个部件的数据,例如通过 信号与其它系统交互的互联网)的信号通过本地或远程进程来通信。The terms "component", "module", "system", etc. used in this specification are used to refer to computer-related entities, hardware, firmware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to, a process, processor, object, executable file, thread of execution, program or computer running on a processor. Through the illustrations, both applications running on the computing device and the computing device may be components. One or more components can reside in a process or thread of execution, and the component can be localized on one computer or distributed between 2 or more computers. Additionally, these components can execute from various computer-readable media having various data structures stored thereon. A component may, for example, be based on data having one or more data packets (e.g., data from two components interacting with another component, such as a local system, a distributed system, or a network, e.g., via Signals (Internet for interacting with other systems) Signals are communicated through local or remote processes.
以上参照附图说明了本申请的一些实施例,并非因此局限本申请的权利范围。本领域技术人员不脱离本申请的范围和实质内所作的任何修改、等同替换和改进,均应在本申请的权利范围之内。 Some embodiments of the present application have been described above with reference to the accompanying drawings, but the scope of rights of the present application is not thereby limited. Any modifications, equivalent substitutions and improvements made by those skilled in the art without departing from the scope and essence of this application shall be within the scope of rights of this application.
Claims (11)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210760740.XA CN117369842A (en) | 2022-06-30 | 2022-06-30 | System update file configuration method, system update method, device and storage medium |
| CN202210760740.X | 2022-06-30 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024001543A1 true WO2024001543A1 (en) | 2024-01-04 |
Family
ID=89383197
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/093573 Ceased WO2024001543A1 (en) | 2022-06-30 | 2023-05-11 | System update file configuration method and apparatus, system update method and apparatus, and storage medium |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN117369842A (en) |
| WO (1) | WO2024001543A1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117908926A (en) * | 2024-01-10 | 2024-04-19 | 永联科技(常熟)有限公司 | A method, device, equipment and storage medium for generating an upgrade file |
| CN118210498A (en) * | 2024-04-01 | 2024-06-18 | 福建天晴在线互动科技有限公司 | Method and system for simultaneously referring to multi-version Mysql drive by C# item |
| CN119127269A (en) * | 2024-05-31 | 2024-12-13 | 苏州浩辰软件股份有限公司 | Incremental upgrade method and device, storage medium, and computer program product |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120408647A (en) * | 2025-07-02 | 2025-08-01 | 深圳市商用管理软件有限公司 | Software version updating method, device and equipment based on operation and maintenance data analysis |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7665081B1 (en) * | 2006-05-06 | 2010-02-16 | Kaspersky Lab, Zao | System and method for difference-based software updating |
| CN104536876A (en) * | 2014-11-26 | 2015-04-22 | 四川长虹电器股份有限公司 | An Android platform based automatically updating and testing method and system |
| CN106528229A (en) * | 2016-11-03 | 2017-03-22 | 北京像素软件科技股份有限公司 | Game hot updating method and device |
| CN110032388A (en) * | 2019-04-04 | 2019-07-19 | 阿里巴巴集团控股有限公司 | A kind of building of delta file, publication, method for down loading and device |
| WO2020108183A1 (en) * | 2018-11-30 | 2020-06-04 | 中兴通讯股份有限公司 | Method, apparatus and device for generating differential upgrade package |
| CN111736889A (en) * | 2020-06-12 | 2020-10-02 | 中国银行股份有限公司 | Version increment file acquisition method and device |
-
2022
- 2022-06-30 CN CN202210760740.XA patent/CN117369842A/en active Pending
-
2023
- 2023-05-11 WO PCT/CN2023/093573 patent/WO2024001543A1/en not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7665081B1 (en) * | 2006-05-06 | 2010-02-16 | Kaspersky Lab, Zao | System and method for difference-based software updating |
| CN104536876A (en) * | 2014-11-26 | 2015-04-22 | 四川长虹电器股份有限公司 | An Android platform based automatically updating and testing method and system |
| CN106528229A (en) * | 2016-11-03 | 2017-03-22 | 北京像素软件科技股份有限公司 | Game hot updating method and device |
| WO2020108183A1 (en) * | 2018-11-30 | 2020-06-04 | 中兴通讯股份有限公司 | Method, apparatus and device for generating differential upgrade package |
| CN110032388A (en) * | 2019-04-04 | 2019-07-19 | 阿里巴巴集团控股有限公司 | A kind of building of delta file, publication, method for down loading and device |
| CN111736889A (en) * | 2020-06-12 | 2020-10-02 | 中国银行股份有限公司 | Version increment file acquisition method and device |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117908926A (en) * | 2024-01-10 | 2024-04-19 | 永联科技(常熟)有限公司 | A method, device, equipment and storage medium for generating an upgrade file |
| CN118210498A (en) * | 2024-04-01 | 2024-06-18 | 福建天晴在线互动科技有限公司 | Method and system for simultaneously referring to multi-version Mysql drive by C# item |
| CN119127269A (en) * | 2024-05-31 | 2024-12-13 | 苏州浩辰软件股份有限公司 | Incremental upgrade method and device, storage medium, and computer program product |
Also Published As
| Publication number | Publication date |
|---|---|
| CN117369842A (en) | 2024-01-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2024001543A1 (en) | System update file configuration method and apparatus, system update method and apparatus, and storage medium | |
| US11144438B1 (en) | Incremental build system using an inferred dependency graph collected with a system monitor | |
| US11816458B2 (en) | Method and system for packaging infrastructure as code | |
| EP3387528B1 (en) | Updating dependent services | |
| US8181166B2 (en) | System and method for determining when an EJB compiler needs to be executed | |
| WO2019037561A1 (en) | Alliance chain-based smart contract upgrading method and system | |
| US8443361B2 (en) | Systems and methods for tracking a history of changes associated with software packages in a computing system | |
| US20100318968A1 (en) | Catalog-based software component management | |
| US9690564B2 (en) | Runtime detection of software configurations and upgrades | |
| US20240171603A1 (en) | Risk-Based Vulnerability Remediation Timeframe Recommendations | |
| WO2015131603A1 (en) | Differential upgrade method, serving end and terminal | |
| US11347491B2 (en) | Containerized application deployment | |
| US11966723B2 (en) | Automatic management of applications in a containerized environment | |
| US20240256242A1 (en) | Operational validation system for software deployments | |
| US20200159927A1 (en) | Blockchain technique for immutable source control | |
| CN113330419B (en) | Equipment application installation method, device, equipment and storage medium | |
| EP4605825A1 (en) | Dynamically updating firmware profile configurations on computing devices | |
| CN108268266A (en) | A kind of upgrade method and device | |
| CN118012453A (en) | Software deployment method, device, electronic device, storage medium and program product | |
| CN113010199B (en) | Application updating method and device, computer equipment and storage medium | |
| WO2019233454A1 (en) | Chain code upgrading method and device | |
| US8065671B1 (en) | Systems and methods for product updates with provisioning of data items | |
| US10911307B2 (en) | System and method for out of the box solution-level configuration and diagnostic logging and reporting | |
| US11799717B1 (en) | Coordinated secure workspace servicing | |
| TW202022660A (en) | Image file packaging method and image file packaging system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23829729 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 23829729 Country of ref document: EP Kind code of ref document: A1 |