The present invention may be better understood, and its numerous objects, features and advantages made apparent to those skilled in the art by referencing the accompanying drawings. The use of the same reference number throughout the several figures designates a like or similar element.
A system and method is disclosed for reducing the effects of cross-profile crosscutting concerns to enable just-in-time configuration updates and real-time adaptation in the Common Information Model (CIM). Various embodiments of the invention allow the CIM object model to adapt to dynamic role, resource, or service changes such as logging, debugging, security or quality of service (QOS). In these embodiments, an aspect syntactic analyzer is implemented to extend a CIM Managed Object Format (MOF) to implement aspect and dynamic pattern extensions. In an embodiment of the invention, CIM MOF extensions comprise an Aspect Oriented Programming (AOP) join point. In one embodiment of the invention, the join point is implemented as an association class referencing two classes. In a different embodiment of the invention, the join point is implemented as a method call of a first class to a property of a second class. In these embodiments, the two classes may reside in the same or different CIM profiles. In various embodiments of the invention, a CIM repository is accessed by a CIM Object Manager (CIMOM) comprising an aspect weaver implemented to enable AOP operations between CIM clients and data providers. The CIM providers comprise an Aspect Semantic Analyzer to similarly enable AOP operations comprising CIM MOF aspect and dynamic pattern extensions. As a result, cross-profile crosscutting concerns are reduced, thereby allowing dynamic changes in the CIM model and enabling just-in-time configuration changes and real-time environment adaptation.
For purposes of this disclosure, an information handling system may include any instrumentality or aggregate of instrumentalities operable to compute, classify, process, transmit, receive, retrieve, originate, switch, store, display, manifest, detect, record, reproduce, handle, or utilize any form of information, intelligence, or data for business, scientific, control, or other purposes. For example, an information handling system may be a personal computer, a network storage device, or any other suitable device and may vary in size, shape, performance, functionality, and price. The information handling system may include random access memory (RAM), one or more processing resources such as a central processing unit (CPU) or hardware or software control logic, ROM, and/or other types of nonvolatile memory. Additional components of the information handling system may include one or more disk drives, one or more network ports for communicating with external devices as well as various input and output (I/O) devices, such as a keyboard, a mouse, and a video display. The information handling system may also include one or more buses operable to transmit communications between the various hardware components.
CIM repository 202 is accessed by CIM Object Manager (CIMOM) 208, which comprises CIMOM aspect weaver 210, which is implemented to enable AOP operations between AOP-enabled CIM client 216 and CIM provider 212. CIM provider 212 comprises CIM Aspect Semantic Analyzer 214 to similarly enable AOP operations comprising CIM MOF aspect and dynamic pattern extensions 206. It will be apparent to those of skill in the art that implementation of these and other embodiments of the invention reduce cross-profile crosscutting concerns, thereby allowing the CIM object model to adapt to dynamic role, resource, or service changes such as logging, debugging, security or quality of service (QOS) in real-time.
In this embodiment, IPMI-enabled link 432 coupling management server 422 and legacy computer 418 is not available. For example IPMI may not be supported, or the IPMI link is out of service. To connect management server 422 to legacy computer 418, WS-Man-enabled link 432 is implemented to convey management information between WS-Management client application 424 comprising management server 422 and WS-Management client application 404 comprising managed computer 402. Management information is conveyed from BMC 420 comprising legacy computer 418 to IPMI proxy 412 comprising managed computer 402 via Remote Management Control Packet (RMCP) protocol. IPMI proxy 412 conveys the management information in turn to IPMI provider 414, which then provides it through WS-Man-enabled link 432 to WS-Management client application 424 comprising management server 422. In another embodiment of the invention, legacy computer 418 comprises proprietary or out-of-date system management protocols.
As described in greater detail hereinabove, WS-Man can be similarly implemented with IPMI proxy 412 to provide system management of legacy computer 418 through management server 422. Skilled practitioners in the art will recognize that many other embodiments and variations of the present invention are possible. In addition, each of the referenced components in this embodiment of the invention may be comprised of a plurality of components, each interacting with the other in a distributed environment. Furthermore, other embodiments of the invention may expand on the referenced embodiment to extend the scale and reach of the system's implementation.