WO2017185253A1 - 基于补丁升级的文件处理方法、装置、终端以及存储介质 - Google Patents

基于补丁升级的文件处理方法、装置、终端以及存储介质 Download PDF

Info

Publication number
WO2017185253A1
WO2017185253A1 PCT/CN2016/080342 CN2016080342W WO2017185253A1 WO 2017185253 A1 WO2017185253 A1 WO 2017185253A1 CN 2016080342 W CN2016080342 W CN 2016080342W WO 2017185253 A1 WO2017185253 A1 WO 2017185253A1
Authority
WO
WIPO (PCT)
Prior art keywords
path information
patch
file
partition
patch upgrade
Prior art date
Application number
PCT/CN2016/080342
Other languages
English (en)
French (fr)
Inventor
陈磊
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP16899766.6A priority Critical patent/EP3441876B1/en
Priority to AU2016404863A priority patent/AU2016404863B2/en
Priority to RU2018141437A priority patent/RU2712130C1/ru
Priority to US16/097,492 priority patent/US10949191B2/en
Priority to KR1020187034151A priority patent/KR102204115B1/ko
Priority to CN201680017677.3A priority patent/CN108027741B/zh
Priority to PCT/CN2016/080342 priority patent/WO2017185253A1/zh
Priority to JP2018556437A priority patent/JP6649510B2/ja
Publication of WO2017185253A1 publication Critical patent/WO2017185253A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/188Virtual file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44552Conflict resolution, i.e. enabling coexistence of conflicting executables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a file processing method, apparatus, terminal, and storage medium based on patch upgrade.
  • the software of terminals such as mobile phones and tablet computers needs to be continuously upgraded to increase and improve the functions of the terminal.
  • the existing software upgrade modes generally include two types: full image upgrade and differential package upgrade.
  • the full-image upgrade mode includes the complete system file in the upgrade package. During the upgrade process, the original system files in the terminal are completely erased, and then replaced with new files (that is, system files in the upgrade package) to complete. Upgrade;
  • the differential package upgrade mode the upgrade package only contains the difference data between the two versions, and the difference data can complete the upgrade from the specified A version to the specified B version.
  • the upgrade package of the full-image upgrade tends to be large, and is not suitable for wireless upgrade. Therefore, the differential package upgrade mode is currently adopted.
  • the mode can implement the following two modes to implement bug fixes:
  • the currently released historical versions include: B101, B102, and B103. These versions all have the above-mentioned urgent bugs.
  • the server issues patches containing small patch patches based on the latest released version (B103).
  • the server releases upgrade packages that can be upgraded to the latest version of the patch based on each historical version (B101, B102, B103) (upgrade package B101 ⁇ B104, upgrade package B102 ⁇ B104, and join)
  • the patch package for the tiny patch the user can directly download the upgrade package for the current version, and upgrade the version to the version that fixes the emergency bug.
  • the current version of the user is B101.
  • the user can download the upgrade package B101 ⁇ B104 will The current version B101 is directly upgraded to version B104 with an emergency bug fixed.
  • the patch package is only released based on the latest version. Only when the current version is upgraded to the latest version, the bug can be fixed by the patch package.
  • the current version of the B101 user needs to be continuously upgraded. Twice, after upgrading the version to B103, you can fix the bug through the patch package, which can not meet the needs of the rapid patch upgrade.
  • the second upgrade mode the historical version can complete the bug fix at one time, but the upgrade from the old historical version to the latest version of the patch will be larger.
  • the current version is used by the B101 user.
  • the upgrade package B101 ⁇ B104 includes not only the patch required to fix the above emergency bug, but also the patch information included in the upgrade package B101 ⁇ B102 and B102 ⁇ B103.
  • the upgrade package is large, which will result in slower upgrade. It does not meet the needs of rapid patch upgrades, and the server needs to release multiple upgrade packages for historical versions, which is a huge workload.
  • the invention provides a file processing method, device, terminal and storage medium based on patch upgrade, which are used for realizing rapid upgrade of a small patch and reducing workload.
  • an embodiment of the present invention provides a file processing method based on a patch upgrade, including:
  • the file access request includes: storing path information
  • the storage path information is directed to the first partition, it is determined whether the storage path information exists in the association relationship between the original file path information and the patch upgrade file path information in the pre-configured system;
  • the storage path information is in the association relationship between the original file path information and the path information of the patch upgrade file in the pre-configured system, query the association relationship, and obtain the path information of the patch upgrade file corresponding to the storage path information.
  • the patch upgrade file that matches the path information of the patch upgrade file is obtained from the target partition pointed to by the path information of the patch upgrade file corresponding to the storage path information.
  • the patch file when the original file is accessed, the patch file is accessed according to the path information, and the software patch is upgraded; the patch package based on the upgrade method may only include the patch file for repairing the emergency bug, the patch.
  • the packet is smaller, and the terminal can quickly obtain the path information in the patch package, and directly access the patch file according to the path information when the original file is accessed, the upgrade speed is fast, and it is not necessary to create multiple upgrade packages for the historical version, and work. Small amount.
  • the method before the receiving the file access request, the method further includes:
  • the patch package is saved in the second partition
  • the patch upgrade file that matches the path information of the patch upgrade file is obtained from the target partition pointed to by the path information of the patch upgrade file corresponding to the storage path information, including:
  • the patch package is obtained by the file processing method provided in this embodiment, if the emergency package identifier is included in the patch package, the patch package is saved in the second partition, so that the second partition can be different from the existing full mirror. Or the emergency patch upgrade method of the differential upgrade mode; and the first partition can be verified and protected to improve the security of the system.
  • the method further includes:
  • the original file is obtained from the first partition for processing, and the patch upgrade file is generated in the second partition.
  • the file processing method provided by the embodiment saves the patch package in the second partition, and determines whether the parameter modification script is included in the patch package, so that the parameter of the parsable file can be modified by the parameter modification script to fix the bug, so that the embodiment is The scope of adaptation is wider.
  • the method further includes:
  • the patch upgrade file that matches the path information of the patch upgrade file is obtained from the target partition pointed to by the path information of the patch upgrade file corresponding to the storage path information, including:
  • the patch package is saved in the third partition, and the second partition can be verified and protected, thereby further improving the security of the system.
  • the method further includes:
  • the relationship between the original file path information and the patch upgrade file path information in the patch package in the second partition is saved to the pre-configured system.
  • the obtaining the original file from the first partition for processing, and generating the patch upgrade file in the second partition specifically includes:
  • the pre-configuration system is an intermediate virtual file system.
  • the system can conveniently implement file jump access by using a virtual file system, thereby implementing an upgrade of the emergency patch without changing the first partition file.
  • an embodiment of the present invention provides a file processing apparatus based on a patch upgrade, including:
  • a receiving module configured to receive a file access request, where the file access request includes: storing path information;
  • a judging module configured to determine whether the storage path information exists in an association relationship between the original file path information and the patch upgrade file path information in the pre-configured system, if the storage path information is directed to the first partition;
  • the first obtaining module is configured to: if the storage path information exists in the association relationship between the original file path information and the patch upgrade file path information in the pre-configured system, query the association relationship, and obtain the patch upgrade file path information corresponding to the storage path;
  • the second obtaining module is configured to obtain, from the target partition pointed to by the patch upgrade file path information corresponding to the storage path information, a patch upgrade file that matches the path information of the patch upgrade file.
  • the principle and the beneficial effects of the device can be referred to the first aspect and the possible implementation manners of the first aspect and the beneficial effects. Therefore, the implementation of the device can be referred to the implementation of the method. The repetitions are not repeated here.
  • an embodiment of the present invention provides a terminal, including: a processor and a memory, where the memory stores a program or an instruction, and the processor uses a program or an instruction stored in the memory to:
  • the file access request includes: storing path information
  • the storage path information is directed to the first partition, it is determined whether the storage path information exists in the association relationship between the original file path information and the patch upgrade file path information in the pre-configured system;
  • the storage path information is in the association relationship between the original file path information and the path information of the patch upgrade file in the pre-configured system, query the association relationship, and obtain the path information of the patch upgrade file corresponding to the storage path information.
  • the patch upgrade file that matches the path information of the patch upgrade file is obtained from the target partition pointed to by the path information of the patch upgrade file corresponding to the storage path information.
  • the processor invokes instructions stored in the memory to implement the solution in the method design of the above first aspect.
  • the implementation of the terminal and the beneficial effects therefore, the implementation of the terminal can refer to the implementation of the method, and the repeated description will not be repeated.
  • an embodiment of the present invention provides a non-transitory computer readable storage medium, including a computer-executed instruction, and a computer-executed instruction for causing a terminal to perform the method provided by the foregoing first aspect, and details are not described herein again.
  • the file processing method, device, terminal, and storage medium based on the patch upgrade provided by the embodiment of the present invention after the terminal receives the file access request, when the storage path information in the file access request points to the first partition, the storage path information is first determined. Whether the relationship between the original file path information and the patch upgrade file path information in the pre-configured system is obtained, if yes, the path of the patch upgrade file corresponding to the storage path information is obtained according to the association relationship, and then the file is upgraded according to the patch. The path information is accessed to obtain the corresponding patch upgrade file. Based on the file processing mode, when the original file is accessed, the patch file is accessed according to the path information, and the software patch is upgraded.
  • the patch package of this embodiment may only be used for repairing.
  • the patch file of the emergency bug is small.
  • the terminal can quickly obtain the path information in the patch package, and directly access the patch file according to the path information when the original file is accessed, the upgrade speed is fast, and there is no need to make multiple targets.
  • FIG. 1 is a schematic diagram of a mode of an existing differential packet upgrade mode
  • FIG. 2 is a schematic diagram of another mode of the existing differential packet upgrade mode
  • FIG. 3 is a schematic diagram of a system architecture of a terminal according to the present invention.
  • FIG. 4 is a schematic flowchart of Embodiment 1 of a file processing method based on patch upgrade according to the present invention
  • FIG. 5 is a schematic structural diagram of a system for upgrading a file patch according to the present invention.
  • FIG. 6 is a schematic flowchart of Embodiment 2 of a file processing method based on a patch upgrade according to the present invention
  • FIG. 7 is a schematic structural diagram of Embodiment 1 of a file processing apparatus based on a patch upgrade according to the present invention.
  • FIG. 8 is a schematic structural diagram of Embodiment 2 of a file processing apparatus based on a patch upgrade according to the present invention.
  • FIG. 9 is a schematic structural diagram of a terminal provided by the present invention.
  • a terminal may be referred to as a user equipment (User Equipment; UE for short), a mobile station (Mobile Station; MS), a mobile terminal (Mobile Terminal), a computer, a microcomputer, an electronic device, or the like.
  • the terminal can communicate with one or more core networks via a Radio Access Network (RAN), for example, the terminal can be a mobile phone (or "cellular" phone), a computer with a mobile terminal, or the like.
  • the terminal can also be a portable, pocket, handheld, computer built-in or in-vehicle mobile device that exchanges voice and/or data with the wireless access network.
  • the terminal further includes a terminal with wired access with multiple bearer features.
  • the terminal includes an application module of an application layer, a virtual file system (VFS) in an kernel kernel, and an intermediate virtual file system (such as sdcardfs). , patchfs, etc.) and each storage partition in the hard disk, wherein each storage partition (such as data data partition, patch patch partition, system system partition, etc.) adopts the fourth generation extended file system (EXT4) or other file system.
  • VFS virtual file system
  • EXT4 fourth generation extended file system
  • the files can be fed back to the application module via an intermediate virtual file system or by directly accessing these files.
  • FIG. 4 is a schematic flowchart of a method for processing a file based on a patch upgrade according to a first embodiment of the present invention.
  • the executor of the present embodiment may be a file processing device or a terminal based on a patch upgrade, as shown in FIG. Methods include:
  • Step S101 Receive a file access request, where the file access request includes storage path information.
  • the file access request is sent to the unified file access interface VFS in the terminal, where the file access request includes the storage path information, that is, the storage path of the file to be accessed by the application.
  • the VFS can provide the application with the file that the application wants to access.
  • Step S102 If the storage path information points to the first partition, determine whether the storage path information exists in the association relationship between the original file path information and the patch upgrade file path information in the pre-configured system.
  • the terminal may store the patch upgrade file in a certain partition, and then the original file path information (that is, the storage path of the original file) and the patch upgrade file path information (ie, The association relationship of the storage path of the patch upgrade file is stored in the path table of the pre-configured system.
  • the pre-configured system can be an intermediate virtual file system, such as file systems such as overleyfs, sdcardfs, and patchfs.
  • the VFS can learn the partition pointed to by the storage path information. If the storage path information is determined to point to the first partition (the partition where the original file exists), the file to be accessed corresponding to the storage path information may be The original file with the bug; the VFS first accesses the pre-configured system, searches the path table, and determines whether the storage path information exists in the association relationship between the original file path information and the patch upgrade file path information in the pre-configured system to determine the storage path. Whether the file to be accessed corresponding to the information is the original file with a bug.
  • Step S103 If yes, query the association relationship between the original file path information and the patch upgrade file path information in the pre-configuration system, and obtain the patch upgrade file path information corresponding to the storage path information.
  • the file to be accessed corresponding to the storage path information is the original file with the bug, and the patch corresponding to the storage path information is obtained according to the association relationship. Upgrade the file path information to access the patch upgrade file. If the storage path information does not exist in the association between the original file path information and the path information of the patch upgrade file, the file to be accessed corresponding to the storage path information is not a bug. The original file can directly access the corresponding file in the first partition according to the storage path information.
  • Step S104 Obtain a patch upgrade file that matches the patch upgrade file path information from the target partition pointed to by the patch upgrade file path information corresponding to the storage path information.
  • the VFS After obtaining the path of the patch upgrade file corresponding to the path information, the VFS can obtain the patch upgrade that matches the path information of the patch upgrade file from the target partition pointed to by the path information of the patch upgrade file.
  • the file is provided to the application.
  • the target partition may be a first partition, or may be another partition different from the first partition; the first partition may be a system partition or a cust partition, and the target partition may be a system partition, a cust partition, a data partition, or a patch. Partition or RAMFS, etc.
  • FIG. 5 is a schematic structural diagram of a system for upgrading a file patch according to the present invention, as shown in FIG. 5, in the /system/framework/a.jar file and the cust partition (first partition) in the system partition (first partition)
  • the /cust/preinstalled/public/lib/b.so file has an urgent bug that needs to be fixed.
  • the patch file after the bug is fixed is stored in the patch partition (target partition): /patch/system/framework/a.jar and /patch/cust/preinstalled/public/lib/b.so.
  • the VFS When the system partition and the cust partition are accessed, the VFS first accesses the patchfs (pre-configured system), and uses the path information association relationship in the path table to determine whether the storage path information of the file to be accessed by the application meets the specified path (that is, whether it is /system). /framework/a.jar or /cust/preinstalled/public/lib/b.so), if yes, according to the corresponding /patch/system/framework/a.jar or /patch/cust/preinstalled/public/lib/ B.so jumps to the patch partition to access the corresponding patch file. If it is not satisfied, access the file in the system partition or cust partition according to the storage path information of the file to be accessed by the application.
  • the new version file can work effectively in all historical versions, such as *.so files, etc.; or even though The file history version has changed frequently, but its decoupling compatibility is very good. It can be directly overwritten with new version files, such as *.apk files. That is, these files can be overwritten to all historical versions with a single unified update file.
  • the software upgrade is usually directed to the files in the system partition. The following is a description of the technical solution of the present invention by taking the file upgrade of the system partition as an example.
  • the prior art adopts the differential packet upgrade mode.
  • the first one is to release the patch package containing the patch based on the latest version.
  • the bug can be fixed by the patch package, and the upgrade speed is very slow;
  • This is an upgrade package based on the latest version of each version that can be upgraded to the patch.
  • This method considers that the differential package upgrade mode directly modifies the original file in the system partition during the upgrade, in order to avoid the upgrade patch.
  • the original file in the system partition has been modified and the historical version cannot be upgraded to the latest version using the released upgrade package.
  • the VFS in the terminal receives the file access request
  • the storage path information in the file access request points to the first partition, that is, the system partition
  • the relationship between the original file path information and the path information of the patch upgrade file is obtained, and the path of the patch upgrade file corresponding to the storage path information is obtained according to the association relationship, and then the corresponding patch is obtained according to the path information of the upgrade file.
  • the upgrade file that is, when the original file with the bug is accessed, the terminal can jump to the partition where the patch upgrade file is located to access the patch upgrade file.
  • the patch upgrade file included in the patch package can be directly used as the original file after the upgrade, and can be stored in a different path from the original file.
  • the terminal directly accesses the obtained path information.
  • Patch upgrade file to upgrade the software patch You do not need to modify the original file of the system partition.
  • you need to upgrade the current version of the historical version to the latest version you can directly remove the patch package and use the released differential package to upgrade.
  • the current version avoids the problem that the historical version cannot be upgraded to the latest version with the released upgrade package due to the upgrade patch.
  • the patch package may only include a patch file for repairing an emergency bug, and each historical version may use the same patch package, and the patch file in one patch package may cover all historical versions, and may not be needed.
  • a plurality of upgrade packages for the historical version are created. Therefore, the patch package is smaller, and the terminal can quickly obtain the path information in the patch package, and directly access the patch file according to the obtained path information when the original file is accessed, and the upgrade speed is fast. And the workload is small.
  • the file processing method based on the patch upgrade provided by the embodiment receives the file access request After the request, when the storage path information in the file access request points to the first partition, it is first determined whether the storage path information exists in the association relationship between the original file path information and the patch upgrade file path information in the pre-configured system, and if so, And obtaining the patch upgrade file path information corresponding to the storage path information according to the association relationship, and then accessing the corresponding patch upgrade file according to the path information of the patch upgrade file, according to the file processing manner, when the original file is accessed, according to the path
  • the information access patch file implements the patch upgrade of the software.
  • the patch package of this embodiment may only include a patch file for repairing an emergency bug.
  • the patch package is small, and the terminal can quickly obtain the path information in the patch package, and is in the original file.
  • the patch file is directly accessed according to the path information, and the upgrade speed is fast, and it is not necessary to create multiple upgrade packages for the historical version, and the workload is small.
  • FIG. 6 is a schematic flowchart of a second embodiment of a file processing method based on a patch upgrade according to the present invention.
  • This embodiment is a specific process for acquiring and processing a patch package accessed in the foregoing embodiment shown in FIG. 4, which is shown in FIG. 4 above.
  • the method of the embodiment further includes:
  • Step S201 Obtain a patch package.
  • the patch package may be a patch package obtained from a server based on over-the-air (OTA) technology, or may be a patch package obtained from other devices (such as a desktop computer) by wire.
  • OTA over-the-air
  • the terminal may send an upgrade query request message to the server, and the server queries whether the patch package conforms to the current version of the terminal according to the request message, and if yes, sends the patch package to the terminal;
  • the server may also send a broadcast notification message to the terminal to prompt the terminal to upgrade. If the terminal selects the upgrade, the service package is sent to the terminal.
  • Step S202 If the emergency package identifier is included in the patch package, the patch package is saved in the second partition.
  • the patch package may include an emergency patch package identifier, which is used to distinguish other upgrade packages.
  • the emergency patch package identifier may be a patch.
  • the predetermined secure partition may be a first partition or a second partition different from the first partition.
  • the system and the cust partition cannot be upgraded by using the file mode.
  • the terminal can add a secure patch partition as the second partition. After obtaining the patch package, the terminal saves the obtained patch package in the newly added patch partition to improve system security. Sex.
  • the terminal may store the patch package in the cache cache partition, and then restart the recovery recovery mode to save the patch package in the second partition; or save the patch package directly in the second partition.
  • the patch package is first stored in the cache partition, and then enters the recovery mode and saved in the second partition to improve system security.
  • the patch package may include a patch upgrade file.
  • the target partition pointed to by the patch upgrade file path information is the second partition, and the step S104 points from the corresponding patch upgrade file path information. In the partition, obtain the patch upgrade file that matches the path information of the patch upgrade file.
  • the patch upgrade file in the patch package in this embodiment is different from the patch upgrade file in the existing full-mirror upgrade package and the difference package.
  • the patch upgrade file in this embodiment is the original file after the upgrade, that is, the original file after the upgrade. Fix the original file after the bug.
  • the patch upgrade file in the patch package can also be processed by the existing signature mechanism. The signature check is performed when the patch package is written to the secure partition.
  • the patch package can also be processed by other existing packaging technologies. Not limited.
  • Step S203 If the parameter modification script is included in the service package, the original file is obtained from the first partition for processing, and the patch upgrade file is generated in the second partition.
  • a small part of the system partition can not be overwritten with a unified patch file to all versions, but you can directly change the specified content in the file through a parsing statement, such as *.xml, *.prop, *.txt files.
  • the patch package may include a parameter modification script, and the parameter to be modified is modified by the parameter modification script to generate a new file (ie, a patch upgrade file).
  • the init process can mount the second partition by using the mount command to make the files in the second partition take effect. Then the terminal can read the file in the patch package, and when the patch package includes the parameter modification script, it is obtained from the first partition. Take the original file for processing and generate a patch upgrade file in the second partition. More specifically, the terminal executes the parameter modification script to generate the patch upgrade file: the terminal first mounts the first partition where the original file is located, reads the original file in the first partition, and then parses the original file to obtain the original file. Parameter information; after finding the parameter to be modified in the parameter information, modify the parameter to be modified in the parameter information, and then generate a patch upgrade file.
  • the patch upgrade file can be stored in the data partition, patch partition, or RAMFS; the data of the data partition can be easily tampered with.
  • the patch upgrade file is preferably stored in the patch partition or RAMFS.
  • the patch upgrade file is stored in the RAMFS in a manner suitable for, for example, the google M version, and the system read-only partition (patch partition) is checked and protected, and the files in the RAMFS disappear when the system is powered on. When booting, it automatically generates a new file and stores it in RAMFS. If the terminal does not use google M version, you can directly save the patch upgrade file in the patch partition, and load the patch partition every time you boot.
  • the generated patch upgrade file is saved in the third partition (ie, RAMFS) to further improve system security.
  • the patch upgrade file that matches the path information of the patch upgrade file is obtained from the target partition pointed to by the corresponding patch upgrade file path information, and another possible implementation manner is as follows:
  • the patch package may include only the patch upgrade file or the parameter modification script, and may also include the parameter modification script and the patch upgrade file, and the patch package may be specifically prepared according to actual needs.
  • Step S204 Save the association relationship between the original file path information and the patch upgrade file path information in the patch package in the second partition to the pre-configuration system.
  • the patch package may include the path information of the original file corresponding to the patch upgrade file (that is, the storage path of the original file).
  • the original file corresponding to the patch upgrade file in the patch package may be read.
  • the path information of the patch upgrade file is obtained according to the location of the patch upgrade file (that is, the path of the patch upgrade file).
  • the patch package can also directly encapsulate the path information of the patch upgrade file, and the terminal obtains the patch package. After saving it in the corresponding location, read the patch package to get all the path information.
  • the terminal After the terminal obtains the original file path information and the path information of the patch upgrade file, the association relationship between the original file path information and the path information of the patch upgrade file can be saved to the pre-configuration system.
  • the system is an intermediate virtual file system for subsequent file jump access.
  • the existing intermediate virtual file system such as the intermediate virtual file system implemented by overleyfs or sdcardfs technology, has a corresponding partition association relationship.
  • the terminal can directly add an intermediate virtual system to the system.
  • the file system patchfs is used as the pre-configuration system of the present embodiment, and then the relationship between the patchfs and the system partition is associated. After the original file path information and the patch upgrade file path information are obtained, the patchfs is mounted, and the path information is stored in the memory corresponding to the patchfs. In the path table, when the original file is accessed, the terminal is guided through the path table to access the file in the target partition.
  • patchfs can be implemented by using existing overleyfs or sdcardfs technology.
  • step S204 there is no strict timing relationship between step S204 and step S203, and step S204 may be performed before step S203.
  • the specific execution sequence is not limited in this embodiment.
  • the file processing method based on the patch upgrade provided by the embodiment after the terminal obtains the patch package, if the patch package includes the emergency patch package identifier, the patch package is saved in the second partition, and then the patch in the second partition is The association between the original file path information and the patch upgrade file path information is saved in the pre-configured system, and the patch package for repairing the emergency bug is validated by the second partition and the pre-configured system.
  • the patch package is It is saved in the second partition to improve the security of the system; and after the patch package is saved in the second partition, it is judged whether the patch package contains the parameter modification script, so that the parameter of the parsable file can be modified by the parameter modification script to fix the bug. This makes the adaptation range of this embodiment wider.
  • FIG. 7 is a schematic structural diagram of Embodiment 1 of a file processing apparatus based on patch upgrade according to the present invention.
  • the apparatus provided in this embodiment may be integrated in a terminal. As shown in FIG. 7, the apparatus provided in this embodiment includes:
  • the receiving module 110 is configured to receive a file access request, where the file access request includes: storing path information;
  • the determining module 120 is configured to determine, if the storage path information is directed to the first partition, whether the storage path information exists in an association relationship between the original file path information and the patch upgrade file path information in the pre-configured system;
  • the first obtaining module 130 is configured to query the original relationship between the original file path information and the patch upgrade file path information in the pre-configured system. The relationship between the file path information and the path information of the patch upgrade file is obtained, and the path information of the patch upgrade file corresponding to the storage path is obtained.
  • the second obtaining module 140 is configured to obtain, from the target partition pointed to by the patch upgrade file path information corresponding to the storage path information, a patch upgrade file that matches the patch upgrade file path information.
  • the apparatus provided in this embodiment may perform the foregoing method embodiments, and the implementation principles and technical effects are similar, and details are not described herein again.
  • FIG. 8 is a schematic structural diagram of Embodiment 2 of a file processing apparatus based on a patch upgrade according to the present invention.
  • This embodiment is a further function supplement to the apparatus of the foregoing embodiment shown in FIG. 7, and is based on the foregoing embodiment shown in FIG.
  • the apparatus of this embodiment further includes:
  • the third obtaining module 150 is configured to obtain a patch package.
  • the first storage module 160 is configured to save the service package in the second partition if the emergency package identifier is included in the service package;
  • the second obtaining module 140 is specifically configured to: obtain, from the second partition, a patch upgrade file that matches the path information of the patch upgrade file.
  • the apparatus of this embodiment further includes: a generating module 170, configured to: if the parameter modification script is included in the patch package, execute a parameter modification script, and obtain the original file from the first partition for processing, in the second partition Generate a patch upgrade file.
  • a generating module 170 configured to: if the parameter modification script is included in the patch package, execute a parameter modification script, and obtain the original file from the first partition for processing, in the second partition Generate a patch upgrade file.
  • the apparatus of this embodiment further includes: a second storage module 180, configured to save the generated patch upgrade file in a third partition; and the second obtaining module 140 is specifically configured to: From the third partition, obtain a patch upgrade file that matches the path information of the patch upgrade file.
  • the device in this embodiment further includes: a third storage module 190, configured to save an association relationship between the original file path information and the patch upgrade file path information in the patch package in the second partition to the pre-configuration system.
  • a third storage module 190 configured to save an association relationship between the original file path information and the patch upgrade file path information in the patch package in the second partition to the pre-configuration system.
  • the apparatus provided in this embodiment may perform the foregoing method embodiments, and the implementation principles and technical effects are similar, and details are not described herein again.
  • FIG. 9 is a schematic structural diagram of a terminal provided by the present invention.
  • the terminal in this embodiment includes: at least one processor 210, a memory 220, at least one network interface 230, or the like.
  • the terminal optionally includes a user interface 240, including a display (eg, a touch screen, LCD, CRT, Holographic or Projector, etc.), a keyboard or a pointing device (eg, a mouse, a trackball, a tactile sensation) Board or touch screen, etc.).
  • a display eg, a touch screen, LCD, CRT, Holographic or Projector, etc.
  • a keyboard or a pointing device eg, a mouse, a trackball, a tactile sensation) Board or touch screen, etc.
  • Memory 220 can include read only memory and random access memory and provides instructions and data to processor 210.
  • memory 220 stores elements, executable modules or data structures, or a subset thereof, or their extension set:
  • Operating system 221 comprising various system programs for implementing various basic services and processing hardware-based tasks
  • the application module 222 includes various applications, such as CA and TA shown in FIG. 1, for implementing various application services.
  • the hardware device 260 for displaying the interface of the terminal may include a display memory, a display device, a touch screen, and the like.
  • each module of the apparatus shown in FIG. 7 can be an integral part of the processor 210 in this embodiment, and the processor 210 can implement each module in the apparatus shown in FIG. 7 by executing a program or instruction in the memory 220.
  • the processor 210 by calling a program or instruction stored in the memory 220, the processor 210 is configured to:
  • the file access request includes: storing path information
  • the storage path information is directed to the first partition, it is determined whether the storage path information exists in the association relationship between the original file path information and the patch upgrade file path information in the pre-configured system;
  • the principle of solving the problem by the terminal and the method embodiment of the present invention The communication methods are similar, so the implementation of the terminal can be seen in the implementation of the method, such as for acquiring a patch package, generating a patch upgrade file in a second partition, and/or other processes of the techniques described in the method embodiments of the present invention.
  • the processor 1103 is configured to execute the processes S101 to S104 in FIG. 4 and the processes S201 to S204 in FIG. 6.
  • the memory 1104 is used to store program codes and data for the terminal. The repetitions are not repeated here.
  • the terminal after the terminal receives the file access request, when the storage path information in the file access request points to the first partition, it first determines whether the storage path information exists in the original file path information and the patch in the pre-configured system. If the relationship between the path information of the upgrade file path exists, the path information of the patch upgrade file corresponding to the storage path information is obtained according to the association relationship, and then the corresponding patch upgrade file is accessed according to the path information of the upgrade file, based on the The file processing mode, when the original file is accessed, accesses the patch file according to the path information, and implements the software patch upgrade.
  • the patch package of this embodiment may only include a patch file for repairing an emergency bug, the patch package is small, and the terminal can be fast. Obtain the path information in the patch package, and directly access the patch file according to the path information when the original file is accessed. The upgrade speed is fast, and there is no need to make multiple upgrade packages for the historical version, and the workload is small.
  • Embodiments of the present invention provide a non-transitory computer readable storage medium storing one or more programs, wherein one or more programs include instructions that, when executed by a terminal, cause a terminal to perform the above method.
  • the aforementioned program can be stored in a non-volatile computer readable storage medium.
  • the program when executed, performs the steps including the foregoing method embodiments; and the foregoing storage medium includes various media that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Stored Programmes (AREA)

