Patents - stay tuned to the technology

Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Havewala, WA

Sarosh Havewala, Kirkland, WA US

Patent application numberDescriptionPublished
20140297987Managing Capacity of a Thinly Provisioned Storage System - A thinly provisioned storage system detects whether physical storage capacity is available when there is a request to allocate storage capacity, prior to data being written to the storage system. In particular, at the time when the file system allocates storage, such as when creating a file or performing an extending write (append) operation, allocating storage to an unallocated region of a sparse file, defragmenting a file, and the like, a storage system can verify that actual physical storage capacity is available. Thus, if there is insufficient actual physical capacity at the time when a storage allocation is attempted, then an error message can be sent and remedial action can be taken.10-02-2014

Sarosh C. Havewala, Kirkland, WA US

Patent application numberDescriptionPublished
20090157770Live Volume Access - This document describes tools capable of enabling an entity requiring exclusive access to data and metadata of a volume to have that exclusive access while also permitting another entity to have access to data and metadata of that volume. The tools, for example, may permit a ChkDsk program to detect and correct data/metadata integrity errors while permitting users to maintain access to a live volume having that data and metadata. In one embodiment the tools create a copy of a logical volume, permit exclusive access to the copy while permitting access to the live volume, and, when the exclusive access is no longer needed, merge the copy and the live volume.06-18-2009
20090248757Application-Managed File Versioning - In accordance with one or more aspects of the application-managed file versioning, a request to store a new version of a file is received from an application, the request having been generated by the application. A filename for the new version of the file is generated, derived from a standardized naming convention. The filename includes a first portion having at least a portion of a name of the file, and a second portion having data indicating that the new version of the file is a version of the file. A set of application programming interfaces (APIs) can be exposed that allow the application to manage file versions, such as creating a new version of a file, identifying one or more versions of the file, listing one or more versions of the file, and deleting one or more versions of the file.10-01-2009
20090327360EFFICIENT FILE MANAGEMENT THROUGH GRANULAR OPPORTUNISTIC LOCKING - Improved methods and systems for granular opportunistic locking mechanisms (oplocks) are provided for increasing file caching efficiency. Oplocks can be specified with a combination of three possible granular caching intentions: read, write, and/or handle. An oplock can be specified with an identifier that indicates a client/specific caller to avoid breaking the original oplock due to an incompatibility from other requests of the same client. An atomic oplock flag is added to create operations that allow callers to request an atomic open with an oplock with a given file.12-31-2009
20110113077Extending Cluster Allocations In An Extensible File System - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.05-12-2011
20110113078Extending Cluster Allocations In An Extensible File System - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.05-12-2011
20110252076EXTENDING CLUSTER ALLOCATIONS IN AN EXTENSIBLE FILE SYSTEM - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.10-13-2011
20120102272EFFICIENT FILE MANAGEMENT THROUGH GRANULAR OPPORTUNISTIC LOCKING - Improved methods and systems for granular opportunistic locking mechanisms (oplocks) are provided for increasing file caching efficiency. Oplocks can be specified with a combination of three possible granular caching intentions: read, write, and/or handle. An oplock can be specified with an identifier that indicates a client/specific caller to avoid breaking the original oplock due to an incompatibility from other requests of the same client. An atomic oplock flag is added to create operations that allow callers to request an atomic open with an oplock with a given file.04-26-2012
20120159243Proactive Error Scan And Isolated Error Correction - Processing for file system volume error detection and processing for resultant error correction are separated to support system availability and user satisfaction. File system volumes for storing data structures are proactively scanned while the volumes remain online to search for errors or corruptions thereon. Found errors are scheduled to be corrected, i.e., spot corrected, dependent on the severity of the identified errors, error correction scheduling and/or at the determination of a file system administrator and/or user, to assist in maintaining minimal user and file system impact. When spot correction is initialized, one file system volume at a time is taken offline for correction. Spot correction verifies prior logged corruptions for the offline volume, and if independently verified, attempts to correct the prior noted corruptions. Volumes are retained offline only for the time necessary to verify and attempt to correct prior noted volume corruptions.06-21-2012
20120159255Online Fault Verification In A File System - Data structure errors, or corruptions, identified during, e.g., normal computing device system processing, file system processing or user access processing, are verified prior to the file system identifying the error for offline correction or notifying the user or system administrator a data structure error exists. Identified data structure corruptions are verified while the file system volumes are maintained online and otherwise accessible to other processing tasks and user access. Verified data structure corruptions are logged for further corrective processing. Data structure corruptions that cannot be verified, i.e., false positives, are not further processed and are not identified to file system administrators or users as corruptions, freeing the file system to concentrate on normal processing and true, verifiable errors.06-21-2012
20120159256File System Resiliency Management - Perceived corruptions encountered on file system volumes, and which cannot be initially remedied online, are processed to verify whether they are true, existing volume data structure corruptions or, alternatively, false positives. Upon the verification of one or more of a volume's corruptions, error scanning is performed to check for, and attempt to remedy online, all the existing corruptions on the volume. Subsequent to error scanning processing, if one or more verified corruptions continue to exist on a file system volume, at file system boot up time spot corruption correction is performed to attempt to remedy the existing, verified corruptions on the volume. Spot corruption correction is performed to attempt to correct verified data structure corruptions on a volume of the file system while the volume is maintained offline for the time necessary to attempt to correct its prior identified corruptions.06-21-2012
20130073819EFFICIENT FILE SYSTEM METADATA SCANNING USING SCOPED SNAPSHOTS - Volumes of a file system remain online, and thus available for use, while being proactively error scanned for corruptions thereon. A snapshot of each volume being proactively error scanned is maintained for the volume during the proactive error scanner processing of the volume. Proactive error scanner processing only requires access to tile system metadata to correctly process a volume for an identification of the corruptions thereon, and thus, a snapshot of the entire volume nerd not be generated nor maintained. The clusters of a volume that store file system metadata are identified and only these clusters are maintained in a scoped snapshot for the volume during proactive error scanning of the volume.03-21-2013
20130246486EXTENDING CLUSTER ALLOCATIONS IN AN EXTENSIBLE FILE SYSTEM - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.09-19-2013
20130262379EXTENDING CLUSTER ALLOCATIONS IN AN EXTENSIBLE FILE SYSTEM - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.10-03-2013

