Patents by Inventor Forrest Curtis Foltz

Forrest Curtis Foltz 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: 10635489
    Abstract: In various embodiments, methods and systems, for implementing proxy objects are provided. A task request directed to a driver component is intercepted at a proxy object component. The task request is an Input/Output or a session task. A proxy object is generated for the task request at the proxy object component. The task request is communicated from the proxy object component to the driver component. A modification indication to modify the driver component is received. A standby mode is initiated at the proxy object component and the driver component, the standby mode comprises processing task requests and proxy objects based on standby operations. A determination that the driver component has been modified to a modified version of the driver component is made. A recovery mode is initiated at the proxy object component and the driver component, the recovery mode comprises processing task requests and proxy objects based on recovery operations.
    Type: Grant
    Filed: December 10, 2018
    Date of Patent: April 28, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Forrest Curtis Foltz
  • Publication number: 20190121667
    Abstract: In various embodiments, methods and systems, for implementing proxy objects are provided. A task request directed to a driver component is intercepted at a proxy object component. The task request is an Input/Output or a session task. A proxy object is generated for the task request at the proxy object component. The task request is communicated from the proxy object component to the driver component. A modification indication to modify the driver component is received. A standby mode is initiated at the proxy object component and the driver component, the standby mode comprises processing task requests and proxy objects based on standby operations. A determination that the driver component has been modified to a modified version of the driver component is made. A recovery mode is initiated at the proxy object component and the driver component, the recovery mode comprises processing task requests and proxy objects based on recovery operations.
    Type: Application
    Filed: December 10, 2018
    Publication date: April 25, 2019
    Inventor: Forrest Curtis FOLTZ
  • Patent number: 10152351
    Abstract: In various embodiments, methods and systems, for implementing proxy objects are provided. A task request directed to a driver component is intercepted at a proxy object component. The task request is an Input/Output or a session task. A proxy object is generated for the task request at the proxy object component. The task request is communicated from the proxy object component to the driver component. A modification indication to modify the driver component is received. A standby mode is initiated at the proxy object component and the driver component, the standby mode comprises processing task requests and proxy objects based on standby operations. A determination that the driver component has been modified to a modified version of the driver component is made. A recovery mode is initiated at the proxy object component and the driver component, the recovery mode comprises processing task requests and proxy objects based on recovery operations.
    Type: Grant
    Filed: February 1, 2016
    Date of Patent: December 11, 2018
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventor: Forrest Curtis Foltz
  • Patent number: 9772860
    Abstract: Efficient power management of a system with virtual machines is disclosed. In particular, such efficient power management may enable coordination of system-wide power changes with virtual machines. Additionally, such efficient power management may enable coherent power changes in a system with a virtual machine monitor. Furthermore, such efficient power management may enable dynamic control and communication of power state changes.
    Type: Grant
    Filed: September 7, 2016
    Date of Patent: September 26, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
  • Publication number: 20170220380
    Abstract: In various embodiments, methods and systems, for implementing proxy objects are provided. A task request directed to a driver component is intercepted at a proxy object component. The task request is an Input/Output or a session task. A proxy object is generated for the task request at the proxy object component. The task request is communicated from the proxy object component to the driver component. A modification indication to modify the driver component is received. A standby mode is initiated at the proxy object component and the driver component, the standby mode comprises processing task requests and proxy objects based on standby operations. A determination that the driver component has been modified to a modified version of the driver component is made. A recovery mode is initiated at the proxy object component and the driver component, the recovery mode comprises processing task requests and proxy objects based on recovery operations.
    Type: Application
    Filed: February 1, 2016
    Publication date: August 3, 2017
    Inventor: Forrest Curtis Foltz
  • Publication number: 20170220592
    Abstract: In various embodiments, methods and systems, for implementing modular data operations, are provided. A data access request, associated with data, is received at a data access component. The data access component selectively implements modular data operations functionality based on configuration settings. A translation table associated with a working set is accessed, based on the configuration settings of the data access component, to determine a location for executing the data access request. The data access request is executed using the cache store or a backing store associated with the working set. The data access request is executed using the location that is determined using the translation table of the working set. The data access request is executed using the cache store when the data is cached in the cache store and the data access requested is executed based on the backing store when the data is un-cached in the cache store.
    Type: Application
    Filed: February 1, 2016
    Publication date: August 3, 2017
    Inventor: Forrest Curtis Foltz
  • Publication number: 20160378506
    Abstract: Efficient power management of a system with virtual machines is disclosed. In particular, such efficient power management may enable coordination of system-wide power changes with virtual machines. Additionally, such efficient power management may enable coherent power changes in a system with a virtual machine monitor. Furthermore, such efficient power management may enable dynamic control and communication of power state changes.
    Type: Application
    Filed: September 7, 2016
    Publication date: December 29, 2016
    Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
  • Patent number: 9489035
    Abstract: Efficient power management of a system with virtual machines is disclosed. In particular, such efficient power management may enable coordination of system-wide power changes with virtual machines. Additionally, such efficient power management may enable coherent power changes in a system with a virtual machine monitor. Furthermore, such efficient power management may enable dynamic control and communication of power state changes.
    Type: Grant
    Filed: December 15, 2015
    Date of Patent: November 8, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
  • Patent number: 9471348
    Abstract: Computerized methods, systems, and computer-storage media for allowing virtual machines (VMs) residing on a common physical node to fairly share network bandwidth are provided. Restrictions on resource consumption are implemented to ameliorate stressing the network bandwidth or adversely affecting the quality of service (QoS) guaranteed to tenants of the physical node. The restrictions involves providing a scheduler that dynamically controls networking bandwidth allocated to each of the VMs as a function of QoS policies. These QoS policies are enforced by controlling a volume of traffic being sent from the VMs. Controlling traffic includes depositing tokens into token-bucket queues assigned to the VMs, respectively. The tokens are consumed as packets pass through the token-bucket queues. Upon consumption, packets are held until sufficient tokens are reloaded to the token-bucket queues.
    Type: Grant
    Filed: July 1, 2013
    Date of Patent: October 18, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yue Zuo, Hoyuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
  • Patent number: 9395920
    Abstract: Computerized methods, systems, and computer-storage media for throttling requests from virtual machines (VMs) to a hard-disk drive (HDD) are provided. When a request for disk I/O is received from a VM, a disk-drive model that simulates performance characteristics of the HDD is accessed. During access, the disk-drive model's estimation of HDD parameters and the disk-drive model's estimation of a current state of a disk head of the HDD are gathered. A projected execution time to carry out the request is computed as a function of the estimated HDD parameters and the estimated current state of the disk head. Also, an actual execution time to carry out the request is measured upon allowing the request to pass to the HDD. Using a comparison of the projected execution time and the actual execution time, the traffic of the requests from the VMs is throttled.
    Type: Grant
    Filed: November 17, 2011
    Date of Patent: July 19, 2016
    Assignee: MIROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Yimin Deng, Ho Yuen Chau, Yue Zuo, Forrest Curtis Foltz
  • Publication number: 20160109929
    Abstract: Efficient power management of a system with virtual machines is disclosed. In particular, such efficient power management may enable coordination of system-wide power changes with virtual machines. Additionally, such efficient power management may enable coherent power changes in a system with a virtual machine monitor. Furthermore, such efficient power management may enable dynamic control and communication of power state changes.
    Type: Application
    Filed: December 15, 2015
    Publication date: April 21, 2016
    Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
  • Patent number: 9218047
    Abstract: Efficient power management of a system with virtual machines is disclosed. In particular, such efficient power management may enable coordination of system-wide power changes with virtual machines. Additionally, such efficient power management may enable coherent power changes in a system with a virtual machine monitor. Furthermore, such efficient power management may enable dynamic control and communication of power state changes.
    Type: Grant
    Filed: December 8, 2014
    Date of Patent: December 22, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
  • Publication number: 20150143149
    Abstract: Efficient power management of a system with virtual machines is disclosed. In particular, such efficient power management may enable coordination of system-wide power changes with virtual machines. Additionally, such efficient power management may enable coherent power changes in a system with a virtual machine monitor. Furthermore, such efficient power management may enable dynamic control and communication of power state changes.
    Type: Application
    Filed: December 8, 2014
    Publication date: May 21, 2015
    Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
  • Patent number: 8909946
    Abstract: Efficient power management of a system with virtual machines is disclosed. In particular, such efficient power management may enable coordination of system-wide power changes with virtual machines. Additionally, such efficient power management may enable coherent power changes in a system with a virtual machine monitor. Furthermore, such efficient power management may enable dynamic control and communication of power state changes.
    Type: Grant
    Filed: May 18, 2006
    Date of Patent: December 9, 2014
    Assignee: Microsoft Corporation
    Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
  • Publication number: 20130298123
    Abstract: Computerized methods, systems, and computer-storage media for allowing virtual machines (VMs) residing on a common physical node to fairly share network bandwidth are provided. Restrictions on resource consumption are implemented to ameliorate stressing the network bandwidth or adversely affecting the quality of service (QoS) guaranteed to tenants of the physical node. The restrictions involves providing a scheduler that dynamically controls networking bandwidth allocated to each of the VMs as a function of QoS policies. These QoS policies are enforced by controlling a volume of traffic being sent from the VMs. Controlling traffic includes depositing tokens into token-bucket queues assigned to the VMs, respectively. The tokens are consumed as packets pass through the token-bucket queues. Upon consumption, packets are held until sufficient tokens are reloaded to the token-bucket queues.
    Type: Application
    Filed: July 1, 2013
    Publication date: November 7, 2013
    Inventors: YUE ZUO, HOYUEN CHAU, HOI HUU VO, SAMER N. ARAFEH, VIVEK P. DIVAKARA, YIMIN DENG, FORREST CURTIS FOLTZ, VIVEK BHANU
  • Patent number: 8477610
    Abstract: Computerized methods, systems, and computer-storage media for allowing virtual machines (VMs) residing on a common physical node to fairly share network bandwidth are provided. Restrictions on resource consumption are implemented to ameliorate stressing the network bandwidth or adversely affecting the quality of service (QoS) guaranteed to tenants of the physical node. The restrictions involves providing a scheduler that dynamically controls networking bandwidth allocated to each of the VMs as a function of QoS policies. These QoS policies are enforced by controlling a volume of traffic being sent from the VMs. Controlling traffic includes depositing tokens into token-bucket queues assigned to the VMs, respectively. The tokens are consumed as packets pass through the token-bucket queues. Upon consumption, packets are held until sufficient tokens are reloaded to the token-bucket queues.
    Type: Grant
    Filed: May 31, 2010
    Date of Patent: July 2, 2013
    Assignee: Microsoft Corporation
    Inventors: Yue Zuo, HoYuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
  • Publication number: 20130132057
    Abstract: Computerized methods, systems, and computer-storage media for throttling requests from virtual machines (VMs) to a hard-disk drive (HDD) are provided. When a request for disk I/O is received from a VM, a disk-drive model that simulates performance characteristics of the HDD is accessed. During access, the disk-drive model's estimation of HDD parameters and the disk-drive model's estimation of a current state of a disk head of the HDD are gathered. A projected execution time to carry out the request is computed as a function of the estimated HDD parameters and the estimated current state of the disk head. Also, an actual execution time to carry out the request is measured upon allowing the request to pass to the HDD. Using a comparison of the projected execution time and the actual execution time, the traffic of the requests from the VMs is throttled.
    Type: Application
    Filed: November 17, 2011
    Publication date: May 23, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: YIMIN DENG, HO YUEN CHAU, YUE ZUO, FORREST CURTIS FOLTZ
  • Publication number: 20110292792
    Abstract: Computerized methods, systems, and computer-storage media for allowing virtual machines (VMs) residing on a common physical node to fairly share network bandwidth are provided. Restrictions on resource consumption are implemented to ameliorate stressing the network bandwidth or adversely affecting the quality of service (QoS) guaranteed to tenants of the physical node. The restrictions involves providing a scheduler that dynamically controls networking bandwidth allocated to each of the VMs as a function of QoS policies. These QoS policies are enforced by controlling a volume of traffic being sent from the VMs. Controlling traffic includes depositing tokens into token-bucket queues assigned to the VMs, respectively. The tokens are consumed as packets pass through the token-bucket queues. Upon consumption, packets are held until sufficient tokens are reloaded to the token-bucket queues.
    Type: Application
    Filed: May 31, 2010
    Publication date: December 1, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Yue Zuo, HoYuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
  • Publication number: 20110225459
    Abstract: Cloud computing platforms having computer-readable media that perform methods to generate debuggable dump files are provided. The cloud computing platform includes at least one server having a host virtual machine, guest virtual machine, and hypervisor. The host virtual machine receives a command to generate the debuggable dump file. In response, it suspends all virtual processors executing on the guest virtual machine. The memory pages of the suspended virtual machine are written into a debuggable dump file, and the suspended processors are resumed at an appropriate time.
    Type: Application
    Filed: March 9, 2010
    Publication date: September 15, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: THOMAS FAHRIG, YUE ZUO, FRANCIS MANOJ DAVID, YIMIN DENG, HO-YUEN CHAU, FORREST CURTIS FOLTZ
  • Publication number: 20110225458
    Abstract: Cloud computing platforms having computer-readable media that perform methods to generate debuggable dump files are provided. The cloud computing platform includes server devices running operating system kernels. Optionally, the server may include a hypervisor. The operating system kernel receives a command to generate a debuggable dump file. In response, the operating system estimates memory requires to store the requested memory pages, allocates an appropriately sized buffer, and freezes computation. A hypervisor is present and if its memory pages are requested, the hypervisor freezes its computation. The hypervisor stores its memory pages in the buffer and resumes computation. The operating system kernel stores its pages to the buffer in priority order and resumes its computation. The contents of the buffer are written out as a debuggable dump file.
    Type: Application
    Filed: March 9, 2010
    Publication date: September 15, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: YUE ZUO, FRANCIS MANOJ DAVID, YIMIN DENG, HO-YUEN CHAU, FORREST CURTIS FOLTZ