Claims
- 1. A processor-readable medium comprising processor-executable instructions for performing software updates, the processor-executable instructions comprising instructions for:
assigning a level of service, by which the software updates will be performed; scheduling performance of the software updates according to the level of service; and performing the software updates according to the schedule.
- 2. The processor-readable medium of claim 1, additionally comprising instructions for:
displaying a notification icon to a user; and configuring the notification icon to allow the user to postpone the software updates within a grace period, wherein the grace period is followed by an enforcement period within which the notification icon does not allow the user to postpone the software updates.
- 3. The processor-readable medium of claim 2, wherein assigning the level of service comprises instructions for:
establishing the grace period and the enforcement period; and wherein by shortening the grace period a higher level of service results due to more rapid application of the software updates.
- 4. The processor-readable medium of claim 1, additionally comprising instructions for:
displaying a notification icon to a user; and configuring the notification icon to allow the user to initiate performance of the software updates.
- 5. The processor-readable medium of claim 4, wherein configuring the notification icon comprises instructions for:
providing the user with a first choice to display a reminder about installing the software updates; and providing the user with a second choice to install the software updates.
- 6. The processor-readable medium of claim 5, wherein the first choice of displaying the reminder comprises instructions for:
displaying information on grace and enforcement periods associated with the software updates; wherein the grace period is a period during which the user is allowed to postpone performance of software updates; wherein the grace period is configurable by an administrator; and wherein the enforcement period is a period, configured by the administrator to follow the grace period, during which the user is not allowed to postpone performance of software updates.
- 7. The processor-readable medium of claim 5, wherein the second choice of installing the software updates comprises instructions for:
allowing the user to schedule an update start time; and allowing the user to schedule a reboot time.
- 8. The processor-readable medium of claim 1, wherein performing the software update comprises additional instructions for deploying annoyance reminders urging the user to reboot.
- 9. The processor-readable medium of claim 1, wherein performing the software update comprises additional instructions for automatically performing the software updates following a grace period.
- 10. The processor-readable medium of claim 1, wherein performing the software update comprises additional instructions for delaying the performance until after conclusion of a user-initiated postponement within a grace period.
- 11. The processor-readable medium of claim 1, wherein scheduling performance of the software updates comprises additional instructions for configuring a change window, wherein the change window defines a period of time within which the updates will be performed.
- 12. The processor-readable medium of claim 11, wherein assigning the level of service comprises additional instructions for configuring duration of the change window, wherein a longer duration implies a higher level of service and a shorter duration implies a lower level of service.
- 13. The processor-readable medium of claim 11, wherein scheduling performance of the software updates comprises additional instructions for:
defining failsafe timeout periods for each of the software updates; and adjusting the failsafe timeout periods according to individual computer performance, wherein longer failsafe timeout periods are assigned where the individual computer performance is slower.
- 14. The processor-readable medium of claim 11, comprising additional instructions for:
applying updates during the change window; and monitoring a failsafe timeout for each update applied.
- 15. The processor-readable medium of claim 11, comprising additional instructions for identifying updates for which there was insufficient time within the change window for installation within a second change window.
- 16. The processor-readable medium of claim 11, comprising additional instructions for, when time remaining within the change window is less than a failsafe timeout for any remaining software updates, suspending application of the remaining software updates.
- 17. The processor-readable medium of claim 11, comprising additional instructions for associating servers into groups, wherein each group is assigned a change window, and wherein the groups are sized to allow simultaneous updating of the servers in each of the groups without disrupting work flow.
- 18. The processor-readable medium of claim 1, comprising additional instructions for:
grouping a plurality of the software updates into a package; and configuring the package for differential enforcement whereby different computers would receive different software updates from the package.
- 19. The processor-readable medium of claim 18, comprising additional instructions for obtaining the plurality of software updates from a trusted source of update content.
- 20. The processor-readable medium of claim 18, comprising additional instructions for configuring the package for SMS consumption.
- 21. The processor-readable medium of claim 18, wherein assigning the level of service comprises additional instructions for providing different rules of enforcement within the package to result in different application of software updates within the package to different computers.
- 22. The processor-readable medium of claim 18, wherein assigning the level of service comprises additional instructions for partitioning the package of software updates to separate trusted updates from un-trusted updates.
- 23. The processor-readable medium of claim 22, comprising additional instructions for merging the un-trusted software updates with the trusted software updates based on performance of the un-trusted updates in a test environment.
- 24. The processor-readable medium of claim 22, wherein the partitioning is expressed in XML configured to inform different clients of updates suitable for their consumption.
- 25. The processor-readable medium of claim 1, wherein assigning the level of service comprises additional instructions for incorporating an authorization list of approved updates into a template based on a standard image.
- 26. The processor-readable medium of claim 25, wherein the template is written into an XML document.
- 27. The processor-readable medium of claim 26, wherein the XML document is consumed and deployed as a mirror of a desired state for software updates.
- 28. The processor-readable medium of claim 27, wherein the XML document is consumed and deployed by SMS.
- 29. A method for performing software updates, comprising:
displaying an icon configured to allow a user a choice between displaying software reminders and initiation of installation of the software updates; wherein the software reminders include information on grace periods within which installation of the software update may be postponed and information on the onset of enforcement periods after which installation of the software update may not be postponed; and providing a user interface to allow selection of a time to perform the installation of the software update and to allow selection of a time to reboot.
- 30. A processor-readable medium comprising processor-executable instructions for assisting a user to update software, the processor-executable instructions comprising instructions for:
displaying an icon configured to allow a user a choice between displaying software reminders and initiation of installation of the software updates; wherein the software reminders include information on grace periods within which installation of the software update may be postponed and information on the onset of enforcement periods after which installation of the software update may not be postponed; and providing a user interface to allow selection of a time to perform the installation of the software update and to allow selection of a time to reboot.
- 31. The processor-readable medium of claim 30, additionally comprising instructions for providing a user interface at repeated intervals to persuade a user to reboot, where the software updates have been installed and no reboot has been performed.
- 32. The processor-readable medium of claim 30, additionally comprising instructions for setting the grace periods and the enforcement periods to control a level of service provided by the system.
- 33. The processor-readable medium of claim 30, additionally comprising instructions for periodically showing the user information about software updates that have not yet been performed.
- 34. A method for performing software updates, comprising:
associating servers into groups sized to allow simultaneous updating of servers in each group without disrupting work flow; establishing a change window for each of the groups; and applying updates within the change window, while monitoring a failsafe timeout for each update.
- 35. A processor-readable medium comprising processor-executable instructions for performing software updates, the processor-executable instructions comprising instructions for:
associating servers into groups sized to allow simultaneous updating of servers in each group without disrupting work flow; establishing a change window for each of the groups; and applying updates within the change window, while monitoring a failsafe timeout for each update.
- 36. The processor-readable medium of claim 35, additionally comprising instructions for application of each software update and for setting the failsafe timeout with reference to the anticipated times for application.
- 37. The processor-readable medium of claim 35, additionally comprising instructions for determining if the failsafe timeout for each software update is greater than time remaining within the change window, and if so, for suspending installation of the software update.
- 38. The processor-readable medium of claim 35, additionally comprising instructions for identifying, for potential installation in a second change window, software updates which were not installed in the change window.
- 39. A method for performing software updates, comprising:
grouping a large number of software updates into a package; configuring the package for differential enforcement, wherein different computers are given different periods of time within which to perform a software update; and configuring the package for SMS consumption.
- 40. A processor-readable medium comprising processor-executable instructions for performing software updates, the processor-executable instructions comprising instructions for:
grouping a large number of software updates into a package; configuring the package for differential enforcement, wherein different computers are given different periods of time within which to perform a software update; and configuring the package for SMS consumption.
- 41. The processor-readable medium of claim 40, additionally comprising instructions for configuring the package with content from a trusted website.
- 42. The processor-readable medium of claim 40, additionally comprising instructions for distributing the package by utilizing SMS to a plurality of computers.
- 43. The processor-readable medium of claim 40, additionally comprising instructions for performing software updates differentially on a plurality of computers using the package.
- 44. A method for performing software updates, comprising:
forming a package with a plurality of software updates; partitioning the package to divide trusted updates from un-trusted updates; distributing the package to a plurality of clients; and installing appropriate software updates on each of the plurality of clients, wherein the un-trusted software updates are installed only on clients within a test environment.
- 45. A processor-readable medium comprising processor-executable instructions for performing software updates, the processor-executable instructions comprising instructions for:
forming a package with a plurality of software updates; partitioning the package to divide trusted updates from un-trusted updates; distributing the package to a plurality of clients; and installing appropriate software updates on each of the plurality of clients, wherein the un-trusted software updates are installed only on clients within a test environment.
- 46. The processor-readable medium of claim 45, additionally comprising instructions for merging un-trusted software updates together with the trusted software updates in response to performance of the un-trusted software updates in the test environment.
- 47. The processor-readable medium of claim 45, additionally comprising instructions for expressing the partition with XML.
- 48. The processor-readable medium of claim 45, additionally comprising instructions, within the package, for expressing to clients which software updates are suitable for their consumption.
- 49. A method for performing software updates, comprising:
using a reference computer to generate a template having an authorization list of approved updates; deploying the template to client computers; and performing software updates on the client computers according to the template.
- 50. A processor-readable medium comprising processor-executable instructions for performing software updates, the processor-executable instructions comprising instructions for:
using a reference computer to generate a template having an authorization list of approved updates; deploying the template to client computers; and performing software updates on the client computers according to the template.
- 51. The processor-readable medium of claim 50, additionally comprising instructions for incorporating the template into an XML file.
- 52. The processor-readable medium of claim 50, wherein deploying the template comprises instructions for configuring the template for SMS consumption and deployment.
- 53. The processor-readable medium of claim 50, additionally comprising instructions for using the template to identify a subset of software update files from a large file including a plurality of software update files.
RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/455,197, filed Mar. 17, 2003, entitled “Software Updating System and Method”, which is hereby incorporated by reference. This application also claims the benefit of U.S. application Ser. No. 10/385,391, filed Mar. 10, 2003 and still pending, entitled “Software Updating System and Method”, which is hereby incorporated by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60455197 |
Mar 2003 |
US |