IP Library Granted Patent US 7,043,724
Granted Patent B2
US 7,043,724 · App. 09/872,346 · Granted May 9, 2006

System and services for handling computing environments as documents

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,043,724
App. No.
09/872,346
Granted
May 9, 2006
Kind
B2
Abstract

A system for describing computing environments as electronic documents, programs or other types of electronic representation or data is disclosed. The environment description can be created, transferred and ultimately used to create the specified computing environment for use by an end user, or users, in many different applications. The invention provides abstraction software and a user interface to allow a human user to specify a definition for the computing environment. Desired components are selected and included in the environment definition. Environment definitions can be stored and transferred in a manner compatible with typical electronic information. Environment definitions can be installed onto hardware and software resources by installation software. Environments can be installed on specific components from which the environment was originally abstracted, or on other sufficiently similar components. Environments can be remotely manipulated and accessed from computers, terminals, web browsers, handheld devices, or other devices.

Claims (91)

1. A method for creating an electronic document description of a computing environment installed on first computing hardware, the method comprises

identifying at least one software component of the computing environment; and

automatically generating an electronic document containing an identification of each of the at least one software component, the electronic document comprising instructions for automatically reconstructing the computing environment on the first computing hardware or on other computing hardware.

2. The method of claim 1 , wherein the first computing hardware comprises a plurality of computers connected by a network.

3. The method of claim 1 , wherein a reconstruction of the computing environment from the electronic document installed on other computing hardware is behaviorally equivalent to the computing environment installed on the first computing hardware.

4. The method of claim 1 , wherein the at least one software component comprises an operating system and an application.

5. The method of claim 4 , further comprising

identifying at least one data file to be used by the application; and

including in the electronic document a representation of each of the at least one data file.

6. The method of claim 1 wherein the step of identifying at least one software component comprises identifying all software components installed on the first computing hardware.

7. The method of claim 6 , wherein the first computing hardware comprises a plurality of computers connected by a network.

8. The method of claim 1 , further comprising

identifying a requirement for computing hardware on which the computing environment may be installed; and

including in the electronic document a constraint corresponding to the requirement.

9. The method of claim 1 , wherein the step of automatically generating the electronic document comprises:

identifying at least one parameter of the computing environment for abstraction; and

abstracting the at least one parameter.

10. The method of claim 1 , further comprising the step of storing the electronic document.

11. The method of claim 10 , further comprising the step of compressing the electronic document.

12. The method of claim 10 , further comprising the step of encrypting the electronic document.

13. The method of claim 10 , further comprising the step of transmitting the electronic document to a remote location.

14. The method of claim 10 , further comprising the step of replicating the stored electronic document.

15. A method for installing a computing environment on target computing hardware based on an electronic document description of the computing environment, the method comprising

obtaining an electronic document that contains a description of a computing environment to be installed;

reading the electronic document;

identifying candidate computing hardware for installation of the computing environment;

selecting the target computing hardware from the candidate computing hardware for installation of the computing environment; and

installing at least one software component on the target computing hardware in accordance with data contained in the electronic document.

16. The method of claim 15 , wherein the electronic document was previously abstracted from a computing environment installed on original computing hardware and wherein the computing environment installed on the target computing hardware is behaviorally equivalent to the computing environment installed on the original computing hardware.

17. The method of claim 15 , wherein the step of obtaining an electronic document comprises the step of receiving an electronic document from a remote location.

18. The method of claim 15 , wherein the step of obtaining an electronic document further includes

receiving an instruction from a remote user location to retrieve a user-specified electronic document from a storage location; and

retrieving the user-specified electronic document from the storage location.

19. The method of claim 15 , further comprising the step of installing at least one data file on the target computing hardware in accordance with data contained in the electronic document.

20. The method of claim 15 , wherein the step of selecting the target computing hardware comprises

reading a set of hardware constraints from the electronic document;

identifying as acceptable computing hardware each of the candidate computing hardware that satisfies the set of hardware constraints; and

selecting the target computing hardware from the acceptable computing hardware as the target computing hardware.

21. The method of claim 15 , further comprising

determining from the electronic document whether the computing environment includes a parameter; and

if the computing environment includes a parameter then performing the following:

selecting a value for the parameter; and

providing an instantiated electronic document incorporating the value selected for the parameter.

22. The method of claim 15 , wherein the step of installing at least one software component includes

determining whether an owner of the target computing hardware has rights to use the at least one software component;

