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: 10635489Abstract: 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: GrantFiled: December 10, 2018Date of Patent: April 28, 2020Assignee: Microsoft Technology Licensing, LLCInventor: Forrest Curtis Foltz
-
Publication number: 20190121667Abstract: 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: ApplicationFiled: December 10, 2018Publication date: April 25, 2019Inventor: Forrest Curtis FOLTZ
-
Patent number: 10152351Abstract: 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: GrantFiled: February 1, 2016Date of Patent: December 11, 2018Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventor: Forrest Curtis Foltz
-
Patent number: 9772860Abstract: 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: GrantFiled: September 7, 2016Date of Patent: September 26, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
-
Publication number: 20170220380Abstract: 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: ApplicationFiled: February 1, 2016Publication date: August 3, 2017Inventor: Forrest Curtis Foltz
-
Publication number: 20170220592Abstract: 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: ApplicationFiled: February 1, 2016Publication date: August 3, 2017Inventor: Forrest Curtis Foltz
-
Publication number: 20160378506Abstract: 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: ApplicationFiled: September 7, 2016Publication date: December 29, 2016Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
-
Patent number: 9489035Abstract: 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: GrantFiled: December 15, 2015Date of Patent: November 8, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
-
Patent number: 9471348Abstract: 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: GrantFiled: July 1, 2013Date of Patent: October 18, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Yue Zuo, Hoyuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
-
Patent number: 9395920Abstract: 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: GrantFiled: November 17, 2011Date of Patent: July 19, 2016Assignee: MIROSOFT TECHNOLOGY LICENSING, LLCInventors: Yimin Deng, Ho Yuen Chau, Yue Zuo, Forrest Curtis Foltz
-
Publication number: 20160109929Abstract: 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: ApplicationFiled: December 15, 2015Publication date: April 21, 2016Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
-
Patent number: 9218047Abstract: 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: GrantFiled: December 8, 2014Date of Patent: December 22, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
-
Publication number: 20150143149Abstract: 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: ApplicationFiled: December 8, 2014Publication date: May 21, 2015Inventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
-
Patent number: 8909946Abstract: 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: GrantFiled: May 18, 2006Date of Patent: December 9, 2014Assignee: Microsoft CorporationInventors: Adrian J. Oney, Bryan Mark Willman, Eric P. Traut, Forrest Curtis Foltz, Matthew D. Hendel, Rene Antonio Vega
-
Publication number: 20130298123Abstract: 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: ApplicationFiled: July 1, 2013Publication date: November 7, 2013Inventors: YUE ZUO, HOYUEN CHAU, HOI HUU VO, SAMER N. ARAFEH, VIVEK P. DIVAKARA, YIMIN DENG, FORREST CURTIS FOLTZ, VIVEK BHANU
-
Patent number: 8477610Abstract: 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: GrantFiled: May 31, 2010Date of Patent: July 2, 2013Assignee: Microsoft CorporationInventors: Yue Zuo, HoYuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
-
Publication number: 20130132057Abstract: 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: ApplicationFiled: November 17, 2011Publication date: May 23, 2013Applicant: MICROSOFT CORPORATIONInventors: YIMIN DENG, HO YUEN CHAU, YUE ZUO, FORREST CURTIS FOLTZ
-
Publication number: 20110292792Abstract: 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: ApplicationFiled: May 31, 2010Publication date: December 1, 2011Applicant: MICROSOFT CORPORATIONInventors: Yue Zuo, HoYuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
-
Publication number: 20110225459Abstract: 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: ApplicationFiled: March 9, 2010Publication date: September 15, 2011Applicant: MICROSOFT CORPORATIONInventors: THOMAS FAHRIG, YUE ZUO, FRANCIS MANOJ DAVID, YIMIN DENG, HO-YUEN CHAU, FORREST CURTIS FOLTZ
-
Publication number: 20110225458Abstract: 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: ApplicationFiled: March 9, 2010Publication date: September 15, 2011Applicant: MICROSOFT CORPORATIONInventors: YUE ZUO, FRANCIS MANOJ DAVID, YIMIN DENG, HO-YUEN CHAU, FORREST CURTIS FOLTZ