Claims
- 1. A method of utilizing a layered computing environment to create a program product, the method comprising the steps of:
utilizing a computing environment including layered system software, the layered system software being executable to perform at least the functions of:
(i) receiving from applications a read request for a read operation to a file system, the read request containing a file reference appropriate to the file system organization, (ii) a first determining whether or not the file reference is maintained in at least one enabled layer, (iii) if in the first determining a file reference is found not to be maintained in at least one enabled layer, causing the read operation to execute using the file reference of the read request, (iv) if in the first determining a file reference is found to be maintained in at least one enabled layer, identifying an owner layer from the set of enabled layers, (v) following the identifying an owner layer, identifying a virtual read reference utilizing information contained in the layer, (vi) following the identifying a virtual read reference, causing the read operation to execute using the virtual read reference, (vii) receiving from applications a write request for a write operation to a file system, the write request containing a file reference appropriate to the file system organization, (viii) a second determining whether or not the file reference is a reference to a write operation to be captured in an enabled layer, (ix) if in the second determining a file reference is determined not to be a reference to a write operation to be captured to an enabled layer, causing the write operation to execute using the file reference of the write request, (x) if in the second determining a file reference is determined to be a reference to a write operation to be captured to an enabled layer, identifying a capture layer, (xi) following the identifying a capture layer, creating a virtual write reference corresponding to the file reference of the write request, (xii) following the creating a virtual write reference, causing the write operation to execute using the virtual write reference, (xiii) receiving management commands through an applications programmer interface, those management commands including commands to start and stop a capture operation; entering a capture mode; performing an installation action; ending a capture mode; and exporting the captured layer to a portable media format.
- 2. A method according to claim 1, wherein said exporting also exports a layered system software installation package to the portable media format.
- 3. A method according to claim 1, wherein the installation action is a software package install.
- 4. A method according to claim 3, wherein the capture mode causes all operations to create, modify or delete files to be redirected into the capture layer.
- 5. A method according to claim 3, wherein the capture mode is a capture by PID mode.
- 6. A method according to claim 1, wherein the installation action is a software package uninstall.
- 7. A method according to claim 6, wherein the capture mode is a delete capture mode.
- 8. A method according to claim 6, wherein the capture mode is a delete capture by PID mode.
- 9. A method according to claim 1, wherein said captured layer is encrypted before storing in the portable media format.
- 10. A program product containing both a captured layer and computer instructions for operating a layered computing environment, comprising:
a set of computer readable media comprising at least one medium upon which is stored a captured layer and computer instructions, said instructions being executable by a computing system to achieve the functions of:
(i) receiving from applications a read request for a read operation to a file system, the read request containing a file reference appropriate to the file system organization; (ii) a first determining whether or not the file reference is maintained in at least one enabled layer; (iii) if in the first determining a file reference is found not to be maintained in at least one enabled layer, causing the read operation to execute using the file reference of the read request; (iv) if in the first determining a file reference is found to be maintained in at least one enabled layer, identifying an owner layer from the set of enabled layers; (v) following the identifying an owner layer, identifying a virtual read reference utilizing information contained in the layer; and (vi) following the identifying a virtual read reference, causing the read operation to execute using the virtual read reference; and a layer captured by utilizing a layered computing environment to create a program product.
- 11. A program product according to claim 10, wherein:
said layer contains encrypted information; and the computer instructions are further executable to achieve the functions of:
(vii) receiving an authentication key or license authorization, and (viii) using the authentication key or license authorization to decrypt encrypted information referenced by the virtual read reference.
- 12. A program product according to claim 10, wherein the computer instructions are further executable to achieve the functions of:
(vii) receiving from applications a write request for a write operation to a file system, the write request containing a file reference appropriate to the file system organization; (viii) a second determining whether or not the file reference is a reference to a write operation to be captured in an enabled layer; (ix) if in the second determining a file reference is determined not to be a reference to a write operation to be captured to an enabled layer, causing the write operation to execute using the file reference of the write request; (x) if in the second determining a file reference is determined to be a reference to a write operation to be captured to an enabled layer, identifying a capture layer; (xi) following the identifying a capture layer, creating a virtual write reference corresponding to the file reference of the write request; and (xii) following the creating a virtual write reference, causing the write operation to execute using the virtual write reference.
- 13. A program product according to claim 12, wherein the computer instructions are further executable to achieve the functions of:
(xiii) receiving from applications requests to create, delete, and set the value of a registry setting; (xiv) following receipt of a request to create, delete or set the value of a registry setting, a determining whether or not the registry operation of the request is to be captured to an enabled layer; (xv) acting on a request to create a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting operation to execute in the base system registry location; (xvi) acting on a request to create a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry creation destination layer; (xvii) following said identifying a registry creation destination layer, causing the registry setting to be created virtually in the registry creation destination layer; (xviii) acting on a request to delete a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting deletion operation to execute in the base system registry location; (xiv) acting on a request to delete a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry deletion destination layer; (xx) following said identifying a registry deletion destination layer, causing the registry setting to be deleted virtually in the registry deletion destination layer; (xxi) acting on a request to set a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting operation to execute in the base system registry location; (xxii) acting on a request to set a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry setting destination layer; and (xxiii) following said identifying a registry setting destination layer, causing the registry setting to be created virtually in the registry setting destination layer.
- 14. A program product according to claim 13, wherein the computer instructions are further executable to achieve the function of:
(xiii) receiving management commands through an applications programmer interface.
- 15. A program product according to claim 14, wherein the computer instructions include a layer manager application.
- 16. A program product according to claim 10, wherein the computer instructions are further executable to achieve the functions of:
(xiii) examining the installed layers for a configuration element, that element specifying for each layer whether or not the layer is to be enabled on system initialization; and (xiv) enabling those layers having configuration elements specifying layer enablement on system initialization.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/387,969 filed Jun. 12, 2002 which is hereby incorporated by reference in its entirety.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60387969 |
Jun 2002 |
US |