Patents by Inventor Spencer Shepler

Spencer Shepler 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: 10095705
    Abstract: Embodiments of the present disclosure provide for a method and system for storing content based on one or more attributes associated with the content. Specifically, the present disclosure provides for determining storage capabilities of one or more storage devices associated with a computing device and also determining a retention policy associated with the content. In certain embodiments, the retention policy is identified by the one or more attributes. When the retention policy and the capabilities of the one or more storage devices have been determined, the content is written to the one or more storage devices based on the retention policy.
    Type: Grant
    Filed: September 24, 2012
    Date of Patent: October 9, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Dan Lovinger, Spencer Shepler, Vladimir Sadovsky
  • Publication number: 20140089278
    Abstract: Embodiments of the present disclosure provide for a method and system for storing content based on one or more attributes associated with the content. Specifically, the present disclosure provides for determining storage capabilities of one or more storage devices associated with a computing device and also determining a retention policy associated with the content. In certain embodiments, the retention policy is identified by the one or more attributes. When the retention policy and the capabilities of the one or more storage devices have been determined, the content is written to the one or more storage devices based on the retention policy.
    Type: Application
    Filed: September 24, 2012
    Publication date: March 27, 2014
    Applicant: Microsoft Corporation
    Inventors: Dan Lovinger, Spencer Shepler, Vladimir Sadovsky
  • Patent number: 7945657
    Abstract: A system and method for emulating the input/output performance of an application. A workload description language is used to produce a small but accurate model of the application, which is flexible enough to emulate the application's performance with varying underlying system configurations or operating parameters. The model describes I/O operations performed by the application, and reflects any dependencies that exist between different application threads or processes. The model is then executed or interpreted with a particular system configuration, and various parameters of the I/O operations may be set at the model's run-time. During execution, the input/output operations described in the model are generated according to the specified parameters, and are performed. The system configuration and/or I/O operation parameters may be altered and the model may be re-run.
    Type: Grant
    Filed: March 30, 2005
    Date of Patent: May 17, 2011
    Assignee: Oracle America, Inc.
    Inventors: Richard J. McDougall, Spencer Shepler, Brian L. Wong
  • Patent number: 7836387
    Abstract: A system and method for ensuring or verifying the integrity of data transmitted between protection domains. When the data is transmitted, it may be received in a different logical configuration (e.g., as a different number of “chunks”). The receiving domain computes its data integrity metadata (e.g., checksum, CRC, parity) on its form of the data using its protection scheme (e.g., checksum algorithm), and also applies the sending domain's protection scheme to the data as it was received from the sending domain. Similarly, the sending domain applies the receiving domain's protection scheme to compute data integrity metadata on the transmitted data as it appears in the receiving domain. The metadata may be compared to determine whether the data was corrupted during the transfer. Either domain may forward its data integrity metadata to the other, which may store and/or forward it as needed.
    Type: Grant
    Filed: April 29, 2005
    Date of Patent: November 16, 2010
    Assignee: Oracle America, Inc.
    Inventors: Brian L. Wong, David Robinson, Spencer Shepler, Richard J. McDougall
  • Patent number: 7809848
    Abstract: A system and method for decreasing the protocol processing incurred by an NFS (Network File System) client, and the network bandwidth consumed, when multiple NFS requests are issued close in time to each other. Requests received close in time to each other within one NFS client are aggregated into a single communication packet, even if they are from different NFS users, processes or applications. The per-request overhead of the NFS requests is thus avoided, and multiple streams of requests may be merged into one. When a first request is received by the client, it may be delayed for a short time to determine whether any other requests can be sent at the same time. NFS requests may be aggregated on an NFS client from multiple applications, processes, users or other entities. An NFS client may include an aggregator or other mechanism for performing the aggregation.
    Type: Grant
    Filed: March 15, 2005
    Date of Patent: October 5, 2010
    Assignee: Oracle America, Inc.
    Inventors: Richard J. McDougall, David Robinson, Spencer Shepler, Brian L. Wong, Glenn A. Colaco
  • Patent number: 7739352
    Abstract: A system and method for facilitating a consistent point-in-time copy (PITC). A data provider offers access to data by one or more clients. A client issues a PITC request for a set of data to the data provider, or the provider initiates its own request. The data provider instructs one or more clients, particularly clients accessing the set of data, to flush any pending updates involving the files. The clients acknowledge the flush request, flush their data, and notify the data provider when their flushes are complete. Post-consistency updates are deferred (e.g., using a write-aside buffer). If a client fails to acknowledge the flush request or notify of flush completion, the data provider may abort the PITC or continue because the data may not be consistent or consistency may not be assured. If not aborted, the PITC may be marked to indicate that it is incomplete.
    Type: Grant
    Filed: April 23, 2004
    Date of Patent: June 15, 2010
    Assignee: Oracle America, Inc.
    Inventors: Brian L. Wong, David Robinson, Richard J. McDougall, Spencer Shepler
  • Patent number: 7730351
    Abstract: A method for dirty region logging of a file that includes receiving a request to open the file, determining each of a plurality of component files associated with the file, opening each of the plurality of component files, writing to a region of the at least one of the plurality component files, and updating a dirty region log (DRL) associated with the one of the plurality of component files to reflect the write to the region.
    Type: Grant
    Filed: May 15, 2006
    Date of Patent: June 1, 2010
    Assignee: Oracle America, Inc.
    Inventors: David Robinson, Brian L. Wong, Spencer Shepler, Richard J. McDougall
  • Publication number: 20090327355
    Abstract: A system and method for coordinating a point-in-time copy (PITC) of a file or set of data distributed (e.g., striped) across multiple data providers (e.g., filers, file servers, storage arrays). A service coordinator receives a PITC request for a parent file, initializes the PITC's metadata and instructs the data providers to generate PITC subcomponents for the portions (e.g., sub-mirrors) of the file that they store. A scoreboard is created to track the status of the PITC, and includes an entry for each PITC subcomponent. Quality of service characteristics for the PITC may be copied from the parent and/or received with the request. If those characteristics cannot be attained, the PITC may be aborted. As PITC subcomponents are completed, they are returned to the service coordinator for assembly of the PITC.
    Type: Application
    Filed: June 30, 2008
    Publication date: December 31, 2009
    Applicant: Sun Microsystems, Inc.
    Inventors: Brian L. Wong, David Robinson, Spencer Shepler, Richard J. McDougall
  • Publication number: 20080010515
    Abstract: A method for dirty region logging of a file that includes receiving a request to open the file, determining each of a plurality of component files associated with the file, opening each of the plurality of component files, writing to a region of the at least one of the plurality component files, and updating a dirty region log (DRL) associated with the one of the plurality of component files to reflect the write to the region.
    Type: Application
    Filed: May 15, 2006
    Publication date: January 10, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: David Robinson, Brian Wong, Spencer Shepler, Richard McDougall
  • Patent number: 7194579
    Abstract: A file is striped across multiple filers, file servers or other devices, to create a sparsely striped multi-component file. Each filer stores one sparse component. In particular, each component physically stores only those stripes allocated to that component. The other stripes are represented as holes. Thus, instead of contiguously packing each component's stripes at the block level, each component is a file having the same logical structure. A component of a sparsely striped multi-component file can be easily converted to a mirror by filling in its holes. Similarly, a mirror can be easily converted to one component of a sparsely striped multi-component file by removing or ignoring it unallocated stripes. In either case, the layout or logical of the component does not need to be reconfigured.
    Type: Grant
    Filed: April 26, 2004
    Date of Patent: March 20, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: David Robinson, Brian L. Wong, Spencer Shepler, Richard J. McDougall
  • Publication number: 20050240725
    Abstract: A file is striped across multiple filers, file servers or other devices, to create a sparsely striped multi-component file. Each filer stores one sparse component. In particular, each component physically stores only those stripes allocated to that component. The other stripes are represented as holes. Thus, instead of contiguously packing each component's stripes at the block level, each component is a file having the same logical structure. A component of a sparsely striped multi-component file can be easily converted to a mirror by filling in its holes. Similarly, a mirror can be easily converted to one component of a sparsely striped multi-component file by removing or ignoring it unallocated stripes. In either case, the layout or logical of the component does not need to be reconfigured.
    Type: Application
    Filed: April 26, 2004
    Publication date: October 27, 2005
    Inventors: David Robinson, Brian Wong, Spencer Shepler, Richard McDougall
  • Publication number: 20050240632
    Abstract: A system and method for facilitating a consistent point-in-time copy (PITC). A data provider offers access to data by one or more clients. A client issues a PITC request for a set of data to the data provider, or the provider initiates its own request. The data provider instructs one or more clients, particularly clients accessing the set of data, to flush any pending updates involving the files. The clients acknowledge the flush request, flush their data, and notify the data provider when their flushes are complete. Post-consistency updates are deferred (e.g., using a write-aside buffer). If a client fails to acknowledge the flush request or notify of flush completion, the data provider may abort the PITC or continue because the data may not be consistent or consistency may not be assured. If not aborted, the PITC may be marked to indicate that it is incomplete.
    Type: Application
    Filed: April 23, 2004
    Publication date: October 27, 2005
    Inventors: Brian Wong, David Robinson, Richard McDougall, Spencer Shepler
  • Patent number: 6185615
    Abstract: Improved logging techniques that produce transaction logs are disclosed. The logging techniques are able to consolidate multiple related partial operations performed on a server device into a single log entry in a transaction log. Accordingly, the logging techniques are well suited for logging operations of protocols in which transactions are often completed over multiple operations. The logging techniques are particularly well suited for logging access to NFS file and/or directory resources with respect to a NFS server, even when the NFS operations are performed via Remote Procedure Calls (RPCs) to the NFS server.
    Type: Grant
    Filed: February 25, 2000
    Date of Patent: February 6, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Ricardo Labiaga, Spencer Shepler, Michael D. Kupfer
  • Patent number: 5742833
    Abstract: A frame-address matching function of a network controller is enhanced. In a full power-on mode, the controller performs conventional functions. In the low-power mode, the controller includes frame-address and frame-data matching, as well as pre-determined and programmable autonomous response to network protocol. If a match occurs with respect to the frame destination address or frame data, the system associated with the controller is placed in a wake-up state. If the controller is programmed to perform pattern matching inside the frame data area, upon such match in the frame data area the controller will generate and transmit on the network a simple response packet automatically. Conversely, if a match is not detected, no action is taken. The frame-data patterns are programmable with the capability to mask out certain data fields as desired which are protocol dependent and are substantially protocol dependent.
    Type: Grant
    Filed: November 30, 1995
    Date of Patent: April 21, 1998
    Assignee: International Business Machines Corporation
    Inventors: Frank Dea, Son Hung Lam, Spencer Shepler, Gary Yuh Tsao