Patents by Inventor Graham Wong

Graham Wong 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: 11797328
    Abstract: A virtualization partition (VP) is executed by a virtualization layer. The VP contains guest software that executes in isolation within the VP. The guest software has a background task (BT) that needs to be performed in the future. The BT is virtualized by a BT service that executes outside of the VP. The guest software registers the BT, through the virtualization layer, with a BT virtualization service. An event occurs outside of the VP that triggers the BT. The BT virtualization service responds to the event by assuring that the VP is available (executing), and optionally triggers (possibly indirectly) the execution of code in the application.
    Type: Grant
    Filed: October 14, 2019
    Date of Patent: October 24, 2023
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Margarit Chenchev, Benjamin M. Schultz, Gopikrishna Kannan, Graham Wong, Harish Srinivasan, Arup Roy, Hari Pulapaka
  • Publication number: 20210109774
    Abstract: A virtualization partition (VP) is executed by a virtualization layer. The VP contains guest software that executes in isolation within the VP. The guest software has a background task (BT) that needs to be performed in the future. The BT is virtualized by a BT service that executes outside of the VP. The guest software registers the BT, through the virtualization layer, with a BT virtualization service. An event occurs outside of the VP that triggers the BT. The BT virtualization service responds to the event by assuring that the VP is available (executing), and optionally triggers (possibly indirectly) the execution of code in the application.
    Type: Application
    Filed: October 14, 2019
    Publication date: April 15, 2021
    Inventors: Margarit CHENCHEV, Benjamin M. SCHULTZ, Gopikrishna KANNAN, Graham WONG, Harish SRINIVASAN, Arup ROY, Hari PULAPAKA
  • Patent number: 10627889
    Abstract: Deploying containers constrained by power profiles on a host system. A method includes identifying a container template, a set of reusable stored characteristics, to be used for deploying a container instance. The method further includes obtaining a power profile, defining at least one power consumption threshold, for the container instance based on at least one of the set of reusable stored characteristics of the container template or other information about the container instance. The method further includes deploying the container instance on the host system by applying the set of reusable stored characteristics and the power profile by applying one or more configuration layers which causes power to the container instance to be at least one of regulated or monitored based on information in the power profile.
    Type: Grant
    Filed: January 29, 2018
    Date of Patent: April 21, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Margarit Simeonov Chenchev, Benjamin M. Schultz, Paresh Maisuria, Hari R. Pulapaka, Ankit Srivastava, Graham Wong
  • Publication number: 20190235605
    Abstract: Deploying containers constrained by power profiles on a host system. A method includes identifying a container template, a set of reusable stored characteristics, to be used for deploying a container instance. The method further includes obtaining a power profile, defining at least one power consumption threshold, for the container instance based on at least one of the set of reusable stored characteristics of the container template or other information about the container instance. The method further includes deploying the container instance on the host system by applying the set of reusable stored characteristics and the power profile by applying one or more configuration layers which causes power to the container instance to be at least one of regulated or monitored based on information in the power profile.
    Type: Application
    Filed: January 29, 2018
    Publication date: August 1, 2019
    Inventors: Margarit Simeonov CHENCHEV, Benjamin M. SCHULTZ, Paresh MAISURIA, Hari R. PULAPAKA, Ankit SRIVASTAVA, Graham WONG
  • Patent number: 10248459
    Abstract: Embodiments disclosed herein are related to systems, methods, and computer readable medium for allocating one or more system resources for the exclusive use of an application. The embodiments include receiving a request for an exclusive allocation of one or more system resources for a first application, the one or more system resources being useable by the first application and one or more second applications; determining an appropriate amount of the one or more system resources that are to be allocated exclusively to the first application; and partitioning the one or more system resources into a first portion that is allocated for the exclusive use of the first application and a second portion that is not allocated for the exclusive use of the first application, the second portion being available for the use of the one or more second applications.
    Type: Grant
    Filed: June 30, 2016
    Date of Patent: April 2, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gregory John Colombo, Logananth Seetharaman, Graham Wong, Mehmet Iyigun, Steven Michel Pronovost, Thomas Fahrig, Thobias Jones, Michael Charles Crandall, James Andrew Goossen
  • Publication number: 20190086986
    Abstract: Achieving a consistent battery drain rate at a computing device includes identifying an amount of available battery energy, and identifying a target device runtime using the available energy. A plurality of time periods over which to budget energy use to achieve the target device runtime are identified, and an allotment of the available energy for each of the plurality of time periods is determined. A determination of how to allocate the allotted energy for a current time period is made. The determination includes identifying a priority of each application based user-facing attributes of each application, identifying an energy budget for each application, and allocating a portion of the allotted energy for the current time period to each application based on their identified priority and their energy budget. The energy budget for at least one application is adjusted based on that applications' energy usage during the current time period.
    Type: Application
    Filed: October 12, 2018
    Publication date: March 21, 2019
    Inventors: Eric Bluestein, Graham Wong, Mehmet Iyigun, Hari R. Pulapaka
  • Patent number: 10114439
    Abstract: Achieving a consistent battery drain rate at a computing device includes identifying an amount of available battery energy, and identifying a target device runtime using the available energy. A plurality of time periods over which to budget energy use to achieve the target device runtime are identified, and an allotment of the available energy for each of the plurality of time periods is determined. A determination of how to allocate the allotted energy for a current time period is made. The determination includes identifying a priority of each application based user-facing attributes of each application, identifying an energy budget for each application, and allocating a portion of the allotted energy for the current time period to each application based on their identified priority and their energy budget. The energy budget for at least one application is adjusted based on that applications' energy usage during the current time period.
    Type: Grant
    Filed: May 26, 2016
    Date of Patent: October 30, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Eric Bluestein, Graham Wong, Mehmet Iyigun, Hari R. Pulapaka
  • Patent number: 10055006
    Abstract: Coalescing triggers from external events. Embodiments include receiving a plurality of triggers, each associated with occurrence of an external event. A first trigger identified as time critical is scheduled for firing. A second trigger identified as opportunistic is coalesced with others of the plurality of triggers. Coalescing includes determining an importance of an application-based workload associated with the second trigger, determining a system state relevant to firing the second trigger, and determining a condition for firing the second trigger based on the importance of the workload and the system state. Coalescing also includes identifying that the condition for firing the second trigger aligns with a condition for firing the others of the plurality of triggers, and scheduling the second trigger for firing along with the others of the plurality of triggers. Embodiments also include subsequently firing the second trigger along with the others of the plurality of triggers.
    Type: Grant
    Filed: March 29, 2016
    Date of Patent: August 21, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Graham Wong, Hari R. Pulapaka, Eric Bluestein
  • Publication number: 20170344092
    Abstract: Achieving a consistent battery drain rate at a computing device includes identifying an amount of available battery energy, and identifying a target device runtime using the available energy. A plurality of time periods over which to budget energy use to achieve the target device runtime are identified, and an allotment of the available energy for each of the plurality of time periods is determined. A determination of how to allocate the allotted energy for a current time period is made. The determination includes identifying a priority of each application based user-facing attributes of each application, identifying an energy budget for each application, and allocating a portion of the allotted energy for the current time period to each application based on their identified priority and their energy budget. The energy budget for at least one application is adjusted based on that applications' energy usage during the current time period.
    Type: Application
    Filed: May 26, 2016
    Publication date: November 30, 2017
    Inventors: Eric Bluestein, Graham Wong, Mehmet Iyigun, Hari R. Pulapaka
  • Publication number: 20170285721
    Abstract: Coalescing triggers from external events. Embodiments include receiving a plurality of triggers, each associated with occurrence of an external event. A first trigger identified as time critical is scheduled for firing. A second trigger identified as opportunistic is coalesced with others of the plurality of triggers. Coalescing includes determining an importance of an application-based workload associated with the second trigger, determining a system state relevant to firing the second trigger, and determining a condition for firing the second trigger based on the importance of the workload and the system state. Coalescing also includes identifying that the condition for firing the second trigger aligns with a condition for firing the others of the plurality of triggers, and scheduling the second trigger for firing along with the others of the plurality of triggers. Embodiments also include subsequently firing the second trigger along with the others of the plurality of triggers.
    Type: Application
    Filed: March 29, 2016
    Publication date: October 5, 2017
    Inventors: Graham Wong, Hari R. Pulapaka, Eric Bluestein
  • Publication number: 20170269968
    Abstract: Embodiments disclosed herein are related to systems, methods, and computer readable medium for allocating one or more system resources for the exclusive use of an application. The embodiments include receiving a request for an exclusive allocation of one or more system resources for a first application, the one or more system resources being useable by the first application and one or more second applications; determining an appropriate amount of the one or more system resources that are to be allocated exclusively to the first application; and partitioning the one or more system resources into a first portion that is allocated for the exclusive use of the first application and a second portion that is not allocated for the exclusive use of the first application, the second portion being available for the use of the one or more second applications.
    Type: Application
    Filed: June 30, 2016
    Publication date: September 21, 2017
    Inventors: Gregory John Colombo, Logananth Seetharaman, Graham Wong, Mehmet lyigun, Steve Michel Pronovost, Thomas Fahrig, Thobias Jones, Michael Charles Crandall, James Andrew Goossen