Patent ID: 7970789

Claim:
A layered computing system for accessing files in a base filesystem and a plurality of enabled layers, some of those layers having sublayers associated thereto to be enabled in tandem with those layers, where the layers allow a version of a file to be maintained in one layer while a conflicting version of the file is maintained in another layer, the system prioritizing accesses with respect to the enabled layers and sublayers, 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: receiving commands to enable or disable an identified layer, identifying one or more sublayers associated to the identified layer, the sublayers comprising one or more read-write sublayers associated with the identified layer, enabling or disabling the identified layer and its associated sublayers in tandem upon receiving a command to enable or disable the identified layer, 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 and, searching the set of enabled layers and a base file system for the file object corresponding to the file reference, if, in performing the search, a file object is found corresponding to the file reference in one of the enabled layers, returning a virtual file handle to that file object, if, in performing the search, a file object is found corresponding to the file reference in a base filesystem, returning a file handle to that base file object, if, in performing the search, a file object is not found corresponding to the file reference, and if the request was not a write request, returning a result indicating that no file object corresponding to the file reference can be accessed, if, in performing the search, a file object is not found corresponding to the file reference, and if the request was a write request, returning a virtual file handle or a base file handle to a new file object in one of the enabled layers, and providing for a resetting of the read-write sublayers by: receiving a command to reset, the command identifying a layer, identifying the read-write sublayer associated with the identified layer, and removing all file objects from the identified read-write sublayer associated with the identified layer.