Processing system with component architecture platform support
First Claim
1. A method of generating update packages for updating software in a mobile electronic device, the method comprising:
- retrieving an existing version of code and a corresponding updated version of the code, the existing and the updated versions of code comprising program components each comprising a plurality of program instructions;
determining which program components in the existing version of code to modify, using the existing version of code and the updated version of code;
generating an update package having modules corresponding to those program components to be modified;
generating an associated reference lookup table having entries corresponding to those program components to be modified, each entry associating a symbolic reference in the undated version of code with a memory address in the mobile electronic device; and
communicating the reference lookup table to the mobile electronic device, to enable the mobile electronic device to resolve the symbolic references in the program instruction to a memory address in the mobile electronic device, during program instruction execution.
8 Assignments
0 Petitions
Accused Products
Abstract
Disclosed herein is an embedded system having a processor and at least one reference lookup table. The embedded system may be capable of supporting a component architecture platform (CAP) framework and providing a mechanism to resolve references for modules and operands at runtime. The embedded system facilitates update of firmware, drivers and application software in embedded systems such as mobile electronic devices. The system also facilitates generation of compact update packages for the embedded system. Replacement of modules is efficiently handled because at least one reference lookup table provides a needed level of indirection.
-
Citations
20 Claims
-
1. A method of generating update packages for updating software in a mobile electronic device, the method comprising:
-
retrieving an existing version of code and a corresponding updated version of the code, the existing and the updated versions of code comprising program components each comprising a plurality of program instructions; determining which program components in the existing version of code to modify, using the existing version of code and the updated version of code; generating an update package having modules corresponding to those program components to be modified; generating an associated reference lookup table having entries corresponding to those program components to be modified, each entry associating a symbolic reference in the undated version of code with a memory address in the mobile electronic device; and communicating the reference lookup table to the mobile electronic device, to enable the mobile electronic device to resolve the symbolic references in the program instruction to a memory address in the mobile electronic device, during program instruction execution. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A mobile electronic device comprising:
-
a processor for executing program instructions resident in one or both of primary memory and secondary memory in the mobile electronic device; a reference lookup table management unit employed by the processor to, at least, resolve a symbolic reference in a program instruction to a memory address in the one or both of primary memory and secondary memory, during program instruction execution; and at least one reference lookup table resident in memory accessible by the reference lookup table management unit, the at least one reference lookup table comprising one or more entries each associating a symbolic reference representing a location within a program component, to a memory address in the one or both of primary memory and secondary memory. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13)
-
-
14. A computing system comprising:
a processor executing program instructions from a pipeline, the processor comprising; storage having resident therein a reference lookup table populated with symbolic references and corresponding program memory location values; and a reference lookup table management unit that manages the reference lookup table, and resolves symbolic references in the program instructions into program memory location values before population into the pipeline, wherein the processor retrieves the program instructions and resolved symbolic references and executes the program instructions using the program memory location values. - View Dependent Claims (15)
-
16. An updateable mobile electronic device employing a component architecture platform (CAP) framework, comprising:
-
at least one non-volatile memory for storing one or both of executable code and data; firmware resident in the at least one non-volatile memory, the resident firmware arranged in a configuration of one or more updateable independent modular firmware components; update agent code in the at least one non-volatile memory, the update agent code, during operation, processing one or more update packages received by the mobile electronic device to produce one or more updated independent modular firmware components for insertion into the resident firmware, the one or more updated independent modular firmware components enabling associated new feature functionality in the updateable mobile electronic device; and wherein insertion of the one or more updated independent modular firmware components into a second updateable mobile electronic device having resident firmware enables in the second updateable mobile electronic device the new feature functionality associated with the one or more updated independent modular firmware components. - View Dependent Claims (17, 18, 19, 20)
-
Specification