Patents by Inventor Andrew Whitechapel

Andrew Whitechapel 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: 20220309041
    Abstract: In non-limiting examples of the present disclosure, systems, methods and devices for selectively virtualizing software application functions are presented. An application package for a containerized software application may be received. The application package may comprise an application manifest and a virtualization exclusion for a first location of a global file system of the computing device. The containerized software application may be installed in a container comprising a virtual file system. An indication to write a first new file at the first location may be received by the containerized software application. A determination may be made that the first location comprises the virtualization exclusion. The first new file may be written to the first location of the global file system based on the determination that the first location comprises the virtualization exclusion.
    Type: Application
    Filed: March 23, 2021
    Publication date: September 29, 2022
    Inventors: David Andrew WHITECHAPEL, Hart Daniel WILSON, Anis Mohammed KHAJA MOHIDEEN
  • Publication number: 20180129537
    Abstract: An example system for managing memory usage includes memory and a processor configured to publish a soft memory target for each of a plurality of applications, wherein the soft memory target is to be statically predetermined based at least on a detected state of execution of each application and a size of the memory of the system. The processor is to also detect that an application exceeds the soft memory target. Additionally, the processor is to detect that a total memory usage of the system exceeds a threshold amount. The processor is to further terminate the application based at least in part on the detected soft memory target being exceeded and in response to detecting that the total memory usage of the system exceeds the threshold amount.
    Type: Application
    Filed: November 10, 2016
    Publication date: May 10, 2018
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Timothy Kurtzman, Jeremy Payne Robinson, Andrew Whitechapel
  • Patent number: 9201693
    Abstract: Innovations for resource management are described herein. For example, resource management organizes resources as pools that are associated with different types of workloads. The resource management can be implemented as part of an application layer framework and/or operating system of a computing device. A budget is established at design time for the resources of the computing device. Each type of workload primarily draws from resources dedicated to that type of workload in the associated pool under the budget, as enforced by the operating system. This can help provide acceptable performance for those workloads that are permitted to run, while preventing resources of the mobile computing device from becoming spread too thin among workloads. It can also help maintain a good overall balance among different types of workloads.
    Type: Grant
    Filed: September 4, 2012
    Date of Patent: December 1, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jason Fuller, Abolade Gbadegesin, Vijayendra G. R. Vasu, Yasser Shaaban, Justin Horst, Akhilesh Kaza, Conrad Chang, David Andrew Whitechapel
  • Patent number: 9052924
    Abstract: A managed composite control can be directly (without intermediary hosting layers) hosted within an unmanaged hosting application. A managed control which can host managed composite controls is provided, the managed control being directly hostable within any unmanaged hosting control. An adapter (control) wraps the managed control content before the control content is moved into the unmanaged layer. Overloaded methods are provided that accept managed controls and manage communication between layers in such a way that instead of internal references expecting a user control, the internal references expect an object.
    Type: Grant
    Filed: April 15, 2008
    Date of Patent: June 9, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: David Andrew Whitechapel, Daniel A. Molina
  • Publication number: 20140068624
    Abstract: Innovations for quota-based resource management are described herein. For example, quota-based resource management is implemented as part of an application layer framework and/or operating system of a computing device. With the quota-based resource management, a budget is established at design time for the resources of the computing device. Each type of workload primarily draws from resources dedicated to that type of workload in the budget, as enforced by the operating system. This can help provide acceptable performance for those workloads that are permitted to run, while preventing resources of the mobile computing device from becoming spread too thin among workloads. It can also help maintain a good overall balance among different types of workloads.
    Type: Application
    Filed: September 4, 2012
    Publication date: March 6, 2014
    Applicant: Microsoft Corporation
    Inventors: Jason Fuller, Abolade Gbadegesin, Vijayendra G. R. Vasu, Yasser Shaaban, Justin Horst, Akhilesh Kaza, Conrad Chang, David Andrew Whitechapel
  • Patent number: 8296730
    Abstract: When objects are called by a program written in a strongly-typed language using an interface written in a loosely-typed manner, incompatibilities between the programming languages can cause problems. Extension methods can simplify the interface between objects in an object model and a program written in a strongly-typed programming language by providing method overloads that accept strongly-typed parameters. Extension methods are provided that use method overloads that accept strongly-typed parameters, improving type safety by allowing the compiler to enforce type safety rather than relying on type checking at runtime. Nullable types and object initialization may be used to provide strongly-typed optional parameters. Extension methods can be used to support parameterized properties and to support class indexers, enabling query of collections of in-memory objects.
    Type: Grant
    Filed: March 12, 2008
    Date of Patent: October 23, 2012
    Assignee: Microsoft Corporation
    Inventors: David Andrew Whitechapel, Vladimir Morozov, Phillip Michael Hoff
  • Publication number: 20100318967
    Abstract: A system and method for enabling supplementary deployment actions to be performed in conjunction with a deployment of an application version. A deployment manager may download one or more supplementary deployment action (SDA) components to a user application cache. In conjunction with performing deployment actions, SDA components may be invoked from the user application cache or from a global application cache. The SDA components may perform actions specific to the application or version of the application, including actions not preconfigured in the deployment manager. An SDA component may be invoked prior to or after the deployment manager performs deployment actions. If an SDA component fails, SDA components that succeeded may be automatically invoked to roll back their actions. SDA components may be used to perform a first install, an update, a roll back, or an uninstall. SDA components may have the privileges of the application and the user corresponding to the user application cache.
    Type: Application
    Filed: June 12, 2009
    Publication date: December 16, 2010
    Applicant: Microsoft Corporation
    Inventors: Saurabh Bhatia, Jeffrey S. Young, David Andrew Whitechapel, Konstantin Eman, Jiajun Hua, Thomas Quinn, Rachel Falzone Schaw, Rolando Jimenez Salgado
  • Patent number: 7802199
    Abstract: Various technologies and techniques are disclosed for enabling ribbon re-loading through a proxy add-in. A ribbon proxy add-in is loaded that has ribbon customizations for a ribbon of a primary add-in. The primary add-in is also loaded. At a later point in time, the ribbon proxy add-in is unloaded and reloaded, which causes a host application to re-query the ribbon proxy add-in for the ribbon customizations. Since the ribbon proxy add-in points to the ribbon customizations of the primary add-in, the ribbon of the primary add-in is updated as a result.
    Type: Grant
    Filed: November 30, 2007
    Date of Patent: September 21, 2010
    Assignee: Microsoft Corporation
    Inventors: Misha Shneerson, David Andrew Whitechapel
  • Publication number: 20090259951
    Abstract: A managed composite control can be directly (without intermediary hosting layers) hosted within an unmanaged hosting application. A managed control which can host managed composite controls is provided, the managed control being directly hostable within any unmanaged hosting control. An adapter (control) wraps the managed control content before the control content is moved into the unmanaged layer. Overloaded methods are provided that accept managed controls and manage communication between layers in such a way that instead of internal references expecting a user control, the internal references expect an object.
    Type: Application
    Filed: April 15, 2008
    Publication date: October 15, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: David Andrew Whitechapel, Daniel A. Molina
  • Publication number: 20090234804
    Abstract: When objects are called by a program written in a strongly-typed language using an interface written in a loosely-typed manner, incompatibilities between the programming languages can cause problems. Extension methods can simplify the interface between objects in an object model and a program written in a strongly-typed programming language by providing method overloads that accept strongly-typed parameters. Extension methods are provided that use method overloads that accept strongly-typed parameters, improving type safety by allowing the compiler to enforce type safety rather than relying on type checking at runtime. Nullable types and object initialization may be used to provide strongly-typed optional parameters. Extension methods can be used to support parameterized properties and to support class indexers, enabling query of collections of in-memory objects.
    Type: Application
    Filed: March 12, 2008
    Publication date: September 17, 2009
    Applicant: Microsoft Corporation
    Inventors: David Andrew Whitechapel, Vladimir Morozov, Phillip Michael Hoff
  • Publication number: 20090217254
    Abstract: Smart tag functionality is enabled in documents at an application level. An application add-in module configured to be loaded into an application includes a recognizer module and an action module. The recognizer module is configured to recognize a textual object in a plurality of documents open in an application and to assign a smart tag to the recognized textual object. The action module is configured to indicate an action in an interface provided in a document proximate to the smart tag if a user interacts with the smart tag in the document. The action module is configured to enable the action to be performed if the user selects the action in the provided interface.
    Type: Application
    Filed: February 22, 2008
    Publication date: August 27, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Misha Shneerson, Andrew Whitechapel
  • Publication number: 20090144752
    Abstract: Various technologies and techniques are disclosed for providing communication between managed objects across application domains. When a determination is made that a communication from a first managed object to a second managed object on a different application domain is needed, an unmanaged aggregation object is created. An aggregation process is used to aggregate the second unmanaged object with the unmanaged aggregation object. Calls are then passed from the first managed object through the unmanaged aggregation object to the second managed object. The second managed object appears to be an unmanaged object through use of the unmanaged aggregation object.
    Type: Application
    Filed: November 30, 2007
    Publication date: June 4, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Misha Shneerson, David Andrew Whitechapel
  • Publication number: 20090144645
    Abstract: Various technologies and techniques are disclosed for enabling ribbon re-loading through a proxy add-in. A ribbon proxy add-in is loaded that has ribbon customizations for a ribbon of a primary add-in. The primary add-in is also loaded. At a later point in time, the ribbon proxy add-in is unloaded and reloaded, which causes a host application to re-query the ribbon proxy add-in for the ribbon customizations. Since the ribbon proxy add-in points to the ribbon customizations of the primary add-in, the ribbon of the primary add-in is updated as a result.
    Type: Application
    Filed: November 30, 2007
    Publication date: June 4, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Misha Shneerson, David Andrew Whitechapel
  • Publication number: 20090138846
    Abstract: Various technologies and techniques are disclosed for extending macro recordings. A request is received to record a macro in a macro-enabled application using an original recording engine. The request is intercepted, and the macro is recorded using a separate recording engine than the original recording engine. To record the macro using the separate recording engine, a vtable is intercepted from a macro recording mechanism used by an original recording engine. Calls contained in the vtable are then redirected to one or more functions in a separate recording engine. The macro is output to a different format than an original format of the original recording engine.
    Type: Application
    Filed: November 23, 2007
    Publication date: May 28, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Misha Shneerson, David Andrew Whitechapel, Nirav Shah