[This is preliminary documentation and subject to change.]
The Common Information Model Object Manager (CIMOM) is the primary component in the management infrastructure of the Web-Based Enterprise Management (WBEM) technology. CIMOM runs as a standard executable that is started when the first management application makes a call to connect. CIMOM runs continuously as long as management applications are actively seeking its services. When the last management application shuts down, CIMOM eventually does the same.
CIMOM supports a single programming interface known as the CIMOM API that is used by management applications, providers, and schema extensions. The CIMOM API enables these components to interact with CIMOM using C, C++, Java™, or Microsoft® Visual Basic® and is based on the Component Object Model (COM).
When an application makes a request by calling one of the methods in the CIMOM API, CIMOM determines whether or not the request involves static data stored in the CIMOM repository or dynamic data supplied by a provider. Static data can be handled by CIMOM whereas dynamic data always involves a provider. Providers register their location and support for particular operations such as data retrieval, modification, deletion, enumeration or query processing. CIMOM uses this registration information to match application requests with appropriate providers and to find and load the providers when necessary. When a provider has finished processing a request, it returns the results back to CIMOM, which it turns forwards the result to the application.
CIMOM ensures that all of the operations specified in the CIMOM API are supported. When an application makes a complex request that a provider cannot handle, CIMOM supplies the implementation by making an equivalent series of much simpler calls to the provider. CIMOM is always available to handle a request if a registered provider is unable to do so.
In addition to implementing each of the operations associated with application requests, CIMOM also supplies:
For a complete description of the interfaces in the CIMOM API, see Interfaces