installing the at least one software component when the owner of the target computing hardware has rights to use the at least one software component; and

when the owner of the target computing hardware does not have rights to use the at least one software component, performing the following:

determining whether a provider of the electronic document has rights to use the at least one software component;

retrieving executable code for the at least one software component from a source when the provider of the electronic document has rights to use the at least one software component; and

installing the at least one software component on the target computer hardware when the provider of the electronic document has rights to use the at least one software component.

23. A system for creating an electronic document description of a computing environment comprising:

first computing hardware whereon the computing environment is installed; and

a processor in communication with the first computing hardware, wherein the processor is configured to identify a software component installed on the first computing hardware and to generate an electronic document that includes identification of the software component.

24. The system of claim 23 wherein the processor is a component of the first computing hardware.

25. The system of claim 23 wherein the processor communicates with the first computing hardware via a network.

26. A system for installing a computing environment on target computing hardware in accordance with an electronic document description, the system comprising:

a storage medium for storing one or more electronic documents, each of said one or more electronic documents containing a description of a computing environment;

a server connected to the storage medium for reading electronic documents and issuing instructions to install computing environments in accordance with the electronic documents;

candidate computing hardware whereon a computing environment may be installed, the target computing hardware being selected from the candidate computing hardware; and

a communication path between the server and the candidate computing hardware.

27. The system of claim 26 wherein the communication path comprises a network.

28. The system of claim 27 wherein the candidate computing hardware comprises a plurality of computer systems.

29. The system of claim 28 wherein the server is configured to select as the target computing hardware a subset of the plurality of computer systems.

30. The system of claim 29 , wherein the server communicates with a remote user terminal via the Internet.

31. The system of claim 30 , wherein the target computing hardware communicates with the remote user terminal via the Internet.

32. The system of claim 30 wherein the server is configured to receive from the remote user terminal an instruction to retrieve a user-selected electronic document from the storage medium and to install a computing environment on target computing hardware in accordance with the user-selected electronic document.

33. The system of claim 30 wherein the server is configured to retrieve an electronic document from the storage medium and to provide the retrieved electronic document to the remote user terminal.

34. The system of claim 30 wherein the server is configured to receive an electronic document description of a computing environment from the remote user terminal and to store the received electronic document in the storage medium.

35. A computer-readable medium including instructions for creating a computing environment, the computer-readable medium including

one or more instructions for identifying at least one software component of the computing environment;

one or more instructions for associating a constraint on the use of the software component.

36. The computer-readable medium of claim 35 , wherein the at least one software component includes an operating system.

37. The computer-readable medium of claim 35 , wherein the constraint includes an indication of a hardware architecture under which the software component can execute.

38. A computer data signal embodied in a carrier wave comprising

one or more instructions for identifying at least one software component of the computing environment;

one or more instructions for associating a constraint on the use of the software component.

39. The computer data signal of claim 38 , wherein the at least one software component includes an operating system.

40. The computer data signal of claim 38 , wherein the constraint includes an indication of a hardware architecture under which the software component can execute.

41. A method comprising:

accessing an electronic document, wherein

the electronic document comprises:

information identifying one or more components of a computing environment, and

constraint information identifying a constraint associated with one of the one or more components;

selecting hardware that satisfies the constraint identified in the electronic document; and

installing the one or more components identified in the electronic document on the selected hardware.

42. The method of claim 41 , wherein the one of more components comprise an operating system, an application, and a document.

43. The method of claim 42 , further comprising:

detecting that the electronic document is a template document; and

instantiating an environment program from the electronic document, wherein

the instantiating the environment program comprises specifying a values for a parameter identified in the electronic document, wherein the value identifies a version of a first one of the one or more components, and

the installing the one or more components comprises installing the version of the first one of the one or more components.

Assignments (17)
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 070530/0497 Recorded Dec 1, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0730 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 069585/0150 Recorded Dec 1, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0848 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
SECURITY INTEREST Recorded Dec 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
CHANGE OF NAME Recorded Oct 1, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019899/0213 →
MERGER Recorded Oct 26, 2004
From: JAREVA TECHNOLOGIES, INC.
To: VERITAS OPERATING CORPORATION
Reel/Frame 015922/0676 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2001
From: BLUME, WILLIAM; NANJA, SEKARAN; BANDHOLE, JAGADISH
To: JAREVA TECHNOLOGIES, INC.
Reel/Frame 012283/0872 →