Discovery and activation of application extensions

US10235147B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10235147-B2
Application numberUS-201113218475-A
CountryUS
Kind codeB2
Filing dateAug 26, 2011
Priority dateAug 26, 2011
Publication dateMar 19, 2019
Grant dateMar 19, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The operating system of a computer maintains an extension catalog that stores data relating extensions with information about the contracts the extensions support. Extensions are registered in this catalog according to the contract they implement. The extension catalog can be queried to identify extensions that support a given contract. An extension can be selected from among the results from a query, and the selected extension can be activated. When activated, the extension is set up by the operating system as an independent process from, and with context from, the application for which it is an extension. Information about the extension is provided to the application to enable the extension and the application to communicate according to the supported contract.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented process for managing discovery and activation of extensions of applications executed on a computer, the computer comprising a processor and memory and having an operating system executed by the processor, the operating system managing execution by the processor of each of the applications as separate processes for the applications, each process for an application having a context, the applications supporting one or more contracts, the computer-implemented process comprising: the operating system maintaining, in storage, an extension catalog that stores data relating the extensions installed on the computer and contracts the extensions support, wherein, when installed, the extensions are registered by the operating system in the extension catalog according to the contracts supported by the extensions, by storing in the extension catalog, for each extension of the extensions, an identifier of a contract supported by the extension, a name of the extension, and an identifier for a validated registration object for activating the extension; the operating system receiving a query from one of the applications with an identification of one of the contracts, and querying the extension catalog with the received identification of the one of the contracts to identify one or more of the extensions installed on the computer and supporting the one of the contracts; the operating system receiving an indication of a selected extension for the one of the applications from among the one or more identified extensions supporting the one of the contracts; the operating system accessing, from the extension catalog, the identifier of the validated registration object associated with the selected extension, and activating the selected extension using the validated registration object for the selected extension, the operating system managing execution by the processor of the selected extension as a separate and independent process from the process for the one of the applications, wherein the separate and independent process for the selected extension has the context from the process for the one of the applications; and the operating system providing information about the activated extension to the one of the applications and information about the one of the applications to the activated extension to enable the one of the applications and the activated extension to communicate according to the one of the contracts. 2. The computer-implemented process of claim 1 , further comprising: the operating system supplying information about the one or more identified extensions to the one of the applications; and wherein the indication of the selected extension is received by the operating system from the one of the applications. 3. The computer-implemented process of claim 1 , wherein the operating system maintains a registry, and wherein maintaining the extension catalog comprises maintaining the extension catalog in the registry. 4. The computer-implemented process of claim 1 , wherein the extension catalog is maintained in a data file. 5. The computer-implemented process of claim 1 , wherein the extension catalog comprises a plurality of extension catalogs, with a separate extension catalog maintained for each user supported by the operating system. 6. The computer-implemented process of claim 1 , further comprising: when one of the extensions is installed, the operating system reading data from a data file for the one of the extensions to identify one or more of the contracts supported by the one of the extensions. 7. The computer-implemented process of claim 1 , wherein the extension catalog comprises a set of key-value pairs for each extension of the extensions, the set of key-value pairs for each extension of the extensions including an identification of one of the contracts supported by the extension, a name of the extension, and an identifier of a registration object for activating the extension. 8. An article of manufacture comprising: one or more computer storage media, being one of persistent storage and a memory device; computer program instructions stored on the computer storage media which, when processed by a processing device of a computer, instruct the processing device to perform operations that provide an operating system through which applications executed on the computer access resources of the computer, the operating system managing execution by the computer of each of the applications as separate processes for the applications, each process for an application having a context, the applications supporting one or more contracts, the computer with the operating system comprising: an extension catalog maintained in storage by the operating system, the operating system storing data in the extension catalog, the data relating extensions installed on the computer and contracts the extensions support, wherein, when installed, the extensions are registered by the operating system in the extension catalog according to the contracts supported by the extensions, by storing in the extension catalog, for each extension of the extensions an identifier of a contract supported by the extension, a name of the extension, and an identifier for a validated registration object for activating the extension; a query engine in the operating system having an input for receiving a query from one of the applications with an identification of one of the contracts, and querying the extension catalog with the received identification of the one of the contracts to identify one or more of the extensions installed on the computer and supporting the one of the contracts, and having an output for providing information describing the one or more identified extensions supporting the one of the contracts; and a mechanism in the operating system having an input for receiving an indication of a selected extension for the one of the applications from among the one or more identified extensions supporting the one of the contracts, and accessing, from the extension catalog, the identifier of the validated registration object associated with the selected extension, and activating the selected extension using the validated registration object for the selected extension, the operating system managing execution of the selected extension as a separate and independent process from the process for the one of the applications, wherein the separate and independent process for the activated extension and with has the context from the process for the one of the applications, and having an output for providing information from the operating system about the activated extension to the one of the applications and information about the one of the applications to the activated extension to enable the one of the applications and the activated extension to communicate according to the one of the contracts. 9. The article of manufacture of claim 8 , wherein the operating system further provides information about the one or more identified extensions to the one of the applications and receives from the one of the applications the indication of the selected extension. 10. The article of manufacture of claim 8 , wherein the operating system maintains a registry and wherein the extension catalog is maintained in the registry. 11. The article of manufacture of claim 8 , wherein the extension catalog is maintained in a data file. 12. The article of manufacture of claim 8 , wherein the extension catalog comprises a plurality of extension catalogs, with a separate extension catalog maintained for each user supported by the operating system. 13. The article of manufacture of claim 8 , wherein the

Assignees

Inventors

Classifications

  • Interprogram communication · CPC title

  • G06F8/61Primary

    Installation · CPC title

  • Plug-ins; Add-ons · CPC title

  • Configuring for program initiating, e.g. using registry, configuration files · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10235147B2 cover?
The operating system of a computer maintains an extension catalog that stores data relating extensions with information about the contracts the extensions support. Extensions are registered in this catalog according to the contract they implement. The extension catalog can be queried to identify extensions that support a given contract. An extension can be selected from among the results from a…
Who is the assignee on this patent?
Merry Matthew, Wilson hart, Almalkawi Mohammad, and 4 more
What technology area does this patent fall under?
Primary CPC classification G06F8/61. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 19 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).