(file) Return to System27_SystemResources.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim271

  1 karl  1.1 // ===================================================================
  2           // Title:       System Resources 2.7
  3           // Filename:    System27_SystemResources.mof
  4           // Version:     2.7.0
  5           // Release:     Preliminary 
  6           // Date:        07/30/02
  7           // ===================================================================
  8           // Copyright 2002 Distributed Management Task Force, Inc. (DMTF).
  9           // All rights reserved.  
 10           // DMTF is a not-for-profit association of industry members dedicated 
 11           // to promoting enterprise and systems management and interoperability. 
 12           // DMTF specifications and documents may be reproduced for uses
 13           // consistent with this purpose by members and non-members, 
 14           // provided that correct attribution is given. 
 15           // As DMTF specifications may be revised from time to time, 
 16           // the particular version and release date should always be noted.
 17           //
 18           // Implementation of certain elements of this standard or proposed 
 19           // standard may be subject to third party patent rights, including 
 20           // provisional patent rights (herein "patent rights"). DMTF makes 
 21           // no representations to users of the standard as to the existence 
 22 karl  1.1 // of such rights, and is not responsible to recognize, disclose, or
 23           // identify any or all such third party patent right, owners or 
 24           // claimants, nor for any incomplete or inaccurate identification or 
 25           // disclosure of such rights, owners or claimants. DMTF shall have no 
 26           // liability to any party, in any manner or circumstance, under any 
 27           // legal theory whatsoever, for failure to recognize, disclose, or 
 28           // identify any such third party patent rights, or for such party's
 29           // reliance on the standard or incorporation thereof in its product, 
 30           // protocols or testing procedures. DMTF shall have no liability to 
 31           // any party implementing such standard, whether such implementation 
 32           // is foreseeable or not, nor to any patent owner or claimant, and shall 
 33           // have no liability or responsibility for costs or losses incurred if 
 34           // a standard is withdrawn or modified after publication, and shall be
 35           // indemnified and held harmless by any party implementing the 
 36           // standard from any and all claims of infringement by a patent owner 
 37           // for such implementations.
 38           //
 39           // For information about patents held by third-parties which have 
 40           // notified the DMTF that, in their opinion, such patent may relate to 
 41           // or impact implementations of DMTF standards, visit 
 42           // http://www.dmtf.org/about/policies/disclosures.php.
 43 karl  1.1 // ===================================================================
 44           // Description: The System Model defines system related management 
 45           //              concepts. This file defines the specific concepts for
 46           //              identifying and managing system hardware and 
 47           //              software resources.
 48           //
 49           //              The object classes below are listed in an order that
 50           //              avoids forward references. Required objects, defined 
 51           //              by other working groups, are omitted.
 52           // ==================================================================
 53           // Change Log for v2.7
 54           // CR757 - Change the subclassing of SystemResource from LogicalElement
 55           //         to EnabledLogicalElement
 56           // CR769 - Update the Decription of SystemResource
 57           //       - Add property SystemResource.ImplementationInfo
 58           //       - Add ResourceOfSystem
 59           //       - Change subclassing of ComputerSystemResource to Resource
 60           //         OfSystem
 61           // CR771 - Add the Composition qualifer to ComputerSystemResource,
 62           //         CIM_ComputerSystemIRQ, CIM_ComputerSystemMappedIO,
 63           //         and CIM_ComputerSystemDMA
 64 karl  1.1 // ==================================================================
 65           
 66           #pragma locale ("en_US")
 67           
 68           
 69           // ===================================================================
 70           // SystemResource
 71           // ===================================================================
 72           [Abstract, Version ("2.7.0"), Description (
 73               "An entity managed by BIOS, an OperatingSystem or other software, "
 74               "which is available for use by application software and/or "
 75               "LogicalDevices. Resources are individually identified and "
 76               "allocated entities, that are assignable, reservable, counted/"
 77               "tracked, releasable, reset-able, etc. Examples of software "
 78               "Resources are message queues, shared memory segments (identified "
 79               "by a key value), and named pipes, while examples of hardware "
 80               "Resources (in an x86 environment) are IRQs, DMA channels and "
 81               "memory mapped I/O.") ] 
 82           class CIM_SystemResource : CIM_EnabledLogicalElement {
 83           
 84               [Description (
 85 karl  1.1         "Boolean indicating whether the Resource can be shared.") ]
 86               boolean Shareable;
 87              
 88               [Experimental, Description (
 89                   "Indicates whether the Resource is implemented in hardware, "
 90                   "software or both."),
 91                   ValueMap {"0", "2", "3", "4"},
 92                   Values {"Unknown", "Hardware Only", "Software Only", 
 93                       "Hardware and Software"} ]
 94               uint16 ImplementationInfo;   
 95           };
 96           
 97           
 98           // ===================================================================
 99           // IRQ
