IP Library › Granted Patent US 7,222,132
Granted Patent B2
US 7,222,132 · App. 09/908,252 · Granted May 22, 2007

Common template file system tree for virtual environments and virtual servers

Assignee: SWSoft Holdings, Ltd.
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,222,132
App. No.
09/908,252
Granted
May 22, 2007
Kind
B2
Abstract

A common template file system tree is utilized by isolated operating system processes groups for effective read-only common file set access via multiple file system paths. Files are opened from different views of the file system template for write-ability access and copied into a private modification area; this is also convenient for subsequent online changes and replication.

Claims (96)

1. A computer data storage file system comprising:

a storage device;

a namespace;

a plurality of groups of isolated operating system processes;

a common template file system tree stored on the storage device and concurrently accessed by the groups of isolated of operating system processes of the groups of isolated operating system processes using a view to the common template file system tree;

a first set of names from the namespace for direct access of contents of the common template file system tree by the groups of isolated operating system processes;

a private modification area accessed by the groups of isolated operating system processes for supporting the view; and

a second set of names from the namespace used for direct access of files by the groups of isolated operating system processes in the private modification area,

wherein the private modification area is formed as a journaled transaction, and

wherein the private modification area stores an incremental difference between the files in the private modification area and the common template file system tree.

2. The system of claim 1 , further comprising multiple views inside the common template file system tree;

wherein the namespace includes a third set of names associated with the groups of isolated operating system processes for use in establishing the multiple views,

wherein read-only access to a file associated with the groups of isolated operating system processes using the third set of names utilizes the common template file system tree, and

wherein, if the same files are opened from different views of the common template file system tree using a name from the third set of names, these files are cached only once in an operating system file buffer.

3. The system of claim 2 , wherein a standard file system interface is utilized to enable file access that is transparent for the groups of isolated operating system processes.

4. The system of claim 2 , wherein if a file already exists in the private modification area, the read access is performed on that file.

5. The system of claim 2 , further comprising a transaction log, wherein contents of the transaction log corresponds to contents of the private modification area.

6. The system of claim 5 , wherein the contents of the transaction log is kept up to date and the transaction log is used for online replication.

7. The system of claim 2 , wherein a standard file system is utilized to enable file access that is transparent for any operating system process.

8. The system of claim 1 , further comprising multiple views inside a file system name space to the common template file system tree;

wherein a view inside a file system namespace to the common template file system tree includes a third set of names of the namespace associated with a virtual environment for use in establishing the multiple views;

wherein the common template file system tree is utilized by the groups of isolated operating system processes using the third set of names; and

wherein all files opened for write access are copied from the common template file system tree into the private modification area for performing the write access on the copy of the file.

9. The system of claim 8 , wherein a standard file system is utilized to enable file access that is transparent for the groups of isolated operating system processes.

10. The system of claim 8 , wherein:

if a file already exists in the private modification area, the write access is performed on that file, and

if the file does not exist in the private modification area, then the file is copied to the private modification area prior to the write access.

11. The system of claim 8 , wherein, if a file has been removed from the private modification area, a user is informed that the file does not exist.

12. A method of managing a computer file system comprising:

establishing a namespace;

launching a plurality of groups of isolated operating system processes;

establishing a first set of names from the namespace for direct access of the common template file system tree by the virtual environments;

establishing a common template file system tree for concurrent access by the groups of isolated operating system processes of the groups of isolated operating system processes using a view to the common template file system tree;

establishing a second set of names from the namespace for direct access of contents of files in a private modification area by the groups of isolated operating system processes;

accessing the private modification area by the isolated groups of operating system processes of the groups of isolated operating system processes; and

providing accessed files from the private modification area to users of the groups of isolated operating system processes,

wherein the private modification area is formed as a journaled transaction, and

wherein the private modification area stores an incremental difference between user files and the common template file system tree,

wherein, for shared files, only one copy of each shared file is cached by the operating system in memory, for all instances of processes using the shared files.

13. The method of claim 12 , further comprising establishing multiple views inside the common template file system tree,

wherein the namespace includes a third set of names associated with the groups of isolated operating system processes for use in establishing the multiple views,

