Data layer prioritization in an application layered system
First Claim
1. A layered computing system discriminating a priority among a plurality of enabled layers of different types located on storage of the system, the types of layers recognized by the system including an application layer type and a data layer type, and wherein layers identified as data layers carry file reference information determining which files may be written therein, said system comprising:
- a processor;
data and program storage accessible by said processor, said storage comprising one or more data storage devices;
an operating system stored to said storage;
computer readable instructions located to said program storage, wherein said instructions are configured to be executed by said processor to perform the functions of;
(i) receiving from an application a request to perform a file operation, that request containing a file reference appropriate to a file system,(ii) identifying a set of enabled layers,(iii) determining a priority for searching the enabled layers and a base filesystem,(iv) performing a search for the file object corresponding to the file reference, the search performed in order of the determined priority,(v) when, in performing the search for a non-write request, a file object having priority is found corresponding to the file reference in a layer, returning a virtual file handle to that virtual file object,(vi) when, in performing the search, a file object is not found corresponding to the file reference, and when the request was not a write request, returning a result indicating that no file object corresponding to the file reference can be accessed,(vii) for a write request;
(a) reading the file reference information carried with a data layer;
(b) comparing the file reference requested against the file reference information of a data layer; and
(c) when, while performing the search, a data layer is encountered with file reference information permitting writing of the requested file reference to that data layer, finding a virtual file object in that data layer and returning a virtual file handle to that virtual file object, whereina data layer containing inclusion or exclusion entries that determine which files may be written therein is prioritized before any read-write application layers or sublayers to capture certain files and avoid deposition into the application layers.
3 Assignments
0 Petitions
Accused Products
Abstract
The inventions relate generally to layered computing systems that provide public access to the content of the layers. Also disclosed herein are prioritization schemes usable in a layered computing system, including prioritization by layer type, by assigned priority weights, by access type, by sub-layers and by read-write indicators. Processes may further be associated to layers from which they originate, and priority given to associated layers thereby. Association may also be provided for installer services, thereby depositing an applications updates into its layer. Layers may also contain file reference information including exclusion or inclusion entries indicating what files may be written thereto. Paths recorded in layers may also embed variables to true paths on a layered system. Detailed information on various example embodiments of the inventions are provided in the Detailed Description below, and the inventions are defined by the appended claims.
-
Citations
20 Claims
-
1. A layered computing system discriminating a priority among a plurality of enabled layers of different types located on storage of the system, the types of layers recognized by the system including an application layer type and a data layer type, and wherein layers identified as data layers carry file reference information determining which files may be written therein, said system comprising:
-
a processor; data and program storage accessible by said processor, said storage comprising one or more data storage devices; an operating system stored to said storage; computer readable instructions located to said program storage, wherein said instructions are configured to be executed by said processor to perform the functions of; (i) receiving from an application a request to perform a file operation, that request containing a file reference appropriate to a file system, (ii) identifying a set of enabled layers, (iii) determining a priority for searching the enabled layers and a base filesystem, (iv) performing a search for the file object corresponding to the file reference, the search performed in order of the determined priority, (v) when, in performing the search for a non-write request, a file object having priority is found corresponding to the file reference in a layer, returning a virtual file handle to that virtual file object, (vi) when, in performing the search, a file object is not found corresponding to the file reference, and when the request was not a write request, returning a result indicating that no file object corresponding to the file reference can be accessed, (vii) for a write request; (a) reading the file reference information carried with a data layer; (b) comparing the file reference requested against the file reference information of a data layer; and (c) when, while performing the search, a data layer is encountered with file reference information permitting writing of the requested file reference to that data layer, finding a virtual file object in that data layer and returning a virtual file handle to that virtual file object, wherein a data layer containing inclusion or exclusion entries that determine which files may be written therein is prioritized before any read-write application layers or sublayers to capture certain files and avoid deposition into the application layers. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A set of non-transitory computer readable media containing computer instructions for discriminating a priority among a plurality of enabled layers of different types located on storage accessible by a layered computing system, the types of layers recognized by the system including an application layer type and a data layer type, and wherein layers identified as data layers carry file reference information determining which files may be written therein, the set of computer readable media comprising at least one medium upon which is stored the computer instructions executable by a computing system to achieve the functions of:
-
(i) receiving from an application a request to perform a file operation, that request containing a file reference appropriate to a file system, (ii) identifying a set of enabled layers, (iii) determining a priority for searching the enabled layers and a base filesystem, (iv) performing a search for the file object corresponding to the file reference, the search performed in order of the determined priority, (v) when, in performing the search for a non-write request, a file object having priority is found corresponding to the file reference in a layer, returning a virtual file handle to that virtual file object, (vi) when, in performing the search, a file object is not found corresponding to the file reference, and when the request was not a write request, returning a result indicating that no file object corresponding to the file reference can be accessed, (vii) for a write request; (a) reading the file reference information carried with a data layer, (b) comparing the file reference requested against the file reference information of a data layer, and (c) when, while performing the search a data layer is encountered with file reference information permitting writing of the requested file reference to that data layer, finding a virtual file object in that data layer and returning a virtual file handle to that virtual file object, wherein a data layer containing inclusion or exclusion entries that determine which files may be written therein is prioritized before any read-write application layers or sublayers to capture certain files and avoid deposition into the application layers. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13)
-
-
14. A method of discriminating a priority among a plurality of enabled layers of different types located on storage accessible by a layered computing system, the types of layers recognized by the system including an application layer type and a data layer type, and wherein layers identified as data layers carry file reference information determining which files may be written therein, the method comprising the steps of:
-
receiving from an application a request to perform a file operation, that request containing a file reference appropriate to a file system; identifying a set of enabled layers; determining a priority for searching the enabled layers and a base filesystem; performing a search for the file object corresponding to the file reference, the search performed in order of the determined priority; when, in performing the search for a non-write request, a file object having priority is found corresponding to the file reference in a layer, returning a virtual file handle to that virtual file object; when, in performing the search, a file object is not found corresponding to the file reference, and when the request was not a write request, returning a result indicating that no file object corresponding to the file reference can be accessed; for a write request; (a) reading the file reference information carried with a data layer; (b) comparing the file reference requested against the file reference information of a data layer; and (c) when, while performing the search, a data layer is encountered with file reference information permitting writing of the requested file reference to that data layer, finding a virtual file object in that data layer and returning a virtual file handle to that virtual file object, wherein the search order for non-write requests is different than for write requests. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification