Patents by Inventor David P. Golds

David P. Golds 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).

  • Patent number: 8713020
    Abstract: In a method for organizing information in a database, abstractions are separated from expressions of the abstractions to obtain a first set of information corresponding to the abstractions and a second set of information corresponding to at least one set of characteristics relating to the expressions of the abstractions. Each abstraction is arranged within the first set of information hierarchically within the database. Each set of characteristics relating to an expression of an abstraction within the second set of information is associated with an abstraction within the database.
    Type: Grant
    Filed: March 4, 2013
    Date of Patent: April 29, 2014
    Inventor: David P. Gold
  • Publication number: 20130179457
    Abstract: In a method for organizing information in a database, abstractions are separated from expressions of the abstractions to obtain a first set of information corresponding to the abstractions and a second set of information corresponding to at least one set of characteristics relating to the expressions of the abstractions. Each abstraction is arranged within the first set of information hierarchically within the database. Each set of characteristics relating to an expression of an abstraction within the second set of information is associated with an abstraction within the database.
    Type: Application
    Filed: March 4, 2013
    Publication date: July 11, 2013
    Inventor: David P. Gold
  • Patent number: 8392417
    Abstract: In a method for organizing information in a database, abstractions are separated from expressions of the abstractions to obtain a first set of information corresponding to the abstractions and a second set of information corresponding to at least one set of characteristics relating to the expressions of the abstractions. Each abstraction is arranged within the first set of information hierarchically within the database. Each set of characteristics relating to an expression of an abstraction within the second set of information is associated with an abstraction within the database.
    Type: Grant
    Filed: May 22, 2007
    Date of Patent: March 5, 2013
    Inventor: David P. Gold
  • Patent number: 7873681
    Abstract: Files on a computing device are defined to include data and metadata relating to the data. Data from each file has been removed therefrom and stored at an alternate location and the file is in a reduced, ghosted form. Each of at least some ghosted files has been fully or partially reconstituted for use by retrieving the data thereof from the alternate location and associating such retrieved data with such ghosted file to form the reconstituted file. Upon receiving a trigger based on a triggering event, files are selected from among the fully and partially reconstituted files and never-ghosted files based on first predetermined selection criteria, and each of at least some of the selected files are re-ghosted.
    Type: Grant
    Filed: July 14, 2005
    Date of Patent: January 18, 2011
    Assignee: Microsoft Corporation
    Inventors: Guhan Suriyanarayanan, Christophe Franck Robert, Sarosh Cyrus Havewala, David P. Golds
  • Patent number: 7779425
    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: Grant
    Filed: January 30, 2006
    Date of Patent: August 17, 2010
    Assignee: Microsoft Corporation
    Inventors: Ravisankar Pudipeddi, Eileen C. Brown, Neal Christiansen, Ravinder Thind, Brian K. Dewey, David P. Golds, Mark J. Zbikowski
  • Patent number: 7664796
    Abstract: A system and method using hardware and software components enable a storage module to maintain information about an associated storage device and its content such that the information is accessible when the storage device is offline or in a low power configuration. A general-computing host system connects to the storage module via a pluggable interface to provide information to a nonvolatile memory cache on the storage module. The storage module includes a separate power source, an output display, input buttons, and a module controller. The host system includes an application and host platform for processing file-system related events to send records to the module controller to automatically update a catalog representing storage device information in the nonvolatile memory. When offline, the user may display the catalog information and use the buttons to navigate among it. The host system may also allow the user to interactively review and modify the catalog.
    Type: Grant
    Filed: October 13, 2004
    Date of Patent: February 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Therron L. Powell, Carl M. Carter-Schwendler, David P. Golds
  • Patent number: 7581036
    Abstract: A system and method using hardware and software components enable a storage module to collect and maintain control transaction data (e.g., directives/events) when a storage device of the module is offline or in a low power configuration. The storage module contains a nonvolatile memory cache and a module controller, and also may include a separate power source, an output display and input mechanism so that when offline, the user may display and navigate among catalog information corresponding to stored content to set up deferred events related to the content. When reconnected to a general-computing host system, the host system obtains the control transaction data from the storage module, and processes the data into file-system related events and other events to perform actions to the storage device and/or to other resources coupled to the host computer system. The host system may also cache transaction control data on the storage module's cache.
    Type: Grant
    Filed: October 13, 2004
    Date of Patent: August 25, 2009
    Assignee: Microsoft Corporation
    Inventors: Therron L. Powell, Carl M. Carter-Schwendler, David P. Golds
  • Patent number: 7293044
    Abstract: A method and system for verifying the integrity of a storage volume. When volume verification is desired, a shadow copy of the volume is created. A verification tool operates on the shadow copy and provides a report that indicates if any errors are found in the shadow copy. If errors are found on the shadow copy, this indicates that the same errors likely still exist on the live volume. In the event of errors, a system administrator or the like may take the live volume off-line and fix the errors found.
    Type: Grant
    Filed: April 9, 2004
    Date of Patent: November 6, 2007
    Assignee: Microsoft Corporation
    Inventors: Vishal Vikram Ghotge, David P. Golds, Sarosh Cyrus Havewala, Christopher F. Robert, Paul Adrian Oltean
  • Patent number: 7150018
    Abstract: A method and system for ordering software modules in a guaranteed order for execution. Unique values are statically assigned to software modules (e.g., filter drivers) when fully developed. Each module's assigned value determines its relative position to other modules in a stack or other arrangement, fixing the execution order for any set of filter drivers. Static values may comprise floating-point numbers, whereby each new software module may be assigned a number that enables positioning it between any two existing software modules. For example, filter drivers may be generally classified and assigned values in a range according to type. Drivers of the same type may be ordered within their general range to guarantee one possible ordering. A filter manager architecture is described, in which filter drivers register with a manager for relevant file system I/O operations. The manager calls appropriately registered filter drivers in an order based on their assigned numbers.
    Type: Grant
    Filed: January 23, 2001
    Date of Patent: December 12, 2006
    Assignee: Microsoft Corporation
    Inventors: David P. Golds, Keith S. Kaplan, Eileen C. Brown, Neal Christiansen
  • Patent number: 6993603
    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: Grant
    Filed: December 9, 2002
    Date of Patent: January 31, 2006
    Assignee: Microsoft Corporation
    Inventors: Ravisankar Pudipeddi, Eileen C. Brown, Neal Christiansen, Ravinder Thind, Brian K. Dewey, David P. Golds, Mark J. Zbikowski
  • Patent number: 6850959
    Abstract: Briefly, the present invention provides a system and method for transparently extending the non-volatile storage on a computer system via links from one drive to one or more other drives. When the user adds a new disk drive, it is formatted but not mounted where the user can see it. The data of selected files is automatically migrated from the original drive to the new, supplemental drive, or directly created thereon, and a link is placed on the original volume to indicate to the system that the data is really elsewhere. In one implementation, this is accomplished via an NTFS reparse point on an NTFS link that is made a sparse file, thereby reclaiming the disk space on the original drive. A driver in the NTFS filter stack or the like in conjunction with the file system handles directing reads and writes to the new location, and also handles other operations including totaling the free space of each drive in response to a free space request.
    Type: Grant
    Filed: October 26, 2000
    Date of Patent: February 1, 2005
    Assignee: Microsoft Corporation
    Inventor: David P. Golds
  • 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: 6708227
    Abstract: A service specified by an application programming interface (API) acts as a coordinator/manager of different volume snapshot providers and an administrator of snapshot providers. The API acts to standardize protocols used in connection with different snapshot providers. An Interface Volume Snapshot Service Coordinator (VSSC) with appropriate API calls is provided, which is used to coordinate and administer multiple snapshot providers as well as maintain other snapshot information. The VSSC achieves this coordination and administration whether or not the snapshot providers are hardware-based, software-based or based in a combination of different underlying technologies. The VSSC thus performs coordination and administration operations, in addition to other operations relating to snapshot providers.
    Type: Grant
    Filed: April 24, 2000
    Date of Patent: March 16, 2004
    Assignee: Microsoft Corporation
    Inventors: Luis Felipe Cabrera, Paul Oltean, David P. Golds, Stefan R. Steiner
  • Patent number: 6647473
    Abstract: A snapshot system capable of capturing snapshots of multiple volumes wherein the snapshots are coordinated. A snapshot manager determines which volumes are to be involved in a snapshot operation, and issues a message to the file system for each volume involved, each message including information sufficient to identify the volumes involved in the snapshot operation. Each file system passes its respective message down to a coordinator mechanism. The coordinator mechanism coordinates the state of each of the volumes, such as by holding writes thereto, to put each volume into a quiescent state, and then enables the snapshot to be captured. When the snapshots are captured, a snapshot set will include snapshots that are coordinated across the multiple volumes. The coordinator mechanism releases any writes being held for the volumes involved.
    Type: Grant
    Filed: February 16, 2000
    Date of Patent: November 11, 2003
    Assignee: Microsoft Corporation
    Inventors: David P. Golds, Norbert P. Kusters, Brian D. Andrew, Daniel E. Lovinger, Supriya Wickrematillake
  • Publication number: 20010020245
    Abstract: A method and system for ordering software modules in a guaranteed order for execution. Unique values are statically assigned to software modules (e.g., filter drivers) when fully developed. Each module's assigned value determines its relative position to other modules in a stack or other arrangement, fixing the execution order for any set of filter drivers. Static values may comprise floating-point numbers, whereby each new software module may be assigned a number that enables positioning it between any two existing software modules. For example, filter drivers may be generally classified and assigned values in a range according to type. Drivers of the same type may be ordered within their general range to guarantee one possible ordering. A filter manager architecture is described, in which filter drivers register with a manager for relevant file system I/O operations. The manager calls appropriately registered filter drivers in an order based on their assigned numbers.
    Type: Application
    Filed: January 23, 2001
    Publication date: September 6, 2001
    Applicant: Microsoft Corporation
    Inventors: David P. Golds, Keith S. Kaplan, Eileen C. Brown, Neal Christiansen