wherein read-only access to a file associated with the groups of isolated operating system processes using the third set of names utilizes the common template file system tree, and

wherein, if the same files are opened from different views of the common template file system tree using a name from the third set of names, these files are cached only once in an operating system file buffer.

14. The method as defined in claim 13 , wherein if a file already exists in the private modification area, the read access is performed on that file.

15. The method of claim 12 , wherein a standard file system is utilized to enable file access that is transparent for the groups of isolated operating system processes.

16. The method of claim 12 , further comprising generating a transaction log, wherein contents of the transaction corresponds to contents of the private modification area.

17. The method as defined in claim 16 , further comprising keeping the transaction log up to date for online replication.

18. The method of claim 12 , wherein a standard file system is utilized to enable file access that is transparent for any operating system process.

19. The method of claim 12 , further comprising performing a write access on a file,

wherein the namespace includes a third set of names associated with the groups of isolated operating system processes, and

wherein all files opened for write access are copied from the common template file system tree into the private modification area prior to performing the write access.

20. The method of claim 19 , wherein:

if a file already exists in the private modification area, performing the write access on that file, and

if the file does not exist in the private modification area, copying the file to the private modification area prior to performing the write access on that file.

21. The method of claim 19 , wherein, if a file has been removed from the private modification area, informing a user that the file does not exist.

22. A computer useable medium having computer program logic stored thereon for executing on a processor and managing a computer file system, the computer program logic comprising:

computer program code means for establishing a namespace;

computer program code means for launching a plurality of groups of isolated operating system processes;

computer program code means for establishing a first set of names from the namespace for direct access of the common template file system tree by the virtual environments;

computer program code means for establishing a common template file system tree for concurrent access by the groups of isolated operating system processes using a view to the common template file system tree;

computer program code means for establishing a second set of names from the namespace for direct access of files in a private modification area by the groups of isolated operating system processes;

computer program code means for accessing the private modification area by the isolated operating system processes; and

computer program code means for providing accessed contents of files from the private modification area to users of the groups of isolated operating system processes,

wherein the private modification area is formed as a journaled transaction, and

wherein the private modification area stores an incremental difference between the files in the private modification area and the common template file system tree.

23. The computer useable medium of claim 22 , further comprising computer program code means for establishing multiple views inside the common template file system tree;

wherein the namespace includes a third set of names associated with the groups of isolated operating system processes for use in establishing the multiple views;

wherein read-only access to a file associated with the groups of isolated operating system processes using the third set of names utilizes the common template file system tree; and

wherein, if the same files are opened from different views of the common template file system tree using a name from the third set of names, these files are cached only once in an operating system file buffer.

24. The computer useable medium of claim 23 , wherein if a file already exists in the private modification area, the read access is performed on that file.

25. The computer useable medium of claim 22 , wherein a standard file system is utilized to enable file access that is transparent for the operating system.

26. The computer useable medium of claim 22 , further comprising computer program code means for generating a transaction log, wherein contents of the transaction corresponds to contents of the private modification area.

27. The computer useable medium of claim 26 , further comprising computer program code means for keeping the transaction log up to date for online replication.

28. The computer useable medium of claim 22 , wherein a standard file system is utilized to enable file access that is transparent for the operating system processes.

29. The computer useable medium of claim 22 , further comprising computer program code means for performing a write access on a file,

wherein the namespace includes a third set of names associated with the operating system processes,

wherein the common template file system tree is utilized by the groups of isolated operating system processes, and

wherein all files opened for write access are copied from the common template file system tree into the private modification area prior to performing the write access.

30. The computer useable medium of claim 29 , further comprising:

if a file already exists in the private modification area, computer program code means for performing the write access on that file, and

if the file does not exist in the private modification area, computer program code means for copying the file to the private modification area prior to performing the write access on that file.

31. The computer useable medium of claim 29 , wherein, if a file has been removed from the private modification area, informing a user that the file does not exist.

32. The computer useable medium of claim 22 , wherein a standard file system is utilized to enable file access that is transparent for any operating system process.

33. The system of claim 1 , wherein the system uses the first set of names from the namespace for direct access, using only a single redirect, of the common template file system tree by the groups of isolated operating system processes, and

