US 11,775,288 B2
Method and apparatus for generating difference between old and new versions of data for updating software
Dong Soo Kang, Daegu (KR); Dong Hwan Lee, Daegu (KR); Tae Ho Lee, Daegu (KR); and Seung Wook Baek, Daegu (KR)
Assigned to KONAMOBILITY COMPANY LIMITED
Appl. No. 17/51,433
Filed by LUNA Co.,Ltd., Daegu (KR)
PCT Filed Mar. 13, 2020, PCT No. PCT/KR2020/003493
§ 371(c)(1), (2) Date Oct. 28, 2020,
PCT Pub. No. WO2021/040166, PCT Pub. Date Mar. 4, 2021.
Claims priority of application No. 10-2019-0105324 (KR), filed on Aug. 27, 2019.
Prior Publication US 2021/0373882 A1, Dec. 2, 2021
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/44 (2018.01); G06F 9/445 (2018.01); H04W 8/22 (2009.01); G06F 8/71 (2018.01); G06F 8/65 (2018.01)
CPC G06F 8/71 (2013.01) [G06F 8/65 (2013.01)] 6 Claims
OG exemplary drawing
 
1. A method for generating a difference between old and new versions of data for updating software in a difference generation device, comprising:
parsing information from the old and new versions of software data, and extracting XML information regarding old and new versions of software data, wherein the XML information includes a partition information identifier that identifies information associated with partitions and a block information identifier that identifies information associated with blocks of the partitions of the old and new versions of the software data;
from the XML information, identifying a number of the partitions using the partition information identifier, and sizes of the blocks of the partitions, using the block information identifier;
comparing the sizes of the blocks in each of the partitions identified from the extracted XML information with a size of an available memory in the difference generation device;
determining an optimal block size of the blocks to be processed by the difference generation device based on a result of the comparing, wherein the determining an optimal block size is the size of the available memory if the available memory is enough to process a respective block of the partition identified by the partition information identifier, otherwise the block size is gradually reduced and compared to the available memory size until the available memory size is enough in size to process the respective block of the partition;
and
using the optimal block size, generating a difference between the old and new versions of the software data for the blocks comprised in each of the partitions, wherein the difference is performed for the identified number of the partitions associated with the partition information identifier and the determined sizes of the blocks associated with the block information identifier,
wherein the generating of the difference comprises: determining Equal, Insert, and Mod by comparing data for the old and new versions of the software data, and generating the difference by separately generating listed differential data streams, wherein each generated listed differential data stream corresponds to a determined one of Equal, Insert, or Mod, and wherein the Equal differential data stream contains the same data of the old and new versions of software data and block size information, the Insert differential data stream contains the inserted block size information and inserted data of the old and new versions of software data, and the Mod differential data stream contains modified block size information and the modified data of the old and new versions of software data.