IP Library Granted Patent US 7,689,715
Granted Patent B1
US 7,689,715 · App. 10/327,544 · Granted Mar 30, 2010

Method and system for implementing a global name space service

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,689,715
App. No.
10/327,544
Granted
Mar 30, 2010
Kind
B1
Abstract

A method and system for implementing a global name space service. The method may include receiving a file system unique identifier corresponding to a particular file and a human-readable name corresponding to the same file. The method may further include binding the human-readable name to the file system unique identifier, thereby creating a mapping between the human-readable name and the file system unique identifier. The system may include a processor coupled to a memory and to a global name space service manager. The global name space service manager may be configured to receive a file system unique identifier corresponding to a particular file and a human-readable name corresponding to the same file. The global name space service manager may be further configured to bind the human-readable name to the file system unique identifier, thereby creating a mapping between the human-readable name and the file system unique identifier.

Claims (71)

1. A computer implemented method for implementing a global name space service for a distributed file system, said method comprising:

receiving a file system unique identifier corresponding to a particular file;

receiving a human-readable name corresponding to said particular file;

binding said human-readable name to said file system unique identifier;

wherein said binding creates a mapping between said human-readable name and said file system unique identifier; and

creating a mapping file including a table having a plurality of entries, each including a given human-readable name and a file system unique identifier corresponding to said given human-readable name;

wherein said given human-readable name comprises a pathname; and

wherein in response to receiving a given pathname including one or more pathname components:

accessing a first mapping file using a computer, wherein the first mapping file corresponds to a root component of said pathname, wherein the first mapping file provides a first file system unique identifier corresponding to a first component of said pathname and wherein the first mapping file is organized in a hierarchy based upon a first set of one or more possible components of the pathname; and

accessing a second mapping file using a computer, wherein the second mapping file corresponds to said first component of said pathname using said first file system unique identifier, wherein the second mapping file provides a second file system unique identifier corresponding to a second component of said pathname and wherein the second mapping file is organized in a hierarchy based upon a second set of one or more possible components of the pathname.

2. The method as recited in claim 1 further comprising in response to receiving said given human-readable name, accessing said mapping file and providing said corresponding file system unique identifier.

3. The method as recited in claim 1 further comprising in response to receiving said given human-readable name, accessing said mapping file and returning said corresponding file system unique identifier and deleting said entry including said given human-readable name.

4. The method as recited in claim 1 , wherein said given human-readable name is a pathname.

5. The method as recited in claim 4 further comprising in response to receiving a given pathname, accessing said mapping file and returning a list of components, wherein each of said components is an entry in said table.

6. A storage media comprising executable instructions that, when executed by a processor, cause the processor to perform a method comprising:

receiving a file system unique identifier corresponding to a particular file;

receiving a human-readable name corresponding to said particular file;

binding said human-readable name to said file system unique identifier;

wherein said binding creates a mapping between said human-readable name and said file system unique identifier; and

creating a mapping file including a table having a plurality of entries, each including a given human-readable name and a file system unique identifier corresponding to said given human-readable name;

wherein said given human-readable name comprises a pathname; and

wherein in response to receiving a given pathname including one or more pathname components:

accessing a first mapping file corresponding to a root component of said pathname, wherein the first mapping file provides a first file system unique identifier corresponding to a first component of said pathname and wherein the first mapping file is organized in a hierarchy based upon a first set of one or more possible components of the pathname; and

accessing a second mapping file corresponding to said first component of said pathname using said first file system unique identifier, wherein the second mapping file provides a second file system unique identifier corresponding to a second component of said pathname and wherein the second mapping file is organized in a hierarchy based upon a second set of one or more possible components of the pathname.

7. The storage media as recited in claim 6 , wherein said method further comprising in response to receiving said given human readable name, accessing said mapping file and providing said corresponding file system unique identifier.

8. The storage media as recited in claim 6 , wherein said method further comprising in response to receiving said given human readable name, accessing said mapping file and returning said corresponding file system unique identifier and deleting said entry including said given human-readable name.

9. The storage media as recited in claim 6 , wherein said given human-readable name is a pathname.

10. The storage media as recited in claim 9 , wherein said method further comprising in response to receiving a given pathname, accessing said mapping file and returning a list of components, wherein each of said components is an entry in said table.

11. A system comprising:

a plurality of nodes interconnected via a network, wherein each of said nodes includes:

a processor configured to execute program instructions;

a memory coupled to said processor, said memory including said program instructions executable to implement a method of:

receiving a file system unique identifier corresponding to a particular file;

