Claims
- 1. A method for determining patches to apply to a computer system, wherein the patches includes content to add to the computer, comprising:
providing a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; providing a realization database of realization objects, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization; accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list; determining all the patches on the accessed patch lists; and determining from the determined patches on the accessed patch lists those patches that are capable of being installed on the computer.
- 2. The method of claim 1, wherein the patch content to add to the computer is capable of comprising one of: a new program; an upgrade to an installed program; a fix to an installed program; and documentation.
- 3. The method of claim 1, further comprising:
providing a searchable realization index in the realization database; and for each realization identifier on the realization list, using the realization identifier to access an entry in the realization index, wherein each entry in the realization index identifies one corresponding realization object in the realization database, and wherein the entry is used to access the corresponding realization object in the realization database.
- 4. The method of claim 3, wherein the realization index implements a binary tree index.
- 5. The method of claim 1, further comprising:
presenting information on an output device of those determined patches capable of being installed on the computer; and receiving user selection of one or more patches to add to the computer indicated in the presented information.
- 6. The method of claim 5, further comprising:
requesting from a server the patch content for the user selected patches; receiving the patch content for the selected patches from the server; and applying the patch content to the computer.
- 7. The method of claim 1, further comprising:
providing a searchable patch database including patch objects corresponding to one patch of content and including a patch expression set comprised of one or more patch expressions; accessing from the patch database those patch objects for the determined patches on the accessed patch lists; and executing the patch expression sets in the accessed patch objects to determine patches identified by the accessed patch objects capable of being installed on the computer.
- 8. The method of claim 7, further comprising:
generating a computer object including configuration information on components in the computer, wherein the executed patch expression sets are capable of processing configuration information and the realization list to determine whether the patch is capable of being installed on the computer.
- 9. The method of claim 7, further comprising:
providing a searchable patch index into the patch database, wherein each entry in the patch index identifies one corresponding patch object in the patch database representing one patch, wherein the patch index entry is used to access the corresponding patch object in the patch database.
- 10. The method of claim 9, wherein each patch is associated with one patch identifier, wherein the entries in the patch index include the patch identifier of the patch represented by the corresponding patch object, further comprising:
searching the patch index for those entries including patch identifiers matching the patch identifiers of the determined patches from the accessed patch lists.
- 11. A method for determining patches to apply to a computer system, wherein the patches include content to add to the computer, comprising:
generating a computer object including configuration information on components in the computer and a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; downloading a realization database of realization objects from a patch server, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization; accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list; determining all the patches on the accessed patch lists; and determining from the determined patches on the accessed patch lists those patches that are capable of being installed on the computer.
- 12. The method of claim 11, wherein the steps of downloading the realization database, accessing the patch lists, determining all the patches on the accessed patch lists, and determining those patches capable of being installed on the computer are performed in the computer.
- 13. The method of claim 11, wherein a network administrator system includes a plurality of computer objects associated with a plurality of computers on a network, wherein each computer object includes the configuration information and the realization list for one computer on the network, and wherein the steps of downloading the realization database, accessing the patch lists, determining all the patches on the accessed patch lists, and determining those patches capable of being installed on the computer are performed on the network administrator system.
- 14. The method of claim 11, wherein the steps of accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list are performed for the realization lists in the computer objects for the computers on the network, wherein the patches are determined from the patch lists for the computer objects, and wherein the determined patches on the accessed patch lists are those patches that are capable of being installed on the computers in the network.
- 15. The method of claim 14, further comprising:
generating a list of all patches determined to be compatible with the installed components of the computers on the network; and rendering the list of patches on an output device to enable a user of the network administrator system to select the code of one or more of the patches on the list to install on one or more of the computers in the network.
- 16. A system for determining patches to apply to a computer, wherein the patches include content to add to the computer, comprising:
means for providing a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; means for providing a realization database of realization objects, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization; means for accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list; means for determining all the patches on the accessed patch lists; and means for determining from the determined patches on the accessed patch lists those patches that are capable of being installed on the computer.
- 17. The system of claim 16, wherein the patch content to add to the computer is capable of comprising one of: a new program; an upgrade to an installed program; a fix to an installed program; and documentation.
- 18. The system of claim 16, further comprising:
means for providing a searchable realization index in the realization database; and means for using the realization identifier to access an entry in the realization index for each realization identifier on the realization list, wherein each entry in the realization index identifies one corresponding realization object in the realization database, and wherein the entry is used to access the corresponding realization object in the realization database.
- 19. The system of claim 18, wherein the realization index implements a binary tree index.
- 20. The system of claim 16, further comprising:
an output device; means for presenting information on then output device of those determined patches capable of being installed on the computer; and means for receiving user selection of one or more patches to add to the computer indicated in the presented information.
- 21. The system of claim 20, wherein the system is in communication with a server, further comprising:
means for requesting from the server the patch content for the user selected patches; means for receiving the patch content for the selected patches from the server; and means for applying the patch content to the computer.
- 22. The system of claim 16, further comprising:
means for providing a searchable patch database including patch objects corresponding to one patch of content and including a patch expression set comprised of one or more patch expressions; means for accessing from the patch database those patch objects for the determined patches on the accessed patch lists; and means for executing the patch expression sets in the accessed patch objects to determine patches identified by the accessed patch objects capable of being installed on the computer.
- 23. The system of claim 22, further comprising:
means for generating a computer object including configuration information on components in the computer, wherein the executed patch expression sets are capable of processing configuration information and the realization list to determine whether the patch is capable of being installed on the computer.
- 24. The system of claim 22, further comprising:
means for providing a searchable patch index into the patch database, wherein each entry in the patch index identifies one corresponding patch object in the patch database representing one patch, wherein the patch index entry is used to access the corresponding patch object in the patch database.
- 25. The system of claim 24, wherein each patch is associated with one patch identifier, wherein the entries in the patch index include the patch identifier of the patch represented by the corresponding patch object, further comprising:
means for searching the patch index for those entries including patch identifiers matching the patch identifiers of the determined patches from the accessed patch lists.
- 26. A system for determining patches to apply on a computer, wherein the patches include content to add to the computer, comprising:
means for generating a computer object including configuration information on components in the computer and a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; means for downloading a realization database of realization objects from a patch server, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization; means for accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list; means for determining all the patches on the accessed patch lists; and means for determining from the determined patches on the accessed patch lists those patches that are capable of being installed on the computer.
- 27. The system of claim 26, wherein the means for downloading the realization database, accessing the patch lists, determining all the patches on the accessed patch lists, and determining those patches capable of being installed on the computer are performed in the computer.
- 28. The system of claim 26, further comprising:
a network administrator system including a plurality of computer objects associated with a plurality of computers on a network, wherein each computer object includes the configuration information and the realization list for one computer on the network, and wherein the means for downloading the realization database, accessing the patch lists, determining all the patches on the accessed patch lists, and determining those patches capable of being installed on the computer are performed on the network administrator system.
- 29. The system of claim 26, wherein the means for accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list are performed for the realization lists in the computer objects for the computers on the network, wherein
the patches are determined from the patch lists for the computer objects, and wherein the determined patches on the accessed patch lists are those patches that are capable of being installed on the computers in the network.
- 30. The system of claim 29, further comprising:
an output device; means for generating a list of all patches determined to be compatible with the installed components of the computers on the network; and means for rendering the list of patches on the output device to enable a user of the network administrator system to select the code of one or more of the patches on the list to install on one or more of the computers in the network.
- 31. An article of manufacture for determining patches to apply to a computer system, wherein the patches includes content to add to the computer, by:
providing a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; providing a realization database of realization objects, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization; accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list; determining all the patches on the accessed patch lists; and determining from the determined patches on the accessed patch lists those patches that are capable of being installed on the computer.
- 32. The article of manufacture of claim 31, wherein the patch content to add to the computer is capable of comprising one of a new program; an upgrade to an installed program; a fix to an installed program; and documentation.
- 33. The article of manufacture of claim 31, further comprising:
providing a searchable realization index in the realization database; and for each realization identifier on the realization list using the realization identifier to access an entry in the realization index, wherein each entry in the realization index identifies one corresponding realization object in the realization database, and wherein the entry is used to access the corresponding realization object in the realization database.
- 34. The article of manufacture of claim 33, wherein the realization index implements a binary tree index.
- 35. The article of manufacture of claim 31, further comprising:
presenting information on an output device of those determined patches capable of being installed on the computer; and receiving user selection of one or more patches to add to the computer indicated in the presented information.
- 36. The article of manufacture of claim 35, further comprising:
requesting from a server the patch content for the user selected patches; receiving the patch content for the selected patches from the server; and applying the patch content to the computer.
- 37. The article of manufacture of claim 31, further comprising:
providing a searchable patch database including patch objects corresponding to one patch of content and including a patch expression set comprised of one or more patch expressions; accessing from the patch database those patch objects for the determined patches on the accessed patch lists; and executing the patch expression sets in the accessed patch objects to determine patches identified by the accessed patch objects capable of being installed on the computer.
- 38. The article of manufacture of claim 37, further comprising:
generating a computer object including configuration information on components in the computer, wherein the executed patch expression sets are capable of processing configuration information and the realization list to determine whether the patch is capable of being installed on the computer.
- 39. The article of manufacture of claim 37, further comprising:
providing a searchable patch index into the patch database, wherein each entry in the patch index identifies one corresponding patch object in the patch database representing one patch, wherein the patch index entry is used to access the corresponding patch object in the patch database.
- 40. The article of manufacture of claim 39, wherein each patch is associated with one patch identifier, wherein the entries in the patch index include the patch identifier of the patch represented by the corresponding patch object, further comprising:
searching the patch index for those entries including patch identifiers matching the patch identifiers of the determined patches from the accessed patch lists.
- 41. An article of manufacture for determining patches to apply to a computer system, wherein the patches include content to add to the computer, comprising:
generating a computer object including configuration information on components in the computer and a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; downloading a realization database of realization objects from a patch server, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization; accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list; determining all the patches on the accessed patch lists; and determining from the determined patches on the accessed patch lists those patches that are capable of being installed on the computer.
- 42. The article of manufacture of claim 41, wherein the steps of downloading the realization database, accessing the patch lists, determining all the patches on the accessed patch lists, and determining those patches capable of being installed on the computer are performed in the computer.
- 43. The article of manufacture of claim 41, wherein a network administrator system includes a plurality of computer objects associated with a plurality of computers on a network, wherein each computer object includes the configuration information and the realization list for one computer on the network, and wherein the steps of downloading the realization database, accessing the patch lists, determining all the patches on the accessed patch lists, and determining those patches capable of being installed on the computer are performed on the network administrator system.
- 44. The article of manufacture of claim 41, wherein the steps of accessing from the realization database the patch lists of those realization objects whose realization identifiers match the realizations identifiers on the realization list are performed for the realization lists in the computer objects for the computers on the network, wherein
the patches are determined from the patch lists for the computer objects, and wherein the determined patches on the accessed patch lists are those patches that are capable of being installed on the computers in the network.
- 45. The article of manufacture of claim 44, further comprising:
generating a list of all patches determined to be compatible with the installed components of the computers on the network; and rendering the list of patches on an output device to enable a user of the network administrator system to select the code of one or more of the patches on the list to install on one or more of the computers in the network.
- 46. A computer readable medium including data structures used to determining patches to apply to a computer system, wherein the patches includes content to add to the computer, comprising:
a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; a realization database of realization objects, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization, wherein the patch lists are accessed from the realization objects in the realization database whose realization identifiers match the realizations identifiers on the realization list, wherein a determination is made of all the patches on the accessed patch lists, and wherein a determination is made from the determined patches on the accessed patch lists of those patches that are capable of being installed on the computer.
- 47. The computer readable medium of claim 46, further comprising:
a searchable realization index in the realization database, wherein the realization identifier for each realization on the realization list is used to access an entry in the realization index, wherein each entry in the realization index identifies one corresponding realization object in the realization database, and wherein the entry is used to access the corresponding realization object in the realization database.
- 48. The computer readable medium of claim 47, wherein the realization index implements a binary tree index.
- 49. The computer readable medium of claim 46, further comprising:
a searchable patch database including patch objects corresponding to one patch of content and including a patch expression set comprised of one or more patch expressions, wherein the patch objects for the determined patches on the accessed patch lists are accessed from the patch database, and wherein the patch expression sets in the accessed patch objects are executed to determine patches identified by the accessed patch objects capable of being installed on the computer.
- 50. The computer readable medium of claim 49, further comprising:
a computer object including configuration information on components in the computer, wherein the executed patch expression sets are capable of processing configuration information and the realization list to determine whether the patch is capable of being installed on the computer.
- 51. The computer readable medium of claim 49, further comprising:
a searchable patch index into the patch database, wherein each entry in the patch index identifies one corresponding patch object in the patch database representing one patch, wherein the patch index entry is used to access the corresponding patch object in the patch database.
- 52. A computer readable medium including data structures used for determining patches to apply to a computer system, wherein the patches include content to add to the computer, comprising:
a computer object including configuration information on components in the computer and a realization list of realization identifiers corresponding to realizations associated with the computer, wherein each realization defines a state of the computer; a realization database of realization objects from a patch server, wherein each realization object is uniquely identified by a realization identifier of one realization and includes a patch list indicating those patches whose installation relates to the computer state defined by the realization, wherein patch lists are accessed from those realization objects in the realization database whose realization identifiers match the realizations identifiers on the realization list, wherein a determination is made of all the patches on the accessed patch lists, and wherein a determination is made from the determined patches on the accessed patch lists of those patches that are capable of being installed on the computer.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This patent application is related to the following co-pending and commonly assigned patent applications filed on the same date herewith, and which are incorporated herein by reference in their entirety:
[0002] “Method, System, Program, and Data Structures For Applying a Patch to a Computer System”, having attorney docket no. P6141; and
[0003] “Method, System, and Program for Providing Patch Expressions Used in Determining Whether to Install a Patch”, having attorney docket no. P6281.