Patent applications by Sarosh C. Havewala, Kirkland, WA US

Sarosh C. Havewala, Redmond, WA US

Patent application numberDescriptionPublished
20080232210Data Recording/Reproduction for Write-Once Discs - A file system is enabled to use a Metadata Partition instead of VAT for write-once discs, and is provided by a pseudo-overwrite method with a plurality of tracks especially for metadata and file data. On applying this invention to a drive apparatus that supports pseudo-overwrite media, the file system distinguishes data to overwrite from data to append (S09-25-2008
20080310289Data Recording/Reproduction for Write-Once Discs - A recording method of the present invention includes the steps of: receiving a write instruction which specifies at least a logical sector in which data is to be written; determining whether the logical sector specified by the write instruction corresponds to a recorded physical sector or an unrecorded physical sector (S12-18-2008
20090265400EXTENSIBLE FILE SYSTEM - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries.10-22-2009
20140067885Extensible File System - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries.03-06-2014
20140351299Extending Cluster Allocations in an Extensible File System - An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.11-27-2014

Patent applications by Sarosh C. Havewala, Redmond, WA US

Sarosh Cyrus Havewala, Redmond, WA US

Patent application numberDescriptionPublished
20090171957METHOD AND SYSTEM OF APPLYING POLICY ON SCREENED FILES - Described is a mechanism comprising a data screening filter and user mode service that applies (enforces) policies regarding allowing or blocking file content of a directory, based on matching the filename against patterns associated with that directory. An administrator configures a screening policy, such as the types of files to allow in a particular directory and the types of files to block. File groups of member patterns and non-member exclusion patterns are defined and selectively collected in directory screening objects (DSOs). A directory screening object (DSO) is associated with a directory. When an I/O create request specifying a filename and a target directory is received, the filename is evaluated against the member/non-member patterns in the file groups referenced by the DSO for that directory to make for an allow or block policy decision. If not matched, DSOs on parent directories are evaluated upwards seeking a policy decision.07-02-2009

Patent applications by Sarosh Cyrus Havewala, Redmond, WA US

Sarosh Cyrus Havewala, Kirkland, WA US

Patent application numberDescriptionPublished
20080243936TRACKING FILE SYSTEM NAMESPACE CHANGES DURING TRANSACTIONS - Aspects of the subject matter described herein relate to tracking file system namespace changes during transactions. In aspects, a filter monitors operations that may affect a tracked portion of a transactional file system's namespace. When an operation that affects the tracked portion is received, a data structure is modified to track the changes. Nodes within the data structure are marked to indicate whether they can be seen inside or outside of the transaction. If the transaction commits or rolls back, nodes within the data structure are deleted and made visible as appropriate.10-02-2008
20080243963Quota Enforcement With Transacted File Systems - Aspects of the subject matter described herein relate enforcing quotas in transactional file systems. In aspects, a filter monitors operations that may affect quota usage/charge of a file system object having a quota allotment. In doing so, the filter determines a quota value outside of any transaction for the object and a quota value associated with at least one transaction affecting the object. The filter receives a request that involves the use of additional quota. The filter then determines whether to allow or fail the request depending on whether enough quota is available to satisfy the request.10-02-2008
20120072400DIRECTORY OPLOCK - Current file systems may implement opportunistic locks on files that allow clients to locally cache file data, while promoting data consistency when multiple clients read/write the same file. Unfortunately, when a client locally caches directory content of a directory, the file system may lack a mechanism for notifying the client of changes to the directory that would render the cached directory content “stale”. Accordingly, one or more systems and/or techniques for managing a directory oplock are disclosed herein. A directory oplock may be generated based upon an oplock request comprising a first target key and a first parent key. Subsequent access requests for access to the directory or objects therein may be compared with the directory oplock to determine whether to break the directory oplock, and notify the client (e.g., directory oplock is broken if the client submitting the access request is different than the client owning the directory oplock).03-22-2012
20120072596Directory Leasing - Described are embodiments for allowing clients that access a distributed file system to locally cache directory metadata. The client may request a read lease which allows the client to cache the directory metadata locally and service requests received from the same application which originally requested the directory metadata using the cache. In addition, the client may also request a handle lease which allows a client to delay the closing of a directory handle and allow the handle to be reused to service subsequent directory metadata requests from the same or a different application. A client may also request a write lease which allows an application on the client to modify the directory metadata, such as by creating or deleting new files in the directory, or changing their attributes, and cache those changes.03-22-2012
20120143825FILE SYSTEM BACKUP USING CHANGE JOURNAL - Aspects of the subject matter described herein relate to backups and change journals. In aspects, a change journal is read to determine changes that have occurred to objects of a file system. From these changes a data structure is created to capture path information and collect changes for each object. Where the data structure is insufficient to identify a complete path, the live file system is consulted. After the data structure is complete, a data protection engine uses the data structure to update a catalog at least to provide the capability to view the namespace of the protected objects at one or more times covered by the catalog.06-07-2012
20130067168CACHING FOR A FILE SYSTEM - Aspects of the subject matter described herein relate to caching data for a file system. In aspects, in response to requests from applications and storage and cache conditions, cache components may adjust throughput of writes from cache to the storage, adjust priority of I/O requests in a disk queue, adjust cache available for dirty data, and/or throttle writes from the applications.03-14-2013
20140040332DIRECTORY LEASING - Described are embodiments for allowing clients that access a distributed file system to locally cache directory metadata. The client may request a read lease which allows the client to cache the directory metadata locally and service requests received from the same application which originally requested the directory metadata using the cache. In addition, the client may also request a handle lease which allows a client to delay the closing of a directory handle and allow the handle to be reused to service subsequent directory metadata requests from the same or a different application. A client may also request a write lease which allows an application on the client to modify the directory metadata, such as by creating or deleting new files in the directory, or changing their attributes, and cache those changes.02-06-2014
20140280397HETEROGENIC VOLUME GENERATION AND USE SYSTEM - A system in which a file system may operate on a volume in which the logical address extent of the volume is divided into multiple tiers, each tier providing storage having a distinct trait set by mapping the logical addresses of the volume to appropriate underlying storage systems. A volume system exposes the volume to the file system in a manner that the file system itself has awareness of the tiers, and is aware of the trait sets of each tier. The file system may thus store file system namespaces (such as directories and files) into the tiers as appropriate for the file system namespace. A provisioning system may also be provided and be configured to provision the volume to include such tiers, and if desired, to extend the tiers.09-18-2014
20140281227PROVISIONING IN HETEROGENIC VOLUME OF MULTIPLE TIERS - The provisioning of a volume that has multiple tiers corresponding to different trait sets. The volume to be provisioned is identified along with multiple tiers that are to be in the volume. For each of the tiers that are to be provisioned within the volume, a corresponding trait set is identified as to be applied to each tier. This corresponding trait set may be based on underlying storage systems that are available at the time of provisioning, or which are anticipated to be available. The volume is then caused to be provisioned with the corresponding tiers having the corresponding trait sets. Also, the provisioning of a file, which is determined to have one or more storage traits. Based on these storage traits, the file is then caused to be assigned to an appropriate tier.09-18-2014
20140310278CREATING GLOBAL AGGREGATED NAMESPACES FOR STORAGE MANAGEMENT - Embodiments are directed to creating global, aggregated namespaces for storage management and to providing consistent namespaces in a distributed storage system. In one scenario, a computer system defines data storage objects for each data storage node. The data storage objects uniquely identify storage elements of the data storage nodes, where each data storage object includes various associated attributes. The computer system replicates the defined data storage objects and any associated attributes from a first data storage node to a second, different data storage node among the data storage nodes. As such, the defined data storage objects are visible from any node in the data storage nodes. The computer system also aggregates the defined data storage objects for each of the data storage nodes and creates a global, aggregated namespace that includes the aggregated data storage objects for each of the data storage nodes.10-16-2014

Patent applications by Sarosh Cyrus Havewala, Kirkland, WA US

Website © 2015 Advameg, Inc.