Bandwidth-efficient installation of software on target devices using reference code libraries
AssigneeAtombeam Technologies Inc.
InventorsJoshua Cooper, Aliasghar Riahi, Mojgan Haddad, Ryan Kourosh Riahi, Razmin Riahi, Charles Yeomans
Life of this patent
Estimating the term…
Abstract
A method for transmitting and updating program data in a highly compact format using recursive encoding, wherein data is deconstructed into chunklets, and is processed through a series of reference code libraries that reduce the data to a sequence of reference codes, and where the output of each reference library is used as the input to the next.
Claims10
A system for bandwidth-efficient installation of software on a plurality of target devices, comprising:
- a reference code library comprising data chunklets and reference codes corresponding to the data chunklets;
- a software package to be utilized in updating a plurality of remote target devices, the update dataset comprising a plurality of warplets, each warplet comprising a reference codes to a data chunklet in the reference code library;
- an update receiving server coupled to the communications network, comprising a first processor, a first memory, and a first plurality of programming instructions stored in the memory and operable on the processor of a computing device, wherein the first plurality of programming instructions, when operating on the processor, cause the update receiving server to:
- receive the software package via a network;
- and
- transmit the software package to a plurality of target devices coupled to the update receiving server;
- and
- the plurality of target devices coupled to the update receiving server, each of the remote target devices comprising:
- a second processor, a second memory, and a second plurality of programming instructions stored in the memory and operable on the processor of a computing device, wherein the second plurality of programming instructions, when operating on the processor, cause the remote target to:
- receive the software package;
- transmit the software package to a data reconstruction engine for reconstruction;
- receive the reconstructed software package;
- and
- install the reconstructed software package onto the remote target device;
- and
- a data reconstruction engine comprising a third plurality of programming instructions stored in the second memory and operating on the second processor of the second computing device, wherein the second plurality of programming instructions, when operating on the processor, cause the computing device to:
- receive the software package;
- retrieve the chunklet corresponding to the reference code in each warplet from the reference code library;
- and
- assemble the chunklets to generate a reconstructed software package corresponding to the software package;
- and
- transmit back the reconstructed software package.
A system for bandwidth-efficient installation of software on target devices comprising a plurality of target devices, each target device comprising:
- a processor, a memory, a non-volatile data storage, and a first plurality of programming instructions stored in the memory and operable on the processor of a computing device;
- a data reconstruction engine comprising a second plurality of programming instructions stored in the memory and operating on the processor of the computing device;
- a reference code library stored in the non-volatile data storage comprising data chunklets and reference codes corresponding to the data chunklets;
- a compacted software package stored in the non-volatile data storage, the compacted software package comprising a plurality of warplets, each warplet comprising a reference codes to a data chunklet in the reference code library;
- wherein the first plurality of programming instructions, when operating on the processor, cause the target device to:
- receive an instruction to install the software package;
- retrieve the software package from the non-volatile storage;
- pass the software package to a data reconstruction engine for reconstruction;
- receive the reconstructed software package;
- and
- install the reconstructed software package onto the target device;
- and
- wherein the second plurality of programming instructions, when operating on the processor, cause the target device to:
- receive the compacted software package;
- retrieve the chunklet corresponding to the reference code in each warplet from the reference code library;
- and
- assemble the chunklets to generate a reconstructed software package corresponding to the compacted software package;
- and
- return back the reconstructed software package.
Dependencies are inferred from the claim text.