Claims
- 1. A system for upgrading electronic files, comprising:
a first device including at least one processor configured to,
receive a target list including host devices that are to receive a new electronic file that is an updated version of an original electronic file; generate a first delivery schedule for delivery of the new electronic file to the host devices of the target list using a set of delivery rules; execute a network traffic simulation for the first delivery schedule, wherein the network traffic simulation estimates a capacity of the network versus time corresponding to the first delivery schedule; generate a second delivery schedule in response to results of the network traffic simulation, wherein the second delivery schedule is a revision of the first delivery schedule that adjusts scheduled delivery to optimize network performance; and control delivery of information of the new electronic file using the second delivery schedule; and at least one host device receiving the information of the new electronic file from the first device via at least one coupling, wherein the host devices control the upgrading of the original electronic files of the hosted devices in response to the received information of the new electronic file.
- 2. The system of claim 1, wherein controlling delivery further comprises transmitting notification messages to the host devices of the target list using the second delivery schedule, wherein the notification messages include information of availability of the new electronic file.
- 3. The system of claim 1, wherein controlling delivery further comprises transmitting the new electronic file to host devices of the target list using the second delivery schedule.
- 4. The system of claim 1, wherein generating a first delivery schedule includes:
receiving user preference information; generating subsets of the target list in accordance with the user preference information; and generating the first delivery schedule by applying the set of delivery rules to the subsets of the target list.
- 5. The system of claim 1, wherein generating a first delivery schedule includes:
receiving usage information for the original electronic files of each host device; generating subsets of the target list in accordance with the usage information; and generating the first delivery schedule by applying the set of delivery rules to the subsets of the target list.
- 6. The system of claim 1, wherein generating a first delivery schedule includes:
receiving user preference information and usage information for the original electronic files of each host device; generating subsets of the target list in accordance with the user preference and usage information; and generating the first delivery schedule by applying the set of delivery rules to the subsets of the target list.
- 7. The system of claim 1, wherein the second device is at least one processor-based device selected from among personal computers, portable computing devices, cellular telephones, portable communication devices, and personal digital assistants.
- 8. The system of claim 1, wherein the at least one coupling is selected from among wireless couplings, wired couplings, hybrid wireless/wired couplings, and couplings to networks including local area networks (LANs), metropolitan area networks (MANs), wide area networks (WANs), proprietary networks, backend networks, the Internet, and removable fixed mediums including floppy disks, hard disk drives, and CD-ROM disks, as well as telephone lines, buses, and electronic mail messages.
- 9. The system of claim 1, wherein the original and new electronic files comprise software files including dynamic link library files, shared object files, embedded software components (EBSCs), firmware files, executable files, data files including hex data files, system configuration files, and files including personal use data.
- 10. The system of claim 1, wherein the new electronic file is at least one of a new version of the original electronic file and a difference file, wherein the difference file includes coded differences between the new electronic file and the original electronic file.
- 11. A method for controlling delivery of electronic file upgrades via a network, comprising:
receiving a target list including host devices that are to receive a new electronic file that is an updated version of an original electronic file; generating a first delivery schedule for delivery of the new electronic file to the host devices of the target list using a set of delivery rules; executing a network traffic simulation for the first delivery schedule, wherein the network traffic simulation estimates a capacity of the network versus time corresponding to the first delivery schedule; generating a second delivery schedule in response to results of the network traffic simulation, wherein the second delivery schedule is a revision of the first delivery schedule that adjusts scheduled delivery to optimize network performance; and controlling delivery of information of the new electronic file using the second delivery schedule.
- 12. The method of claim 11, wherein controlling delivery further comprises transmitting notification messages to the host devices of the target list using the second delivery schedule, wherein the notification messages include information of availability of the new electronic file.
- 13. The method of claim 12, wherein the notification messages correspond to an upgrade control policy.
- 14. The method of claim 11, wherein controlling delivery further comprises transmitting the new electronic file to host devices of the target list using the second delivery schedule.
- 15. The method of claim 11, wherein controlling delivery further comprises transmitting notification messages and the new electronic file to the host devices of the target list using the second delivery schedule, wherein the notification messages include information of availability of the new electronic file.
- 16. The method of claim 15, wherein the notification messages are appropriate to a user-selected upgrade control policy of receiving host devices, wherein the new electronic files are transmitted using the second delivery schedule upon receiving selection responses to the notification messages from users via the host devices.
- 17. The method of claim 11, wherein generating a first delivery schedule includes:
receiving user preference information; generating subsets of the target list in accordance with the user preference information; and generating the first delivery schedule by applying the set of delivery rules to the subsets of the target list.
- 18. The method of claim 11, wherein generating a first delivery schedule includes:
receiving usage information for the original electronic files of each host device; generating subsets of the target list in accordance with the usage information; and generating the first delivery schedule by applying the set of delivery rules to the subsets of the target list.
- 19. The method of claim 11, wherein generating a first delivery schedule includes:
receiving user preference information and usage information for the original electronic files of each host device; generating subsets of the target list in accordance with the user preference and usage information; and generating the first delivery schedule by applying the set of delivery rules to the subsets of the target list.
- 20. The method of claim 11, wherein the target list is a prioritized list and the first delivery schedule is in accordance with the priority of the target list.
- 21. The method of claim 11, wherein the new electronic file is at least one of a new version of the original electronic file and a difference file, wherein the difference file includes coded differences between the new electronic file and the original electronic file.
- 22. An apparatus that controls delivery of electronic file upgrades to a portable host device via a network, comprising:
means for receiving a target list including host devices that are to receive a new electronic file that is an updated version of an original electronic file; means for generating a first delivery schedule for delivery of the new electronic file to the host devices of the target list using a set of delivery rules; means for executing a network traffic simulation for the first delivery schedule, wherein the network traffic simulation estimates a capacity of the network versus time corresponding to the first delivery schedule; means for generating a second delivery schedule in response to results of the network traffic simulation, wherein the second delivery schedule is a revision of the first delivery schedule that adjusts scheduled delivery to optimize network performance; and means for controlling delivery of information of the new electronic file using the second delivery schedule.
- 23. The apparatus of claim 22, wherein the means for controlling delivery further comprises means for transmitting notification messages to the host devices of the target list using the second delivery schedule, wherein the notification messages include information of availability of the new electronic file.
- 24. The apparatus of claim 22, wherein the means for controlling delivery further comprises means for transmitting the new electronic file to host devices of the target list using the second delivery schedule.
- 25. The apparatus of claim 22, wherein the means for generating a first delivery schedule includes:
means for receiving at least one of user preference information and usage information for the original electronic files of each host device; means for generating subsets of the target list in accordance with at least one of the user preference information and the usage information; and means for generating the first delivery schedule by applying the set of delivery rules to the subsets of the target list.
- 26. A computer readable medium including executable instructions which, when executed in a processing system, control delivery of electronic file upgrades to a host device by:
receiving a target list including host devices that are to receive a new electronic file that is an updated version of an original electronic file; generating a first delivery schedule for delivery of the new electronic file to the host devices of the target list using a set of delivery rules; executing a network traffic simulation for the first delivery schedule, wherein the network traffic simulation estimates a capacity of the network versus time corresponding to the first delivery schedule; generating a second delivery schedule in response to results of the network traffic simulation, wherein the second delivery schedule is a revision of the first delivery schedule that adjusts scheduled delivery to optimize network performance; and controlling delivery of information of the new electronic file using the second delivery schedule.
RELATED APPLICATIONS
[0001] This application is related to the application titled BYTE-LEVEL FILE DIFFERENCING AND UPDATING ALGORITHMS, application Ser. No. 10/146,545, filed May 13, 2002, the application titled UPDATING ELECTRONIC FILES USING BYTE-LEVEL FILE DIFFERENCING AND UPDATING ALGORITHMS, application Ser. No. 10/261,153, filed Sep. 30, 2002, the application titled UPGRADING OF ELECTRONIC FILES INCLUDING AUTOMATIC RECOVERY FROM FAILURES AND ERRORS OCCURRING DURING THE UPGRADE, Attorney Docket Number DOGO.P005 (Application Number not yet assigned), filed Nov. 12, 2002, the application titled DEVICE MEMORY MANAGEMENT DURING ELECTRONIC FILE UPDATING, Attorney Docket Number DOGO.P003 (Application Number not yet assigned), filed Nov. 18, 2002, the application titled GENERATING DIFFERENCE FILES USING MODULE INFORMATION OF EMBEDDED SOFTWARE COMPONENTS, Attorney Docket Number DOGO.P004 (Application Number not yet assigned), filed Nov. 18, 2002, the application titled CONTROLLING UPDATES OF ELECTRONIC FILES, Attorney Docket Number DOGO.P006 (Application Number not yet assigned), filed Nov. 18, 2002, and the application titled MANAGING ELECTRONIC FILE UPDATES ON CLIENT DEVICES, Attorney Docket Number DOGO.P008 (application No. not yet assigned), filed Nov. 18, 2002, all of which are currently pending.