100           // ===================================================================
101           [Version ("2.6.0"), Description (
102               "Personal computer architecture IRQ.") ] 
103           class CIM_IRQ : CIM_SystemResource {
104           
105               [Propagated("CIM_ComputerSystem.CreationClassName"),
106 karl  1.1         Key, MaxLen (256),
107                   Description ("The scoping ComputerSystem's "
108                   "CreationClassName.") ]
109               string CSCreationClassName;
110           
111               [Propagated("CIM_ComputerSystem.Name"),
112                   Key, MaxLen (256),
113                   Description ("The scoping ComputerSystem's Name.") ]
114               string CSName;
115           
116               [Key, MaxLen (256),
117                   Description (
118                       "CreationClassName indicates the name of the class or "
119                       "the subclass used in the creation of an instance. When "
120                       "used with the other key properties of this class, this "
121                       "property allows all instances of this class and its "
122                       "subclasses to be uniquely identified.") ]
123               string CreationClassName;
124           
125               [Key, 
126                   Description ("A part of the object's key value, IRQ Number."), 
127 karl  1.1         MappingStrings {"MIF.DMTF|IRQ|002.1"} ]
128               uint32 IRQNumber;
129           
130               [Description ("Availability of the IRQ."),
131                   ValueMap {"1", "2", "3", "4", "5"},
132                   Values {"Other", "Unknown", "Available", 
133                       "In Use/Not Available", 
134                       "In Use and Available/Shareable"},
135                   MappingStrings {"MIF.DMTF|IRQ|002.2"} ]
136               uint16 Availability;
137           
138               [Description (
139                   "IRQ trigger type indicating whether edge (value=4) "
140                   "or level triggered (value=3) interrupts occur. Also, "
141                   "\"Other\" (1) and \"Unknown\" (2) may be defined."),
142                   ValueMap {"1", "2", "3", "4"},
143                   Values {"Other", "Unknown", "Level", "Edge"},
144                   MappingStrings {"MIF.DMTF|IRQ|002.3", 
145                       "MIF.DMTF|System Resource IRQ Info|001.2"} ]
146               uint16 TriggerType;
147           
148 karl  1.1    [Description (
149                   "IRQ trigger level indicating whether the interrupt is "
150                   "triggered by the hardware signal going high (value=4) "
151                   "or low (value=3).  Also, \"Other\" (1) and "
152                   "\"Unknown\" (2) may be defined."),
153                   ValueMap {"1", "2", "3", "4"},
154                   Values {"Other", "Unknown", "Active Low", "Active High"},
155                   MappingStrings {"MIF.DMTF|System Resource IRQ Info|001.3"} ]
156               uint16 TriggerLevel; 
157           
158               [Override ("Shareable"), 
159                   Description (
160                       "Boolean indicating whether the IRQ can be shared."),
161                   MappingStrings {"MIF.DMTF|IRQ|002.4"} ]
162               boolean Shareable;
163           
164               [Description (
165                   "The Hardware property indicates whether the interrupt "
166                   "is hardware or software based. (If TRUE, the interrupt is "
167                   "hardware based.) On a personal computer, a hardware IRQ "
168                   "is a physical wire to a programmable interrupt "
169 karl  1.1         "controller (PIC) chip, through which the CPU can be "
170                   "notified of time critical events. Some IRQ lines are "
171                   "reserved for standard Devices such as the keyboard, floppy "
172                   "disk drives, and the system clock. A software interrupt "
173                   "is a programmatic mechanism to allow an application to "
174                   "get the attention of the Processor.") ]
175               boolean Hardware;
176           };
177           
178           // ===================================================================
179           // MemoryMappedIO
180           // ===================================================================
181           [Version ("2.6.0"), Description (
182               "Personal Computer architecture Memory Mapped I/O. This class "
183               "addresses both memory and port I/O resources. The property, "
184               "MappedResource, defines whether memory or I/O is mapped (and "
185               "for I/O whether the mapping is to a memory or a port space).") ]
186           class CIM_MemoryMappedIO : CIM_SystemResource {
187           
188               [Propagated("CIM_ComputerSystem.CreationClassName"),
189                   Key, MaxLen (256),
190 karl  1.1         Description ("The scoping ComputerSystem's CreationClassName.") ]
191               string CSCreationClassName;
192           
193               [Propagated("CIM_ComputerSystem.Name"),
194                   Key, MaxLen (256),
195                   Description ("The scoping ComputerSystem's Name.") ]
196               string CSName;
197           
198               [Key, MaxLen (256),
199                   Description (
200                       "CreationClassName indicates the name of the class or "
201                       "the subclass used in the creation of an instance. When "
202                       "used with the other key properties of this class, this "
203                       "property allows all instances of this class and its "
204                       "subclasses to be uniquely identified.") ]
205               string CreationClassName;
206           
207              [Key, Description (
208                   "A part of the object's key value, the starting address of "
209                   "memory mapped I/O."),
210                   MappingStrings {"MIF.DMTF|Memory Mapped I/O|001.1"} ]
211 karl  1.1     uint64 StartingAddress;
212           
213               [Description ("Ending address of memory mapped I/O."),
214                   MappingStrings {"MIF.DMTF|Memory Mapped I/O|001.2"} ]
215               uint64 EndingAddress;
216           
217               [Description (
218                   "Type of memory mapped I/O. MappedResource defines whether "
219                   "memory or I/O is mapped, and for I/O, whether the mapping "
220                   "is to a memory or a port space."), 
221                   ValueMap {"0", "1", "2", "3"}, 
222                   Values {"Other", "Mapped Memory", "I/O Mapped to Memory Space", 
223                       "I/O Mapped to Port Space"} ]
224               uint16 MappedResource;
225           };
226           
227           
228           // ===================================================================
229           // MemoryResource
230           // ===================================================================
231           [Version ("2.6.0"), Description (
232 karl  1.1     "Since the MemoryMappedIO class applies to memory AND port "
233               "resources, there is the potential for key conflict. For example, "
234               "both a memory resource and a port resource may be located at "
235               "address 0. Since StartingAddress is the distinguishing key of "
236               "MemoryMappedIO, two instances would be created with the same key. "
237               "This is prevented by defining memory and port resource subclasses "
238               "of MemoryMappedIO, and allowing the CreationClassName key property "
239               "to distinguish between them and force uniqueness in their keys.") ]
240           class CIM_MemoryResource : CIM_MemoryMappedIO {
241           };
242           
243           
244           // ===================================================================
245           // PortResource
246           // ===================================================================
247           [Version ("2.6.0"), Description (
248               "Since the MemoryMappedIO class applies to memory AND port "
249               "resources, there is the potential for key conflict. For example, "
250               "both a memory resource and a port resource may be located at "
251               "address 0. Since StartingAddress is the distinguishing key of "
252               "MemoryMappedIO, two instances would be created with the same key. "
253 karl  1.1     "This is prevented by defining memory and port resource subclasses "
254               "of MemoryMappedIO, and allowing the CreationClassName key property "
255               "to distinguish between them and force uniqueness in their keys.") ]
256           class CIM_PortResource : CIM_MemoryMappedIO {
257           };
258           
259           
260           // ===================================================================
261           // DMA
262           // ===================================================================
263           [Version ("2.6.0"), Description (
264               "Personal computer architecture DMA.") ] 
265           class CIM_DMA : CIM_SystemResource {
266           
267               [Propagated("CIM_ComputerSystem.CreationClassName"),
268                   Key, MaxLen (256),
269                   Description ("The scoping ComputerSystem's "
270                       "CreationClassName.") ]
271               string CSCreationClassName;
272           
273               [Propagated("CIM_ComputerSystem.Name"),
274 karl  1.1         Key, MaxLen (256),
275                   Description ("The scoping ComputerSystem's Name.") ]
276               string CSName;
277           
278               [Key, MaxLen (256),
279                   Description (
280                       "CreationClassName indicates the name of the class or "
281                       "the subclass used in the creation of an instance. When "
282                       "used with the other key properties of this class, this "
283                       "property allows all instances of this class and its "
284                       "subclasses to be uniquely identified.") ]
285               string CreationClassName;
286           
287               [Key, Description (
288                   "A part of the object's key value, the DMA Channel number."),
289                   MappingStrings {"MIF.DMTF|DMA|001.1"} ]
290               uint32 DMAChannel;
291           
292               [Description ("Availability of the DMA."),
293                   ValueMap {"1", "2", "3", "4", "5"},
294                   Values {"Other", "Unknown", "Available", 
295 karl  1.1             "In Use/Not Available", 
296                       "In Use and Available/Shareable"},
297                   MappingStrings {"MIF.DMTF|DMA|001.2"} ]
298               uint16 Availability;
299           
300               [Description (
301                   "Indication that the DMA Channel supports burst mode."),
302                   MappingStrings {"MIF.DMTF|DMA|001.3"} ]
303               boolean BurstMode; 
304           
305               [Description (
306                   "An array indicating all the transfer widths (in bits) "
307                   "supported by this DMA Channel. Permissible values "
308                   "are 8, 16, 32, 64 or 128 bits.  If unknown, enter 0."),
309                   Units ("Bits"),
310                   ValueMap {"0", "8", "16", "32", "64", "128"},
311                   MappingStrings {"MIF.DMTF|System Resource DMA Info|001.2"} ]
312               uint16 TransferWidths[];
313           
314               [Description (
315                   "An integer indicating the DMA Channel address size in "
316 karl  1.1         "bits. Permissible values are 8, 16, 32 or 64 bits. "
317                   "If unknown, enter 0."),
318                   Units ("Bits"),
319                   ValueMap {"0", "8", "16", "32", "64"}, 
320                   MappingStrings {"MIF.DMTF|System Resource DMA Info|001.3"} ]
321               uint16 AddressSize; 
322           
323               [Description (
324                   "The maximum number of bytes that can be transferred by this "
325                   "DMA Channel. If unknown, enter 0."),
326                   Units ("Bytes"),
327                   MappingStrings {"MIF.DMTF|System Resource DMA Info|001.4"} ]
328               uint32 MaxTransferSize;
329           
330               [Description (
331                   "Indicates whether DMA may execute in 'count by byte' mode "
332                   "(value=4) or not (value=3).  Also, \"Other\" (1) and "
333                   "\"Unknown\" (2) may be defined."),
334                   ValueMap {"1", "2", "3", "4"},
335                   Values {"Other", "Unknown", 
336                       "Not execute in 'count by byte' mode", 
337 karl  1.1             "Execute in 'count by byte' mode"},
338                   MappingStrings {"MIF.DMTF|System Resource DMA Info|001.7"} ]
339               uint16 ByteMode;
340           
341               [Description (
342                   "Indicates whether DMA may execute in 'count by word' mode "
343                   "(value=4) or not (value=3).  Also, \"Other\" (1) and "
344                   "\"Unknown\" (2) may be defined."),
345                   ValueMap {"1", "2", "3", "4"},
346                   Values {"Other", "Unknown", 
347                       "Not execute in 'count by word' mode",
348                       "Execute in 'count by word' mode"},
349                   MappingStrings {"MIF.DMTF|System Resource DMA Info|001.8"} ]
350               uint16 WordMode;
351           
352               [Description (
353                   "DMA channel timing.  For example, \"Type A\" (value "
354                   "=4) or \"Type F\" (6) could be specified."),
355                   ValueMap {"1", "2", "3", "4", "5", "6"},
356                   Values {"Other", "Unknown", "ISA Compatible", "Type A",
357                       "Type B", "Type F"},
358 karl  1.1         MappingStrings {"MIF.DMTF|System Resource DMA Info|001.9"} ]
359               uint16 ChannelTiming;
360           
361               [Description (
362                   "Indicates whether C type (burst) timing is supported "
363                   "(value=5) or not (value=4). Also, \"Other\" (1), "
364                   "\"Unknown\" (2) and \"ISA Compatible\" (3) are defined."),
365                   ValueMap {"1", "2", "3", "4", "5"},
366                   Values {"Other", "Unknown", "ISA Compatible", "Not Supported",
367                       "Supported"},
368                   MappingStrings {"MIF.DMTF|System Resource DMA Info|001.10"} ]
369               uint16 TypeCTiming;
370           };
371           
372           
373           // ===================================================================
374           // ResourceOfSystem
375           // ===================================================================
376           [Association, Aggregation, Composition, Experimental, 
377               Version ("2.7.0"), Description (
378               "An association between a System and a SystemResource that "
379 karl  1.1     "exists and is allocated in the context of the System.") ]
380           class CIM_ResourceOfSystem : CIM_SystemComponent {
381           
382               [Override ("GroupComponent"), Aggregate,
383                   Min (1), Max (1), Description (
384                       "The System in whose context the Resource exists and is "
385                       "allocated.") ]
386               CIM_System REF GroupComponent;
387           
388               [Override ("PartComponent"),
389                   Description ("A Resource of the System.") ]
390               CIM_SystemResource REF PartComponent;
391           };
392           
393           
394           // ===================================================================
395           // ComputerSystemResource
396           // ===================================================================
397           [Association, Aggregation, Composition, Version ("2.7.0"), 
398               Description (
399                   "An association between a ComputerSystem and the System"
400 karl  1.1         "Resources available on it.") ]
401           class CIM_ComputerSystemResource : CIM_ResourceOfSystem {
402           
403               [Override ("GroupComponent"), Aggregate,
404                   Min (1), Max (1), Description ("The ComputerSystem.") ]
405               CIM_ComputerSystem REF GroupComponent;
406           
407               [Override ("PartComponent"),
408                   Description ("A SystemResource of the ComputerSystem.") ]
409               CIM_SystemResource REF PartComponent;
410           };
411           
412           
413           // ===================================================================
414           // ComputerSystemIRQ
415           // ===================================================================
416           [Association, Aggregation, Composition, Version ("2.7.0"), 
417               Description (
418                   "An association between a ComputerSystem and the IRQs "
419                   "available on it.") ]
420           class CIM_ComputerSystemIRQ : CIM_ComputerSystemResource {
421 karl  1.1 
422               [Override ("GroupComponent"), Aggregate,
423                   Min (1), Max (1), Description ("The ComputerSystem.") ]
424               CIM_ComputerSystem REF GroupComponent;
425           
426               [Override ("PartComponent"), Weak,
427                   Description ("An IRQ of the ComputerSystem.") ]
428               CIM_IRQ REF PartComponent;
429           };
430           
431           
432           // ===================================================================
433           // ComputerSystemMappedIO
434           // ===================================================================
435           [Association, Aggregation, Composition, Version ("2.7.0"), 
436               Description (
437                   "An association between a ComputerSystem and the Memory "
438                   "Mapped I/O ports available on it.") ]
439           class CIM_ComputerSystemMappedIO : CIM_ComputerSystemResource {
440           
441               [Override ("GroupComponent"), Aggregate,
442 karl  1.1         Min (1), Max (1), Description ("The ComputerSystem.") ]
443               CIM_ComputerSystem REF GroupComponent;
444           
445               [Override ("PartComponent"), Weak,
446                   Description (
447                       "A memory mapped I/O port of the ComputerSystem.") ]
448               CIM_MemoryMappedIO REF PartComponent;
449           };
450           
451           
452           // ===================================================================
453           // ComputerSystemDMA
454           // ===================================================================
455           [Association, Aggregation, Composition, Version ("2.7.0"), 
456               Description (
457                   "An association between a ComputerSystem and the DMA channels "
458                   "available on it.") ]
459           class CIM_ComputerSystemDMA : CIM_ComputerSystemResource {
460           
461               [Override ("GroupComponent"), Aggregate,
462                   Min (1), Max (1), Description ("The ComputerSystem.") ]
463 karl  1.1     CIM_ComputerSystem REF GroupComponent;
464           
465               [Override ("PartComponent"), Weak,
466                   Description ("A DMA channel of the ComputerSystem.") ]
467               CIM_DMA REF PartComponent;
468           };
469           
470           
471           // ===================================================================
472           // AllocatedResource
473           // ===================================================================
474           [Association, Version ("2.6.0"), Description (
475               "An association between LogicalDevices and SystemResources, "
476               "indicating that the Resource is assigned to the Device.") ]
477           class CIM_AllocatedResource : CIM_Dependency {
478           
479               [Override ("Antecedent"),
480                   Description ("The Resource.") ]
481               CIM_SystemResource REF Antecedent;
482           
483               [Override ("Dependent"),
484 karl  1.1         Description (
485                       "The LogicalDevice to which the Resource is assigned.") ]
486               CIM_LogicalDevice REF Dependent;
487           };
488           
489           
490           // ===================================================================
491           // AllocatedDMA
492           // =================================================================== 
493           [Association, Version ("2.6.0"), Description ( 
494               "An association between a LogicalDevice and a DMA System" 
495               "Resource indicating that the DMA Channel is assigned to the "
496               "Device.") ]
497           class CIM_AllocatedDMA : CIM_AllocatedResource { 
498           
499               [Override ("Antecedent"), 
500                   Description ("The DMA Channel.") ] 
501               CIM_DMA REF Antecedent; 
502           
503               [Override ("Dependent"),
504                   Description (
505 karl  1.1             "The LogicalDevice to which the Resource is assigned.") ]
506               CIM_LogicalDevice REF Dependent;
507           
508               [Description ( 
509                   "Boolean indicating whether the LogicalDevice can act as a " 
510                   "bus master on the DMA Channel."),
511                   MappingStrings {"MIF.DMTF|System Resource DMA Info|001.6"} ] 
512               boolean BusMaster;
513           };
514           
515           
516           // ===================================================================
517           // end of file
518           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2