Electronic device network providing streaming updates
AssigneeHewlett-Packard Development Company, L.P.
InventorXuguang Yang
Life of this patent
Estimating the term…
Abstract
Discloses herein is wireless electronic device network employing a stream processing generator to generate updates in electronic devices capable of updating firmware and/or software contained therein. The stream processing generator may only use a small buffer of content for buffering information when transforming an original file into a new file. The stream processing generator is adapted to read a portion of in a file or a portion of a stream of content during processing and may fetch small blocks of data at a time and generate the difference information corresponding thereto.
Claims28
A generator of difference information, the generator comprising:
- at least one hardware computer processor that receives a first stream of information, the first stream comprising a plurality of first bytes of data, and
- a second stream of information, the second stream comprising a plurality of second bytes of data;
- an array storing operations for tree-based encoding of the first and second streams of information;
- and
- wherein the generator simultaneously traverses the first and second streams of information, analyzes the plurality of first and second bytes of data encountered in the first and second streams of information, determines difference information between the first and second streams of information, and outputs the difference information between the first and second streams of information including a differencing instructions set comprising a hierarchical tree map and a plurality of operators represented by variable length codes based on frequency of occurrence of the associated operations.
An electronic device network adapted to dispense streaming updates to at least one of a plurality of electronic devices, the updates for updating one of firmware and software, the electronic device network comprising:
- a generator generating streaming updates, the generator processing at least one of a plurality of blocks of content, the at least one of a plurality of blocks of content comprising a stream of bytes, the generator processing the at least one of a plurality of blocks of content until reaching an end of the stream of bytes, the generator comprising an encoder employing a tree-based hierarchy for encoding a block of operations, and wherein the generator outputs difference information including a differencing instruction set comprising a hierarchical tree map and a plurality of operators represented by variable length codes based on frequency of occurrence of the associated operations;
- a server communicatively coupled to the at least one of a plurality of electronic devices, the server disseminating the streaming updates to the at least one of a plurality of electronic devices;
- and
- a hardware computer processor in the at least one of a plurality of electronic devices for processing the streaming updates received from the server.
A method of generating streaming updates by converting a first stream of information into a second stream of information for updating an electronic device, the method comprising:
- identifying the first and second streams of information;
- accessing the first and second streams of information;
- retrieving one block of content at a time from each of the first and the second streams of information;
- determining a transform operation,
- executing the transform operation,
- computing an output from the transform operation;
- and
- creating a hierarchical tree-based transform output from operators determined in the transform, wherein the hierarchical tree-based transform output comprises at least three levels for encoding a block of N operations, the hierarchy comprising a top level wherein each node of the top level encodes N bytes, a second level wherein each node of the second level encodes N/4 bytes, and a third level wherein each node of the third level encodes N/16 bytes,
- wherein the method is enacted by a hardware computer processor.
Dependencies are inferred from the claim text.