Abstract

一种基于补丁升级的文件处理方法、装置、终端以及存储介质,该方法包括:接收文件访问请求,文件访问请求包括:存放路径信息(S101);若存放路径信息指向第一分区,则判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中(S102);若存在,则查询预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系,获取与存放路径信息对应的补丁升级文件路径信息(S103);从对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件(S104)。上述方法可以实现微小补丁的快速升级,并减小工作量。

Description

基于补丁升级的文件处理方法、装置、终端以及存储介质 技术领域
本发明涉及通信技术领域,尤其涉及一种基于补丁升级的文件处理方法、装置、终端以及存储介质。
背景技术
手机、平板电脑等终端的软件需要不断升级以增加和完善终端的功能,现有的软件升级模式一般包括两种:全镜像升级和差分包升级。其中,全镜像升级模式中,升级包中包含完整的系统文件,在升级过程中会将终端中原有的系统文件全部擦除,然后更换为新文件(即升级包中的系统文件),以完成升级;差分包升级模式中,升级包中只包含两个版本之间的差异数据,该差异数据可完成从指定的A版本到指定的B版本的升级。在上述两种升级模式中,全镜像升级的升级包往往会很大,不适合无线升级,因此,目前多采用差分包升级模式。
另外,对于现有的差分包升级模式,由于在终端的软件版本发布后,有时会存在只需修改个别参数就可以修复的紧急bug,因此,其模式可以采用下述两种模式实现bug修复:第一种,如图1所示,当前已发布的历史版本包括:B101、B102和B103,这些版本都存在上述紧急bug,服务器基于当前已发布的最新版本(B103)发布包含微小补丁patch的补丁包;用户想要修复该bug时,在将当前版本(如B101、B102)升级到最新版本(B103)后,可以下载该补丁包修复bug;举例来说,用户使用的当前版本是B101,则先下载升级包B101→B102将版本升级到B102,再下载升级包B102→B103将版本升级到B103,最后下载合入微小patch的补丁包将版本升级到修复了紧急bug的版本B104。第二种,如图2所示,服务器基于各历史版本(B101、B102、B103)均发布可升级到合入patch的最新版本的升级包(升级包B101→B104、升级包B102→B104和合入微小patch的补丁包),用户可以直接下载针对当前版本的升级包,将版本一次性升级到修复了紧急bug的版本;继续以用户使用的当前版本是B101为例,用户可以下载升级包B101→B104将 当前版本B101直接升级到修复了紧急bug的版本B104。
但是,第一种升级模式中,补丁包只基于最新版本发布,用户只有将当前版本升级到最新版本时,才能够通过补丁包修复bug,例如上述举例中,当前版本是B101的用户需要连续升级两次,将版本升级到B103后才可以通过补丁包修复bug,从而无法满足微小patch快速升级的需求。第二种升级模式中,历史版本都可以一次完成bug修复,但是从老的历史版本升级到合入patch的最新版本,升级包会比较大,例如上述举例中,当前版本是B101的用户所使用的升级包B101→B104中,不仅包含修复上述紧急bug所需的patch,还包含升级包B101→B102和B102→B103中所包含的补丁信息,升级包很大,从而会导致升级较慢,也不满足微小patch快速升级的需求,并且服务器需要发布多个针对历史版本的升级包,工作量巨大。
发明内容
本发明提供一种基于补丁升级的文件处理方法、装置、终端以及存储介质,用于实现微小patch的快速升级,并减小工作量。
第一方面,本发明实施例提供一种基于补丁升级的文件处理方法,包括:
接收文件访问请求,文件访问请求包括:存放路径信息;
若存放路径信息指向第一分区,则判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
若存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询关联关系,获取与存放路径信息对应的补丁升级文件路径信息;
从与存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
通过第一方面提供的文件处理方法,在原文件被访问时,根据路径信息访问补丁文件,实现了软件的补丁升级;基于该升级方法的补丁包可以只包含用于修复紧急bug的补丁文件,补丁包较小,终端可以快速获取补丁包中的路径信息,并在原文件被访问时,根据该路径信息直接访问补丁文件,升级速度很快,且不需要制作多个针对历史版本的升级包,工作量小。
在第一方面的一种可能的实施方式中,在接收文件访问请求之前,上述方法还包括:
获取补丁包;
若补丁包中包括紧急补丁包标识,则将补丁包保存在第二分区中;
则从与存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件,包括:
从第二分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
通过该实施例提供的文件处理方法,获取补丁包后,若补丁包中包括紧急补丁包标识,则将补丁包保存在第二分区中,从而可以通过第二分区实现不同于现有的全镜像或差分升级方式的紧急补丁升级方法;并且可以对第一分区进行校验保护,提高系统的安全性。
在第一方面的一种可能的实施方式中,在将补丁包保存在第二分区中之后,方法还包括:
若补丁包中包括参数修改脚本,则从第一分区中获取原文件进行处理,在第二分区中生成补丁升级文件。
通过该实施例提供的文件处理方法,将补丁包保存在第二分区后,判断补丁包中是否包含参数修改脚本,从而可以通过参数修改脚本修改可解析文件的参数,修复bug,使得本实施例的适应范围更广。
在第一方面的一种可能的实施方式中,在第二分区中生成补丁升级文件之后,方法还包括:
将生成的补丁升级文件保存在第三分区中;
则从与存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件,包括:
从第三分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
通过该实施例提供的文件处理方法,将补丁包保存在第三分区中,可以对第二分区进行校验保护,从而进一步提高了系统的安全性。
在第一方面的一种可能的实施方式中,在将补丁包保存在第二分区中之后,方法还包括:
将第二分区中补丁包中的原文件路径信息和补丁升级文件路径信息的关联关系保存至预配置系统中。
在第一方面的一种可能的实施方式中,从第一分区中获取原文件进行处理,在第二分区中生成补丁升级文件,具体包括:
挂载原文件所在的第一分区,并读取第一分区中的原文件;
解析原文件,获取原文件的参数信息;
修改参数信息中待修改的参数,生成补丁升级文件。
在第一方面的一种可能的实施方式中,预配置系统为中间虚拟文件系统。
通过该实施例提供的文件处理方法,系统可以采用虚拟文件系统方便的实现文件跳转访问,从而在不改变第一分区文件的情况下实现对紧急补丁的升级。
第二方面,本发明实施例提供一种基于补丁升级的文件处理装置,包括:
接收模块,用于接收文件访问请求,文件访问请求包括:存放路径信息;
判断模块,用于若存放路径信息指向第一分区,则判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
第一获取模块,用于若存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询关联关系,获取与存放路径对应的补丁升级文件路径信息;
第二获取模块,用于从与存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
基于同一发明构思,由于该装置解决问题的原理以及有益效果可以参见上述第一方面和第一方面的各可能的实施方式以及所带来的有益效果,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
第三方面,本发明实施例提供一种终端,包括:处理器和存储器,存储器存储程序或指令,处理器通过调用存储器存储的程序或指令,用于:
接收文件访问请求,文件访问请求包括:存放路径信息;
若存放路径信息指向第一分区,则判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
若存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询关联关系,获取与存放路径信息对应的补丁升级文件路径信息;
从与存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
所述处理器调用存储在所述存储器中的指令以实现上述第一方面的方法设计中的方案,由于该终端解决问题的实施方式以及有益效果可以参见上述第一方面和第一方面的各可能的实施方式以及有益效果,因此该终端的实施可以参见方法的实施,重复之处不再赘述。
第四方面,本发明实施例提供一种非易失计算机可读存储介质,包含计算机执行指令,计算机执行指令用于使终端执行上述第一方面提供的方法,重复之处不再赘述。
本发明实施例提供的基于补丁升级的文件处理方法、装置、终端以及存储介质,终端接收到文件访问请求后,当文件访问请求中的存放路径信息指向第一分区时,则先判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,若存在,则根据该关联关系获取与存放路径信息对应的补丁升级文件路径信息,然后根据该补丁升级文件路径信息去访问获取对应的补丁升级文件,基于这种文件处理方式,在原文件被访问时,根据路径信息访问补丁文件,实现了软件的补丁升级,本实施例的补丁包可以只包含用于修复紧急bug的补丁文件,补丁包较小,终端可以快速获取补丁包中的路径信息,并在原文件被访问时,根据该路径信息直接访问补丁文件,升级速度很快,且不需要制作多个针对历史版本的升级包,工作量小。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有的差分包升级模式的一种模式示意图;
图2为现有的差分包升级模式的另一种模式示意图;
图3为本发明的终端的系统架构示意图;
图4为本发明提供的基于补丁升级的文件处理方法实施例一的流程示意 图;
图5为本发明提供的一种文件补丁升级的系统结构示意图;
图6为本发明提供的基于补丁升级的文件处理方法实施例二的流程示意图;
图7为本发明提供的基于补丁升级的文件处理装置实施例一的结构示意图;
图8为本发明提供的基于补丁升级的文件处理装置实施例二的结构示意图;
图9为本发明提供的终端的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应理解,在本发明实施例中,终端可称之为用户设备(User Equipment;简称UE)、移动台(Mobile Station;简称MS)、移动终端(Mobile Terminal)、计算机、微机、电子设备等。该终端可以经无线接入网(Radio Access Network;简称RAN)与一个或多个核心网进行通信,例如,终端可以是移动电话(或称为“蜂窝”电话)、具有移动终端的计算机等,例如,终端还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语音和/或数据。本发明对此并不限定,例如终端还包括具有多承载特征的有线接入的终端。
图3为本发明的终端的系统架构示意图,如图3所示,终端中包含应用层的应用模块、内核kernel中的虚拟文件系统(Virtual File System;简称VFS)、中间虚拟文件系统(如sdcardfs、patchfs等)和硬盘中的各存储分区,其中各存储分区(如数据data分区、补丁patch分区、系统system分区等)采用第四代扩展文件系统(Fourth extended filesystem;简称EXT4)或其他文件系统存储系统运行所需的各种文件,当应用层的应用模块访问这些文件时,VFS 可以通过中间虚拟文件系统或者直接访问这些文件,将文件反馈给应用模块。
图4为本发明提供的基于补丁升级的文件处理方法实施例一的流程示意图,本实施例的执行主体可以为基于补丁升级的文件处理装置或终端,如图4所示,本实施例提供的方法包括:
步骤S101、接收文件访问请求,文件访问请求包括存放路径信息。
具体的,当应用层的某个应用程序访问文件时,会向终端中统一的文件访问接口VFS发送文件访问请求,该文件访问请求中包括存放路径信息,即应用程序欲访问的文件的存放路径;VFS接收到该存放路径信息后,可以为应用程序提供该应用程序欲访问的文件。
步骤S102、若存放路径信息指向第一分区,则判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中。
具体的,本实施例中,终端获取到补丁升级文件后,可以将补丁升级文件存储在某个分区中,然后将原文件路径信息(即原文件的存放路径)和补丁升级文件路径信息(即补丁升级文件的存放路径)的关联关系存储在预配置系统的路径表中。其中,该预配置系统可以为中间虚拟文件系统,如overleyfs、sdcardfs、patchfs等文件系统。
VFS接收到存放路径信息后,可以获知该存放路径信息指向的分区,若确定存放路径信息指向第一分区(存在bug的原文件所在的分区),说明该存放路径信息对应的待访问文件可能为存在bug的原文件;VFS则先访问预配置系统,查找路径表,判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,以确定该存放路径信息对应的待访问文件是否为存在bug的原文件。
步骤S103、若存在,则查询预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系,获取与存放路径信息对应的补丁升级文件路径信息。
若原文件路径信息和补丁升级文件路径信息的关联关系中存在存放路径信息,则表明该存放路径信息对应的待访问文件为存在bug的原文件,则根据该关联关系获取与存放路径信息对应的补丁升级文件路径信息,以访问补丁升级文件。若原文件路径信息和补丁升级文件路径信息的关联关系中不存在存放路径信息,则表明该存放路径信息对应的待访问文件不是存在bug的 原文件,则可以直接根据该存放路径信息访问第一分区中对应的文件。
步骤S104、从与存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
VFS获取到与存放路径信息对应的补丁升级文件路径信息后,则可以根据该补丁升级文件路径信息,从该补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件,提供给应用程序。
其中,目标分区具体可以是第一分区,也可以是与第一分区不同的其他分区;第一分区具体可以为system分区、cust分区,目标分区具体可以是system分区、cust分区、data分区、patch分区或者RAMFS等。
为了便于理解本发明的技术方案,下面以升级/system/framework/a.jar和/cust/preinstalled/public/lib/b.so为例进行示例性说明:
图5为本发明提供的一种文件补丁升级的系统结构示意图,如图5所示,system分区(第一分区)中的/system/framework/a.jar文件和cust分区(第一分区)中的/cust/preinstalled/public/lib/b.so文件存在紧急bug需要修复,修复bug后的补丁文件存放在patch分区(目标分区)中,分别为:/patch/system/framework/a.jar和/patch/cust/preinstalled/public/lib/b.so。当system分区和cust分区被访问时,VFS先访问patchfs(预配置系统),通过路径表中的路径信息关联关系判断应用程序欲访问的文件的存放路径信息是否满足指定路径(即是否为/system/framework/a.jar或/cust/preinstalled/public/lib/b.so),若满足,则根据对应的/patch/system/framework/a.jar或/patch/cust/preinstalled/public/lib/b.so跳转到patch分区访问对应的补丁文件,若不满足,则根据应用程序欲访问的文件的存放路径信息访问system分区或cust分区中的文件。
终端中system分区和cust分区(即第一分区)中的大部分文件,历史版本几乎没有修改过,新版本文件可以在所有历史版本中都可有效工作,例如*.so文件等;或者尽管此文件历史版本改动频繁,但是其解耦兼容性做的很好,可以直接用新版本文件进行覆盖,例如*.apk文件等。即这些文件可以用一个统一的更新文件覆盖到所有历史版本。软件升级通常针对的是system分区中的文件,下面以system分区的文件升级为例说明本发明的技术方案。
当system分区的文件出现紧急bug时,现有技术中通过差分包升级模式 升级这些文件时,第一种是基于最新版本发布包含patch的补丁包,这种方式,用户需要将当前版本升级到最新版本时,才能够通过补丁包修复bug,升级速度很慢;第二种是基于各历史版本均发布可升级到合入patch的最新版本的升级包本实施例中,该方式考虑到差分包升级模式在升级时是直接修改system分区中的原文件,为了避免由于升级patch而修改了system分区中的原文件进而导致历史版本不能采用已发布的升级包升级到最新版本,对于老的历史版本,则需要制作一个可升级到合入patch的最新版本的差分包(即升级包),而不能制作一个只包含patch的差分包,因此,差分包会比较大,从而导致升级速度较慢;并且每个历史版本对应的差分包不同,不能直接用一个统一的差分文件覆盖到所有历史版本,需要发布多个针对历史版本的升级包,工作量也很大。
而本实施例中,终端中的VFS接收到文件访问请求后,当文件访问请求中的存放路径信息指向第一分区,即system分区时,则先判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,若存在,则根据该关联关系获取与存放路径信息对应的补丁升级文件路径信息,然后根据该补丁升级文件路径信息去访问获取对应的补丁升级文件,即,当存在bug的原文件被访问时,终端可以跳转到补丁升级文件所在分区访问补丁升级文件。基于这种文件处理方式,补丁包中包含的补丁升级文件可以直接为升级后的原文件,其可以存放在与原文件不同的路径中,终端在原文件被访问时,直接根据获取的路径信息访问补丁升级文件,实现软件补丁的升级,不需修改system分区的原文件,从而当用户需要将为历史版本的当前版本升级到最新版本时,可以直接删除补丁包后,采用已发布的差分包升级当前版本,避免由于升级patch而导致历史版本不能采用已发布的升级包升级到最新版本的问题。也就是说,本实施例中,补丁包可以只包含用于修复紧急bug的补丁文件,并且各历史版本可以采用相同的补丁包,一个补丁包中的补丁文件可以覆盖到所有历史版本,不需要制作多个针对历史版本的升级包,因此,补丁包较小,终端可以快速获取补丁包中的路径信息,并在原文件被访问时,根据获取的路径信息直接访问补丁文件,升级速度很快,且工作量小。
本实施例提供的基于补丁升级的文件处理方法,终端接收到文件访问请 求后,当文件访问请求中的存放路径信息指向第一分区时,则先判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,若存在,则根据该关联关系获取与存放路径信息对应的补丁升级文件路径信息,然后根据该补丁升级文件路径信息去访问获取对应的补丁升级文件,基于这种文件处理方式,在原文件被访问时,根据路径信息访问补丁文件,实现了软件的补丁升级,本实施例的补丁包可以只包含用于修复紧急bug的补丁文件,补丁包较小,终端可以快速获取补丁包中的路径信息,并在原文件被访问时,根据该路径信息直接访问补丁文件,升级速度很快,且不需要制作多个针对历史版本的升级包,工作量小。
图6为本发明提供的基于补丁升级的文件处理方法实施例二的流程示意图,本实施例是上述图4所示实施例中所访问的补丁包的具体获取和处理过程,在上述图4所示实施例的基础上,如图6所示,在步骤S101之前,本实施例的方法还包括:
步骤S201、获取补丁包。
具体的,补丁包可以是基于空中下载(Over-the-Air;简称OTA)技术从服务器获取到的补丁包,也可以是基于有线方式从其他设备(如台式电脑)获取到的补丁包。其中,在基于OTA获取补丁包时,具体可以是终端主动向服务器发送升级查询请求消息,服务器根据该请求消息查询是否有符合终端当前版本的补丁包,若有,则将补丁包发送给终端;也可以是服务器主动向终端发送广播通知消息,提示终端是否升级,在终端选择升级的情况下,将补丁包发送给终端。
步骤S202、若补丁包中包括紧急补丁包标识,则将补丁包保存在第二分区中。
具体的,补丁包中可以包括紧急补丁包标识,用来区别其他升级包,例如:该紧急补丁包标识可以为patch,终端获取到升级包后,若确定为补丁包的标识为patch,则将补丁包保存在预定的安全分区中。
其中,该预定的安全分区可以是第一分区,也可以是与第一分区不同的第二分区。为了保证系统安全性,可以使用谷歌google的验证启动(verify boot)功能,对system分区和cust分区(即第一分区)的文件进行校验保护,使得 system和cust分区不能使用文件方式进行升级;终端可以新增一个安全的patch分区作为第二分区,终端在获取补丁包后,将获取的补丁包保存在新增的patch分区中,以提高系统安全性。
具体的,终端获取到补丁包之后,可以将补丁包存放在缓存cache分区中,然后重启进入恢复recovery模式,将补丁包保存在第二分区中;也可以将补丁包直接保存在第二分区中。优选的,本实施例中将补丁包先存放在cache分区中,再进入recovery模式保存在第二分区中,以提高系统安全性。
另外,补丁包中可以包括补丁升级文件,补丁包保存在第二分区后,补丁升级文件路径信息指向的目标分区即为第二分区,则上述步骤S104从对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件,一种可能的实现方式为:
从第二分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
需要说明的是,本实施例中补丁包中的补丁升级文件与现有的全镜像升级包和差分包中的补丁升级文件不同,本实施例中的补丁升级文件为升级后的原文件,即修复bug后的原文件。补丁包中的补丁升级文件也可以采用现有的签名机制进行处理,在将补丁包写入安全的分区时进行签名检查;当然,补丁包也可以采用其他现有的打包技术进行处理,此处不做限定。
步骤S203、若补丁包中包括参数修改脚本,则从第一分区中获取原文件进行处理,在第二分区中生成补丁升级文件。
system分区中有很小一部分文件不能用一个统一的补丁文件覆盖到所有版本,但可以通过一个解析语句直接变动文件中的指定内容,例如*.xml、*.prop、*.txt文件等。以build.prop文件为例,该文件里面包含各个版本的版本号信息,因此不可能用一个新的build.prop替换全部历史版本的build.prop,但要修改其中一个prop项,则可以考虑通过直接解析文件进行修改的策略。
针对上述这种情况,本实施例中,补丁包中可以包含参数修改脚本,通过参数修改脚本修改原文件中待修改的参数后生成新的文件(即补丁升级文件)。
具体的,终端将补丁包保存在第二分区后,在每次开机时,init进程可以通过mount命令挂载第二分区,使第二分区中的文件生效。然后终端可以读取补丁包中的文件,当发现补丁包中包括参数修改脚本,则从第一分区中获 取原文件进行处理,在第二分区中生成补丁升级文件。更为具体的,终端执行参数修改脚本,生成补丁升级文件的过程为:终端先挂载原文件所在的第一分区,读取第一分区中的原文件,然后解析原文件,获取原文件的参数信息;在查找到参数信息中待修改的参数后,修改参数信息中待修改的参数,然后生成补丁升级文件。
在生成补丁升级文件后,可以将补丁升级文件存放在data分区、patch分区或者RAMFS中;data分区的数据容易被篡改,为了保证系统安全性,优选的,补丁升级文件存放在patch分区或者RAMFS中;其中,补丁升级文件存放在RAMFS中的方式适合于例如google M版本那样,对系统只读分区(patch分区)进行校验保护,RAMFS中的文件在系统开机时会消失,该方式在每次开机时都自动生成一遍新文件并存放在RAMFS中;终端若不采用google M版本,则可以直接将补丁升级文件存放在patch分区中,每次开机的时候加载patch分区即可。
本实施例中,优选的,将生成的补丁升级文件保存在第三分区(即RAMFS)中,以进一步提高系统安全性。则上述步骤S104从对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件,另一种可能的实现方式为:
从第三分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
本实施例中,补丁包中可以只包含补丁升级文件或参数修改脚本,也可以同时包含参数修改脚本和补丁升级文件,具体根据实际需要制作补丁包。
步骤S204、将第二分区中补丁包中的原文件路径信息和补丁升级文件路径信息的关联关系保存至预配置系统中。
补丁包中可以包括补丁升级文件对应的原文件的路径信息(即原文件的存放路径),终端将补丁包保存在第二分区后,就可以读取补丁包中的补丁升级文件对应的原文件的路径信息,同时根据补丁升级文件的存放位置获取到补丁升级文件的路径信息(即补丁升级文件的存放路径);当然,补丁包中也可以直接封装补丁升级文件的路径信息,终端获取补丁包后将其保存在对应位置,再读取补丁包即可获取所有路径信息。
终端获取到原文件路径信息和补丁升级文件路径信息后,可以将原文件路径信息和补丁升级文件路径信息的关联关系保存至预配置系统中,该预配 置系统为中间虚拟文件系统,用于后续的文件跳转访问。
现有的中间虚拟文件系统,如采用overleyfs或sdcardfs技术实现的中间虚拟文件系统都具有对应的分区关联关系,为了便于系统设计和文件的跳转访问,终端可以直接在系统中新增一个中间虚拟文件系统patchfs作为本实施例的预配置系统,然后关联好patchfs与system分区的关系,当获取到原文件路径信息和补丁升级文件路径信息后,挂载patchfs,将路径信息存在patchfs对应的内存中的路径表中,当原文件被访问时,通过路径表引导终端访问目标分区中的文件。其中,patchfs可以采用现有的overleyfs或sdcardfs技术实现。
需要说明的是,步骤S204和步骤S203之间没有严格的时序关系,步骤S204也可以在步骤S203之前执行,具体执行顺序本实施例不做限定。
本实施例提供的基于补丁升级的文件处理方法,终端获取补丁包后,若补丁包中包括紧急补丁包标识,则将补丁包保存在第二分区中,然后将第二分区中补丁包中的原文件路径信息和补丁升级文件路径信息的关联关系保存至预配置系统中,通过第二分区和预配置系统使得用于修复紧急bug的补丁包生效,本实施例的技术方案中,将补丁包保存在第二分区中,提高了系统的安全性;并且将补丁包保存在第二分区后,判断补丁包中是否包含参数修改脚本,从而可以通过参数修改脚本修改可解析文件的参数,修复bug,使得本实施例的适应范围更广。
图7为本发明提供的基于补丁升级的文件处理装置实施例一的结构示意图,本实施例提供的装置可以集成在终端中。如图7所示,本实施例提供的装置包括:
接收模块110,用于接收文件访问请求,文件访问请求包括:存放路径信息;
判断模块120,用于若存放路径信息指向第一分区,则判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
第一获取模块130,用于若存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询预配置系统中的原 文件路径信息和补丁升级文件路径信息的关联关系,获取与存放路径对应的补丁升级文件路径信息;
第二获取模块140,用于从与存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
本实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,此处不再赘述。
图8为本发明提供的基于补丁升级的文件处理装置实施例二的结构示意图,本实施例是对上述图7所示实施例的装置的进一步功能补充,在上述图7所示实施例的基础上,如图8所示,本实施例的装置还包括:
第三获取模块150,用于获取补丁包;
第一存储模块160,用于若补丁包中包括紧急补丁包标识,则将补丁包保存在第二分区中;
则第二获取模块140,具体用于:从第二分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
可选的,本实施例的装置还包括:生成模块170,用于若补丁包中包括参数修改脚本,则执行参数修改脚本,从第一分区中获取原文件进行处理后,在第二分区中生成补丁升级文件。
作为本发明一种可能的实施方式,本实施例的装置还包括:第二存储模块180,用于将生成的补丁升级文件保存在第三分区中;则第二获取模块140,具体用于:从第三分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
可选的,本实施例的装置还包括:第三存储模块190,用于将第二分区中补丁包中的原文件路径信息和补丁升级文件路径信息的关联关系保存至预配置系统中。
本实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,此处不再赘述。
图9为本发明提供的终端的结构示意图,如图9所示,本实施例中的终端包括:至少一个处理器210,存储器220,至少一个网络接口230或者其他 用户接口240,至少一个通信总线250,用于显示终端的界面的硬件设备260。
通信总线250用于实现这些组件之间的连接通信。该终端可选的包含用户接口240,包括显示器(例如,触摸屏、LCD、CRT、全息成像(Holographic)或者投影(Projector)等),键盘或者点击设备(例如,鼠标、轨迹球(trackball)、触感板或者触摸屏等)。
存储器220可以包括只读存储器和随机存取存储器,并向处理器210提供指令和数据。
在一些实施方式中,存储器220存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
操作系统221,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务;
应用程序模块222,包含各种应用程序,例如图1所示的CA和TA等,用于实现各种应用业务。
用于显示终端的界面的硬件设备260可以包括显示内存、显示设备、触摸屏等。
可以理解的,图7所示的装置的各模块可以是本实施例中的处理器210的组成部分,处理器210通过执行存储器220中的程序或指令可以实现图7所示装置中各模块的功能。
在本发明实施例中,通过调用存储器220存储的程序或指令,处理器210用于:
接收文件访问请求,文件访问请求包括:存放路径信息;
若存放路径信息指向第一分区,则判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
若存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系,获取与存放路径信息对应的补丁升级文件路径信息;
从对应的补丁升级文件路径信息指向的目标分区中,获取与补丁升级文件路径信息匹配的补丁升级文件。
基于同一发明构思,由于该终端解决问题的原理与本发明方法实施例中 的通信方法相似,因此该终端的实施可以参见方法的实施,例如用于获取补丁包、在第二分区中生成补丁升级文件和/或本发明方法实施例所描述的技术的其他过程。作为示例,处理器1103用于执行图4中的过程S101~S104、图6中的过程S201~S204。存储器1104用于存储用于终端的程序代码和数据。重复之处不再赘述。
本实施例提供的终端,终端接收到文件访问请求后,当文件访问请求中的存放路径信息指向第一分区时,则先判断存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,若存在,则根据该关联关系获取与存放路径信息对应的补丁升级文件路径信息,然后根据该补丁升级文件路径信息去访问获取对应的补丁升级文件,基于这种文件处理方式,在原文件被访问时,根据路径信息访问补丁文件,实现了软件的补丁升级,本实施例的补丁包可以只包含用于修复紧急bug的补丁文件,补丁包较小,终端可以快速获取补丁包中的路径信息,并在原文件被访问时,根据该路径信息直接访问补丁文件,升级速度很快,且不需要制作多个针对历史版本的升级包,工作量小。
本发明实施例提供一种存储一个或多个程序的非易失计算机可读存储介质,其中,一个或多个程序包括指令,该指令当被终端执行时使终端执行上述方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一非易失计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用于说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (16)

  1. 一种基于补丁升级的文件处理方法,其特征在于,包括:
    接收文件访问请求,所述文件访问请求包括:存放路径信息;
    若所述存放路径信息指向第一分区,则判断所述存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
    若所述存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询所述关联关系,获取与所述存放路径信息对应的补丁升级文件路径信息;
    从所述与所述存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  2. 根据权利要求1所述的方法,其特征在于,在所述接收文件访问请求之前,所述方法还包括:
    获取补丁包;
    若所述补丁包中包括紧急补丁包标识,则将所述补丁包保存在第二分区中;
    则所述从所述与所述存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件,包括:
    从所述第二分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  3. 根据权利要求2所述的方法,其特征在于,在所述将所述补丁包保存在第二分区中之后,所述方法还包括:
    若所述补丁包中包括参数修改脚本,则从所述第一分区中获取原文件进行处理,在所述第二分区中生成所述补丁升级文件。
  4. 根据权利要求3所述的方法,其特征在于,所述在所述第二分区中生成所述补丁升级文件之后,所述方法还包括:
    将生成的所述补丁升级文件保存在第三分区中;
    则所述从所述与所述存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件,包括:
    从所述第三分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  5. 根据权利要求2-4任一项所述的方法,其特征在于,在所述将所述补丁包保存在第二分区中之后,所述方法还包括:
    将所述第二分区中补丁包中的原文件路径信息和补丁升级文件路径信息的关联关系保存至所述预配置系统中。
  6. 一种基于补丁升级的文件处理装置,其特征在于,包括:
    接收模块,用于接收文件访问请求,所述文件访问请求包括:存放路径信息;
    判断模块,用于若所述存放路径信息指向第一分区,则判断所述存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
    第一获取模块,用于若所述存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询所述关联关系,获取与所述存放路径对应的补丁升级文件路径信息;
    第二获取模块,用于从所述与所述存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  7. 根据权利要求6所述的基于补丁升级的文件处理装置,其特征在于,所述基于补丁升级的文件处理装置还包括:
    第三获取模块,用于获取补丁包;
    第一存储模块,用于若所述补丁包中包括紧急补丁包标识,则将所述补丁包保存在第二分区中;
    则所述第二获取模块,具体用于:从所述第二分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  8. 根据权利要求7所述的基于补丁升级的文件处理装置,其特征在于,所述基于补丁升级的文件处理装置还包括:
    生成模块,用于若所述补丁包中包括参数修改脚本,则执行所述参数修改脚本,从所述第一分区中获取原文件进行处理后,在所述第二分区中生成所述补丁升级文件。
  9. 根据权利要求8所述的基于补丁升级的文件处理装置,其特征在于,所述基于补丁升级的文件处理装置还包括:
    第二存储模块,用于将生成的所述补丁升级文件保存在第三分区中;
    则所述第二获取模块,具体用于:从所述第三分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  10. 根据权利要求7-9任一项所述的基于补丁升级的文件处理装置,其特征在于,所述基于补丁升级的文件处理装置还包括:第三存储模块,用于将所述第二分区中补丁包中的原文件路径信息和补丁升级文件路径信息的关联关系保存至所述预配置系统中。
  11. 一种终端,其特征在于,包括:处理器和存储器,所述存储器存储程序或指令,所述处理器通过调用所述存储器存储的程序或指令,用于:
    接收文件访问请求,所述文件访问请求包括:存放路径信息;
    若所述存放路径信息指向第一分区,则判断所述存放路径信息是否存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中;
    若所述存放路径信息存在于预配置系统中的原文件路径信息和补丁升级文件路径信息的关联关系中,则查询所述关联关系,获取与所述存放路径信息对应的补丁升级文件路径信息;
    从所述与所述存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  12. 根据权利要求11所述的终端,其特征在于,所述处理器还用于:
    获取补丁包;
    若所述补丁包中包括紧急补丁包标识,则将所述补丁包保存在第二分区中;
    则在所述从所述与所述存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件方面,所述处理器具体用于:
    从所述第二分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  13. 根据权利要求12所述的终端,其特征在于,所述处理器还用于:
    若所述补丁包中包括参数修改脚本,则从所述第一分区中获取原文件进行处理,在所述第二分区中生成所述补丁升级文件。
  14. 根据权利要求13所述的终端,其特征在于,所述处理器还用于:
    将生成的所述补丁升级文件保存在第三分区中;
    则在所述从所述与所述存放路径信息对应的补丁升级文件路径信息指向的目标分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件方面,所述处理器具体用于:
    从所述第三分区中,获取与所述补丁升级文件路径信息匹配的补丁升级文件。
  15. 根据权利要求12-14任一项所述的终端,其特征在于,所述处理器还用于:
    将所述第二分区中补丁包中的原文件路径信息和补丁升级文件路径信息的关联关系保存至所述预配置系统中。
  16. 一种存储一个或多个程序的非易失计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当被终端执行时使终端执行权利要求1至5任一项所述的方法。
