Claims
- 1. A virtual hard drive of an emulated computer system, the emulated computer system running on a host computer system, comprising:
a first file on the physical hard drive of the computer system comprising a parent drive; a second file on the physical hard drive of the computer system comprising a differencing drive; wherein write operations to the virtual hard drive are made to the differencing drive, the differencing recording the writes to the virtual hard drive and expanding in size to accommodate the content of write operations to the virtual hard drive.
- 2. The virtual hard drive of claim 1, wherein the parent drive is a fixed size file.
- 3. The virtual hard drive of claim 2, wherein the parent drive is a dynamically expanding file.
- 4. A computer system, comprising:
a host computer system; an emulated computer system running on a host computer system; a virtual hard drive logically assigned to the emulated computer system, the virtual hard drive including a first file comprising a parent drive and a second file comprising a differencing drive; wherein writes made by the emulated computer system to the emulated computer system are recorded in the differencing drive.
- 5. The computer system of claim 4, wherein the emulated computer system is not aware that writes made to the virtual hard drive are being recorded in the differencing drive.
- 6. The computer system of claim 4, wherein the parent drive is a fixed size file.
- 7. The computer system of claim 4, wherein the parent drive is a dynamically expanding file.
- 8. A method for performing a write operation to the virtual hard drive of an emulated computer system, comprising the steps of:
establishing in the hard drive of the host computer system a plurality of files comprising the virtual hard drive of the emulated computer system, the plurality of files including a file associated with a parent drive and a file associated with a differencing drive, the parent drive appearing to the emulated computer system to be the hard drive of the emulated computer system; performing a write operation in the emulated computer system to the hard drive of the emulated computer system; and recording the result of the write operation in the differencing drive of the virtual hard drive such that write operations performed to the virtual hard drive of the host computer system are performed in the differencing drive rather than in the parent drive.
- 9. The method for performing a write operation to the virtual hard drive of an emulated computer system of claim 8, wherein the step of recording the result of the write operation comprises the step of expanding the size of the file associated with the differencing drive to accommodate the written to blocks of the differencing drive.
- 10. The method for performing a write operation to the virtual hard drive of an emulated computer system of claim 8, further comprising the step of maintaining a bit map in the differencing drive that identifies blocks of the virtual hard drive that are present in the differencing drive.
- 11. A method for performing an undo operation on a virtual hard drive of an emulated computer system, comprising the steps of:
establishing in the hard drive of the host computer system a plurality of files comprising the virtual hard drive of the emulated computer system, the plurality of files including a file associated with a parent drive and a file associated with a differencing drive, the parent drive appearing to the emulated computer system to be the hard drive of the emulated computer system; performing a write operation in the emulated computer system to the hard drive of the emulated computer system; recording the result of the write operation in the differencing drive of the virtual hard drive such that write operations performed to the virtual hard drive of the host computer system are performed in the differencing drive rather than in the parent drive; and prompting the user of the emulated computer system for a determination of whether the content of the hard drive of the emulated computer system should revert to the content of the hard drive at an earlier time; upon the decision of the user to revert to the content of the hard drive at an earlier time, discarding the content of the differencing drive such that the content of the hard drive of the emulated computer system is the content of the parent drive.
- 12. The method for performing an undo operation on a virtual hard drive of an emulated computer system of claim 11, wherein the step of prompting the user for a determination comprises the step of prompting the user of the emulated computer system at the conclusion of the user's computing session.
- 13. The method for performing an undo operation on a virtual hard drive of an emulated computer system of claim 11, wherein the step of prompting the user for a determination comprises the step of prompting the user of the emulated computer system at regular intervals during the user's computing session.
- 14. A method for synchronizing the content of a virtual hard drive of an emulated computer system, comprising the steps of:
establishing in the hard drive of the host computer system a plurality of files comprising the virtual hard drive of the emulated computer system, the plurality of files including a file associated with a parent drive and a file associated with a differencing drive, the parent drive appearing to the emulated computer system to be the hard drive of the emulated computer system; performing a write operation in the emulated computer system to the hard drive of the emulated computer system; recording the result of the write operation in the differencing drive of the virtual hard drive such that write operations performed to the virtual hard drive of the host computer system are performed in the differencing drive rather than in the parent drive; and prompting the user of the emulated computer system for a determination of whether the content of the hard drive of the emulated computer system should revert to the content of the hard drive at an earlier time; upon the decision of the user to retain the content of the hard drive, synchronizing the content of the hard drive of the emulated computer system by writing the content of the differencing drive to the content of the parent drive.
- 15. A virtual hard drive of an emulated computer system, the emulated computer system running on a host computer system, comprising:
a first file on the physical hard drive of the computer system comprising a parent drive; a second file on the physical hard drive of the computer system comprising a primary differencing drive; a third file on the physical hard drive of the computer system comprising a secondary differencing drive; and wherein write operations to the virtual hard drive are made to the primary differencing drive during a first time interval, the primary differencing recording the writes to the virtual hard drive and expanding in size to accommodate the content of write operations to the virtual hard drive during the first time interval; wherein write operations to the virtual hard drive are made to the secondary differencing drive during a second time interval, the secondary differencing drive recording the writes to the virtual hard drive and expanding in size to accommodate write operations to the virtual hard drive during the second time interval.
- 16. The virtual hard drive of an emulated computer system of claim 15, wherein the second file and the third file of the physical hard drive are dynamically expanding files.
- 17. The virtual hard drive of an emulated computer system of claim 15, wherein the first file is a dynamically expanding file.
- 18. The virtual hard drive of an emulated computer system of claim 15, wherein the first file is a fixed size file.
- 19. A method for performing a write operation to the virtual hard drive of an emulated computer system, comprising the steps of:
establishing in the hard drive of the host computer system a plurality of files comprising the virtual hard drive of the emulated computer system, the plurality of files including a first file associated with a parent drive, a second file associated with a primary differencing drive, and a third file associated with a secondary differencing drive, the parent drive appearing to the emulated computer system to be the hard drive of the emulated computer system; performing a write operation in the emulated computer system to the hard drive of the emulated computer system; recording the result of the write operation in the primary differencing drive of the virtual hard drive such that write operations performed to the virtual hard drive of the host computer system are performed in the primary differencing drive rather than in the parent drive; switching the target drive to the secondary differencing drive; performing a write operation in the emulated computer system to the hard drive of the emulated computer system; and recording the result of the write operation in the secondary differencing drive of the virtual hard drive such that write operations performed to the virtual hard drive of the host computer system are performed in the primary differencing drive rather than in the secondary differencing drive.
- 20. The method for performing a write operation to the virtual hard drive of an emulated computer system of claim 19, further comprising the step of discarding the content of the secondary differencing drive to return the content of the virtual hard drive to the content of the virtual hard drive at the time of the switch of the target drive to the secondary differencing drive.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of provisional U.S. Application Serial No. 60/282,111, filed Apr. 7, 2001, and titled “Method for Establishing a Drive Image in a Computing Environment,” which is incorporated herein by reference in its entirety.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60282111 |
Apr 2001 |
US |