Patents by Inventor Haseeb Ahmed

Haseeb Ahmed 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).

  • Publication number: 20150212919
    Abstract: In accordance with one or more aspects, an application that is to be suspended on a computing device is identified based on a policy. The policy indicates that applications that are not being used are to be suspended. The application is automatically suspended, and is allowed to remain in memory but not execute while suspended. Additionally, when memory is to be freed one or more suspended applications to terminate are automatically selected based on the policy, and these one or more selected applications are terminated.
    Type: Application
    Filed: March 17, 2015
    Publication date: July 30, 2015
    Inventors: Benjamin Salim Srour, Michael H. Krause, Haseeb Ahmed, Zinaida A. Pozen
  • Patent number: 8997171
    Abstract: In accordance with one or more aspects, an application that is to be suspended on a computing device is identified based on a policy. The policy indicates that applications that are not being used are to be suspended. The application is automatically suspended, and is allowed to remain in memory but not execute while suspended. Additionally, when memory is to be freed one or more suspended applications to terminate are automatically selected based on the policy, and these one or more selected applications are terminated.
    Type: Grant
    Filed: August 19, 2011
    Date of Patent: March 31, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Benjamin Salim Srour, Michael H. Krause, Haseeb Ahmed, Zinaida A. Pozen
  • Patent number: 8635630
    Abstract: In a computing device running multiple applications, a check is made as to whether a threshold value of multiple threshold values has been met. Each of the multiple threshold values is associated with a characteristic of one of the multiple applications or a characteristic of a resource of the computing device. If the threshold value has not been met, then the multiple applications are allowed to continue running on the computing device. However, if the threshold value has been met, then one or more of the multiple applications to shut down is selected based at least in part on the characteristic associated with the threshold value that has been met, and the selected application is shut down.
    Type: Grant
    Filed: October 25, 2010
    Date of Patent: January 21, 2014
    Assignee: Microsoft Corporation
    Inventors: Anand B. Iyer, Michael H. Krause, Haseeb Ahmed, Yunfei Shang, Kumneger T. Zelalem, Zinaida A. Pozen, Hui Huang, Yau N. Chin
  • Patent number: 8621439
    Abstract: Modern application tracing techniques are described herein that enable dynamic logging of events declared in a static manifest. Various events for logging can be declared in a static manifest. The static manifest may then be compiled to translate the declared events into a library of corresponding functions that can be called by “modern” applications written using dynamic code. Calls made to these functions from dynamic code are converted to corresponding static events and forwarded to existing tracing application programming interfaces (APIs) designed to handle logging of static events for “legacy” applications that use compiled code. In this manner, static functions that are compatible with tracing APIs can be created and called dynamically from dynamic code. This can occur without requiring administrative rights to install the code and while preserving existing features for legacy applications, such that a tracing log can include events from both modern applications and legacy applications.
    Type: Grant
    Filed: September 6, 2011
    Date of Patent: December 31, 2013
    Assignee: Microsoft Corporation
    Inventors: Michael H. Krause, Zoran Dimov, Alex Bendetov, Haseeb Ahmed, Matthew R. Ayers
  • Publication number: 20130061212
    Abstract: Modern application tracing techniques are described herein that enable dynamic logging of events declared in a static manifest. Various events for logging can be declared in a static manifest. The static manifest may then be compiled to translate the declared events into a library of corresponding functions that can be called by “modern” applications written using dynamic code. Calls made to these functions from dynamic code are converted to corresponding static events and forwarded to existing tracing application programming interfaces (APIs) designed to handle logging of static events for “legacy” applications that use compiled code. In this manner, static functions that are compatible with tracing APIs can be created and called dynamically from dynamic code. This can occur without requiring administrative rights to install the code and while preserving existing features for legacy applications, such that a tracing log can include events from both modern applications and legacy applications.
    Type: Application
    Filed: September 6, 2011
    Publication date: March 7, 2013
    Applicant: Microsoft Corporation
    Inventors: Michael H. Krause, Zoran Dimov, Alex Bendetov, Haseeb Ahmed, Matthew R. Ayers
  • Publication number: 20130047198
    Abstract: In accordance with one or more aspects, an application that is to be suspended on a computing device is identified based on a policy. The policy indicates that applications that are not being used are to be suspended. The application is automatically suspended, and is allowed to remain in memory but not execute while suspended. Additionally, when memory is to be freed one or more suspended applications to terminate are automatically selected based on the policy, and these one or more selected applications are terminated.
    Type: Application
    Filed: August 19, 2011
    Publication date: February 21, 2013
    Applicant: Microsoft Corporation
    Inventors: Benjamin Salim Srour, Michael H. Krause, Haseeb Ahmed, Zinaida A. Pozen
  • Publication number: 20120102504
    Abstract: In a computing device running multiple applications, a check is made as to whether a threshold value of multiple threshold values has been met. Each of the multiple threshold values is associated with a characteristic of one of the multiple applications or a characteristic of a resource of the computing device. If the threshold value has not been met, then the multiple applications are allowed to continue running on the computing device. However, if the threshold value has been met, then one or more of the multiple applications to shut down is selected based at least in part on the characteristic associated with the threshold value that has been met, and the selected application is shut down.
    Type: Application
    Filed: October 25, 2010
    Publication date: April 26, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Anand B. Iyer, Michael H. Krause, Haseeb Ahmed, Yunfei Shang, Kumneger T. Zelalem, Zinaida A. Pozen, Hui Huang, Yau N. Chin