receiving a human-readable name corresponding to said particular file; and

binding said human-readable name to said file system unique identifier;

wherein said binding creates a mapping between said human-readable name and said file system unique identifier; and

wherein said mapping includes a mapping file including a table having a plurality of entries, each including a given human-readable name and a file system unique identifier corresponding to said given human-readable name;

wherein said given human-readable name comprises a pathname; and

wherein in response to receiving a given pathname including one or more pathname components:

accessing a first mapping file corresponding to a root component of said pathname, wherein the first mapping file provides a first file system unique identifier corresponding to a first component of said pathname and wherein the first mapping file is organized in a hierarchy based upon a first set of one or more possible components of the pathname; and

accessing a second mapping file corresponding to said first component of said pathname using said first file system unique identifier, wherein the second mapping file provides a second file system unique identifier corresponding to a second component of said pathname and wherein the second mapping file is organized in a hierarchy based upon a second set of one or more possible components of the pathname.

12. A system comprising:

a plurality of nodes interconnected via a network, wherein each of said nodes includes:

a processor configured to execute program instructions;

a memory coupled to said processor and configured to store said program instructions;

a global name space service manager coupled to said processor and configured to:

receive a file system unique identifier corresponding to a particular file;

receive a human-readable name corresponding to said particular file;

bind said human-readable name to said file system unique identifier and create a mapping between said human-readable name and said file system unique identifier; and

create a mapping file including a table having a plurality of entries, each including a given human-readable name and a file system unique identifier corresponding to said given human-readable name;

wherein said given human-readable name comprises a pathname; and

wherein in response to receiving a given pathname including one or more pathname components, said global name space service manager is further configured to:

access a first mapping file corresponding to a root component of said pathname, wherein the first mapping file provides a first file system unique identifier corresponding to a first component of said pathname and wherein the first mapping file is organized in a hierarchy based upon a first set of one or more possible components of the pathname; and

access a second mapping file corresponding to said first component of said pathname using said first file system unique identifier, wherein the second mapping file provides a second file system unique identifier corresponding to a second component of said pathname and wherein the second mapping file is organized in a hierarchy based upon a second set of one or more possible components of the pathname.

13. The system as recited in claim 12 , wherein said global name space service manager is further configured to access said mapping file and to provide said corresponding file system unique identifier in response to receiving said given human-readable name.

14. The system as recited in claim 12 , wherein said global name space service manager is further configured to access said mapping file, to return said corresponding file system unique identifier and to delete said entry including said given human-readable name in response to receiving said given human-readable name.

15. The system as recited in claim 12 , wherein said global name space service manager of a given node is further configured to replicate and store on said given node a mapping file created on another node.

16. The system as recited in claim 15 , wherein said global name space service manager of said given node is further configured to delete said replicated mapping file in response to a mapping file replacement timeout.

17. A system comprising:

a plurality of nodes interconnected via a network, wherein each of said nodes includes:

a processor configured to execute program instructions;

a memory coupled to said processor and configured to store said program instructions;

means for receiving a file system unique identifier corresponding to a particular file;

means for receiving a human-readable name corresponding to said particular file; and

means for binding said human-readable name to said file system unique identifier;

wherein said binding creates a mapping between said human-readable name and said file system unique identifier; and

wherein said mapping includes a mapping file including a table having a plurality of entries, each including a given human-readable name and a file system unique identifier corresponding to said given human-readable name;

wherein said given human-readable name comprises a pathname; and

wherein in response to receiving a given pathname including one or more pathname components:

accessing a first mapping file corresponding to a root component of said pathname, wherein the first mapping file provides a first file system unique identifier corresponding to a first component of said pathname and wherein the first mapping file is organized in a hierarchy based upon a first set of one or more possible components of a pathname; and

accessing a second mapping file corresponding to said first component of said pathname using said first file system unique identifier, wherein the second mapping file provides a second file system unique identifier corresponding to a second component of said pathname and wherein the second mapping file is organized in a hierarchy based upon a second set of one or more possible components of the pathname.

Assignments (12)
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 →
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED ON REEL 019872 FRAME 979. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNEE IS SYMANTEC OPERATING CORPORATION. Recorded Feb 21, 2008
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 020540/0248 →
CHANGE OF NAME Recorded Sep 26, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC CORPORATION
Reel/Frame 019872/0979 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2003
From: SLAUGHTER, GREGORY L.; MUTH, JOHN; WONG, KAI
To: VERITAS OPERATING CORPORATION
Reel/Frame 014167/0570 →