wherein the system uses the second set of names from the namespace for direct access of files only in the private modification area and without a redirect to outside the private modification area.

34. A computer data storage file system comprising:

a storage device;

a namespace;

a plurality of groups of isolated operating system processes;

a common template file system tree stored on the storage device and concurrently accessed by the groups of isolated of operating system processes of the groups of isolated operating system processes using a view to the common template file system tree;

a first set of names from the namespace for direct access, using only a single redirect, of the common template file system tree by the groups of isolated operating system processes;

a private modification area accessed by the groups of isolated operating system processes for supporting the view; and

a second set of names from the namespace used for direct access of files only in the private modification area and without a redirect to outside the private modification area, by the groups of isolated operating system processes.

35. The system of claim 34 , wherein the private modification area is formed as a journaled transaction,

wherein the private modification area stores an incremental difference between user files and the common template file system tree,

wherein, for shared files, only one copy of each shared file is cached by the operating system in memory, for all instances of processes using the shared files.

Assignments (11)
CORRECTIVE ASSIGNMENT TO CORRECT THE RECORDED COVER SHEET TO INCLUDE THE PATENT APPLICATIONS LISTED ON THE LAST PAGE OF THE ASSIGNMENT PREVIOUSLY RECORDED ON REEL 27595 FRAME 187. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT.. Recorded Aug 5, 2026
From: PARALLELS HOLDINGS LTD.
To: PARALLELS IP HOLDINGS GMBH
Reel/Frame 076134/0608 →
SECURITY INTEREST IN TRADEMARK, PATENT, AND COPYRIGHT RIGHTS Recorded Dec 22, 2022
From: VIRTUOZZO INTERNATIONAL GMBH; ONAPP LIMITED
To: WILMINGTON TRUST (LONDON) LIMITED
Reel/Frame 062206/0557 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2018
From: PARALLELS IP HOLDINGS GMBH
To: VIRTUOZZO INTERNATIONAL GMBH
Reel/Frame 045179/0537 →
RELEASE OF SECURITY INTEREST Recorded Dec 14, 2015
From: SILICON VALLEY BANK
To: PARALLELS HOLDINGS LTD. (F/K/A SWSOFT HOLDINGS LTD.)
Reel/Frame 037289/0685 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2012
From: PARALLELS HOLDINGS, LTD.
To: PARALLELS IP HOLDINGS GMBH
Reel/Frame 027595/0187 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2011
From: SWSOFT HOLDINGS, LTD.
To: PARALLELS HOLDINGS, LTD.
Reel/Frame 027467/0345 →
SECURITY AGREEMENT Recorded Jun 23, 2011
From: PARALLELS HOLDINGS LTD. (F/K/A SWSOFT HOLDINGS LTD.)
To: SILICON VALLEY BANK
Reel/Frame 026480/0957 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2003
From: TORMASOV, ALEXANDER; BELOUSSOV, SERGUEI; PROTASSOV, STANISLAV; PUDGORODSKY, YURI
To: SWSOFT HOLDINGS LTD.
Reel/Frame 014433/0828 →
CONFIRMATORY ASSIGNMENT Recorded Aug 27, 2003
From: SWSOFT HOLDINGS, INC.
To: SWSOFT HOLDINGS LTD.
Reel/Frame 014433/0820 →
RE-RECORD TO CORRECT THE NAME OF THE ASSIGNEE, PREVIOUSLY RECORDED ON REEL 012172 FRAME 0594, ASSIGNOR CONFIRMS THE ASSIGNMENT OF THE ENTIRE INTEREST. Recorded Dec 7, 2001
From: TORMASOV, ALEXANDER; BELOUSSOV, SERGUEI; PROTASSOV, STANISLAV; PUDGORODSKY, YURI
To: SWSOFT HOLDINGS, INC.
Reel/Frame 012401/0899 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2001
From: TORMASOV, ALEXANDER; BELOUSSOV, SERGUEI; PROTASSOV, STANISLAV; PUDGORODSKY, YURI
To: SWSOFT DELAWARE HOLDINGS, INC.
Reel/Frame 012172/0594 →
Continuity (2)
Provisional Application 6027729200 · Mar 20, 2001
Related Publication 20060089950A1 · Apr 27, 2006