Patents by Inventor Kenneth Ashcraft

Kenneth Ashcraft 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: 11593152
    Abstract: In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. A generic application instance may be cloned, creating a pool of generic application instance clones that can be loaded with code for a requested application to produce an application instance. The application instance can then be stored in a cache to be used for a future application request.
    Type: Grant
    Filed: June 17, 2021
    Date of Patent: February 28, 2023
    Assignee: Google LLC
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C. Barrett
  • Patent number: 11068301
    Abstract: In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. A generic application instance may be cloned, creating a pool of generic application instance clones that can be loaded with code for a requested application to produce an application instance. The application instance can then be stored in a cache to be used for a future application request.
    Type: Grant
    Filed: December 26, 2019
    Date of Patent: July 20, 2021
    Assignee: Google LLC
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C. Barrett
  • Patent number: 10558470
    Abstract: In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. A generic application instance may be cloned, creating a pool of generic application instance clones that can be loaded with code for a requested application to produce an application instance. The application instance can then be stored in a cache to be used for a future application request.
    Type: Grant
    Filed: March 30, 2017
    Date of Patent: February 11, 2020
    Assignee: Google LLC
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C. Barrett
  • Patent number: 9658881
    Abstract: In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. A generic application instance may be cloned, creating a pool of generic application instance clones that can be loaded with code for a requested application to produce an application instance. The application instance can then be stored in a cache to be used for a future application request.
    Type: Grant
    Filed: August 25, 2014
    Date of Patent: May 23, 2017
    Assignee: Google Inc.
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C. Barrett
  • Patent number: 8819238
    Abstract: In an application execution system having a plurality of application servers and an application master in an application execution system, the application master stores a plurality of applications, including a respective application, in a library for distribution among the application servers, adds a first instance of the respective application from the library to a respective application server for execution, and obtains usage information of one or more applications added to the application servers. In accordance with the usage information, the application master performs one of a predefined set of actions that includes: adding a second instance of the respective application to the plurality of application servers; and removing the first instance of the respective application from the respective application server.
    Type: Grant
    Filed: May 7, 2012
    Date of Patent: August 26, 2014
    Assignee: Google Inc.
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C. Barrett
  • Publication number: 20120265804
    Abstract: In an application execution system having a plurality of application servers and an application master in an application execution system, the application master stores a plurality of applications, including a respective application, in a library for distribution among the application servers, adds a first instance of the respective application from the library to a respective application server for execution, and obtains usage information of one or more applications added to the application servers. In accordance with the usage information, the application master performs one of a predefined set of actions that includes: adding a second instance of the respective application to the plurality of application servers; and removing the first instance of the respective application from the respective application server.
    Type: Application
    Filed: May 7, 2012
    Publication date: October 18, 2012
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C. Barrett
  • Patent number: 8195798
    Abstract: In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. In addition, each application server includes instructions for conditionally terminating execution of the respective application prior to returning the result if the respective application violates any execution restriction. The execution restrictions may include: a response time limit; an average response time limit over multiple executions of the application; a volatile memory usage limit; a restriction on using non-volatile storage of the application server; and a requirement limiting where state information is stored.
    Type: Grant
    Filed: August 17, 2011
    Date of Patent: June 5, 2012
    Assignee: Google Inc.
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C Barrett
  • Publication number: 20110302243
    Abstract: In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. In addition, each application server includes instructions for conditionally terminating execution of the respective application prior to returning the result if the respective application violates any execution restriction. The execution restrictions may include: a response time limit; an average response time limit over multiple executions of the application; a volatile memory usage limit; a restriction on using non-volatile storage of the application server; and a requirement limiting where state information is stored.
    Type: Application
    Filed: August 17, 2011
    Publication date: December 8, 2011
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C. Barrett
  • Patent number: 8005950
    Abstract: In an application execution system having a plurality of application servers, each application server includes non-volatile storage for storing a plurality of applications, volatile storage and computational resources for executing applications in response to requests received by the application execution system and for returning results to the requestors. In addition, each application server includes instructions for conditionally terminating execution of the respective application prior to returning the result if the respective application violates any of a plurality of execution restrictions. The execution restrictions in aggregate maintain scalability of the application execution system with respect to at least one or more of the following limits: number of applications that can be executed and number of requests that can be processed per period of time.
    Type: Grant
    Filed: December 9, 2008
    Date of Patent: August 23, 2011
    Assignee: Google Inc.
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan C Barrett
  • Patent number: 7877482
    Abstract: In a distributed application execution system having an application master and a plurality of application servers, each application server includes one or more processors and memory storing one or more programs. The one of more programs include instructions for storing in non-volatile storage a plurality of applications distributed to the application server by the application master, for loading into volatile storage and executing a respective application in response to a received request, and for returning a result to the request. In addition, the one of more programs include instructions for conditionally retaining the respective application in volatile storage, for responding to a future request, when criteria, including at least predefined usage level criteria, are met by the respective application, and otherwise removing the respective application from volatile storage upon returning the result to the request.
    Type: Grant
    Filed: April 1, 2008
    Date of Patent: January 25, 2011
    Assignee: Google Inc.
    Inventors: Kenneth Ashcraft, Jon P. McAlister, Kevin A. Gibbs, Ryan Barrett
  • Publication number: 20060224359
    Abstract: A method and system to minimize to redundancy in testing a new software system by utilizing a knowledge base is provided. The knowledge base may be represented in a form of a decision tree including leaf nodes which store previously tested optimal configurations. When the knowledge base does not contain an optimal configuration for the new software, an optimal solution for the new software system may be determined by adding a further decision tree branch to the initial decision tree. A desirable tree branch may be selected from a table including a predetermined set of desirable tree branches for each category of software. As a result, the number of solutions to be tested on the input software may be limited and cost and effort to run redundant tests on a software system may be reduced.
    Type: Application
    Filed: April 5, 2005
    Publication date: October 5, 2006
    Inventors: Kenneth Ashcraft, Flavio Bergamaschi, Viktors Bertsis, Erin Burke, Duy Huynh, Santhosh Rao, Duc Vianney, Peter Wong
  • Publication number: 20050257146
    Abstract: A method, computer program product, and a data processing system for recognizing and correcting dyslexia-related spelling errors is provided. A word is received for evaluation of a dyslexia-related misspelling. The received word is compared with a plurality of dyslexia variants, and a match between the received word and a dyslexia variant is identified. An error rate at which dyslexia-related misspelled words are received is compared with a threshold, and the read word is evaluated as one of a correctly spelled word and a dyslexia-related misspelling of a word.
    Type: Application
    Filed: May 13, 2004
    Publication date: November 17, 2005
    Applicant: International Business Machines Corporation
    Inventors: Kenneth Ashcraft, Viktors Berstis, Erin Burke, Santhosh Rao, Richard Schwerdtfeger