Jump to content

Common Manageability Programming Interface: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Announce existence of new update to the cmpi specification
m Added reference to the github web and header repository in the github cmpi project
Line 5: Line 5:


The CMPI programming interface is defined for the [[C programming language]]. Its C [[header file]]s are enabled for [[C++]]. In addition, there are C++ [[Macro (computer science)|utility macros]] that allow accessing the interface in a way that is more typical to C++.
The CMPI programming interface is defined for the [[C programming language]]. Its C [[header file]]s are enabled for [[C++]]. In addition, there are C++ [[Macro (computer science)|utility macros]] that allow accessing the interface in a way that is more typical to C++.

Each release of the cmpi specification is accompanied by a set of C language header files that represent the implementation of the interface. Normally these files are incorporated into each of the WBEM servers that provide this interface. However, the header files are also available independently for each release.

As of CMPI 2.1, these header files are available on github in the CMPI Project https://github.com/cmpi-wg. Also as of CMPI 2.1 the interface documentation is also available on a github website at http://cmpi-wg.github.io/


==Benefits==
==Benefits==
Line 12: Line 16:
The original input to the CMPI standard was submitted by [[IBM]] to [[The Open Group]] in 2003. Along with the submission, an implementation was conducted as part of the SBLIM project.<ref>{{cite web | url = http://www.opengroup.org/sophocles/show_mail.tpl?CALLER=show_archive.tpl&source=L&listname=wbemsource&id=413 | title = OpenGroup wbemsource mailing list: CMPI Based Instrumentation Available | year = 2003 | accessdate = 2009-04-23}}</ref>
The original input to the CMPI standard was submitted by [[IBM]] to [[The Open Group]] in 2003. Along with the submission, an implementation was conducted as part of the SBLIM project.<ref>{{cite web | url = http://www.opengroup.org/sophocles/show_mail.tpl?CALLER=show_archive.tpl&source=L&listname=wbemsource&id=413 | title = OpenGroup wbemsource mailing list: CMPI Based Instrumentation Available | year = 2003 | accessdate = 2009-04-23}}</ref>


In late 2004, CMPI V1.0 was released by The Open Group as a Technical Standard. A major update (V2.0 was released in late 2006). A backward compatible but significant extension of the specification was
In late 2004, CMPI V1.0 was released by The Open Group as a Technical Standard. A major update (V2.0 was released in late 2006). A backward compatible but significant extension of the specification was released in February 2016.
released in February 2016.


The current version of CMPI is V2.1 (release February 2016).
The current version of CMPI is V2.1 (released February 2016).


==List of products or projects supporting CMPI==
==List of products or projects supporting CMPI==
Line 51: Line 54:
===CMPI 2.1 Standard===
===CMPI 2.1 Standard===
* [http://www.opengroup.org/bookstore/catalog/C161 CMPI 2.1 Specification]
* [http://www.opengroup.org/bookstore/catalog/C161 CMPI 2.1 Specification]
* http://cmpi-wg.github.io/ and https://github.com/cmpi-wg/cmpi-headers


===CMPI 2.0 Standard===
===CMPI 2.0 Standard===

Revision as of 15:51, 18 February 2016

The Common Manageability Programming Interface (CMPI, also called Common Management Programming Interface[1]) is an open standard that defines a programming interface between a WBEM server and WBEM providers.

Overview

The CMPI standard is defined by the CMPI Working Group of The Open Group and is implementation neutral.

The CMPI programming interface is defined for the C programming language. Its C header files are enabled for C++. In addition, there are C++ utility macros that allow accessing the interface in a way that is more typical to C++.

Each release of the cmpi specification is accompanied by a set of C language header files that represent the implementation of the interface. Normally these files are incorporated into each of the WBEM servers that provide this interface. However, the header files are also available independently for each release.

As of CMPI 2.1, these header files are available on github in the CMPI Project https://github.com/cmpi-wg. Also as of CMPI 2.1 the interface documentation is also available on a github website at http://cmpi-wg.github.io/

Benefits

Before the introduction of CMPI, each WBEM server implementation had its own specific programming interface for CIM providers (e.g. WMI COM API, OpenPegasus C++ API, OpenWBEM C++ API, etc.). CMPI allows CIM providers to be developed that are mostly or completely agnostic to the type of WBEM server they are being used with. Therefore, CMPI providers can be deployed across a variety of operating environments with no or minimal adaptation work. This protects the investment in these CIM providers.

Standards development

The original input to the CMPI standard was submitted by IBM to The Open Group in 2003. Along with the submission, an implementation was conducted as part of the SBLIM project.[2]

In late 2004, CMPI V1.0 was released by The Open Group as a Technical Standard. A major update (V2.0 was released in late 2006). A backward compatible but significant extension of the specification was released in February 2016.

The current version of CMPI is V2.1 (released February 2016).

List of products or projects supporting CMPI

Note: The following list is likely incomplete. Please help to complete the list.

WBEM servers

WBEM providers

Tools

See also

References

  1. ^ SMI-S Provider - Architecture explored
  2. ^ "OpenGroup wbemsource mailing list: CMPI Based Instrumentation Available". 2003. Retrieved 2009-04-23.

CMPI 2.1 Standard

CMPI 2.0 Standard

CMPI 1.0 Standard