METHOD AND SYSTEM OF UPDATING SHARED MEMORY
First Claim
1. For use with a battery monitoring system (BMS) having an application operable to measure current flow to a vehicle battery and a launcher operable to enable drivers utilized by the application, both of the launcher and the application implementing communication functions according to communication code written to a shared memory block, a method of updating the currently written communication code with new communication code, the method comprising:
- writing the new communication code to an application memory block having application code used to operate the application, the application being inoperable while the new communication code is written to the application memory block;
executing communications based on the communication code previously written to the shared memory block while the new communication code is being written to the application memory block;
copying the new communication code from the application memory block to the shared memory block, the communications supported by the code written to the shared memory block being inoperable while the new communication code is being written to the shared memory block;
executing communications based on the new communication code written to the application memory block while the new communication code is being copied to the shared memory block, and thereafter, executing additional communications based on the new communication code written to the shared memory block; and
writing application code to the application memory block after completing the copying of the new communication code to the shared memory block, the application operational after the application code is completely written to the application memory block.
5 Assignments
0 Petitions
Accused Products
Abstract
A method and system is disclosed for updating a shared memory or other memory location where multiple entities rely on code stored to the same memory to support one or more operation functions. The shared memory may be updated such that the code intended to the replace the currently stored code may be relied upon prior to replacement of the code currently written to the shared memory.
-
Citations
20 Claims
-
1. For use with a battery monitoring system (BMS) having an application operable to measure current flow to a vehicle battery and a launcher operable to enable drivers utilized by the application, both of the launcher and the application implementing communication functions according to communication code written to a shared memory block, a method of updating the currently written communication code with new communication code, the method comprising:
-
writing the new communication code to an application memory block having application code used to operate the application, the application being inoperable while the new communication code is written to the application memory block; executing communications based on the communication code previously written to the shared memory block while the new communication code is being written to the application memory block; copying the new communication code from the application memory block to the shared memory block, the communications supported by the code written to the shared memory block being inoperable while the new communication code is being written to the shared memory block; executing communications based on the new communication code written to the application memory block while the new communication code is being copied to the shared memory block, and thereafter, executing additional communications based on the new communication code written to the shared memory block; and writing application code to the application memory block after completing the copying of the new communication code to the shared memory block, the application operational after the application code is completely written to the application memory block. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A controller comprising;
a central processing unit (CPU) operable to execute code to enable operations of the controller according to instructions read from; (i) a launcher memory block having code stored to facilitate operation of a launcher; (ii) an application memory block having code stored to facilitate operation of an application; and (iii) a shared memory block having communication code shared by each of the launcher and the application. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16)
-
17. A method of updating a shared memory block used to store shared code at a fixed memory location to support communications of a first program and a second program, the method comprising:
-
writing new shared code to a temporal memory block assigned to one of the first and second programs, one of the first and the second programs becoming inoperable while the new shared code is stored at temporal memory block; copying the new shared code from the temporal memory block to the shared memory block; and executing shared functions according to the new shared code stored at the temporal memory block while the new shared code is being copied to the shared memory block. - View Dependent Claims (18, 19, 20)
-
Specification