PCT/CN2016/080342 2016-04-27 2016-04-27 基于补丁升级的文件处理方法、装置、终端以及存储介质 WO2017185253A1 (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
EP16899766.6A EP3441876B1 (en) 2016-04-27 2016-04-27 Patch upgrade-based file processing method and device, terminal, and storage medium
AU2016404863A AU2016404863B2 (en) 2016-04-27 2016-04-27 Patch-upgrade-based file processing method and apparatus, terminal, and storage medium
RU2018141437A RU2712130C1 (ru) 2016-04-27 2016-04-27 Способ и устройство обработки файла на основе обновления с патчем, конечное устройство и носитель информации
US16/097,492 US10949191B2 (en) 2016-04-27 2016-04-27 Patch-upgrade-based file processing method and apparatus, terminal, and storage medium
KR1020187034151A KR102204115B1 (ko) 2016-04-27 2016-04-27 패치 업그레이드 기반 파일 처리 방법 및 디바이스, 단말기, 및 저장 매체
CN201680017677.3A CN108027741B (zh) 2016-04-27 2016-04-27 基于补丁升级的文件处理方法、装置、终端以及存储介质
PCT/CN2016/080342 WO2017185253A1 (zh) 2016-04-27 2016-04-27 基于补丁升级的文件处理方法、装置、终端以及存储介质
JP2018556437A JP6649510B2 (ja) 2016-04-27 2016-04-27 パッチアップグレードに基づくファイル処理方法及び機器、端末、並びに記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/080342 WO2017185253A1 (zh) 2016-04-27 2016-04-27 基于补丁升级的文件处理方法、装置、终端以及存储介质

Publications (1)

Publication Number Publication Date
WO2017185253A1 true WO2017185253A1 (zh) 2017-11-02

Family

ID=60161739

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/080342 WO2017185253A1 (zh) 2016-04-27 2016-04-27 基于补丁升级的文件处理方法、装置、终端以及存储介质

Country Status (8)

Country Link
US (1) US10949191B2 (zh)
EP (1) EP3441876B1 (zh)
JP (1) JP6649510B2 (zh)
KR (1) KR102204115B1 (zh)
CN (1) CN108027741B (zh)
AU (1) AU2016404863B2 (zh)
RU (1) RU2712130C1 (zh)
WO (1) WO2017185253A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108108181A (zh) * 2017-12-14 2018-06-01 深圳市雷鸟信息科技有限公司 应用程序的功能更新方法、装置及计算机可读存储介质
CN109683933A (zh) * 2018-12-20 2019-04-26 北京金风科创风电设备有限公司 风力发电机组的程序升级方法和设备
CN109947450A (zh) * 2019-03-19 2019-06-28 深圳创维-Rgb电子有限公司 系统文件升级方法、装置、移动终端及可读存储介质
CN111158733A (zh) * 2019-12-26 2020-05-15 山东英信计算机技术有限公司 一种bmc升级方法、装置、设备及计算机可读存储介质
CN111522566A (zh) * 2020-04-23 2020-08-11 Oppo(重庆)智能科技有限公司 一种系统升级方法、终端及存储介质
CN111654548A (zh) * 2020-06-05 2020-09-11 网易(杭州)网络有限公司 补丁文件的下载方法、装置和系统及电子设备
CN116661821A (zh) * 2023-05-10 2023-08-29 浙江简捷物联科技有限公司 一种应用升级方法、装置、电子设备及存储介质
CN109683933B (zh) * 2018-12-20 2024-05-17 北京金风科创风电设备有限公司 风力发电机组的程序升级方法和设备

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10656935B2 (en) * 2015-10-13 2020-05-19 Home Box Office, Inc. Maintaining and updating software versions via hierarchy
US10623514B2 (en) 2015-10-13 2020-04-14 Home Box Office, Inc. Resource response expansion
CN108574588B (zh) * 2017-03-10 2023-09-15 中兴通讯股份有限公司 客户端、服务端及差异化升级方法
US10698740B2 (en) 2017-05-02 2020-06-30 Home Box Office, Inc. Virtual graph nodes
US20190056929A1 (en) * 2017-08-17 2019-02-21 Ability Enterprise Co., Ltd. Data transmission method and communication system
CN108973542B (zh) * 2018-06-29 2020-07-07 深圳市道通科技股份有限公司 轮胎压力检测系统tpms诊断工具的升级方法及设备
US11640429B2 (en) 2018-10-11 2023-05-02 Home Box Office, Inc. Graph views to improve user interface responsiveness
CN110045980B (zh) * 2019-05-22 2022-09-02 东信和平科技股份有限公司 一种对nb-iot设备的远程升级方法、设备及系统
CN110489140B (zh) * 2019-07-11 2023-06-06 平安科技(深圳)有限公司 软件升级方法、装置、计算机设备及计算机存储介质
CN110474673B (zh) * 2019-08-22 2022-02-25 上海航天计算机技术研究所 一种支持断点续传的动态在轨热更新方法
CN110597542B (zh) * 2019-09-17 2023-01-31 Oppo(重庆)智能科技有限公司 软件自动ota升级方法及装置、电子设备
US11132259B2 (en) * 2019-09-30 2021-09-28 EMC IP Holding Company LLC Patch reconciliation of storage nodes within a storage cluster
CN110865837B (zh) * 2019-11-14 2023-08-18 青岛海信移动通信技术有限公司 一种进行系统升级的方法和终端
CN111158735B (zh) * 2019-12-05 2023-03-31 青岛海信移动通信技术股份有限公司 一种热补丁文件处理方法及通信终端
US11347494B2 (en) 2019-12-13 2022-05-31 EMC IP Holding Company LLC Installing patches during upgrades
CN111831314B (zh) * 2020-06-24 2022-11-22 烽火通信科技股份有限公司 一种针对不可写分区打补丁的方法与装置
CN112433747B (zh) * 2020-12-16 2022-11-25 深圳乐播科技有限公司 一种适用于软件开发工具包sdk的差分升级方法及系统
CN114443109B (zh) * 2021-07-19 2023-08-22 荣耀终端有限公司 补丁修复方法、电子设备及存储介质
CN113791811A (zh) * 2021-08-02 2021-12-14 瑞芯微电子股份有限公司 固件升级方法和存储设备
CN113590159B (zh) * 2021-08-03 2024-04-16 深圳丰汇汽车电子有限公司 一种车载行车电脑并行升级方法及系统
CN113641394A (zh) * 2021-08-12 2021-11-12 上海艾拉比智能科技有限公司 一种多操作系统设备的差分升级方法
CN115495133B (zh) * 2022-11-17 2023-03-21 达芬骑动力科技(北京)有限公司 Dbc动态自适应更新方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231116A (zh) * 2011-07-04 2011-11-02 成都市华为赛门铁克科技有限公司 应用程序虚拟化安装及加载方法及装置
CN102662870A (zh) * 2012-03-20 2012-09-12 武汉噢易科技有限公司 基于vfs层拦截读写请求的安卓操作系统保护方法
CN102902630A (zh) * 2012-08-23 2013-01-30 深圳市同洲电子股份有限公司 一种访问本地文件的方法和装置
US20140123122A1 (en) * 2012-10-31 2014-05-01 Hcl Technologies Limited System and method for virtual machine offline patching without mount the virtual disk
CN104461685A (zh) * 2014-11-19 2015-03-25 华为技术有限公司 虚拟机处理方法和虚拟计算机系统
CN105446769A (zh) * 2015-11-03 2016-03-30 广东欧珀移动通信有限公司 镜像文件升级处理方法、装置和终端设备

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291407B2 (en) * 2002-06-12 2012-10-16 Symantec Corporation Systems and methods for patching computer programs
US8812613B2 (en) * 2004-06-03 2014-08-19 Maxsp Corporation Virtual application manager
US20070132774A1 (en) 2005-12-01 2007-06-14 Samsung Electronics Co., Ltd. System and method for a patch minimization tool
US9720674B1 (en) * 2008-05-05 2017-08-01 Open Invention Network, Llc Automating application of software patches to a server having a virtualization layer
WO2009156615A1 (fr) * 2008-06-02 2009-12-30 Awox Procede et dispositif de mise a jour d'application informatique
CN101593118B (zh) * 2009-02-24 2013-01-16 浪潮集团山东通用软件有限公司 一种软件升级的方法
KR101262234B1 (ko) 2009-11-09 2013-05-15 한국전자통신연구원 웹 기반 소프트웨어 배포 시스템 및 방법
US8397230B2 (en) * 2009-11-09 2013-03-12 Bank Of America Corporation Software updates using delta patching
US8533337B2 (en) * 2010-05-06 2013-09-10 Citrix Systems, Inc. Continuous upgrading of computers in a load balanced environment
JP5250645B2 (ja) * 2011-01-25 2013-07-31 株式会社ソニー・コンピュータエンタテインメント 情報処理装置
WO2011127845A2 (zh) * 2011-05-04 2011-10-20 华为终端有限公司 一种移动通信终端间进行系统升级的方法、系统及终端
US8880651B2 (en) 2011-07-25 2014-11-04 Sony Computer Entertainment America, LLC Method and system for efficient download of data package
CN102609328B (zh) * 2012-01-29 2015-04-15 华为终端有限公司 系统差分升级方法和装置、移动终端
CN102880495A (zh) * 2012-10-15 2013-01-16 华为终端有限公司 移动终端及其软件升级方法
CN103514016A (zh) * 2013-09-22 2014-01-15 上海华为技术有限公司 系统版本升级方法、装置和基站控制器
US20160266892A1 (en) * 2013-12-18 2016-09-15 Hewlett Packard Enterprise Development Lp Patching of virtual machines during data recovery
CN104182255B (zh) * 2014-08-20 2017-11-21 青岛海信宽带多媒体技术有限公司 一种系统应用的库文件升级方法及终端
TWI533216B (zh) * 2014-12-11 2016-05-11 佳世達科技股份有限公司 作業系統更新方法
US10055219B1 (en) * 2016-04-07 2018-08-21 Nutanix, Inc. Dynamically preparing server-specific installation images using a virtual media source node

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231116A (zh) * 2011-07-04 2011-11-02 成都市华为赛门铁克科技有限公司 应用程序虚拟化安装及加载方法及装置
CN102662870A (zh) * 2012-03-20 2012-09-12 武汉噢易科技有限公司 基于vfs层拦截读写请求的安卓操作系统保护方法
CN102902630A (zh) * 2012-08-23 2013-01-30 深圳市同洲电子股份有限公司 一种访问本地文件的方法和装置
US20140123122A1 (en) * 2012-10-31 2014-05-01 Hcl Technologies Limited System and method for virtual machine offline patching without mount the virtual disk
CN104461685A (zh) * 2014-11-19 2015-03-25 华为技术有限公司 虚拟机处理方法和虚拟计算机系统
CN105446769A (zh) * 2015-11-03 2016-03-30 广东欧珀移动通信有限公司 镜像文件升级处理方法、装置和终端设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3441876A4 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108108181A (zh) * 2017-12-14 2018-06-01 深圳市雷鸟信息科技有限公司 应用程序的功能更新方法、装置及计算机可读存储介质
CN109683933A (zh) * 2018-12-20 2019-04-26 北京金风科创风电设备有限公司 风力发电机组的程序升级方法和设备
CN109683933B (zh) * 2018-12-20 2024-05-17 北京金风科创风电设备有限公司 风力发电机组的程序升级方法和设备
CN109947450A (zh) * 2019-03-19 2019-06-28 深圳创维-Rgb电子有限公司 系统文件升级方法、装置、移动终端及可读存储介质
CN109947450B (zh) * 2019-03-19 2023-03-17 深圳创维-Rgb电子有限公司 系统文件升级方法、装置、移动终端及可读存储介质
CN111158733A (zh) * 2019-12-26 2020-05-15 山东英信计算机技术有限公司 一种bmc升级方法、装置、设备及计算机可读存储介质
CN111522566A (zh) * 2020-04-23 2020-08-11 Oppo(重庆)智能科技有限公司 一种系统升级方法、终端及存储介质
CN111522566B (zh) * 2020-04-23 2023-08-01 Oppo(重庆)智能科技有限公司 一种系统升级方法、终端及存储介质
CN111654548A (zh) * 2020-06-05 2020-09-11 网易(杭州)网络有限公司 补丁文件的下载方法、装置和系统及电子设备
CN111654548B (zh) * 2020-06-05 2023-04-18 网易(杭州)网络有限公司 补丁文件的下载方法、装置和系统及电子设备
CN116661821A (zh) * 2023-05-10 2023-08-29 浙江简捷物联科技有限公司 一种应用升级方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
KR102204115B1 (ko) 2021-01-18
KR20180137554A (ko) 2018-12-27
AU2016404863B2 (en) 2020-01-23
US10949191B2 (en) 2021-03-16
CN108027741A (zh) 2018-05-11
EP3441876A4 (en) 2019-04-24
EP3441876A1 (en) 2019-02-13
RU2712130C1 (ru) 2020-01-24
EP3441876B1 (en) 2023-02-15
AU2016404863A1 (en) 2018-11-29
JP2019515386A (ja) 2019-06-06
US20190146776A1 (en) 2019-05-16
CN108027741B (zh) 2020-06-09
JP6649510B2 (ja) 2020-02-19

Similar Documents

Publication Publication Date Title
WO2017185253A1 (zh) 基于补丁升级的文件处理方法、装置、终端以及存储介质
EP3128421B1 (en) Method, device, and system for achieving java application installation by cloud compilation
EP3855312A1 (en) Information processing method, device, storage medium, electronic device and system
US9519654B2 (en) Method, device, processing center and system for desktop synchronization
US10203951B2 (en) Method and terminal for OTA updating
WO2017088388A1 (zh) 应用的sdk的升级方法及系统
CN109408136B (zh) 信息处理方法、装置、存储介质及电子设备
US20060230395A1 (en) Embedded device update service
WO2021018005A1 (zh) 一种跨进程通信方法、装置及设备
RU2339076C2 (ru) Выполнение неверифицированных программ в операционной среде устройства радиосвязи
WO2017071207A1 (zh) 一种应用安装方法、相关装置及应用安装系统
TW201606648A (zh) 應用的處理方法及裝置
CN103365644A (zh) 一种扩展软件功能的方法及装置
CN110968331B (zh) 应用程序运行的方法和装置
CN106681749B (zh) 基于安卓平台的局部代码补丁更新方法及装置
CN108647032B (zh) 应用加载方法及装置、计算机装置和计算机可读存储介质
WO2019205828A1 (zh) Android服务框架、实现扩展服务的方法及装置
US9286054B2 (en) Deployment of mobile enterprise application platform
WO2015027846A1 (zh) 应用程序的权限确定方法和装置
CN108089873A (zh) 一种应用组件即时更新的方法及终端
CN110532016B (zh) 版本管理方法、版本更新方法和版本管理系统
CN106293790B (zh) 基于Firefox操作系统的应用程序升级方法和装置
WO2016074460A1 (zh) 一种数据处理方法及装置
WO2021097683A1 (zh) 安卓系统启动的方法、装置、设备及存储介质
KR20150123879A (ko) 고급 운영 시스템(hlos) 부팅 전에 스마트폰에 연결된 주변기기 디바이스들을 위한 디바이스 드라이버들을 프리페칭하기 위한 방법 및 장치

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018556437

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016899766

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016899766

Country of ref document: EP

Effective date: 20181107

ENP Entry into the national phase

Ref document number: 20187034151

Country of ref document: KR

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16899766

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016404863

Country of ref document: AU

Date of ref document: 20160427

Kind code of ref document: A