Patents by Inventor Dexter Paul Bradshaw

Dexter Paul Bradshaw 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: 10437662
    Abstract: Crash recovery of a computing system in the context in which the computing system includes a volatile memory which has contents lost due to the crash, an intermediate non-volatile memory that (together with the volatile memory) contributes to the active memory of the computing system, and non-volatile storage. The recovery occurs by identifying pages that were in the volatile memory at the time of the crash and that are in the intermediate non-volatile memory and recovers those pages into the volatile memory. In embodiments in which access speeds for the intermediate non-volatile memory may be much faster than for the storage, and in which much of the pages to be recovered are recovered from the intermediate non-volatile memory, the recovery time may be reduced.
    Type: Grant
    Filed: January 20, 2017
    Date of Patent: October 8, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Dexter Paul Bradshaw, Pedro Celis
  • Patent number: 10222993
    Abstract: A computing device and method for establishing more direct access to a storage device from unprivileged code in an unprivileged storage architecture component. Using a storage infrastructure driver to discover and enumerate storage architecture component(s), a user-mode application requests at least one portion of the storage device to store application-related data corresponding to executing input/output activity. The storage infrastructure driver maps the at least one portion of the storage device to substantially match an address space associated with the application-related data and configures at least one path for the user-mode application to perform block-level input/output between the storage device and the unprivileged storage architecture component. A virtual function may be generated corresponding to at least one path between a computing device and the unprivileged storage architecture component to execute input/output activity using the address space.
    Type: Grant
    Filed: July 6, 2016
    Date of Patent: March 5, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Dmitry Malloy, Dexter Paul Bradshaw, Suyash Sinha
  • Patent number: 10218809
    Abstract: The described technology is generally directed towards a subscriber service using configurable data (e.g., a declarative configuration file) data to make service calls to publisher endpoints. Dynamic reconfiguration of the data changes the service call communication parameters without needing to bring down the subscriber server or its service, and/or without needing to modify/rewrite programs for the reconfiguration.
    Type: Grant
    Filed: October 12, 2016
    Date of Patent: February 26, 2019
    Assignee: HOME BOX OFFICE, INC.
    Inventors: Dexter Paul Bradshaw, Jeffrey Stamerjohn, Jinjiang Zeng
  • Publication number: 20180239793
    Abstract: The described technology is generally directed towards matching subscriber services to publisher services based on any number of arbitrary subscriber-specified attributes. In general, each publisher services register its capabilities as a set of attributes in a repository data store, e.g., a database. When a subscriber service wants a matching publisher service, the subscriber service specifies which attributes the subscriber service wants matched, and the repository's affiliated matching process uses the registered attributes of the publisher services to seek a match.
    Type: Application
    Filed: February 17, 2017
    Publication date: August 23, 2018
    Inventors: DEXTER PAUL BRADSHAW, JEFFREY STAMERJOHN, JINJIANG ZENG
  • Publication number: 20180241616
    Abstract: The described technology is generally directed towards an abstraction and file model used for subscriber service and publisher service communication. The abstraction and file model enables dynamically changing the underlying communication mechanisms and introducing optimizations such as caching (reducing latency) and batching (improving bandwidth utilization) transparently, without any change to the subscriber or publisher code. The abstraction also facilitates introducing intermediate lightweight message-oriented middleware and provides for transparently scaling communication.
    Type: Application
    Filed: February 17, 2017
    Publication date: August 23, 2018
    Inventors: DEXTER PAUL BRADSHAW, JEFFREY STAMERJOHN, JINJIANG ZENG
  • Publication number: 20170132071
    Abstract: Crash recovery of a computing system in the context in which the computing system includes a volatile memory which has contents lost due to the crash, an intermediate non-volatile memory that (together with the volatile memory) contributes to the active memory of the computing system, and non-volatile storage. The recovery occurs by identifying pages that were in the volatile memory at the time of the crash and that are in the intermediate non-volatile memory and recovers those pages into the volatile memory. In embodiments in which access speeds for the intermediate non-volatile memory may be much faster than for the storage, and in which much of the pages to be recovered are recovered from the intermediate non-volatile memory, the recovery time may be reduced.
    Type: Application
    Filed: January 20, 2017
    Publication date: May 11, 2017
    Inventors: Dexter Paul Bradshaw, Pedro Celis
  • Publication number: 20170104641
    Abstract: The described technology is generally directed towards a subscriber service using configurable data (e.g., a declarative configuration file) data to make service calls to publisher endpoints. Dynamic reconfiguration of the data changes the service call communication parameters without needing to bring down the subscriber server or its service, and/or without needing to modify/rewrite programs for the reconfiguration.
    Type: Application
    Filed: October 12, 2016
    Publication date: April 13, 2017
    Inventors: DEXTER PAUL BRADSHAW, JEFFREY STAMERJOHN, JINJIANG ZENG
  • Patent number: 9558080
    Abstract: Crash recovery of a computing system in the context in which the computing system includes a volatile memory which has contents lost due to the crash, an intermediate non-volatile memory that (together with the volatile memory) contributes to the active memory of the computing system, and non-volatile storage. The recovery occurs by identifying pages that were in the volatile memory at the time of the crash. For each of these pages, the recovery determines whether to recover the page into the volatile memory from either the intermediate non-volatile memory or the storage, and then performs the recovery. In embodiments in which access speeds for the intermediate non-volatile memory may be much faster than for the storage, and in which much of the pages to be recovered are recovered from the intermediate non-volatile memory, the recovery time may be reduced.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: January 31, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Dexter Paul Bradshaw, Pedro Celis
  • Publication number: 20160313918
    Abstract: The subject disclosure is directed towards establishing more direct access to a storage device from unprivileged code. Using a storage infrastructure mechanism to discover and enumerate storage architecture component(s), a user mode application requests at least one portion of the storage device to store application-related data. The storage infrastructure mechanism determines whether the application is authorized to access the storage device and if satisfied, the storage infrastructure mechanism configures at least one path for performing block-level input/output between the storage device and an unprivileged storage architecture component.
    Type: Application
    Filed: July 6, 2016
    Publication date: October 27, 2016
    Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Dmitry Meshchaninov, Dexter Paul Bradshaw, Suyash Sinha
  • Patent number: 9405682
    Abstract: A method and system for establishing more direct access to a storage device from unprivileged code are described. Using a storage infrastructure mechanism to discover and enumerate storage architecture component(s), a user mode application requests a portion of the storage device to store application-related data. That portion is mapped to an address space representing the application-related data. The storage infrastructure mechanism determines whether the user mode application is authorized to access the storage device and if satisfied, the storage infrastructure mechanism configures at least one path for the user mode application to perform block-level input/output between the storage device and an unprivileged storage architecture component. A completion notification mechanism may be selected or established for returning information related to input/output requests.
    Type: Grant
    Filed: June 23, 2012
    Date of Patent: August 2, 2016
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Dmitry Meshchaninov, Dexter Paul Bradshaw, Suyash Sinha
  • Patent number: 9235531
    Abstract: A buffer manager that manages blocks of memory amongst multiple levels of buffer pools. For instance, there may be a first level buffer pool for blocks in first level memory, and a second level buffer pool for blocks in second level memory. The first level buffer pool evicts blocks to the second level buffer pool if the blocks are not used above a first threshold level. The second level buffer pool evicts blocks to a yet lower level if they have not used above a second threshold level. The first level memory may be dynamic random access memory, whereas the second level memory may be storage class memory, such as a solid state disk. By using such a storage class memory, the working block set of the buffer manager may be increased without resorting to lower efficiency random block access from yet lower level memory such as disk.
    Type: Grant
    Filed: November 28, 2011
    Date of Patent: January 12, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Pedro Celis, Dexter Paul Bradshaw, Sadashivan Krishnamurthy, Georgiy I. Reynya, Chengliang Zhang, Hanumantha Rao Kodavalla
  • Patent number: 9069484
    Abstract: Aspects of the subject matter described herein relate to a buffer pool for a database system. In aspects, secondary memory such as solid state storage is used to extend the buffer pool of a database system. Thresholds such as hot, warm, and cold for classifying pages based on access history of the pages may be determined via a sampling algorithm. When a database system needs to free space in a buffer pool in main memory, a page may be evicted to the buffer pool in secondary memory or other storage based on how the page is classified and conditions of the secondary memory or other storage.
    Type: Grant
    Filed: March 13, 2014
    Date of Patent: June 30, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Chengliang Zhang, Sadashivan Krishnamurthy, Georgiy I. Reynya, Alexandre Verbitski, Pedro Celis, Dexter Paul Bradshaw
  • Publication number: 20150121126
    Abstract: Crash recovery of a computing system in the context in which the computing system includes a volatile memory which has contents lost due to the crash, an intermediate non-volatile memory that (together with the volatile memory) contributes to the active memory of the computing system, and non-volatile storage. The recovery occurs by identifying pages that were in the volatile memory at the time of the crash. For each of these pages, the recovery determines whether to recover the page into the volatile memory from either the intermediate non-volatile memory or the storage, and then performs the recovery. In embodiments in which access speeds for the intermediate non-volatile memory may be much faster than for the storage, and in which much of the pages to be recovered are recovered from the intermediate non-volatile memory, the recovery time may be reduced.
    Type: Application
    Filed: October 31, 2013
    Publication date: April 30, 2015
    Applicant: One Microsoft Way
    Inventors: Dexter Paul Bradshaw, Pedro Celis
  • Publication number: 20140195750
    Abstract: Aspects of the subject matter described herein relate to a buffer pool for a database system. In aspects, secondary memory such as solid state storage is used to extend the buffer pool of a database system. Thresholds such as hot, warm, and cold for classifying pages based on access history of the pages may be determined via a sampling algorithm. When a database system needs to free space in a buffer pool in main memory, a page may be evicted to the buffer pool in secondary memory or other storage based on how the page is classified and conditions of the secondary memory or other storage.
    Type: Application
    Filed: March 13, 2014
    Publication date: July 10, 2014
    Applicant: Microsoft Corporation
    Inventors: Chengliang Zhang, Sadashivan Krishnamurthy, Georgiy I. Reynya, Alexandre Verbitski, Pedro Celis, Dexter Paul Bradshaw
  • Patent number: 8712984
    Abstract: Aspects of the subject matter described herein relate to a buffer pool for a database system. In aspects, secondary memory such as solid state storage is used to extend the buffer pool of a database system. Thresholds such as hot, warm, and cold for classifying pages based on access history of the pages may be determined via a sampling algorithm. When a database system needs to free space in a buffer pool in main memory, a page may be evicted to the buffer pool in secondary memory or other storage based on how the page is classified and conditions of the secondary memory or other storage.
    Type: Grant
    Filed: March 4, 2010
    Date of Patent: April 29, 2014
    Assignee: Microsoft Corporation
    Inventors: Chengliang Zhang, Sadashivan Krishnamurthy, Georgiy I. Reynya, Alexandre Verbitski, Pedro Celis, Dexter Paul Bradshaw
  • Patent number: 8626721
    Abstract: A system and method for providing scaleable recovery for a multiplexed transactional log. Unlike a dedicated log that includes log data of only one client, a multiplexed transactional log may include log data from multiple clients. In a multiplexed transactional log, log data from different clients may be multiplexed into the multiplexed transactional log in any order. The multiplexed log is maintained for multiple clients using a scaleable logging process. After a system failure, the multiplexed log is recovered using a scaleable recovery process. The scaleable recovery process includes an end-of-log locating process for locating the end of the multiplexed log and each of the virtual logs with the multiplexed log. The end-of-log locating process is also scaleable.
    Type: Grant
    Filed: November 9, 2011
    Date of Patent: January 7, 2014
    Assignee: Microsoft Corporation
    Inventor: Dexter Paul Bradshaw
  • Publication number: 20130346718
    Abstract: The subject disclosure is directed towards establishing more direct access to a storage device from unprivileged code. Using a storage infrastructure mechanism to discover and enumerate storage architecture component(s), a user mode application requests at least one portion of the storage device to store application-related data. The storage infrastructure mechanism determines whether the application is authorized to access the storage device and if satisfied, the storage infrastructure mechanism configures at least one path for performing block-level input/output between the storage device and an unprivileged storage architecture component.
    Type: Application
    Filed: June 23, 2012
    Publication date: December 26, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Dmitry Meshchaninov, Dexter Paul Bradshaw, Suyash Sinha
  • Publication number: 20120078854
    Abstract: A system and method for providing scaleable recovery for a multiplexed transactional log. Unlike a dedicated log that includes log data of only one client, a multiplexed transactional log may include log data from multiple clients. In a multiplexed transactional log, log data from different clients may be multiplexed into the multiplexed transactional log in any order. The multiplexed log is maintained for multiple clients using a scaleable logging process. After a system failure, the multiplexed log is recovered using a scaleable recovery process. The scaleable recovery process includes an end-of-log locating process for locating the end of the multiplexed log and each of the virtual logs with the multiplexed log. The end-of-log locating process is also scaleable.
    Type: Application
    Filed: November 9, 2011
    Publication date: March 29, 2012
    Applicant: MICROSOFT CORPORATION
    Inventor: Dexter Paul Bradshaw
  • Publication number: 20120072652
    Abstract: A buffer manager that manages blocks of memory amongst multiple levels of buffer pools. For instance, there may be a first level buffer pool for blocks in first level memory, and a second level buffer pool for blocks in second level memory. The first level buffer pool evicts blocks to the second level buffer pool if the blocks are not used above a first threshold level. The second level buffer pool evicts blocks to a yet lower level if they have not used above a second threshold level. The first level memory may be dynamic random access memory, whereas the second level memory may be storage class memory, such as a solid state disk. By using such a storage class memory, the working block set of the buffer manager may be increased without resorting to lower efficiency random block access from yet lower level memory such as disk.
    Type: Application
    Filed: November 28, 2011
    Publication date: March 22, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Pedro Celis, Dexter Paul Bradshaw, Sadashivan Krishnamurthy, Georgiy I. Reynya, Chengliang Zhang, Hanumantha Rao Kodavalla
  • Patent number: 7689626
    Abstract: A common logging system (a “virtual logging system”) that presents to one or more log clients the appearance that each log client is interacting with a dedicated logging system. In reality, the virtual logging system is multiplexing virtual log streams, including log records, for each log client into a single transactional log.
    Type: Grant
    Filed: May 31, 2002
    Date of Patent: March 30, 2010
    Assignee: Microsoft Corporation
    Inventors: Thomas Jay Miller, Dexter Paul Bradshaw