Patents by Inventor Kristofer Hellick Reierson
Kristofer Hellick Reierson 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: 20160026478Abstract: Technologies are described herein for converting a desktop application to a web application. An interface file is generated based on a user interface of the desktop application. A logic file is generated based on application executables of the desktop application. A data model is generated based on application data and states of the desktop application. The web application is generated based on the interface file, the logic file, and the data model.Type: ApplicationFiled: October 7, 2015Publication date: January 28, 2016Inventors: Aseem Kohli, Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 9223611Abstract: Execution of an application is suspended and the runtime state of the application is collected and persisted. Maintenance operations may then be performed on the computer that the application was executing upon. The runtime state might also be moved to another computer. In order to resume execution of the application, the runtime state of the application is restored. Once the runtime state of the application has been restored, execution of the application may be restarted from the point at which execution was suspended. A proxy layer might also be utilized to translate requests received from the application for resources that are modified after the runtime state of the application is persisted.Type: GrantFiled: December 28, 2010Date of Patent: December 29, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Charles Kekeh, Aseem Kohli, Scott Elliot Stearns, Kristofer Hellick Reierson, Cread Wellington Mefford, Jr., Angela Mele Anderson
-
Patent number: 9189308Abstract: Technologies are described herein for differentiating normal operation of an application program from error conditions to predict, diagnose, and recover from application failures. Access to resources by the application program is monitored, and resource access events are logged. Resource access patterns are established from the logged resource access events utilizing computer pattern recognition techniques. If subsequent access to resources by the application program deviates from the established patterns, then a user and/or administrator of the application program is notified of a potential error condition based on the detected deviation. In addition, sequences of resource access events that deviate from the established resources access patterns are correlated with an error condition based on a temporal proximity to the time of occurrence of the error to provide diagnostic information regarding the error.Type: GrantFiled: December 27, 2010Date of Patent: November 17, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Matthew David Young, Kristofer Hellick Reierson, Eric Jewart
-
Patent number: 9176742Abstract: Technologies are described herein for converting a desktop application to a web application. An interface file is generated based on a user interface of the desktop application. A logic file is generated based on application executables of the desktop application. A data model is generated based on application data and states of the desktop application. The web application is generated based on the interface file, the logic file, and the data model.Type: GrantFiled: December 27, 2010Date of Patent: November 3, 2015Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Aseem Kohli, Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 9116728Abstract: Technologies are described herein for providing; a persona-based application experience. A query for a location of a persona package is received from a virtualization client. When the query is received, a current persona of a user requesting execution of a virtualized application is determined. The location of the persona package corresponding to the current persona of the user is determined. The location of the persona package is sent to the virtualization client in response to the query. The virtualization client is configured to execute the virtualized application adapted to the persona package.Type: GrantFiled: December 21, 2010Date of Patent: August 25, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Alvin Chardon, Kristofer Hellick Reierson, Angela Mele Anderson, Galen Clyde Hunt, Douglas Christopher Burger, Dilip Krishna Pai
-
Patent number: 9003543Abstract: In order to enable potentially conflicting applications to execute on the same computer, application programming interface (API) calls are intercepted when an application attempts to access a computer system's resources. During a learning mode of operation, a security monitor stores data in a security monitor database identifying which applications are allowed to access the computer system resources. At runtime of an application, the security monitor operates in an enforcement mode and utilizes the contents of the security monitor database to determine if an application is permitted to access system resources. If data associated with the application is located in the security monitor database, the application is allowed to access computer system resources, if data associated with the application is not located in the security monitor database, the application is not allowed to access computer system resources.Type: GrantFiled: December 21, 2010Date of Patent: April 7, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Kristofer Hellick Reierson, Lidiane Pereira de Souza, Angela Mele Anderson
-
Publication number: 20140373008Abstract: Application virtualization at the thread level, rather than at the process level, the operation of a thread across virtualization contexts. For instance, one virtualization context might be a native environment, whereas another virtualization context might be a virtualization environment in which code running inside a virtualization package has access to virtualized computing resources. A thread operating in a first virtualization context then enters an entry point to code associated with a second virtualization context. For instance, a native thread might enter a plug-in operating as part of a virtualized package in a virtualization environment. While the thread is operating on the code, the thread might request access to the second computing resources associated with the second virtualization environment. In response, the thread is associated with the second virtualization context such that the thread has access to the second computing resources associated with the second virtualization context.Type: ApplicationFiled: June 13, 2013Publication date: December 18, 2014Inventors: Neil A. Jacobson, Gurashish Singh Brar, Kristofer Hellick Reierson
-
Publication number: 20140310703Abstract: Technologies are described herein for deploying and configuring a multi-tiered application to multiple computers. A selection of one or more application packages from multiple available application packages is received. Each of the selected application packages may correspond to one of multiple deployment configurations. The selected application packages may form the multi-tiered application. A union operation is performed on the multiple deployment configurations to generate a merged deployment configuration. A deployment workflow for deploying and configuring the selected application packages to the multiple computers is generated. The selected application packages are deployed to the multiple computers over a network according to the deployment workflow and the merged deployment configuration.Type: ApplicationFiled: March 10, 2014Publication date: October 16, 2014Applicant: Microsoft CorporationInventors: Lidiane Pereira de Souza, Kristofer Hellick Reierson, Matthew R. Yandek
-
Publication number: 20140304771Abstract: Application programming interface (API) calls made by an application are intercepted at runtime. A determination is made as to whether each intercepted API call is allowed or blocked by a restricted application execution environment. Each API call that is blocked by the restricted application execution environment is modified so that the API call is allowable such as, for instance, modifying the API call to execute against a shadow resource. Remediation code might also be executed at runtime to reformat the API call so that it is allowed to execute in the restricted application execution environment.Type: ApplicationFiled: June 20, 2014Publication date: October 9, 2014Inventors: Kristofer Hellick Reierson, Angela Mele Anderson
-
Publication number: 20140250494Abstract: Application programming interface (API) calls made by an application are intercepted at runtime. A determination is made as to whether each intercepted API call is allowed or blocked by a restricted application execution environment. Each API call that is blocked by the restricted application execution environment is modified so that the API call is allowable such as, for instance, modifying the API call to execute against a shadow resource. Remediation code might also be executed at runtime to reformat the API call so that it is allowed to execute in the restricted application execution environment.Type: ApplicationFiled: May 12, 2014Publication date: September 4, 2014Applicant: Microsoft CorporationInventors: Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 8789138Abstract: Application programming interface (API) calls made by an application are intercepted at runtime. A determination is made as to whether each intercepted API call is allowed or blocked by a restricted application execution environment. Each API call that is blocked by the restricted application execution environment is modified so that the API call is allowable such as, for instance, modifying the API call to execute against a shadow resource. Remediation code might also be executed at runtime to reformat the API call so that it is allowed to execute in the restricted application execution environment.Type: GrantFiled: December 27, 2010Date of Patent: July 22, 2014Assignee: Microsoft CorporationInventors: Kristofer Hellick Reierson, Angela Mele Anderson
-
Publication number: 20120166963Abstract: Technologies are described herein for converting a desktop application to a web application. An interface file is generated based on a user interface of the desktop application. A logic file is generated based on application executables of the desktop application. A data model is generated based on application data and states of the desktop application. The web application is generated based on the interface file, the logic file, and the data model.Type: ApplicationFiled: December 27, 2010Publication date: June 28, 2012Applicant: MICROSOFT CORPORATIONInventors: Aseem Kohli, Kristofer Hellick Reierson, Angela Mele Anderson
-
Publication number: 20120166869Abstract: Technologies are described herein for differentiating normal operation of an application program from error conditions to predict, diagnose, and recover from application failures. Access to resources by the application program is monitored, and resource access events are logged. Resource access patterns are established from the logged resource access events utilizing computer pattern recognition techniques. If subsequent access to resources by the application program deviates from the established patterns, then a user and/or administrator of the application program is notified of a potential error condition based on the detected deviation. In addition, sequences of resource access events that deviate from the established resources access patterns are correlated with an error condition based on a temporal proximity to the time of occurrence of the error to provide diagnostic information regarding the error.Type: ApplicationFiled: December 27, 2010Publication date: June 28, 2012Applicant: MICROSOFT CORPORATIONInventors: Matthew David Young, Kristofer Hellick Reierson, Eric Jewart
-
Publication number: 20120166597Abstract: The dependencies of an application are identified by intercepting application programming interface calls made by an application. A determination is then made at the runtime of the application as to whether the dependencies of the application are present. If the dependencies are not present, a client device upon which the application is executing is configured such that the dependencies are present and are made available only to the authorized application. If the dependencies are present and the application is authorized to interact with the dependencies, the application is permitted to execute.Type: ApplicationFiled: December 23, 2010Publication date: June 28, 2012Applicant: MICROSOFT CORPORATIONInventors: Matthew Christopher Babey, Eric Jewart, Kristofer Hellick Reierson, Angela Mele Anderson
-
Publication number: 20120167117Abstract: Execution of an application is suspended and the runtime state of the application is collected and persisted. Maintenance operations may then be performed on the computer that the application was executing upon. The runtime state might also be moved to another computer. In order to resume execution of the application, the runtime state of the application is restored. Once the runtime state of the application has been restored, execution of the application may be restarted from the point at which execution was suspended. A proxy layer might also be utilized to translate requests received from the application for resources that are modified after the runtime state of the application is persisted.Type: ApplicationFiled: December 28, 2010Publication date: June 28, 2012Applicant: MICROSOFT CORPORATIONInventors: Charles Kekeh, Aseem Kohli, Scott Elliot Stearns, Kristofer Hellick Reierson, Cread Wellington Mefford, JR., Angela Mele Anderson
-
Publication number: 20120167121Abstract: Application programming interface (API) calls made by an application are intercepted at runtime. A determination is made as to whether each intercepted API call is allowed or blocked by a restricted application execution environment. Each API call that is blocked by the restricted application execution environment is modified so that the API call is allowable such as, for instance, modifying the API call to execute against a shadow resource. Remediation code might also be executed at runtime to reformat the API call so that it is allowed to execute in the restricted application execution environment.Type: ApplicationFiled: December 27, 2010Publication date: June 28, 2012Applicant: MICROSOFT CORPORATIONInventors: Kristofer Hellick Reierson, Angela Mele Anderson
-
Publication number: 20120159570Abstract: In order to enable potentially conflicting applications to execute on the same computer, application programming interface (API) calls are intercepted when an application attempts to access a computer system's resources. During a learning mode of operation, a security monitor stores data in a security monitor database identifying which applications are allowed to access the computer system resources. At runtime of an application, the security monitor operates in an enforcement mode and utilizes the contents of the security monitor database to determine if an application is permitted to access system resources. If data associated with the application is located in the security monitor database, the application is allowed to access computer system resources, if data associated with the application is not located in the security monitor database, the application is not allowed to access computer system resources.Type: ApplicationFiled: December 21, 2010Publication date: June 21, 2012Applicant: MICROSOFT CORPORATIONInventors: Kristofer Hellick Reierson, Lidiane Pereira de Souza, Angela Mele Anderson
-
Publication number: 20120159479Abstract: Technologies are described herein for providing; a persona-based application experience. A query for a location of a persona package is received from a virtualization client. When the query is received, a current persona of a user requesting execution of a virtualized application is determined. The location of the persona package corresponding to the current persona of the user is determined The location of the persona package is sent to the virtualization client in response to the query. The virtualization client is configured to execute the virtualized application adapted to the persona package.Type: ApplicationFiled: December 21, 2010Publication date: June 21, 2012Applicant: MICROSOFT CORPORATIONInventors: Alvin Chardon, Kristofer Hellick Reierson, Angela Mele Anderson, Galen Clyde Hunt, Douglas Christopher Burger, Dilip Krishna Pai
-
Publication number: 20120158819Abstract: Technologies are described herein for automatically selecting a best application delivery method based on a centrally maintained policy. An agent executing on a user computing device receives a request to initiate an application. The agent requests a centrally maintained application placement policy document regarding the application program from a policy server. The application placement policy document may describe a policy for determining a method for delivery of the application to the user computing device based on a number of conditions. The agent selects the method for delivery of the application based on the application placement policy document and the current conditions, and then initiates the application program utilizing the selected application delivery method.Type: ApplicationFiled: December 21, 2010Publication date: June 21, 2012Applicant: MICROSOFT CORPORATIONInventors: Angela Mele Anderson, Charles Kekeh, Scott Elliot Stearns, Kristofer Hellick Reierson, Lidiane Pereira de Souza
-
Publication number: 20120159471Abstract: Technologies are described herein for deploying and configuring a multi-tiered application to multiple computers. A selection of one or more application packages from multiple available application packages is received. Each of the selected application packages may correspond to one of multiple deployment configurations. The selected application packages may form the multi-tiered application. A union operation is performed on the multiple deployment configurations to generate a merged deployment configuration. A deployment workflow for deploying and configuring the selected application packages to the multiple computers is generated. The selected application packages are deployed to the multiple computers over a network according to the deployment workflow and the merged deployment configuration.Type: ApplicationFiled: December 21, 2010Publication date: June 21, 2012Applicant: MICROSOFT CORPORATIONInventors: Lidiane Pereira de Souza, Kristofer Hellick Reierson, Matthew R. Yandek