Claims
- 1. A method of deploying and remotely accessing a plurality of software-simulated computers, comprising:
creating a software-simulated computer image, said image comprising:
simulated hardware device specifications; a bootable application; a guest process manager, and; one or more application programs; cloning said image to create said plurality of software-simulated computers; branding each software simulated computer in said plurality with unique, machine-differentiation information; selecting a software-simulated computer in said plurality; and establishing communications for remote access across a network to said selected software-simulated computer.
- 2. The method of claim 1 wherein said step of branding prevents communication conflicts between machines on said network.
- 3. The method of claim 2 wherein said bootable application is a Windows variant, and said machine differentiation information includes a system identifier.
- 4. The method of claim 1, further comprising:
loading user specific information into said image before performing said cloning step.
- 5. The method of claim 4 wherein said user specific information comprises software license numbers.
- 6. The method of claim 4 wherein said user specific information includes one or more of company names and individual names.
- 7. The method of claim 4 wherein said user specific information includes user identifiers and associated passwords.
- 8. The method of claim 1 wherein said branding prevents conflicts between machines on said network.
- 9. The method of claim 1 further comprising booting each software-simulated computer.
- 10. The method of claim 1 further comprising evaluating quality of said communications and selecting a remote control communications protocol based on said quality.
- 11. The method of claim 10, further comprising accessing said selected software-simulated computer through a remote user interface.
- 12. The method of claim 10, further comprising configuring a firewall to permit communications with said selected software-simulated computer.
- 13. A method of creating one or more software-simulated computers on a remote computer, comprising:
creating one or more software-simulated computer images; generating a package comprising said images; and delivering said package to said remote computer, wherein said remote computer extracts said images and automatically creates said software-simulated computers.
- 14. The method of claim 13, wherein said package includes an xml document comprising installation instructions and said remote computer generates said software-simulated computers in accordance with said instructions.
- 15. The method of claim 13, wherein said package is encrypted.
- 16. The method of claim 13, wherein each of said images comprises:
simulated hardware device specifications; a bootable application; a guest process manager, and; one or more application programs.
- 17. The method of claim 13, wherein one of said images represents a server computer.
- 18. The method of claim 13, wherein one of said images represents a firewall computer.
- 19. A software-simulated computer server for providing a client device access to an application program on a software-simulated computer through a network, comprising:
one or more hardware computers; an image that defines a software-simulated computer having a copy of said application program stored thereon; and a host control program that causes said one or more hardware computers to create a plurality of software-simulated computers from said image and to generate unique, machine-differentiation information for each software-simulated computer in said plurality; wherein said host control program further causes said hardware computers to select a software-simulated computer from said plurality, to negotiate a communications connection between said selected software-simulated computer and said client device, and to enable said client device to access said application program running on said selected software-simulated computer through said network.
- 20. The software-simulated computer server of claim 19, wherein said host control program causes said one or more hardware computers to shutdown, recreate, and restart said plurality of software-simulated computers.
- 21. The software-simulated computer server of claim 20, wherein said host control program further causes said one or more hardware computers to copy user generated data to backup storage.
- 22. The software-simulated computer server of claim 21, wherein said host control program recreates and restarts said plurality of software-simulated computers after said user generated data has been copied.
- 23. The software-simulated computer server of claim 19 wherein said host control program responds to client device requests using one or more communication protocols from a list comprising FTP, HTTP, HTTPS, MPLS, SFTP, SMTP, and SSH.
- 24. The software-simulated computer server of claim 23 wherein said application program is designed to be used on a single personal computer.
- 25. The software-simulated computer server of claim 23 wherein said application program is a client/server application.
- 26. The software-simulated computer server of claim 25 wherein said application program uses one or more communication protocols from a list consisting of IPX/SPX, netbios, raw IP sockets, UDP/IP, TCP/IP, lPv6, IPSEC, HTTP, and netbeui.
- 27. The software-simulated computer server of claim 19, wherein said host control program balances load on said hardware computers when making said selection of said software-simulated computer.
- 28. The software-simulated computer server of claim 27, wherein said load is determined by one or more of available memory, processor utilization, and a number of unused software-simulated computers.
- 29. The software-simulated computer server of claim 19, wherein said software-simulated computer is adapted to accept and communicate with and to provide concurrent interaction of said application with more than one client device.
- 30. The software-simulated computer server of claim 19, wherein said software-simulated computer is adapted to record user input from said client device.
- 31. The software-simulated computer server of claim 19, further comprising a control center computer in communication with a host control virtual computer, wherein said control center computer transmits said image for said software simulated computer to said host control virtual computer.
- 32. The software-simulated computer server of claim 31, wherein said control center computer receives status information about a software-simulated computer.
- 33. The server appliance system of claim 31, wherein said control center computer is adapted to issue a reboot command that causes a particular software-simulated computer to be shutdown, recreated, and restarted.
- 34. The server appliance system of claim 31, wherein said control center computer transmits an updated image comprising an updated copy of said application program and said host control program causes said one or more hardware computers to shutdown, recreate using said updated image, and restart said plurality of software-simulated computers.
- 35. A media storing a computer program that causes a processor that executes said program to perform a method of deploying and remotely accessing a plurality of software-simulated computers, the steps comprising:
cloning an image that defines a software simulated computer to create said plurality of software-simulated computers; branding each software simulated computer in said plurality with unique, machine-differentiation information; selecting a software-simulated computer in said plurality; and establishing communications for remote access across a network to said selected software-simulated computer.
- 36. The media of claim 35, wherein said computer program causes said processor to perform steps comprising:
loading user specific information into said image before performing said cloning step.
- 37. The media of claim 35, wherein said computer program causes said processor to perform steps comprising:
evaluating quality of said communications and selecting a remote control client based on said quality.
- 38. The media of claim 35, wherein said computer program causes said processor to perform steps comprising:
configuring a firewall to permit communications with said selected software-simulated computer.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims benefit of U.S. Provisional Patent Application Ser. No. 60/471,523, entitled “Systems and Methods of Creating and Accessing Software Simulated Computers,” filed May 15, 2003, which is hereby incorporated by reference in its entirety for each of its teachings and embodiments.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60471523 |
May 2003 |
US |