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).
-
Patent number: 10884837Abstract: 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: November 2, 2018Date of Patent: January 5, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Matthew David Young, Kristofer Hellick Reierson, Eric Jewart
-
Patent number: 10437628Abstract: 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: GrantFiled: November 6, 2017Date of Patent: October 8, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, Gurashish Singh Brar, Kristofer Hellick Reierson
-
Patent number: 10402182Abstract: 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: GrantFiled: May 15, 2018Date of Patent: September 3, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Matthew Christopher Babey, Eric Jewart, Kristofer Hellick Reierson, Angela Mele Anderson
-
Publication number: 20190073258Abstract: 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: November 2, 2018Publication date: March 7, 2019Inventors: Matthew David YOUNG, Kristofer Hellick REIERSON, Eric JEWART
-
Patent number: 10165079Abstract: Technologies are described herein for providing a persona-based application experience. In some configurations, an application can be adapted with a persona package selected from multiple persona packages. The persona packages may include persona-specific user settings, persona-specific application storage settings, or persona-specific application state settings. A persona package may be selected based on a current persona of a user, a time of day, and/or a location of the user. The selected persona package comprises a setting to adapt the execution of the application. In some configurations, a computer determines, a current persona of the user. The computer also receives a selected persona package comprising a user setting of the software application. The selection of the persona package is based on the current persona of the user and established credentials associated with the user. The computer adapts the execution of the software application according to the selected persona package.Type: GrantFiled: August 20, 2015Date of Patent: December 25, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Alvin Chardon, Kristofer Hellick Reierson, Angela Mele Anderson, Galen Clyde Hunt, Douglas Christopher Burger, Dilip Krishna Pai
-
Patent number: 10152364Abstract: 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: November 11, 2015Date of Patent: December 11, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Matthew David Young, Kristofer Hellick Reierson, Eric Jewart
-
Publication number: 20180260205Abstract: 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: May 15, 2018Publication date: September 13, 2018Inventors: Matthew Christopher Babey, Eric Jewart, Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 9977665Abstract: 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: GrantFiled: May 6, 2016Date of Patent: May 22, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Matthew Christopher Babey, Eric Jewart, Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 9934064Abstract: Execution of an application is suspended and the runtime state of the application is collected and persisted. Execution of the application may be resumed based on the runtime state. 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. For instance, the runtime state that is persisted may include first data identifying a resource in use by the application at the time the execution of the application is suspended. After resuming the execution of the application, the proxy layer may translate the first data included in a request for the resource to second data identifying the resource, or a different resource, at a time the execution of the application is resumed, and the second data can be used to provide the application access to the resource.Type: GrantFiled: March 7, 2017Date of Patent: April 3, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Charles Kekeh, Aseem Kohli, Scott Elliot Stearns, Kristofer Hellick Reierson, Cread Wellington Mefford, Angela Mele Anderson
-
Patent number: 9811364Abstract: 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: GrantFiled: June 13, 2013Date of Patent: November 7, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, Gurashish Singh Brar, Kristofer Hellick Reierson
-
Publication number: 20170177409Abstract: Execution of an application is suspended and the runtime state of the application is collected and persisted. Execution of the application may be resumed based on the runtime state. 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. For instance, the runtime state that is persisted may include first data identifying a resource in use by the application at the time the execution of the application is suspended. After resuming the execution of the application, the proxy layer may translate the first data included in a request for the resource to second data identifying the resource, or a different resource, at a time the execution of the application is resumed, and the second data can be used to provide the application access to the resource.Type: ApplicationFiled: March 7, 2017Publication date: June 22, 2017Inventors: Charles Kekeh, Aseem Kohli, Scott Elliot Stearns, Kristofer Hellick Reierson, Cread Wellington Mefford, Angela Mele Anderson
-
Patent number: 9600323Abstract: 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 17, 2015Date of Patent: March 21, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Charles Kekeh, Aseem Kohli, Scott Elliot Stearns, Kristofer Hellick Reierson, Cread Wellington Mefford, Angela Mele Anderson
-
Publication number: 20160328224Abstract: 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: May 6, 2016Publication date: November 10, 2016Inventors: Matthew Christopher Babey, Eric Jewart, Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 9443080Abstract: 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: June 20, 2014Date of Patent: September 13, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 9443079Abstract: 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: May 12, 2014Date of Patent: September 13, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Kristofer Hellick Reierson, Angela Mele Anderson
-
Patent number: 9354852Abstract: 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: GrantFiled: December 23, 2010Date of Patent: May 31, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Matthew Christopher Babey, Eric Jewart, Kristofer Hellick Reierson, Angela Mele Anderson
-
Publication number: 20160134721Abstract: 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: August 20, 2015Publication date: May 12, 2016Inventors: Alvin Chardon, Kristofer Hellick Reierson, Angela Mele Anderson, Galen Clyde Hunt, Douglas Christopher Burger, Dilip Krishna Pai
-
Publication number: 20160103701Abstract: 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 17, 2015Publication date: April 14, 2016Inventors: Charles Kekeh, Aseem Kohli, Scott Elliot Stearns, Kristofer Hellick Reierson, Cread Wellington Mefford, Angela Mele Anderson
-
Publication number: 20160087993Abstract: Selectively wiping data. A method includes identifying a plurality of datasets on a device. The method further includes identifying one or more datasets, on a dataset basis, from among the plurality of datasets that are managed datasets associated with a particular user account by being associated with an account identifier for the particular user account at a data structure external to the device. The managed datasets are associated with a particular user account by being associated with an account identifier for the particular user account. The method further includes receiving an indication that managed data associated with the particular user account should be wiped from the device. The method further includes wiping the one or more datasets that are identified as being managed datasets associated with a particular user account while not wiping datasets from the plurality of datasets that are not associated with the particular user account.Type: ApplicationFiled: September 19, 2014Publication date: March 24, 2016Inventors: Meera Jindal, Kristofer Hellick Reierson, Neil Adam Jacobson, Alemeshet Yismaw Alemu, Lidiane Souza Jones
-
Publication number: 20160062817Abstract: 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: November 11, 2015Publication date: March 3, 2016Inventors: Matthew David Young, Kristofer Hellick Reierson, Eric Jewart