Patents by Inventor John Michael Sheehan

John Michael Sheehan 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: 10715584
    Abstract: Techniques for multiuser application platform are described. Generally, a multiuser application allow interaction by multiple different users with a single executing instance of the application. Implementations include a multiuser operating system and a multiuser application programming interface that enable interaction by multiple users with an executing instance of a multiuser application.
    Type: Grant
    Filed: December 23, 2016
    Date of Patent: July 14, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Muhammad Usman Anwer, Jonathan D. Wiswall, Abolade Gbadegesin, Logananth Seetharaman, Kunal Ramesh Gandhi, John Michael Sheehan, John R. Schmeichel, Chin H. Lam, Kelly W. Connell, Jeremy B. Gup, Daniel R. Mitchell, Jill Cary Bender, Adam Michael Smith, Adam D. Stritzel, Jason G. Salameh, Denise Su-Li Goh, Fan Xiao
  • Patent number: 9883003
    Abstract: Meeting software on a meeting room device enables a meeting to be conducted. The meeting room device detects that a meeting has been terminated and, responsive to detecting that the meeting has been terminated, automatically deletes data associated with the meeting from multiple different locations.
    Type: Grant
    Filed: March 9, 2015
    Date of Patent: January 30, 2018
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Nathaniel Whitford Stott, Thaddeus Adam Scott, John Cole Bradley, Chad Michael Roberts, Brianna Kelly Potvin, John Michael Sheehan
  • Publication number: 20170374138
    Abstract: Techniques for multiuser application platform are described. Generally, a multiuser application allow interaction by multiple different users with a single executing instance of the application. Implementations include a multiuser operating system and a multiuser application programming interface that enable interaction by multiple users with an executing instance of a multiuser application.
    Type: Application
    Filed: December 23, 2016
    Publication date: December 28, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Muhammad Usman Anwer, Jonathan D. Wiswall, Abolade Gbadegesin, Logananth Seetharaman, Kunal Ramesh Gandhi, John Michael Sheehan, John R. Schmeichel, Chin H. Lam, Kelly W. Connell, Jeremy B. Gup, Daniel R. Mitchell, Jill Cary Bender, Adam Michael Smith, Adam D. Stritzel, Jason G. Salameh, Denise Su-Li Goh, Fan Xiao
  • Patent number: 9766870
    Abstract: One or more techniques and/or systems are provided for generating a bundle package, digitally signing the bundle package, selectively disturbing the bundle package, and/or indexing one or more resource packages retrieved from the bundle package. That is, a bundle package (e.g., an application or game bundle package) comprises one or more app packages comprising application code configured to execute on various computing environments (e.g., operating systems, processors, etc.). The bundle package may comprise one or more resource packages comprising supplemental data used to provide optional user experience functionality for the application (e.g., French language support, high resolution textures, a gaming pad support, etc.). In this way, a client device may selectively download portions of the bundle package that may be relevant, which may mitigate download bandwidth, storage space, or resources otherwise used to obtain unnecessary portions of the bundle package (e.g.
    Type: Grant
    Filed: May 30, 2013
    Date of Patent: September 19, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jason Salameh, Erik Fortune, Jr., Phillip Smith, John Michael Sheehan, Simon Leet, Letao Wang, Sarjana Sheth
  • Patent number: 9495522
    Abstract: Data sharing session techniques are described. In one or more implementations, a first user login session is initiated as running in a context of a first user profile of a first user with an operating system of a computing device. A request is received by the operating system to run the first user login session in a context of a second user profile of a second user. The second user profile is associated by the operating system with a shadow login session created within the first user login session of the operating system of the computing device such that interaction of the second user with the operating system is associated with the second user profile and interaction of the first user with the operating system is associated with the first user profile.
    Type: Grant
    Filed: September 3, 2014
    Date of Patent: November 15, 2016
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Karanbir Singh, Yashar Bahman, Octavian T. Ureche, John Michael Sheehan
  • Publication number: 20160269503
    Abstract: Meeting software on a meeting room device enables a meeting to be conducted.
    Type: Application
    Filed: March 9, 2015
    Publication date: September 15, 2016
    Inventors: Nathaniel Whitford Stott, Thaddeus Adam Scott, John Cole Bradley, Chad Michael Roberts, Brianna Kelly Potvin, John Michael Sheehan
  • Publication number: 20160063226
    Abstract: Data sharing session techniques are described. In one or more implementations, a first user login session is initiated as running in a context of a first user profile of a first user with an operating system of a computing device. A request is received by the operating system to run the first user login session in a context of a second user profile of a second user. The second user profile is associated by the operating system with a shadow login session created within the first user login session of the operating system of the computing device such that interaction of the second user with the operating system is associated with the second user profile and interaction of the first user with the operating system is associated with the first user profile.
    Type: Application
    Filed: September 3, 2014
    Publication date: March 3, 2016
    Inventors: Karanbir Singh, Yashar Bahman, Octavian T. Ureche, John Michael Sheehan
  • Patent number: 8972967
    Abstract: Deploying applications to a device often involves generating an application package for installing the application anew, and application patches for updating the application from a specific first version to a specific second version. Presented herein are alternative techniques for deploying the application to devices using a block map indicating hashcodes for respective blocks of respective resources of the application. A device may install the application by installing the application package, or may update a deployed application from an earlier version to a later version by retrieving the block map, identifying updated blocks having a different hashcode than the current hashcode of the block in the currently deployed application, and retrieving only the updated blocks.
    Type: Grant
    Filed: September 12, 2011
    Date of Patent: March 3, 2015
    Assignee: Microsoft Corporation
    Inventors: Hemchander Venkateshwara Sannidhanam, John Michael Sheehan, Jason Ghssane Salameh
  • Publication number: 20140359604
    Abstract: One or more techniques and/or systems are provided for generating a bundle package, digitally signing the bundle package, selectively disturbing the bundle package, and/or indexing one or more resource packages retrieved from the bundle package. That is, a bundle package (e.g., an application or game bundle package) comprises one or more app packages comprising application code configured to execute on various computing environments (e.g., operating systems, processors, etc.). The bundle package may comprise one or more resource packages comprising supplemental data used to provide optional user experience functionality for the application (e.g., French language support, high resolution textures, a gaming pad support, etc.). In this way, a client device may selectively download portions of the bundle package that may be relevant, which may mitigate download bandwidth, storage space, or resources otherwise used to obtain unnecessary portions of the bundle package (e.g.
    Type: Application
    Filed: May 30, 2013
    Publication date: December 4, 2014
    Inventors: Jason Salameh, Erik Fortune, Phillip Smith, John Michael Sheehan, Simon Leet, Letao Wang, Sarjana Sheth
  • Publication number: 20140359606
    Abstract: One or more techniques and/or systems are provided for generating a bundle package, digitally signing the bundle package, selectively disturbing the bundle package, and/or indexing one or more resource packages retrieved from the bundle package. That is, a bundle package (e.g., an application or game bundle package) comprises one or more app packages comprising application code configured to execute on various computing environments (e.g., operating systems, processors, etc.). The bundle package may comprise one or more resource packages comprising supplemental data used to provide optional user experience functionality for the application (e.g., French language support, high resolution textures, a gaming pad support, etc.). In this way, a client device may selectively download portions of the bundle package that may be relevant, which may mitigate download bandwidth, storage space, or resources otherwise used to obtain unnecessary portions of the bundle package (e.g.
    Type: Application
    Filed: May 30, 2013
    Publication date: December 4, 2014
    Inventors: Jason Salameh, Erik Fortune, Phillip Smith, John Michael Sheehan, Wade H. Curtiss, Kyle Grayson Conroy, Samuel Aaron Beard, Jonathan L. Davis, William L. Cheng, Ravi Kiran Kunapuli
  • Publication number: 20130066832
    Abstract: One or more techniques and/or systems are provided for synchronizing application state between one or more instances of an application on one or more devices. In particular, an application state, such as application settings, may be synchronized between a first instance of an application on a first device and a second instance of the application on a second device. For example, a user may configure a new email account within a first instance of an email application on a laptop device. The new email account may be synchronized with a second instance of the email application on a tablet device. During synchronization, various conflict resolution, version verifications, and/or consistency verifications may be performed. In this way, the user may be provided with a seamless and consistent experience between the laptop and tablet device.
    Type: Application
    Filed: September 12, 2011
    Publication date: March 14, 2013
    Applicant: Microsoft Corporation
    Inventors: John Michael Sheehan, Christopher D. Russell, Hari Krishna Pammi
  • Publication number: 20130067449
    Abstract: Deploying applications to a device often involves generating an application package for installing the application anew, and application patches for updating the application from a specific first version to a specific second version. Presented herein are alternative techniques for deploying the application to devices using a block map indicating hashcodes for respective blocks of respective resources of the application. A device may install the application by installing the application package, or may update a deployed application from an earlier version to a later version by retrieving the block map, identifying updated blocks having a different hashcode than the current hashcode of the block in the currently deployed application, and retrieving only the updated blocks.
    Type: Application
    Filed: September 12, 2011
    Publication date: March 14, 2013
    Applicant: Microsoft Corporation
    Inventors: Hemchander Venkateshwara Sannidhanam, John Michael Sheehan, Jason Ghssane Salameh
  • Publication number: 20130067448
    Abstract: One or more techniques and/or systems are provided for deploying an application within a computing environment. In particular, an application that is requested for deployment may be identified (e.g., an application to be downloaded, installed, updated, registered and/or removed during deployment). A set of deployment rules may be executed upon deployment parameters within a manifest (e.g., metadata describing how the application is to be deployed) to detect whether a conflict (e.g., issues that may arise from concurrent deployment) may exist between the deployment parameters and a second application currently being deployed within the computing environment. For example, resource access conflicts, file access conflicts, and/or registry access conflicts may be identified. If no conflicts exist, then the application may be concurrently deployed with the second application.
    Type: Application
    Filed: September 9, 2011
    Publication date: March 14, 2013
    Applicant: Microsoft Corporation
    Inventors: Hemchander Venkateshwara Sannidhanam, John Michael Sheehan, Andres Carlo Petralli, Zainab Hakim