Patents by Inventor Jackson M. Davis
Jackson M. Davis 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: 11734091Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: GrantFiled: December 1, 2020Date of Patent: August 22, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Jackson M. Davis, John A. Shepard
-
Publication number: 20210081264Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: ApplicationFiled: December 1, 2020Publication date: March 18, 2021Applicant: Microsoft Technology Licensing LLCInventors: Jackson M. DAVIS, John A. SHEPARD
-
Patent number: 10872006Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: GrantFiled: September 7, 2018Date of Patent: December 22, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Jackson M. Davis, John A. Shepard
-
Patent number: 10325099Abstract: Production data is managed to avoid leakage of sensitive data. One or more of a number of techniques can be employed to discover sensitive data amongst production data. In one instance, data specified about production data in a production application, for example by way of an attribute, can be used to identify sensitive data. Sensitive production data can subsequently be masked to conceal sensitive data from view. Furthermore, metadata regarding sensitive data can be maintained.Type: GrantFiled: December 8, 2013Date of Patent: June 18, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Stephen J. Cook, Jackson M. Davis
-
Publication number: 20190073250Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: ApplicationFiled: September 7, 2018Publication date: March 7, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Jackson M. Davis, John A. Shepard
-
Patent number: 10102048Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: GrantFiled: April 22, 2016Date of Patent: October 16, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Jackson M. Davis, John A. Shepard
-
Publication number: 20160239357Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: ApplicationFiled: April 22, 2016Publication date: August 18, 2016Applicant: Microsoft Technology Licensing, LLCInventors: Jackson M. Davis, John A. Shepard
-
Patent number: 9323592Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: GrantFiled: March 8, 2010Date of Patent: April 26, 2016Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Jackson M. Davis, John A. Shepard
-
Patent number: 9208060Abstract: Systems, methods and computer program products are described that enable a diagnostic tool, such as a debugger, to evaluate an expression based on the state of a target program process where the expression to be evaluated includes a call to a first function that exists in the target program process but where evaluation of such first function requires evaluation of a second function that does not exist in the target program process. For an expression such as this, the diagnostic tool emulates execution of the first function within a process other than the target program process, such as within the diagnostic tool process. In other embodiments, the emulation capability of the diagnostic tool is leveraged to enable a user thereof to simulate a modification of the target program process without making actual changes to the target program process.Type: GrantFiled: May 30, 2014Date of Patent: December 8, 2015Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Patrick L. Nelson, Gregory B. Miskelly, Jackson M. Davis, Eric H. Feiveson, Azeemullah Khan
-
Publication number: 20150347269Abstract: Systems, methods and computer program products are described that enable a diagnostic tool, such as a debugger, to evaluate an expression based on the state of a target program process where the expression to be evaluated includes a call to a first function that exists in the target program process but where evaluation of such first function requires evaluation of a second function that does not exist in the target program process. For an expression such as this, the diagnostic tool emulates execution of the first function within a process other than the target program process, such as within the diagnostic tool process. In other embodiments, the emulation capability of the diagnostic tool is leveraged to enable a user thereof to simulate a modification of the target program process without making actual changes to the target program process.Type: ApplicationFiled: May 30, 2014Publication date: December 3, 2015Applicant: Microsoft CorporationInventors: Patrick L. Nelson, Gregory B. Miskelly, Jackson M. Davis, Eric H. Feiveson, Azeemullah Khan
-
Publication number: 20150161397Abstract: Production data is managed to avoid leakage of sensitive data. One or more of a number of techniques can be employed to discover sensitive data amongst production data. In one instance, data specified about production data in a production application, for example by way of an attribute, can be used to identify sensitive data. Sensitive production data can subsequently be masked to conceal sensitive data from view. Furthermore, metadata regarding sensitive data can be maintained.Type: ApplicationFiled: December 8, 2013Publication date: June 11, 2015Inventors: Stephen J. Cook, Jackson M. Davis
-
Patent number: 8972955Abstract: An expression can be evaluated in a remote debugging environment with one single round trip across the network. An expression evaluator on a local machine can compile the expression into a language-independent intermediate language (IL) that encodes all the information needed to evaluate the expression in the absence of a symbol table. The IL can include instructions that manipulate state inside the debuggee process, as well as logical operations needed to process the information. The IL language can be turing complete so that any computation needed to determine the state to read and write and how the information gathered is to be combined can be performed. The IL can be sent to the remote computer and can be interpreted on the remote computer. The IL can be interpreted on the remote computer using a stack based mechanism, without the need to access symbolic information on the local computer.Type: GrantFiled: May 27, 2011Date of Patent: March 3, 2015Assignee: Microsoft Technology Licensing LLCInventors: Eric H. Feiveson, Jackson M. Davis, Gregg Bernard Miskelly
-
Patent number: 8572438Abstract: Simultaneous debugging of code running in multiple types of runtime environment can be performed by an n-way interoperative debugging environment. Code running within a particular runtime can be debugged simultaneously with a code running within other runtimes within a single process. Out-of-process debugging support is provided for inspection and execution control. A compatible debugger or runtime communication protocol is used. Transitions from one runtime to another runtime can be detected. Exceptions thrown in one runtime can be caught by another runtime. Stepping operations can occur in multiple runtimes. A callstack including frames from multiple runtimes can be walked.Type: GrantFiled: June 24, 2011Date of Patent: October 29, 2013Assignee: Microsoft CorporationInventors: Jackson M. Davis, Gregg Bernard Miskelly
-
Publication number: 20120331351Abstract: Simultaneous debugging of code running in multiple types of runtime environment can be performed by an n-way interoperative debugging environment. Code running within a particular runtime can be debugged simultaneously with a code running within other runtimes within a single process. Out-of-process debugging support is provided for inspection and execution control. A compatible debugger or runtime communication protocol is used. Transitions from one runtime to another runtime can be detected. Exceptions thrown in one runtime can be caught by another runtime. Stepping operations can occur in multiple runtimes. A callstack including frames from multiple runtimes can be walked.Type: ApplicationFiled: June 24, 2011Publication date: December 27, 2012Applicant: MICROSOFT CORPORATIONInventors: Jackson M. Davis, Gregg Bernard Miskelly
-
Publication number: 20120304156Abstract: An expression can be evaluated in a remote debugging environment with one single round trip across the network. An expression evaluator on a local machine can compile the expression into a language-independent intermediate language (IL) that encodes all the information needed to evaluate the expression in the absence of a symbol table. The IL can include instructions that manipulate state inside the debuggee process, as well as logical operations needed to process the information. The IL language can be turing complete so that any computation needed to determine the state to read and write and how the information gathered is to be combined can be performed. The IL can be sent to the remote computer and can be interpreted on the remote computer. The IL can be interpreted on the remote computer using a stack based mechanism, without the need to access symbolic information on the local computer.Type: ApplicationFiled: May 27, 2011Publication date: November 29, 2012Applicant: Microsoft CorporationInventors: Eric H. Feiveson, Jackson M. Davis, Gregg Bernard Miskelly
-
Patent number: 7908580Abstract: A facility is provided for connecting with an application instance. In various embodiments, the facility starts an integrated development environment component, provides an identifier to the integrated development environment component so that the integrated development environment component can indicate the identifier when registering, locates the provided identifier in a registry, and connects to the identified process. The facility can include a running object table component that stores identifications of running application instances and their corresponding monikers, and an application having a provider component that can communicate with an integrated development environment component that, when started by the application, receives an identifier and registers the started integrated development environment with the running object table, the registration including the associated identifier so that the application can identify the started integrated development environment.Type: GrantFiled: September 7, 2006Date of Patent: March 15, 2011Assignee: Microsoft CorporationInventors: Paul Stubbs, Philo N. Nordlund, Jackson M. Davis, John A. Shepard
-
Publication number: 20100162266Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: ApplicationFiled: March 8, 2010Publication date: June 24, 2010Applicant: MICROSOFT CORPORATIONInventors: Jackson M. Davis, John A. Shepard
-
Patent number: 7676811Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.Type: GrantFiled: March 23, 2006Date of Patent: March 9, 2010Assignee: Microsoft CorporationInventors: Jackson M. Davis, John A. Shepard
-
Publication number: 20080127054Abstract: A facility is provided for connecting with an application instance. In various embodiments, the facility starts an integrated development environment component, provides an identifier to the integrated development environment component so that the integrated development environment component can indicate the identifier when registering, locates the provided identifier in a registry, and connects to the identified process. The facility can include a running object table component that stores identifications of running application instances and their corresponding monikers, and an application having a provider component that can communicate with an integrated development environment component that, when started by the application, receives an identifier and registers the started integrated development environment with the running object table, the registration including the associated identifier so that the application can identify the started integrated development environment.Type: ApplicationFiled: September 7, 2006Publication date: May 29, 2008Applicant: Microsoft CorporationInventors: Paul Stubbs, Philo N. Nordlund, Jackson M. Davis, John A. Shepard
-
Publication number: 20080127055Abstract: A facility is provided for enabling an application proxy that is capable of customizing an integrated development environment to execute in-process with the integrated development environment. In various embodiments, the facility loads a project file, determines whether the project file indicates an application proxy, and when the project file indicates an application proxy, loads the application proxy so that the application proxy can customize the integrated development environment based on configuration settings. In various embodiments, the facility includes a project file associated with an application, an application proxy component, and an integrated development environment that loads the application proxy component when loading the project file so that the application proxy component can handle communications between the integrated development environment and the application to customize the integrated development environment for use with the application.Type: ApplicationFiled: September 7, 2006Publication date: May 29, 2008Applicant: Microsoft CorporationInventors: Jackson M. Davis, Paul Stubbs, John A. Shepard