Techniques for establishing a file system that exposes a virtual file system for backup operations
Summary by NHIP
Virtual File System Backup
The method exposes file changes as an independent Virtual File System to perform backups via a single addressable interface. It detects kernel-level event notifications using a File System in User Space module and acquires metadata by querying inodes for size increases or decreases.
Claim Score by NHIP
Abstract
Techniques for establishing a files system that exposes a virtual file system for backup operations are presented. Changes to files of a file system are maintained separately or collected and presented as a VFS. The VFS is then used to perform backup operations. Moreover, the files identified in the VFS can be customized based on search parameters, criterion, and/or criteria supplied by a user or supplied as parameters to backup and VFS mount operations.

Term
Projected expiry 11 May 2029.
- Priority
- Filed
- Granted
- Today
- Projected expiry
11 claims: 2 independent, 9 dependent
- 1A method implemented in a non-transitory computer-readable storage medium as executable instructions that process on one or more processors to perform the method, comprising:exposing, by the processors, a list of the files having changes in a file system as an independent Virtual File System (VFS) that is used to perform a backup operation on the list of files that changed, the VFS used as a single addressable interface that bridges different file systems, wherein exposing further includes detecting event notifications at a kernel level of the OS for each of the changes, wherein detecting further includes using a File System in User Space (FUSE) module to track the event notifications from the kernel level;and acquire, by the processors, metadata by querying inodes for the files, the metadata including data changes of each file and an increase or decrease in file size for each file after the changes.
- 8Broadest claimClaim Score 64, broad(NHIP)A method implemented in a non-transitory computer-readable storage medium as executable instructions that process on one or more processors to perform the method, comprising:modifying, by the processors, a file system (FS) to track changes to files as a separate linked list of inodes that form a virtual file system (VFS) that is mounted as a separate file system, and obtaining the changes by querying the files;backing up, by the processors, the VFS incrementally and differentially for the linked list of inodes;and providing, by the processors, copy-on-write operations for the backup operation processed on the VFS inodes.
Independent claims2
68 paragraphs in 5 sections, as filed
RELATED APPLICATIONS
The present application claims priority to, and is a Continuation of U.S. Ser. No. 12/463,489, filed May 11, 2009, now U.S. Pat. No. 8,285,682 entitled: “Techniques for Establishing a File System that Exposes a Virtual File System for Backup Operations,” which presently stands allowed, and the disclosure of which is incorporated by reference in its entirety herein and below.
BACKGROUND
Electronic information is captured for nearly every aspect of one's life, operations of an enterprise, and affairs of governments. This information is gathered, organized, in some cases indexed, analyzed, and mined. Information drives nearly all aspects of modern life. The improvements associated with information gathering, organizing, and analyzing have been further enhanced with the advent of the Internet, the World-Wide Web (WWW), high speed network connectivity, wireless connectivity, and mobile devices that can access networks from virtually anywhere on the globe.
Essentially, information is now omnipresent and available to virtually everyone at anytime from anywhere and at a relatively low cost. These things have dramatically changed the manner in which affairs of individuals are conducted and changed the manner in which business and government operations are conducted.
One issue with data collection is storage space, high availability of data when primary storage for the data fails, and backup capabilities when storage fails to ensure that information is not lost.
In the last few years there has also been a tremendous growth in the collection of unstructured data. While file systems and disks have scaled up to store terabytes of data, backing up this data is becoming increasingly difficult. Though mirroring, snapshots, de-duplication and other upstart technologies have promised a panacea for managing this data, hardcore administrators realize that no technology exists other than a simple backup procedure that can help them against a accidental deletion of important data from a storage device. For example, a simple “rm-rf” operation in a Unix® or Linux® operating system (OS) performed by one with root privileges can literally permanently erase data in an unintended manner or in some cases based on malicious intent. So, backup solutions remain an essential yet neglected piece of the “information explosion” puzzle.
Thus, what are needed are improved techniques for providing efficient backup operations for large file systems having voluminous amounts of data being managed thereon.
SUMMARY
In various embodiments, techniques for establishing a file system that exposes a virtual file system for backup operations are presented. More specifically, and in an embodiment, a method is provided for establishing a file system that exposes a virtual file system for backup operations.
BRIEF DESCRIPTION OF THE DRAWINGS
<figref idref="DRAWINGS">FIG. 1</figref> is a diagram of a method that is provided for establishing a file system that exposes a virtual file system for backup operations, according to an example embodiment.
<figref idref="DRAWINGS">FIG. 2</figref> is a diagram of another method for establishing a file system that exposes a virtual file system for backup operations, according to an example embodiment.
<figref idref="DRAWINGS">FIG. 3</figref> is a diagram of a backup operation file system, according to an example embodiment.
<figref idref="DRAWINGS">FIG. 4</figref> is a diagram of another backup operation file system, according to an example embodiment.
DETAILED DESCRIPTION
As used herein a “resource” is an addressable and uniquely distinguishable entity, which is represented within a network, such as but not limited to, a user, a service, a group, a printer, a server, a website, a file, a directory, a domain, a device, custom-defined objects, etc.
Various aspects of this invention discuss usage of a “file system (FS)” A “FS” is an interface and set of management modules that allow data to be stored on, organized on, and retrieved from physical storage. So, a FS may be viewed as a special-purpose database for the storage, organization, manipulation, and retrieval of data (such as files).
A “virtual file system (VFS)” is an abstraction layered on top of a physical FS that permits applications to access different types of concrete FS's in a concrete and uniform manner. So, a VFS can be used as a single addressable interface that bridges different FS's, such as Windows®, Linux®, Macintosh®, etc.
File System in User Space (FUSE) is a loadable kernel module in a Unix®-like operating system (OS) that allows non-privileged users to create their own custom FS's without having to edit or modify the kernel code of the OS. A FUSE module acts as a higher-level bridge to the underlying kernel interfaces of the OS. Thus, FUSE modules permit creation and maintenance of VFS's. Any resource available to a FUSE implementation can be exported as its own FS.
According to an embodiment, the techniques presented herein are implemented in FS's and OS's. In an embodiment, the OS is Linux®, such as Suse® Linux®, distributed by Novell®, Inc. of Provo, Utah.
Of course, the embodiments of the invention can be implemented in a variety of architectural platforms and products. Any particular architectural layout, product, or implementation presented herein is provided for purposes of illustration and comprehension only and is not intended to limit various aspects of the invention.
It is within this initial context, that various embodiments of the invention are now presented with reference to the <figref idref="DRAWINGS">FIGS. 1-4</figref>.
<figref idref="DRAWINGS">FIG. 1</figref> is a diagram of a method <b>100</b> that is provided for establishing a file system (FS) that exposes a virtual file system (VFS) for backup operations, according to an example embodiment. The method <b>100</b> (hereinafter “custom FS service”) is implemented as instructions in a machine-accessible and computer-readable storage medium. The instructions when executed by one or more network-based machines (processing devices, processors, computers, etc.) perform the processing depicted in <figref idref="DRAWINGS">FIG. 1</figref>. The custom FS service is also operational over and processes within a network. The network may be wired, wireless, or a combination of wired and wireless.
At <b>110</b>, the custom FS service receives event notifications from a kernel subsystem of an OS when changes occur to files managed by a FS of the OS. These changes can be to primary data or content associated with the files or to metadata associated with the files. Some metadata changes might include such things as changes in security to the files, changes in ownership with the files, changes to name descriptors to the files, etc. In some cases, changes can be associated with both primary data and metadata.
According to an embodiment, at <b>111</b>, the custom FS service identifies the OS as a Linux® OS. The Linux® OS includes a variety of beneficial modules that make receiving custom event notifications easier to achieve.
For example, at <b>112</b>, the custom FS service can use an inotify operation of the Linux® OS to dynamically monitor the FS and to provide the event notifications when the changes occur to the files.
In another case, at <b>113</b>, the custom FS service acquires with the event notifications a variety of metadata. Some of this metadata can include inodes (OS identifiers) for the files changed, date of changes to each file, time-of-day changes to each file, size increase in bytes, and/or size decrease in bytes associated with changes to each file. It is noted that the event notifications may just provide the notification that a change occurred and the custom FS service can query inodes for each of the changed files to get the metadata. In other cases, the event notifications include all the metadata. What metadata is tracked and acquired can be customized and can be defined via a configuration of the custom FS service or via parameters to the custom FS service. The type of metadata can also be custom defined via a profile or policy associated with the custom FS service.
At <b>120</b>, the custom FS service modifies a FUSE module to receive and track the event notifications received from the kernel subsystem. That is, the custom FS service listens for the event notifications emanating from the OS and the kernel subsystem and collects these changes via a modified and enhanced FUSE module configured to collect these changes.
In an embodiment, at <b>121</b>, the custom FS service uses the FUSE module to collect the metadata acquired from the event notifications. The metadata identified and acquired at <b>113</b>.
At <b>130</b>, the custom FS service exposes a list of the files having the changes as a VFS that is used to perform a backup operation on the list that changed. The FUSE module exposes the list as the VFS. The FUSE module has abstracted a subset of the underlying FS of the OS as its own VFS represented by just those files that have changed since a last backup operation or since some predefined custom provided date.
According to an embodiment, at <b>131</b>, the custom FS service selectively modifies the list and the VFS in response to user-supplied parameters that match portions of the metadata, again the metadata supplied and acquired at <b>113</b> and <b>121</b>. So, custom queries or parameters can be used to modify the list of files that comprise the VFS and that will be used with the backup operation.
In an embodiment, at <b>140</b>, the custom FS service processes the backup operation against the list by mounting the VFS having just those files that have changed since a last backup operation or since some predefined date.
Continuing with the embodiment at <b>140</b> and at <b>141</b>, the custom FS service selectively mounts portions of the list as the VFS evaluates parameters associated with the backup operation. The parameters are compared to metadata associated with each of the files in the list. So, parameters or queries against the list can be used to mount the VFS as a selective portion of files that are included in the list.
For example, consider the operation “mount-t backupfs/dev/sdal-o begindate=‘17-04-2008’/mnt.” Here, the VFS is mounted for a backup operation “backupfs” to “/mnt” and just files and directories that have been modified since the 17 of Apr. 2008 are included in the mounted VFS.
In another example, consider the operation “mount-t backupfs/dev/sdal-o begindate=‘last’/mnt.” Here, the VFS is mounted for a backup operation “backupfs” to “/mnt” and just files and directories that have been modified since a last mount or last backup operation are included in the VFS.
The approach of using a FUSE module is presented with the custom FS service of the <figref idref="DRAWINGS">FIG. 1</figref>. Another approach can be used as well to establish a FS that exposes a VFS for a backup operation. Such an alternative approach is now shown in the discussion of the method <b>200</b> of the <figref idref="DRAWINGS">FIG. 2</figref>.
<figref idref="DRAWINGS">FIG. 2</figref> is a diagram of another method <b>200</b> for establishing a FS that exposes a VFS for backup operations, according to an example embodiment. The method <b>200</b> (herein after referred to as “VFS backup operation service”) is implemented in a machine-accessible and computer-readable storage medium as instructions, which when accessed by one or more machines (processors, etc.) perform the processing depicted in the <figref idref="DRAWINGS">FIG. 2</figref>; the VFS backup operation service is also operational over a network; and the network may be wired, wireless, or a combination of wired and wireless.
The VFS backup operation service presents an alternative approach from that which was discussed with the custom FS service represented by the method <b>100</b> of the <figref idref="DRAWINGS">FIG. 1</figref> and discussed above.
At <b>210</b>, the VFS backup operation service modifies and configures a file system of an OS to track changes to files as a separate linked list of inodes. That is, an existing file system is modified and enhanced and configured to record changes that occur to files managed by the FS as a linked list of inode references that are separately maintained within the FS.
According to an embodiment, at <b>211</b>, the VFS backup operation service changes the FS to record the inodes of the files when changes are made to primary data or metadata associated with the files. Again, the inodes are separately maintained in the file system as the linked list of inodes. Metadata can also be carried with the inodes that indicates when the files were changed, what changes in size occurred to the files, who made the changes, etc. The types of metadata that can be maintained with the inodes in the list can be configured as configuration parameters to the VFS backup operation service.
At <b>220</b>, the VFS backup operation service periodically updates, via the modified FS, the linked list of inodes. That is, the modified FS periodically scans the FS for changes and updates the inodes to the linked list of inodes.
For example, at <b>221</b>, the VFS backup operation service inspects files of the modified FS at a configured interval of time to update the linked list of inodes for the files that have changed since a last inspected interval. The inspection is achieved via the modified FS.
Continuing with the embodiment at <b>221</b> and at <b>222</b>, the VFS backup operation service provides the configured interval of time as a parameter, a policy, or a profile that the modified FS uses to dynamically configure itself for purposes of inspecting the files of the FS at the configured interval of time.
At <b>230</b>, the VFS backup operation service provides the linked list of inodes as a mountable VFS for use in a backup operation. So, the linked list of inodes becomes a higher level abstraction that can be manipulated as its own independent and separate VFS. That VFS includes just inode references to files that have changes since a last backup operation or since some parameter provided criterion or criteria that can be used as a search to narrow the linked list of inodes down to a list needed for a backup operation.
According to an embodiment, at <b>231</b>, the VFS backup operation service presents the VFS as a read-only restricted view VFS that permits the files associated with the inodes of the list to be acquired and read for purposes of processing the backup operation but does not permit the files that comprise the VFS to be modified or deleted. This is a read only view useful and efficient for the backup operation against the inodes of the list.
In another situation, at <b>240</b>, the VFS backup operation service provides copy-on-write operations for the backup operation processed on the VFS.
In another case, at <b>250</b>, the VFS backup operation service processes the backup operation against the VFS as an incremental and differential backup on the files that comprise the VFS. So, the backup can be a full backup operation that writes the entire file that changed or can be a backup that just records differences that were made such that the changes can be reconstructed using the original file and applying a series of incremental changes recorded in the backup.
The method <b>100</b> demonstrated how a file system is established to expose a VFS for performing more efficient backup operations on changed files by using a FUSE module to create the VFS and using notifications that emanate from the OS. The method <b>200</b> demonstrated how the same result can be achieved via modifications and enhancements to a FS to have it maintain inodes in a linked list that is then presented as a VFS for backup operations.
<figref idref="DRAWINGS">FIG. 3</figref> is a diagram of a backup operation file system <b>300</b>, according to an example embodiment. The backup operation file system <b>300</b> is implemented in a machine-accessible and computer-readable storage medium as instructions, which when executed by one or more machines (computers or processor-enabled devices) perform, among other things, the processing depicted in the method <b>100</b> of the <figref idref="DRAWINGS">FIG. 1</figref>. The backup operation file system <b>300</b> is also operational over a network; the network may be wired, wireless, or a combination of wired and wireless.
The backup operation file system <b>300</b> includes FUSE module <b>301</b> and a VFS <b>302</b>. Each of these components and their interactions with one another will now be discussed in turn.
The FUSE module <b>301</b> is implemented in a computer-readable storage medium and to execute on a processor and within an operating system (OS) of that processor. Example aspects of the FUSE module <b>301</b> were presented in detail above with respect to method <b>100</b> of the <figref idref="DRAWINGS">FIG. 1</figref>.
The FUSE module <b>301</b> receives kernel notifications from the OS when changes occur to files being managed by a FS of the OS. The FUSE module <b>301</b> collects these files and presents them as the VFS <b>302</b>.
According to an embodiment the OS is a Linux® OS. Although it is noted that any OS can be used with the teachings presented herein. When the OS is a Linux® OS, then the FUSE module <b>301</b> receives the kernel notifications from an inotify operation of the Linux® OS.
In another case, the FUSE module <b>301</b> collects metadata with the files that have changed. The metadata includes inodes for the files, dates for changes made to the files, time-of-day changes made to the files, size increases and size decreases for changes made to the files, etc.
Continuing with the previous embodiment and in another case, the FUSE module <b>301</b> collects the metadata and files that changed as a list and then modifies the list in response to user-supplied parameters that match portions of the metadata. Example situations of this were presented above with reference to the method <b>100</b> of the <figref idref="DRAWINGS">FIG. 1</figref>.
The VFS <b>302</b> is implemented in a computer-readable storage medium and executes on the processor. Example aspects of the VFS <b>302</b> were presented above with reference to the methods <b>100</b> and <b>200</b> of the <figref idref="DRAWINGS">FIGS. 1 and 2</figref>, respectively.
The VFS <b>302</b> is used to process a backup operation against the files that comprise the VFS <b>302</b>. In this way, more efficient backup operations are achieved because the changed files are already maintained and known and the underlying physical FS does not have to be queried and inspected. Moreover, the VFS <b>302</b> acts as a unit and logical FS that includes all the files that are to be backed up by the backup operation. This is more processor efficient that conventional backup approaches.
In an embodiment, the VFS <b>302</b> is mounted with the files within the OS before the backup operation is processed on the files that changed.
<figref idref="DRAWINGS">FIG. 4</figref> is a diagram of another backup operation file system <b>400</b>, according to an example embodiment. The backup operation file system <b>400</b> is implemented as instructions on or within a machine-accessible and computer-readable storage medium. The instructions when executed by one or more machines (processor-enabled devices) perform, inter alia; the processing depicted with respect to the method <b>200</b> of the <figref idref="DRAWINGS">FIG. 2</figref>. The backup operation file system <b>400</b> is also operational over a network and the network may be wired, wireless, or a combination of wired and wireless.
The backup operation file system <b>400</b> is an alternative approach to exposing a VFS for backup operations from that which was presented above with respect to the backup operation file system <b>300</b> represented by the <figref idref="DRAWINGS">FIG. 3</figref> and presented above.
The backup operation file system <b>400</b> includes a FS <b>401</b> and a VFS <b>402</b>. Each of these components and their interactions with one another will now be discussed in turn.
The FS <b>401</b> is implemented in a computer-readable storage medium and executes on a processor. Example aspects of the FS <b>401</b> were presented in detail above with respect to the method <b>200</b> of the <figref idref="DRAWINGS">FIG. 2</figref>.
The FS <b>401</b> dynamically maintains a linked list of inodes for files that have been changed since a last recorded event within an OS. The FS <b>401</b> exposes the linked list of inodes as the VFS <b>401</b>.
According to an embodiment, the FS <b>401</b> inspects the files of the OS at a configured interval to update the linked list of inodes.
In another case, the FS <b>401</b> exposes the linked list as a read-only restricted view within the VFS <b>402</b> that does not permit modification or deletion to the files that are represented by the inodes of the VFS <b>402</b>.
The VFS <b>402</b> is implemented in a computer-readable storage medium and executes on the processor. Example aspects of the VFS <b>402</b> were presented in detail above with reference to the method <b>200</b> of the <figref idref="DRAWINGS">FIG. 2</figref>.
The VFS <b>402</b> is used to process a backup operation to efficiently backup the files associated with the inodes that are defined in the VFS <b>402</b>.
One now appreciates how backup operations can be more efficiently achieved by dynamically tracking changes to files and then exposing just those changed files as a mountable VFS for which the backup operation is processed against.
It is also noted that the techniques presented herein can also be used in database contexts. For example, dynamically changes can be tracked for database tables and then the changes can be exposed as a logical unit within a virtual database. This could also provide for more efficient database backup operations and update operations in some situations.
The above description is illustrative, and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of embodiments should therefore be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.
The Abstract is provided to comply with 37 C.F.R. §1.72(b) and will allow the reader to quickly ascertain the nature and gist of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.
In the foregoing description of the embodiments, various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting that the claimed embodiments have more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Description of the Embodiments, with each claim standing on its own as a separate exemplary embodiment.
Contents5
5 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5
Every citation, both waysCites: the store holds 45 of 46
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US9606871B2 | Cited by | United States of America | Applicant |
| US2003225865A1 | Cites | United States of America | Search report |
| US2004064488A1 | Cites | United States of America | Search report |
| US2005081099A1 | Cites | United States of America | Applicant |
| US2005273858A1 | Cites | United States of America | Applicant |
| US2005278382A1 | Cites | United States of America | Search report |
| US2005278383A1 | Cites | United States of America | Search report |
| US2007005661A1 | Cites | United States of America | Search report |
| US2007079086A1 | Cites | United States of America | Search report |
| US2007156789A1 | Cites | United States of America | Search report |
| US2007174353A1 | Cites | United States of America | Search report |
| US2007185934A1 | Cites | United States of America | Search report |
| US2009144422A1 | Cites | United States of America | Search report |
| US2009240737A1 | Cites | United States of America | Applicant |
| US2009327357A1 | Cites | United States of America | Search report |
| US2010174745A1 | Cites | United States of America | Search report |
| US2010287140A1 | Cites | United States of America | Applicant |
| US2013138618A1 | Cites | United States of America | Search report |
| US5765165A | Cites | United States of America | Search report |
| US6829688B2 | Cites | United States of America | Applicant |
| US6983296B1 | Cites | United States of America | Search report |
| US7051053B2 | Cites | United States of America | Applicant |
| US7246211B1 | Cites | United States of America | Applicant |
| US7567994B2 | Cites | United States of America | Search report |
| US7603391B1 | Cites | United States of America | Search report |
| US8001580B1 | Cites | United States of America | Search report |
| US8099605B1 | Cites | United States of America | Search report |
| US8195624B2 | Cites | United States of America | Search report |
| US8229897B2 | Cites | United States of America | Search report |
| US20030225865A1 | Cites | United States of America | Search report |
| US20040064488A1 | Cites | United States of America | Search report |
| US20050081099A1 | Cites | United States of America | Applicant |
| US20050273858A1 | Cites | United States of America | Applicant |
| US20050278382A1 | Cites | United States of America | Search report |
| US20050278383A1 | Cites | United States of America | Search report |
| US20070005661A1 | Cites | United States of America | Search report |
| US20070079086A1 | Cites | United States of America | Search report |
| US20070156789A1 | Cites | United States of America | Search report |
| US20070174353A1 | Cites | United States of America | Search report |
| US20070185934A1 | Cites | United States of America | Search report |
| US20090144422A1 | Cites | United States of America | Search report |
| US20090240737A1 | Cites | United States of America | Applicant |
| US20090327357A1 | Cites | United States of America | Search report |
| US20100174745A1 | Cites | United States of America | Search report |
| US20100287140A1 | Cites | United States of America | Applicant |
| US20130138618A1 | Cites | United States of America | Search report |
| Wikipedia, inotify, Retrieve from the web.archive.org, Nov. 12, 2007, 3 pages. | Non-patent | – | Search report |
| "Filesystem in Userspace", [Online]. Retrieved from the Internet: Retrieved on May 20, 2011, 3 pgs. | Non-patent | – | Applicant |
| Kaczmarski, Michael, et al., "Beyond Backup Toward Storage Management", IBM Systems Journal 42 (2), (2003), 322-337. | Non-patent | – | Applicant |
| Konishi, Ryusuke, et al., "The Linux Implementation of a Log-structured File System", ACM SIGOPS Operating Systems Review 40 (3), (Jul. 2006), 102-107. | Non-patent | – | Applicant |
| Peterson, Zachary, et al., "Ext3cow: A Time-Shifting File System for Regulatory Compliance", ACM Transactions on Storage, 1 (2), (May 2005), 190-212. | Non-patent | – | Applicant |
| Raghavan, Arun, "File System Independent Metadata Organization for TrasCrypt", Masters Thesis, Dept. of Computer Science & Engineering, Indian Institute of Technology, Kanpur, India, (Jun. 2008), 72 pgs. | Non-patent | – | Applicant |
| Wikipedia, inotify, Retrieve from the web.archive.org, Nov. 12, 2007, 3 pages. | Non-patent | – | Search report |
| “Filesystem in Userspace”, [Online]. Retrieved from the Internet: <http://en.wikipedia.org/wiki/Filesystem<sub>—</sub>in<sub>—</sub>Userspace> Retrieved on May 20, 2011, 3 pgs. | Non-patent | – | Applicant |
| Kaczmarski, Michael, et al., “Beyond Backup Toward Storage Management”, IBM Systems Journal 42 (2), (2003), 322-337. | Non-patent | – | Applicant |
| Konishi, Ryusuke, et al., “The Linux Implementation of a Log-structured File System”, ACM SIGOPS Operating Systems Review 40 (3), (Jul. 2006), 102-107. | Non-patent | – | Applicant |
| Peterson, Zachary, et al., “Ext3cow: A Time-Shifting File System for Regulatory Compliance”, ACM Transactions on Storage, 1 (2), (May 2005), 190-212. | Non-patent | – | Applicant |
| Raghavan, Arun, “File System Independent Metadata Organization for TrasCrypt”, Masters Thesis, Dept. of Computer Science & Engineering, Indian Institute of Technology, Kanpur, India, (Jun. 2008), 72 pgs. | Non-patent | – | Applicant |
6 members in 1 office
Priority claims6
| Document | Office | Kind | Date |
|---|---|---|---|
| 46348909 | United States of America | A | |
| 46348909 | United States of America | A | |
| 201213619818 | United States of America | A | |
| 12463489 | – | – | – |
| US20090463489 | – | – | – |
| US201213619818 | – | – | – |
Members6
| Document | Office | Kind | |
|---|---|---|---|
| US2010287140A1 | United States of America | A1 | |
| US8285682B2 | United States of America | B2 | |
| US2013013565A1 | United States of America | A1 | |
| US8935209B2This record | United States of America | B2 | |
| US2015120667A1 | United States of America | A1 | |
| US9606871B2 | United States of America | B2 |
60 transactions on the USPTO file
Allowed after 2 non-final rejections, 1 final rejection and 1 RCE.
- Non-final rejections
- 2
- Final rejections
- 1
- RCEs
- 1
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Expire PatentEXP. | EXP. | |
| Maintenance Fee Reminder MailedREM. | REM. | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Email NotificationEML_NTR | EML_NTR | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Terminal Disclaimer FiledDIST | DIST | |
| Reasons for AllowanceEX.R | EX.R | |
| Examiner's Amendment CommunicationEX.A | EX.A | |
| Interview Summary - Examiner Initiated - TelephonicEXET | EXET | |
| Interview Summary - Examiner InitiatedEXIE | EXIE | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Advisory Action (PTOL - 303)MCTAV | MCTAV | |
| Advisory Action (PTOL-303)CTAV | CTAV | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Final ActionA.NE | A.NE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Email NotificationEML_NTR | EML_NTR | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| Application Is Now CompleteCOMP | COMP | |
| Email NotificationEML_NTR | EML_NTR | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Cleared by OIPE CSRL194 | L194 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
22 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Lapsed due to failure to pay maintenance feeLapsedFP | FP | |
| Lapse for failure to pay maintenance feesLapsedPATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYLAPS | LAPS | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Fee payment procedureMAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Fee payment procedurePAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP |
Numbers
- Publication
- 08935209
- Publication, DOCDB
- 8935209
- Publication, EPODOC
- US8935209
- Application
- 13619818
- Application, DOCDB
- 201213619818
- Application, EPODOC
- US201213619818
Titles
- English
- Techniques for establishing a file system that exposes a virtual file system for backup operations
Patent term adjustment
- Applicant delay
- −42 days
- Net adjustment
- 0 days
Classification
- CPC, 7
- G06F11/1451
- G06F9/542
- G06F11/1466
- G06F17/30144
- G06F16/1734
- G06F17/30233
- G06F16/188
- IPC, 4
- G06F17 00
- G06F9 54
- G06F11 14
- G06F17 30
- USPC, 6
- 707640000
- 707800000
- 707822000
- 707825000
- 707831000
- 719318000