Patents by Inventor Neil A. Jacobson
Neil A. Jacobson 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: 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: 10229283Abstract: The present invention extends to methods, systems, and computer program products for managing applications in non-cooperative environments. Embodiments of the invention provide the ability to manage non-cooperative applications and operating systems. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately managed to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application, deploy it to a user's personal device, and manage the user's ability to use the application through policy.Type: GrantFiled: June 7, 2017Date of Patent: March 12, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Shruthi Achutha, Neil A. Jacobson
-
Patent number: 10108441Abstract: Systems and methods for running add-on components in virtual environments are described. An add-on component can be executed in a virtual environment by setting up a communication link between a component proxy in the host operating system and a server process running in the virtual environment. The server process executes the add-on component based on commands forwarded from the operating system via the component proxy.Type: GrantFiled: March 15, 2016Date of Patent: October 23, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, John M. Sheehan
-
Publication number: 20180285141Abstract: 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: November 6, 2017Publication date: October 4, 2018Inventors: Neil A. Jacobson, Gurashish Singh Brar, Kirstofer Hellick Reierson
-
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: 20170270313Abstract: The present invention extends to methods, systems, and computer program products for managing applications in non-cooperative environments. Embodiments of the invention provide the ability to manage non-cooperative applications and operating systems. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately managed to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application, deploy it to a user's personal device, and manage the user's ability to use the application through policy.Type: ApplicationFiled: June 7, 2017Publication date: September 21, 2017Inventors: Shruthi Achutha, Neil A. Jacobson
-
Patent number: 9703977Abstract: The present invention extends to methods, systems, and computer program products for managing applications in non-cooperative environments. Embodiments of the invention provide the ability to manage non-cooperative applications and operating systems. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately managed to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application, deploy it to a user's personal device, and manage the user's ability to use the application through policy.Type: GrantFiled: October 30, 2015Date of Patent: July 11, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Shruthi Achutha, Neil A. Jacobson
-
Patent number: 9661024Abstract: The present invention extends to methods, systems, and computer program products for configuring applications and policies in non-cooperative environments. Embodiments of the invention provide the ability to configure non-cooperative applications and operating systems to comply with a policy. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately configured to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application to comply with a policy, deploy it to a user's personal device, and adjust the application's behavior during execution to comply with the policy. Adjusted behavior can include injecting custom user interfaces into an application to support various scenarios.Type: GrantFiled: December 12, 2013Date of Patent: May 23, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, Shruthi Achutha
-
Patent number: 9645839Abstract: A cloud computing environment may use a virtualization layer within a stateless cloud computing process to capture, store, and retrieve state information generated by a stateful application executing within the process. The virtualization layer may monitor various state storage systems to identify changes to stateful items and store the stateful items in a state storage mechanism. The virtualization layer may intercept and redirect calls to the stateful items stored in the state storage mechanism. A cloud computing manager may start and stop the stateless cloud computing process, and may recover the state and resume executing the application.Type: GrantFiled: October 27, 2010Date of Patent: May 9, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, Kristofer H. Reierson, Andrew Montgomery
-
Patent number: 9400665Abstract: Systems and methods for running add-on components in virtual environments are described. An add-on component can be executed in a virtual environment by setting up a communication link between a component proxy in the host operating system and a server process running in the virtual environment. The server process executes the add-on component based on commands forwarded by the component proxy forwards the commands from the operating system.Type: GrantFiled: December 16, 2013Date of Patent: July 26, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, John M. Sheehan
-
Publication number: 20160196155Abstract: Systems and methods for running add-on components in virtual environments are described. An add-on component can be executed in a virtual environment by setting up a communication link between a component proxy in the host operating system and a server process running in the virtual environment. The server process executes the add-on component based on commands forwarded from the operating system via the component proxy.Type: ApplicationFiled: March 15, 2016Publication date: July 7, 2016Inventors: Neil A. Jacobson, John M. Sheehan
-
Publication number: 20160070922Abstract: The present invention extends to methods, systems, and computer program products for managing applications in non-cooperative environments. Embodiments of the invention provide the ability to manage non-cooperative applications and operating systems. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately managed to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application, deploy it to a user's personal device, and manage the user's ability to use the application through policy.Type: ApplicationFiled: October 30, 2015Publication date: March 10, 2016Inventors: Shruthi Achutha, Neil A. Jacobson
-
Patent number: 9213830Abstract: The present invention extends to methods, systems, and computer program products for managing applications in non-cooperative environments. Embodiments of the invention provide the ability to manage non-cooperative applications and operating systems. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately managed to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application, deploy it to a user's personal device, and manage the user's ability to use the application through policy.Type: GrantFiled: December 12, 2013Date of Patent: December 15, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Shruthi Achutha, Neil A. Jacobson
-
Publication number: 20150172316Abstract: The present invention extends to methods, systems, and computer program products for configuring applications and policies in non-cooperative environments. Embodiments of the invention provide the ability to configure non-cooperative applications and operating systems to comply with a policy. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately configured to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application to comply with a policy, deploy it to a user's personal device, and adjust the application's behavior during execution to comply with the policy. Adjusted behavior can include injecting custom user interfaces into an application to support various scenarios.Type: ApplicationFiled: December 12, 2013Publication date: June 18, 2015Inventors: Neil A. Jacobson, Shruthi Achutha
-
Publication number: 20150169871Abstract: The present invention extends to methods, systems, and computer program products for managing applications in non-cooperative environments. Embodiments of the invention provide the ability to manage non-cooperative applications and operating systems. For example, applications and operating systems at a user's (e.g., an information worker's) personal device (e.g., smartphone) can be appropriately managed to provide more secure access to a corporate IT infrastructure. An IT worker can programmatically repackage an application, deploy it to a user's personal device, and manage the user's ability to use the application through policy.Type: ApplicationFiled: December 12, 2013Publication date: June 18, 2015Inventors: Shruthi Achutha, Neil A. Jacobson
-
Patent number: 8953769Abstract: A computer readable medium stores a program for a calling party controlled ringback tone service. The service enables a calling party to control ringback tones, even overriding called party selected ringback tones. The service can operate in a wireless or wireline network, such as a voice over IP (VoIP) network or time division multiplexed (TDM) network. The calling party can be periodically billed for the ringback tone control service, as well as the ringback tones. The subscriber can configure the service via the web.Type: GrantFiled: June 9, 2006Date of Patent: February 10, 2015Assignee: AT&T Intellectual Property I, L.P.Inventor: Neil A. Jacobson
-
Publication number: 20140373009Abstract: Application virtualization at the thread level, rather than at the process level. The thread is permitted to pass virtualization context boundaries. A thread might be operating in a particular virtualization context (e.g., a native environment or a first virtualization environment) having access to particular computing resources. The thread then enters an entry point for code operating in another virtualization context (e.g., a virtualization environment from a native environment, or a second virtualization environment from a first virtualization environment) having access to other computing resources. Once this happens, the thread is associated with the next virtualization context so that the thread has access to the computing resources of this next virtualization context.Type: ApplicationFiled: June 13, 2013Publication date: December 18, 2014Inventors: Neil A. Jacobson, Joseph Rovine, Peter A. Morgan, Abhishek Agarwal
-
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
-
Patent number: 8839265Abstract: An application virtualization system enables server applications, such as web applications to be easily deployable, separates an application and its state from the system, and allows applications to be easily moved to another server. The application virtualization system provides a way to isolate conflicts and allow multiple applications that provide conflicting information to run independently and avoid conflicts. The application virtualization system receives notification of an application preparation session and monitors the session to collect configuration information that the application uses to run on a client. The application virtualization system stores the collected information until the application to be virtualized is deployed. When an administrator later deploys the application, the system retrieves the stored information and uses the information and information from the client to reconstitute the metadata and virtualize the application.Type: GrantFiled: June 14, 2013Date of Patent: September 16, 2014Assignee: Microsoft CorporationInventors: Neil A. Jacobson, John Sheehan, Eric Jeward
-
Publication number: 20140109092Abstract: Systems and methods for running add-on components in virtual environments are described. An add-on component can be executed in a virtual environment by setting up a communication link between a component proxy in the host operating system and a server process running in the virtual environment. The server process executes the add-on component based on commands forwarded by the component proxy forwards the commands from the operating system.Type: ApplicationFiled: December 16, 2013Publication date: April 17, 2014Applicant: Microsoft CorporationInventors: Neil A. Jacobson, John M. Sheehan