Initialization and update of software and/or firmware in electronic devices
First Claim
Patent Images
1. A system for updating memory in an electronic device, the system comprising:
- at least one processor that, during operation, executes generator code for generating a software package from a plurality of code modules for the electronic device;
layout preprocessor code executable by the at least one processor for parsing a memory layout specification and that receives at least one parameter that represents an estimated probability of future change of one or more code modules, to produce memory mapping information that assigns to each of the plurality of code modules space in one of a plurality of individual portions of the memory, based upon the memory layout specification;
wherein execution of the layout preprocessor code determines an amount of unassigned space in the memory upon assignment of space in the memory to the plurality of code modules; and
wherein execution of the generator code locates a corresponding fraction of the unassigned space in the memory in each of the individual portions of the memory, in accordance with the memory mapping information.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method to effectively and efficiently update a version of firmware resident in a device memory is provided. A method of identifying one or more versions of firmware is provided by way of initializing a device memory with a known pattern. In addition, the amount of free unused memory space may be identified and calculated in a device memory. The system and method generates software update packages that are minimal in size providing cost benefit to a manufacturer and convenience to a user.
-
Citations
21 Claims
-
1. A system for updating memory in an electronic device, the system comprising:
-
at least one processor that, during operation, executes generator code for generating a software package from a plurality of code modules for the electronic device; layout preprocessor code executable by the at least one processor for parsing a memory layout specification and that receives at least one parameter that represents an estimated probability of future change of one or more code modules, to produce memory mapping information that assigns to each of the plurality of code modules space in one of a plurality of individual portions of the memory, based upon the memory layout specification; wherein execution of the layout preprocessor code determines an amount of unassigned space in the memory upon assignment of space in the memory to the plurality of code modules; and wherein execution of the generator code locates a corresponding fraction of the unassigned space in the memory in each of the individual portions of the memory, in accordance with the memory mapping information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for updating memory in an electronic device, the method comprising:
-
receiving at least one parameter that represents an estimated probability of future change of one or more code modules; preprocessing a plurality of code modules for the electronic device, the preprocessing comprising determining an amount of unassigned space in the memory upon assignment of space in the memory to the plurality of code modules, and parsing a memory layout specification to produce memory mapping information that assigns to each of the plurality of code modules space in one of a plurality of individual portions of the memory, based upon the memory layout specification; after the preprocessing, processing the plurality of code modules to generate a software package, wherein generating comprises locating a corresponding fraction of the unassigned memory space in the memory in each of the individual portions of the memory, in accordance with the memory mapping information; and storing the software package in a repository for later wireless transmission to the electronic device. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21)
-
Specification