IP Library Granted Patent US 8,620,955
Granted Patent B2
US 8,620,955 · App. 12/405,362 · Granted Dec 31, 2013

Unified file access across multiple protocols

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 8,620,955
App. No.
12/405,362
Granted
Dec 31, 2013
Kind
B2
Abstract

Apparatus, systems, and methods may operate to construct a file system tree that includes files to be accessed according to a plurality of custom access control list (ACL) access mechanisms registered by a corresponding plurality of applications, or a default ACL access mechanism. To access the files, metadata can be read/written using a multiple protocol file system cache engine and one of the ACL access mechanisms. In some embodiments, operations may include registering, in response to a request by an application, a selected one of the plurality of custom ACL access mechanisms with a library coupled to a multiple protocol file system cache engine. Further operations may include accessing a file system through the multiple protocol file system cache engine using the selected one of the plurality of custom ACL access mechanisms, or a default ACL access mechanism. Additional apparatus, systems, and methods are disclosed.

Claims (54)

1. An apparatus, comprising:

a processing node including at least one processor;

a library module to register at least one of a plurality of custom access control list (ACL) access mechanisms in response to a request by a corresponding one of a plurality of applications; and

a multiple protocol file system cache engine, to use the at least one processor to access a file system using cached metadata associated with one of the plurality of custom ACL access mechanisms when the one of the plurality of custom ACL access mechanisms has been registered, or a default ACL access mechanism when the one of the plurality of custom ACL access mechanisms has not been registered.

2. The apparatus of claim 1 , further comprising:

a network storage device to couple to the processing node and to store at least a portion of the file system.

3. The apparatus of claim 1 , further comprising:

a memory to couple to the processing node and to store metadata associated with files in the file system, the metadata to be cached by the multiple protocol file system cache engine, the metadata to include a consolidated file locking information structure.

4. A system, comprising:

a first processing node in a cluster of nodes, the first processing node including at least one processor;

a library module included in the first processing node to register, in response to a request by an application included in a second processing node in the cluster of nodes, at least one of a first one of a plurality of custom access control list (ACL) access mechanisms; and

a multiple protocol file system cache engine, to use the at least one processor to access a file system using cached metadata associated with one of the first one of the plurality of custom ACL access mechanisms when the one of the first one of the plurality of custom ACL access mechanisms has been registered, or a default ACL access mechanism when the one of the first one of the plurality of custom ACL access mechanisms has not been registered.

5. The system of claim 4 , wherein the multiple protocol file system cache engine is to serve as a communications channel between the application and another application that has registered a second one of the plurality of custom ACL access mechanisms with the library module.

6. The system of claim 4 , further comprising:

a third processing node in the cluster of nodes, the third processing node including a second application to register a second one of the plurality of custom ACL access mechanisms in response to a request by the second application to access the file system.

7. A processor-implemented method to execute on one or more processors that perform the method, comprising:

constructing a file system tree including files to be accessed according to a plurality of custom access control list (ACL) access mechanisms registered in response to at least one request by a corresponding one of a plurality of applications, or according to a default ACL access mechanism; and

reading metadata from or writing metadata to a cache to access the files using a multiple protocol file system cache engine and at least one of the plurality of custom ACL access mechanisms when the at least one of the plurality of custom ACL access mechanisms has been registered, or the default ACL mechanism when the at least one of the plurality of custom ACL access mechanisms has not been registered.

8. The method of claim 7 , further comprising:

communicating at least some of the metadata between applications associated with at least two of the plurality of custom ACL access mechanisms via the multiple protocol file system cache engine.

9. The method of claim 7 , wherein the multiple protocol file system cache engine operates as a daemon process, and wherein the constructing comprises:

constructing the file system tree using the daemon process.

10. The method of claim 7 , further comprising:

accepting registration and de-registration of some of the plurality of custom ACL access mechanisms at a library operating as an interface between the multiple protocol file system cache engine and the plurality of applications.

11. The method of claim 7 , further comprising:

accepting registration of some of the plurality of custom ACL access mechanisms as callback functions associated with the plurality of applications, wherein the callback functions are used by the multiple protocol file system cache engine to access the files upon request by the plurality of applications.

12. The method of claim 7 , wherein some of the plurality of custom ACL access mechanisms include locking functions to lock and unlock access to some of the files.

13. The method of claim 7 , further comprising:

accessing the files using a selected one of the plurality of custom ACL access mechanisms when an application requesting access to the files has registered the selected one of the plurality of custom ACL mechanisms with the library.

14. The method of claim 7 , further comprising:

