Patents by Inventor Ravisankar Pudipeddi

Ravisankar Pudipeddi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20040255087
    Abstract: A system and method for object rundown protection that scales with the number of processors in a shared-memory computer system is disclosed. In an embodiment of the present invention, prior to object rundown, a cache-aware reference count data structure is used to prevent cache-pinging that would otherwise result from data sharing across processors in a multiprocessor computer system. In this data structure, a counter of positive references and negative dereferences, aligned on a particular cache line, is maintained for each processor. When an object is to be destroyed, a rundown wait process is begun, during which new references on the object are prohibited, and the total number of outstanding references is added to an on-stack global counter. Destruction is delayed until the global reference count is reduced to zero.
    Type: Application
    Filed: June 13, 2003
    Publication date: December 16, 2004
    Applicant: Microsoft Corporation
    Inventors: Ravisankar Pudipeddi, Neill Clift, Neal R. Christiansen
  • Publication number: 20040111389
    Abstract: A model in which filter drivers are managed to receive callbacks for I/O requests in which the filter drivers have registered an interest. Per-volume instances of filter drivers register with a filter manager for pre-callbacks (for I/O to the file system) and post-callbacks (for I/O from the file system), and identify which I/O requests (e.g., create, read, write) they are registering to receive callbacks. The filter manager orders the instances for callbacks. When an I/O request is received, the filter manager converts the I/O request to callback data and calls the interested filters in the callback order, whereby the filter instances can process the I/O data. As the request returns from the file system, filters desiring post callbacks are called in the reverse order. Efficient context management for the filters and other functions, such as non-reentrant file I/O, are also provided by the model.
    Type: Application
    Filed: December 9, 2002
    Publication date: June 10, 2004
    Applicant: Microsoft Corporation
    Inventors: Ravisankar Pudipeddi, Eileen C. Brown, Neal Christiansen, Ravinder Thind, Brian K. Dewey, David P. Golds, Mark J. Zbikowski
  • Patent number: 6675257
    Abstract: A system and method store information to a sequential storage media such that storage space occupied-by data deemed obsolete may be reclaimed. Information may be written to the storage media as sequential data sets with each data set including a catalog describing the information in the data set. A reclamation catalog identifies the obsolete data stored on the media and is written to the media. A generation number on the storage media may indicate whether the storage media has been reclaimed. A reclamation process transfers data from the source media (e.g., the tape media that includes obsolete data) to a destination media (e.g., a blank tape) while excluding the obsolete data identified in the reclamation catalog. The reclamation process may read a catalog stored on the source media that describes the data stored on the source media. The reclamation process then modifies that catalog by the information stored in the reclamation catalog to create a unified catalog.
    Type: Grant
    Filed: June 28, 2000
    Date of Patent: January 6, 2004
    Assignee: Microsoft Corporation
    Inventors: ATM Shafiqul Khalid, Ravisankar Pudipeddi
  • Publication number: 20040002942
    Abstract: Described is a method and system that manages filenames for filter drivers in a file system. The present invention includes a filter manager that handles filename queries from the filter drivers. The filter manager returns a pointer to the requesting filter driver that points to a filename information structure corresponding to the type of filename requested. The filter manager also manages a cache of filename information structures that include information that can be shared among the various filter drivers, amortizing the filename queries for filter drivers. The caching functionality of the filter manager increases the efficiency and reduces the overhead of filename queries within the file system by reducing the number of filename operations required for a file system filter driver to retrieve a desired portion of the filename.
    Type: Application
    Filed: June 28, 2002
    Publication date: January 1, 2004
    Applicant: Microsoft Corporation
    Inventors: Ravisankar Pudipeddi, Eileen C. Brown, Neal R. Christiansen
  • Publication number: 20020147881
    Abstract: A method for concurrent data migration includes classifying files to be migrated into plural jobs, selecting media to which to migrate each job, and using plural drives concurrently to write the jobs to the media. The selection of a medium is performed in a way that prevents the number of writeable media from exceeding the number of available drives, unless no allocated medium has sufficient space to store any files in a migration job. A medium is preferentially selected that has already been allocated for writing, has space to store at least one file in the job, is not in use for another job, and can be robotically mounted on a drive. If such a medium does not exist, then the set of available media is canvassed to locate an alternative medium.
    Type: Application
    Filed: February 15, 2001
    Publication date: October 10, 2002
    Applicant: Microsoft Corporation
    Inventors: Ravisankar Pudipeddi, Ran Kalach
  • Publication number: 20020111929
    Abstract: A technique for recalling data objects stored on media. A queue is created for each medium on which data objects are located, where each request to recall a data object is placed on the queue corresponding to the medium on which the data object is located. A queue is “active” when its corresponding medium is mounted and being used for recall; otherwise the queue is “non-active.” A thread is created for each active queue, where the thread retrieves from a medium the requested items on the active queue. When plural drives are available for mounting and reading media, plural queues may be active concurrently, so that the plural queues' respective threads may recall items from the plural media in parallel. Preferably, the requests on each queue are organized in an order such that the offset locations of the requested items form two monotonically increasing sequences.
    Type: Application
    Filed: February 15, 2001
    Publication date: August 15, 2002
    Applicant: Microsoft Corporation
    Inventors: Ravisankar Pudipeddi, Ran Kalach