Claims
- 1. In a wireless communications device, a method for updating persistent data, the method comprising:
executing system software; launching a run-time engine; processing dynamic instruction sets; and, in response to processing the dynamic instruction sets, selectively updating persistent data in the system software.
- 2. The method of claim 1 further comprising:
executing the system software with the updated persistent data.
- 3. The method of claim 2 wherein updating persistent data in the system software includes updating persistent data selected from the group including radio frequency (RF) calibration data, nonvolatile system and user configuration data, resource data, nonvolatile system and user application data, and arbitrary data.
- 4. The method of claim 3 further comprising:
forming the system software into symbol libraries, each symbol library comprising symbols having related functionality; arranging the symbol libraries into code sections in nonvolatile memory; and, receiving patch manager run time instructions with dynamic instruction sets and new code sections, including updated persistent data, in a file system section in nonvolatile memory.
- 5. The method of claim 4 wherein receiving dynamic instruction sets includes receiving persistent data instructions;
wherein arranging symbol libraries into code sections includes arranging a plurality of persistent data items in a first code section; and, wherein updating persistent data includes replacing persistent data items in the first code section with updated persistent data items, in response to the persistent data instructions.
- 6. The method of claim 5 wherein receiving updated persistent data in a file system section in nonvolatile memory includes receiving a replacement code section with a plurality of data items; and,
wherein replacing persistent data items in the first code section with updated persistent data items, in response to the persistent data instructions, includes replacing the persistent data items in the first code section with the data items from the replacement code section.
- 7. The method of claim 5 wherein receiving persistent data instructions includes receiving replacement data items embedded with the persistent data instructions; and,
wherein replacing persistent data items in the first code section with updated persistent data items, in response to the persistent data instructions, includes replacing the persistent data items in the first code section with the data items embedded in the persistent data instructions.
- 8. The method of claim 5 wherein receiving updated persistent data in a file system section in nonvolatile memory includes receiving a plurality of constraint data items and conditional persistent data instructions;
wherein replacing persistent data items in the first code section with updated persistent data items, in response to the conditional persistent data instructions, includes: using the conditional persistent data instructions, comparing the persistent data items in the first code section with the constraint data items; and, in response to comparing, replacing the persistent data items in the first code section.
- 9. The method of claim 8 wherein receiving updated persistent data in a file system section in nonvolatile memory includes receiving a constraint code section with a plurality of data items; and,
wherein replacing the persistent data items in the first code section, in response to comparing, includes replacing persistent data items in the first code section with data items from the constraint code section.
- 10. The method of claim 8 wherein receiving conditional persistent data instructions includes receiving constraint data items embedded with the conditional persistent data instructions;
wherein replacing the persistent data items in the first code section, in response to comparing, includes replacing persistent data items in the first code section with constraint data items embedded in the conditional persistent data instructions.
- 11. The method of claim 8 wherein replacing the persistent data items in the first code section, in response to comparing, includes replacing persistent data items in the first code section with data items calculated by the conditional persistent data instructions.
- 12. The method of claim 8 wherein replacing the persistent data items in the first code section, in response to comparing, includes:
using the constraint data items as operands in calculations performed by the conditional persistent data instructions to create data item products; and, replacing persistent data items in the first code section with the data item products.
- 13. The method of claim 5 wherein receiving updated persistent data in a file system section in nonvolatile memory includes receiving a directory code section with a plurality of data item addresses;
wherein replacing persistent data items in the first code section with updated persistent data items, in response to the persistent data instructions, includes: locating replacement data items in response to directory code section data items addresses; and, replacing the persistent data items in the first code section with the located replacement data item.
- 14. The method of claim 5 wherein receiving updated persistent data in a file system section in nonvolatile memory includes receiving a directory code section with a plurality of constraint addresses;
wherein replacing persistent data items in the first code section with persistent data items, in response to the persistent data instructions, includes: locating constraint data items using the constraint addresses in the directory code section; and, using the conditional persistent data instructions, comparing the persistent data items in the first code section with constraints; and, in response to comparing, replacing the persistent data items in the first code section.
- 15. The method of claim 5 wherein receiving updated persistent data includes receiving updated persistent data through an interface selected from the group including airlink, wireless communications device keyboard, installable memory module, infrared, logic port, and RF hardline interfaces.
- 16. The method of claim 5 wherein receiving updated persistent data includes receiving a patch manager run time instruction with at least one updated RF calibration data item;
wherein arranging symbol libraries into code sections includes arranging RF calibration data items in a first code section; wherein executing the system software includes using the RF calibration data from the first code section for functions selected from the group including frequency adjustment, amplifier biasing, attenuator adjustments, and temperature adjustments; and, wherein updating the persistent data in the system software includes referencing the updated RF calibration data items in the patch manager run time instruction when replacing RF calibration data items in the first code section.
- 17. The method of claim 5 wherein receiving updated persistent data includes receiving a patch manger run time instruction with at least one updated nonvolatile system and user configuration data item;
wherein arranging symbol libraries into code sections includes arranging nonvolatile system and user configuration data items in a first code section; wherein executing the system software includes using the nonvolatile system and user configuration data items from the first code section for functions selected from the group including system configuration files for identifying the wireless device's home region, identifying permissible roaming regions, identifying if the wireless device operates in digital and analog modes and, identifying the wireless device's preferred operating mode; and, wherein updating the persistent data in the system software includes referencing the updated nonvolatile system and user configuration data items in patch manager run time instruction when replacing nonvolatile system and user configuration data items in the second code section.
- 18. The method of claim 5 wherein receiving updated persistent data includes receiving a patch manager run time instruction with at least one updated nonvolatile system and user application data item;
wherein arranging symbol libraries into code sections includes arranging nonvolatile system and user application data items in a first code section; wherein executing the system software includes using the nonvolatile system and user application data items from the first code section for functions selected from the group including managing phonebook files and managing calendar scheduling files; and, wherein updating the persistent data in the system software includes referencing the updated nonvolatile system and user application data items in the patch manager run time instruction when replacing nonvolatile system and user application data items in the first code section.
- 19. The method of claim 5 wherein receiving new code sections includes receiving a patch manager run time instruction with at least one updated resource data item;
wherein arranging symbol libraries into code sections includes arranging resource data items in a first code section; wherein executing the system software includes using the resource data from the first code section for functions selected from the group including user interface dialogues, user interface menus, and user interface languages; and, wherein updating the persistent data in the system software includes referencing the updated resource data items in the patch manager run time instruction when replacing resource data items in the first code section.
- 20. In a wireless communications device, a method for updating persistent data, the method comprising:
executing system software; launching a run-time engine; receiving the patch manager run time instructions with dynamic instruction sets and new code sections, including updated persistent data, in a file system section in nonvolatile memory; processing dynamic instruction sets; in response to processing the dynamic instruction sets, selectively updating persistent data in the system software selected from the group including radio frequency (RF) calibration data, nonvolatile system and user configuration data, resource data, nonvolatile system and user application data, and arbitrary data; and, executing the system software with the updated persistent data.
- 21. In a wireless communications device, a system for updating persistent data, the system comprising:
executable system software and system data differentiated into code sections stored in nonvolatile memory permanent storage; dynamic instruction sets for selectively updating persistent data in the system software; and, a run-time engine for processing the dynamic instruction sets.
- 22. The system of claim 21 wherein the executable system software and system data are updated in response to processing the dynamic instruction sets.
- 23. The system of claim 22 wherein the executable system software is formed into symbol libraries, each symbol library comprising symbols having related functionality, arranged into code sections stored in a code storage section;
the system further comprising: an airlink interface; and, a file system section of nonvolatile permanent memory receiving patch manager run time instructions (PMRTIs) via the airlink interface, the patch manager run time instructions including dynamic instruction sets and new code sections.
- 24. The system of claim 23 wherein the dynamic instruction sets update persistent data in the system software selected from the group including radio frequency (RF) calibration data, nonvolatile system and user configuration data, resource data, nonvolatile system and user application data, and arbitrary data.
- 25. The system of claim 24 wherein the system software is formed into symbol libraries, each symbol library comprising symbols having related functionality, and arranged into code sections in nonvolatile permanent memory; and,
wherein the file system section receives dynamic instruction sets and new code sections, including updated persistent data.
- 26. The system of claim 25 wherein the file system section receives dynamic instruction sets including persistent data instructions;
wherein the system software includes a plurality of persistent data items in a first code section; and, wherein the persistent data instructions replace persistent data items in the first code section with updated persistent data items.
- 27. The system of claim 26 wherein the file system section receives a replacement code section with a plurality of data items; and,
wherein the persistent data instructions replace the persistent data items in the first code section with the data items from the replacement code section.
- 28. The system of claim 26 wherein the file system section receives replacement data items embedded with the persistent data instructions; and,
wherein the persistent data instructions replace the persistent data items in the first code section with the data items embedded in the persistent data instructions.
- 29. The system of claim 26 wherein the file system section receives a plurality of constraint data items and conditional persistent data instructions;
wherein the conditional persistent data instructions compare the persistent data items in the first code section with the constraint data items and, in response to comparing the persistent data items in the first code section with the constraint data items, replace the persistent data items in the first code section.
- 30. The system of claim 29 wherein the file system section receives a constraint code section with a plurality of data items; and,
wherein the conditional persistent data instructions replace persistent data items in the first code section with data items from the constraint code section, in response to comparing the persistent data items in the first code section with the constraint data items.
- 31. The system of claim 29 wherein the file system section receives constraint data items embedded with the conditional persistent data instructions;
wherein the conditional persistent data instructions replace persistent data items in the first code section with constraint data items embedded in the conditional persistent data instructions, in response to comparing the persistent data items in the first code section with the constraint data items.
- 32. The system of claim 29 wherein the conditional persistent data instructions replace persistent data items in the first code section with data items calculated by the conditional persistent data instructions, in response to comparing the persistent data items in the first code section with the constraint data items.
- 33. The system of claim 29 wherein the conditional persistent data instructions use the constraint data items a s operands in calculations to create data item products, to replace persistent data items in the first code section with t he data item products.
- 34. The system of claim 26 wherein the file system section receives a directory code section with a plurality of data item addresses;
wherein the persistent data instructions locate replacement data items in response to directory code section data items addresses and replace the persistent data items in the first code section with the located replacement data item.
- 35. The system of claim 26 wherein the file system section receives conditional persistent data instructions and a directory code section with a plurality of constraint addresses;
wherein the conditional persistent data instructions locate constraint data items using the constraint addresses in the directory code section, compare the persistent data items in the first code section with the located constraints, and, in response to comparing, replace the persistent data items in the first code section.
- 36. The system of claim 26 further comprising:
interfaces selected from the group including wireless communications device keyboard, installable memory module, infrared, logic port, and RF hardline interfaces; and, wherein the file system section receives updated persistent data through an interface selected from the group including airlink, wireless communications device keyboard, installable memory module, infrared, logic port, and RF hardline interfaces.
- 37. The system of claim 26 wherein the file system section receives a patch manager run time instruction with at least one updated RF calibration data item;
wherein the system software includes RF calibration data items arranged in a first code section for functions selected from the group including frequency adjustment, amplifier biasing, attenuator adjustments, and temperature adjustments; and, wherein the persistent data instructions reference the updated RF calibration data items in patch manager run time instruction when replacing RF calibration data items in the first code section.
- 38. The system of claim 26 wherein the file system section receives a patch manager run time instruction with at least one updated nonvolatile system and user configuration data item;
wherein the system software includes nonvolatile system and user configuration data items arranged in a first code section for functions selected from the group including system configuration files for identifying the wireless device's home region, identifying permissible roaming regions, identifying if the wireless device operates in digital and analog modes and, identifying the wireless device's preferred operating mode; and, wherein the persistent data instructions reference the updated nonvolatile system and user configuration data items in the patch manager run time instruction when replacing nonvolatile system and user configuration data items in the first code section.
- 39. The system of claim 26 wherein the file system section receives a patch manager run time instruction with at least one updated nonvolatile system and user application data item;
wherein the system software includes nonvolatile system and user application data items arranged in a first code section for functions selected from the group including managing phonebook files and managing calendar scheduling files; and, wherein the persistent data instructions reference the updated nonvolatile system and user application data items in the patch manager run time instruction when replacing nonvolatile system and user application data items in the first code section.
- 40. The system of claim 26 wherein the file system section receives a patch manager run time instruction with at least one updated resource data item;
wherein the system software includes resource data items arranged in a first code section for functions selected from the group including user interface dialogues, user interface menus, and user interface languages; and, wherein the persistent data instructions reference the updated resource data items in the patch manager run time instruction when replacing resource data items in the first code section.
- 41. In a wireless communications device, a system for updating persistent data, the system comprising:
executable system software and system data differentiated into code sections stored in nonvolatile memory permanent storage and formed into symbol libraries, each symbol library comprising symbols having related functionality, arranged into code sections stored in a code storage section; dynamic instruction sets for selectively updating persistent data in the system software selected from the group including radio frequency (RF) calibration data, nonvolatile system and user configuration data, resource data, nonvolatile system and user application data, and arbitrary data; a run-time engine for processing the dynamic instruction sets; an airlink interface; a file system section of nonvolatile permanent memory receiving patch manager run time instructions (PMRTIs) via the airlink interface, the patch manager run time instructions including persistent data instructions and new code sections; and, wherein the executable system software and system data are updated in response to processing the dynamic instruction sets.
Parent Case Info
[0001] This application claims priority to U.S. patent application Ser. No. 09/927,131, filed on Aug. 10, 2001, and entitled “System and Method for Executing Wireless Communications Device Dynamic Instruction Sets;” and is related to U.S. patent application Ser. No. 09/916,900, filed on Jul. 26, 2001 and entitled “System and Method for Field Downloading a Wireless Communications Device Software Code Section,” and Ser. No. 09/9169,460, filed on Jul. 26, 2001, and entitled “System and Method for Compacting Field Upgradeable Wireless Communication Device Software Code Sections,” all of which are incorporated herein by reference.