accessing the files using the default ACL access mechanism when an application requesting access to the files has not registered one of the plurality of custom ACL mechanisms with the library.

15. The method of claim 7 , wherein the default ACL access mechanism does not implement callback functions provided by an application requesting access to the files.

16. The method of claim 7 , further comprising:

receiving a request to access one of the files from a first application associated with a first one of the plurality of custom ACL access mechanisms; and

denying access to the first application by communicating, via the multiple protocol file system cache engine and the metadata, existence of a lock on the one of the files placed by a second application using a second one of the plurality of custom ACL access mechanisms.

17. The method of claim 16 , further comprising:

de-registering one of the plurality of custom ACL access mechanisms registered by a selected one of the plurality of applications in response to receiving a request from the selected one of the applications.

18. A processor-implemented method to execute on one or more processors that perform the method, comprising:

registering, in response to a request by a corresponding one of a plurality of applications, at least a selected one of a plurality of custom access control list (ACL) access mechanisms with a library coupled to a multiple protocol file system cache engine having access to cached metadata; and

accessing a file system through the multiple protocol file system cache engine and the cached metadata using the selected one of the plurality of custom ACL access mechanisms when the selected one of the plurality of custom ACL access mechanisms has been registered, or a default ACL access mechanism when the selected one of the plurality of custom ACL access mechanisms has not been registered.

19. The method of claim 18 , wherein the accessing further comprises:

accessing a file in the file system using callback functions associated with an accessing application as function pointers into the library coupled to the accessing application.

20. The method of claim 18 , further comprising:

caching metadata using the multiple protocol file system cache engine, some of the metadata to be used as callback function arguments to access files in the file system.

21. The method of claim 18 , further comprising:

dynamically loading the library in conjunction with operating the multiple protocol file system cache engine.

22. The method of claim 18 , wherein the accessing comprises:

accessing the file system through the multiple protocol file system cache engine using the selected one of the plurality of custom ACL access mechanisms when an accessing application has registered the selected one with the library.

23. The method of claim 18 , wherein the accessing comprises:

accessing the file system through the multiple protocol file system cache engine using the default ACL access mechanism when an accessing application has not registered any of the plurality of custom ACL access mechanisms with the library.

24. The apparatus of claim 1 , wherein the plurality of applications comprises a first application and a second application, wherein the first and second applications are configured to access the file system using a first protocol and second protocol, respectively.

25. The apparatus of claim 24 , wherein the multiple protocol file system cache engine is configured to deny an access to a file requested by the first application upon determination that the file is locked by the second application.

26. The apparatus of claim 24 , wherein the multiple protocol file system cache engine is configured to inform the first application that a file requested by the first application is locked by the second application.

27. The apparatus of claim 1 , wherein the one of the plurality of custom ACL access mechanisms used by the multiple protocol file system cache engine to access the file system comprises a custom ACL access mechanism registered by the corresponding one of the plurality of applications that requests to access the file system.

Assignments (16)
RELEASE OF SECURITY INTEREST REEL/FRAME 035656/0251 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.)
Reel/Frame 062623/0009 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT TYPO IN APPLICATION NUMBER 10708121 WHICH SHOULD BE 10708021 PREVIOUSLY RECORDED ON REEL 042388 FRAME 0386. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF SUCCESSION OF AGENCY. Recorded Jul 26, 2018
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 048793/0832 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042388/0386 →
CHANGE OF NAME Recorded Sep 13, 2016
From: NOVELL, INC.
To: MICRO FOCUS SOFTWARE INC.
Reel/Frame 040020/0703 →
SECURITY INTEREST Recorded May 13, 2015
From: MICRO FOCUS (US), INC.; BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; NOVELL, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 035656/0251 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0216 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034470/0680 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0316 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034469/0057 →
GRANT OF PATENT SECURITY INTEREST SECOND LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0316 →
GRANT OF PATENT SECURITY INTEREST FIRST LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0216 →
RELEASE OF SECURITY INTEREST IN PATENTS FIRST LIEN (RELEASES RF 026270/0001 AND 027289/0727) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0077 →
RELEASE OF SECURITY IN PATENTS SECOND LIEN (RELEASES RF 026275/0018 AND 027290/0983) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0154 →
GRANT OF PATENT SECURITY INTEREST (SECOND LIEN) Recorded May 13, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026275/0018 →
GRANT OF PATENT SECURITY INTEREST Recorded May 12, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2009
From: SWAMINATHAN, BALAJI; RAGHAVENDRAN, GURURAJAN
To: NOVELL, INC.
Reel/Frame 022486/0916 →