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

  1 tony  1.1 // ===================================================================
  2           // Title:       System Processing 2.8
  3           // Filename:    System28_Processing.mof
  4           // Version:     2.8
  5           // Release:     Preliminary
  6           // Date:        08/18/2003
  7           // ===================================================================
  8           // Copyright 1998-2003 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 tony  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 tony  1.1 // ===================================================================
 44           // Description: The System Model defines system related management
 45           //              concepts. This file defines the specific concepts to
 46           //              manage processes, threads, and jobs.
 47           // 
 48           //              The object classes below are listed in an order that
 49           //              avoids forward references. Required objects, defined
 50           //              by other working groups, are omitted.
 51           // ==================================================================
 52           // Change Log for v2.8 Preliminary
 53           //  CR933  - ExecutionState additions
 54           //  CR989  - Remove the Abstract qualifier from ScheduledJob,
 55           //           clarify the class and several property Descriptions,
 56           //           and fix the class and a property name
 57           //  CR1016 - Job Updates
 58           //  CR1048 - Add JobQueue & QueueStatisticalData
 59           //  CR1081 - Move CIM_Job & Concrete to Core
 60           //  CR1128  - Addition of HostedDependency
 61           // CR1135  - Job Recovery Properties and the RecoveryJob association
 62           //  CR1137 - Change NumberOnQueue property (to two new properties)
 63           //           in QueueStatisticalData and add MaxJobCPUTime to
 64 tony  1.1 //           JobQueue
 65           // 
 66           // Change Log for v2.7 Final
 67           // CR988 - Update description and change subclassing of JobDestination
 68           // CR994 - Update the description of InstanceID
 69           // CR989 - Updates to the description and name of ScheduledJob
 70           // CR969 - Remove the experimental qualifier
 71           //       - Remove JobScheduleSettingData so it can remain experimental
 72           //         in 2.8.
 73           // 
 74           // Change Log for v2.7
 75           // CR757 - Change the subclassing of Process, Thread and Job from
 76           //         LogicalElement to EnabledLogicalElement
 77           // CR767 - Add the Compostion qualifer to OSProcess and ProcessThread
 78           // CR768 - Add ScheduledJob
 79           //       - Update class description and all property descriptions of
 80           //         Job, and Add a new property ScheduledStartTime to Job
 81           //       - Add OwningJobElement
 82           //       - Add AffectedJobElement
 83           //       - Add ConcreteJob
 84           //       - Add ProcessOfJob
 85 tony  1.1 // CR875 - Clarify description of Process .KernelModeTime and
 86           //         .UserModeTime
 87           // ==================================================================
 88           
 89           #pragma locale ("en_US")
 90           
 91           
 92           // ===================================================================
 93           // Process
 94           // ===================================================================
 95              [Version ("2.7.0"), Description (
 96                  "Each instance of the CIM_Process class represents a single "
 97                  "instance of a running program.  A user of the OperatingSystem "
 98                  "will typically see a Process as an application or task.  "
 99                  "Within an OperatingSystem, a Process is defined by a workspace "
100                  "of memory resources and environmental settings that are "
101                  "allocated to it.  On a multitasking System, this workspace "
102                  "prevents intrusion of resources by other Processes.  "
103                  "Additionally, a Process can execute as multiple Threads, all "
104                  "which run within the same workspace.") ]
105           class CIM_Process : CIM_EnabledLogicalElement {
106 tony  1.1 
107                 [Key, Propagated ("CIM_OperatingSystem.CSCreationClassName"), 
108                  Description (
109                     "The scoping ComputerSystem's CreationClassName."), 
110                  MaxLen (256) ]
111              string CSCreationClassName;
112           
113                 [Key, Propagated ("CIM_OperatingSystem.CSName"), Description (
114                     "The scoping ComputerSystem's Name."), 
115                  MaxLen (256) ]
116              string CSName;
117           
118                 [Key, Propagated ("CIM_OperatingSystem.CreationClassName"), 
119                  Description (
120                     "The scoping OperatingSystem's CreationClassName."), 
121                  MaxLen (256) ]
122              string OSCreationClassName;
123           
124                 [Key, Propagated ("CIM_OperatingSystem.Name"), Description (
125                     "The scoping OperatingSystem's Name."), 
126                  MaxLen (256) ]
127 tony  1.1    string OSName;
128           
129                 [Key, Description (
130                     "CreationClassName indicates the name of the class or the "
131                     "subclass used in the creation of an instance.  When used "
132                     "with the other key properties of this class, this property "
133                     "allows all instances of this class and its subclasses to be "
134                     "uniquely identified."), 
135                  MaxLen (256) ]
136              string CreationClassName;
137           
138                 [Key, Description (
139                     "A string used to identify the Process.  A Process ID is a "
140                     "kind of Process Handle."), 
141                  MaxLen (256), 
142                  MappingStrings {"MIF.DMTF|Process Information|001.1"} ]
143              string Handle;
144           
145                 [Override ("Name"), Description (
146                     "The name of the process."), 
147                  MappingStrings {"MIF.DMTF|Process Information|001.6"} ]
148 tony  1.1    string Name;
149           
150                 [Description (
151                     "Priority indicates the urgency or importance of execution "
152                     "of a Process.  If a priority is not defined for a Process, "
153                     "a value of 0 should be used."), 
154                  MappingStrings {"MIF.DMTF|Process Information|001.10"} ]
155              uint32 Priority;
156           
157                 [Description (
158                     "Indicates the current operating condition of the Process.  "
159                     "Values include ready (2), running (3), and blocked (4), "
160                     "among others.  The majority of the enumerated values are "
161                     "obvious.  However, a few require additional explanation:\n"
162                     "7 (Terminated) describes that a process has naturally completed\n"
163                     "8 (Stopped) describes that a process has been prematurely "
164                     "'stopped' by a user or other request\n"
165                     "10 (Ready but Relinquished Processor) describes that a "
166                     "process is in the Ready state, but has voluntarily "
167                     "relinquished execution time to other processes.  For "
168                     "example, this state may indicate a problem when the "
169 tony  1.1           "relinquishing process is not handling items on its queues.  "
170                     "If these semantics cannot be detected, the process should "
171                     "report its state as 2 (\"Ready\").\n"
172                     "11 (Hung) indicates that a process is not responding and "
173                     "should therefore not be given further execution time."), 
174                  ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
175                     "10", "11"}, 
176                  Values {"Unknown", "Other", "Ready", "Running", "Blocked",
177                     "Suspended Blocked", "Suspended Ready", "Terminated",
178                     "Stopped", "Growing", "Ready But Relinquished Processor",
179                     "Hung"}, 
180                  MappingStrings {"MIF.DMTF|Process Information|001.9",
181                     "MIF.UNIX|Process Information|13.9"} ]
182              uint16 ExecutionState;
183           
184                 [Description (
185                     "A string describing the state - used when the instance's "
186                     "ExecutionState property is set to 1 (\"Other\").  Other "
187                     "ExecutionDescription should be set to NULL when the "
188                     "Execution State property is any value other than 1.") ]
189              string OtherExecutionDescription;
190 tony  1.1 
191                 [Description (
192                     "Time that the Process began executing.") ]
193              datetime CreationDate;
194           
195                 [Description (
196                     "Time that the Process was stopped or terminated.") ]
197              datetime TerminationDate;
198           
199                 [Description (
200                     "Time in kernel mode, in milliseconds.  If this information "
201                     "is not available, or if the operating system does not "
202                     "distinguish between time in kernel and in user mode, a "
203                     "value of 0 should be used."), 
204                  Units ("MilliSeconds"), 
205                  MappingStrings {"MIF.DMTF|Process Information|001.13"} ]
206              uint64 KernelModeTime;
207           
208                 [Description (
209                     "Time in user mode, in milliseconds.  If this information is "
210                     "not available, a value of 0 should be used.  If the "
211 tony  1.1           "operating system does not distinguish between time in "
212                     "kernel mode and user mode, the time should be returned in "
213                     "this property."), 
214                  Units ("MilliSeconds"), 
215                  MappingStrings {"MIF.DMTF|Process Information|001.14"} ]
216              uint64 UserModeTime;
217           
218                 [Description (
219                     "The amount of memory in bytes that a Process needs to "
220                     "execute efficiently, for an OperatingSystem that uses "
221                     "page-based memory management.  If an insufficient amount of "
222                     "memory is available (< working set size), thrashing will "
223                     "occur.  If this information is not known, NULL or 0 should "
224                     "be entered.  If this data is provided, it could be "
225                     "monitored to understand a Process' changing memory "
226                     "requirements as execution proceeds."), 
227                  Units ("Bytes"), Gauge ]
228              uint64 WorkingSetSize;
229           };
230           
231           
232 tony  1.1 // ===================================================================
233           // OSProcess
234           // ===================================================================
235              [Association, Aggregation, Composition, Version ("2.7.0"), 
236               Description (
237                  "A link between the OperatingSystem and Process(es) running in "
238                  "the context of this OperatingSystem.") ]
239           class CIM_OSProcess : CIM_Component {
240           
241                 [Aggregate, Override ("GroupComponent"), Min (1), Max (1), 
242                  Description (
243                     "The OperatingSystem.") ]
244              CIM_OperatingSystem REF GroupComponent;
245           
246                 [Override ("PartComponent"), Weak, Description (
247                     "The Process running in the context of the OperatingSystem.") ]
248              CIM_Process REF PartComponent;
249           };
250           
251           
252           // ===================================================================
253 tony  1.1 // ProcessExecutable
254           // ===================================================================
255              [Association, Version ("2.6.0"), Description (
256                  "A link between a Process and a DataFile indicating that the "
257                  "File participates in the execution of the Process.") ]
258           class CIM_ProcessExecutable : CIM_Dependency {
259           
260                 [Override ("Antecedent"), Description (
261                     "The DataFile participating in the execution of the "
262                     "Process.") ]
263              CIM_DataFile REF Antecedent;
264           
265                 [Override ("Dependent"), Description (
266                     "The Process.") ]
267              CIM_Process REF Dependent;
268           };
269           
270           
271           // ==================================================================
272           // ServiceProcess
273           // ==================================================================
274 tony  1.1    [Association, Version ("2.6.0"), Description (
275                  "CIM_ServiceProcess is an association used to establish "
276                  "relationships between Services and Processes.  It is used to "
277                  "indicate if a Service is running in a particular Process.  It "
278                  "is also used to indicate, via the ExecutionType property, if "
279                  "the Service started and is wholly responsible for the Process, "
280                  "or if the Service is running in an existing Process, perhaps "
281                  "with other unrelated Services, which is owned or started by a "
282                  "different entity.  This association relates a Service with an "
283                  "externally visible system signature.") ]
284           class CIM_ServiceProcess {
285           
286                 [Key, Description (
287                     "The Service whose Process is described by this "
288                     "association.") ]
289              CIM_Service REF Service;
290           
291                 [Key, Description (
292                     "The Process which represents or hosts the executing "
293                     "Service.") ]
294              CIM_Process REF Process;
295 tony  1.1 
296                 [Description (
297                     "Enumeration indicating how the Service runs in the context "
298                     "of, or owns the Process.  \"Unknown\" indicates that the "
299                     "ExecutionType is not known.  \"Other\" indicates that the "
300                     "ExecutionType does not match any of the values in the "
301                     "ExecutionType enumeration.  \"Executes in Existing "
302                     "Process\" indicates that the Service is hosted in a Process "
303                     "that already exists in the system.  The lifecycle of the "
304                     "Service is separate from that of the Process.  \"Exeutes as "
305                     "Independent Process\" indicates that the Service is "
306                     "responsible for the lifecycle of the Process.  When the "
307                     "Service is started, the Process is created.  For example, "
308                     "ServletEngines can run \"InProcess\" within the existing "
309                     "Apache processes or \"OutOfProcess\" in its own servlet "
310                     "engine process.  In this case the Apache process would "
311                     "communicate with the servlet engine process based on the "
312                     "content of the request.  The association may be many to "
313                     "many."), 
314                  ValueMap {"0", "1", "2", "3"}, 
315                  Values {"Unknown", "Other", "Executes in Existing Process",
316 tony  1.1           "Executes as Independent Process" } ]
317              uint16 ExecutionType;
318           };
319           
320           // ===================================================================
321           // Thread
322           // ===================================================================
323              [Version ("2.7.0"), Description (
324                  "Threads represent the ability to execute units of a Process or "
325                  "task in parallel.  A Process can have many Threads, each of "
326                  "which is weak to the Process.") ]
327           class CIM_Thread : CIM_EnabledLogicalElement {
328           
329                 [Key, Propagated ("CIM_Process.CSCreationClassName"), 
330                  Description (
331                     "The scoping ComputerSystem's CreationClassName."), 
332                  MaxLen (256) ]
333              string CSCreationClassName;
334           
335                 [Key, Propagated ("CIM_Process.CSName"), Description (
336                     "The scoping ComputerSystem's Name."), 
337 tony  1.1        MaxLen (256) ]
338              string CSName;
339           
340                 [Key, Propagated ("CIM_Process.OSCreationClassName"), 
341                  Description (
342                     "The scoping OperatingSystem's CreationClassName."), 
343                  MaxLen (256) ]
344              string OSCreationClassName;
345           
346                 [Key, Propagated ("CIM_Process.OSName"), Description (
347                     "The scoping OperatingSystem's Name."), 
348                  MaxLen (256) ]
349              string OSName;
350           
351                 [Key, Propagated ("CIM_Process.CreationClassName"), Description (
352                     "The scoping Process' CreationClassName."), 
353                  MaxLen (256) ]
354              string ProcessCreationClassName;
355           
356                 [Key, Propagated ("CIM_Process.Handle"), Description (
357                     "The scoping Process' Handle."), 
358 tony  1.1        MaxLen (256) ]
359              string ProcessHandle;
360           
361                 [Key, Description (
362                     "CreationClassName indicates the name of the class or the "
363                     "subclass used in the creation of an instance.  When used "
364                     "with the other key properties of this class, this property "
365                     "allow all instances of this class and its subclasses to be "
366                     "uniquely identified."), 
367                  MaxLen (256) ]
368              string CreationClassName;
369           
370                 [Key, Description (
371                     "A string used to identify the Thread."), 
372                  MaxLen (256) ]
373              string Handle;
374           
375                 [Description (
376                     "Priority indicates the urgency or importance of execution "
377                     "of a Thread.  A Thread may have a different priority than "
378                     "its owning Process.  If this information is not available "
379 tony  1.1           "for a Thread, a value of 0 should be used.") ]
380              uint32 Priority;
381           
382                 [Description (
383                     "Indicates the current operating condition of the Thread.  "
384                     "Values include ready (2), running (3), and blocked (4), "
385                     "among others.  The majority of the enumerated values are "
386                     "obvious.  However, a few require additional explanation:\n"
387                     "7 (Ready but Relinquished Processor) describes that a "
388                     "thread is in the Ready state, but has voluntarily "
389                     "relinquished execution time to other threads.  For example, "
390                     "this state may indicate a problem when the relinquishing "
391                     "thread is not handling items on its queues.  If these "
392                     "semantics cannot be detected, the thread should report its "
393                     "state as 2 (\"Ready\").\n"
394                     "8 (Hung) indicates that a thread is not responding."), 
395                  ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8"}, 
396                  Values {"Unknown", "Other", "Ready", "Running", "Blocked",
397                     "Suspended Blocked", "Suspended Ready",
398                      "Ready But Relinquished Processor", "Hung"} ]
399              uint16 ExecutionState;
400 tony  1.1 
401                 [Description (
402                     "Time in kernel mode, in milliseconds.  If this information "
403                     "is not available, a value of 0 should be used."), 
404                  Units ("MilliSeconds") ]
405              uint64 KernelModeTime;
406           
407                 [Description (
408                     "Time in user mode, in milliseconds.  If this information is "
409                     "not available, a value of 0 should be used."), 
410                  Units ("MilliSeconds") ]
411              uint64 UserModeTime;
412           };
413           
414           
415           // ===================================================================
416           // ProcessThread
417           // ===================================================================
418              [Association, Aggregation, Composition, Version ("2.7.0"), 
419               Description (
420                  "A link between a Process and the Thread(s) running in the "
421 tony  1.1        "context of this Process.") ]
422           class CIM_ProcessThread : CIM_Component {
423           
424                 [Aggregate, Override ("GroupComponent"), Min (1), Max (1), 
425                  Description (
426                     "The Process.") ]
427              CIM_Process REF GroupComponent;
428           
429                 [Override ("PartComponent"), Weak, Description (
430                     "The Thread running in the context of the Process.") ]
431              CIM_Thread REF PartComponent;
432           };
433           
434           
435           // ===================================================================
436           // JobSettingData
437           // ===================================================================
438              [Experimental, Version ("2.7.1000"), Description (
439                  "JobSettingData represents job characteristics and scheduling "
440                  "information for a CIM_Job.  The settings may be applied to a "
441                  "job handling Service, a JobQueue or other destination to which "
442 tony  1.1        "jobs are submitted, and/or to individual CIM_Jobs.  The "
443                  "applicability of the settings are defined using the "
444                  "ElementSettingData relationship.  Since the Settings may be "
445                  "defined in several contexts and applied to many types of "
446                  "elements, this class is defined as a subclass of SettingData, "
447                  "versus ScopedSettingData.") ]
448           class CIM_JobSettingData : CIM_SettingData {
449           
450                 [Write, Description (
451                     "Number of times that a Job should be run.  A value of 1 "
452                     "indicates that the Job is NOT recurring, while any non-zero "
453                     "value indicates a limit to the number of times that the Job "
454                     "will recur.  Zero indicates that there is no limit to the "
455                     "number of times that the Job can be processed, but that it "
456                     "is terminated either AFTER the UntilTime, or by manual "
457                     "intervention.  By default, a Job is processed once."), 
458                  ModelCorrespondence {"CIM_Job.JobRunTimes"} ]
459              uint32 JobRunTimes = 1;
460           
461                 [Write, Description (
462                     "The month during which a Job should be processed.  Specify "
463 tony  1.1           "0 for January, 1 for February, and so on."), 
464                  ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
465                     "10", "11"}, 
466                  Values {"January", "February", "March", "April", "May", "June",
467                     "July", "August", "September", "October", "November",
468                     "December"}, 
469                  ModelCorrespondence {"CIM_Job.RunMonth",
470                     "CIM_JobSettingData.RunDay",
471                     "CIM_JobSettingData.RunDayOfWeek",
472                     "CIM_JobSettingData.RunStartInterval"} ]
473              uint8 RunMonth;
474           
475                 [Write, Description (
476                     "The day in the month on which a Job should be processed.  "
477                     "There are two different interpretations for this property, "
478                     "depending on the value of RunDayOfWeek.  In one case, "
479                     "RunDay defines the day-in-month on which the Job is "
480                     "processed.  This interpretation is used when the "
481                     "RunDayOfWeek is 0.  A positive or negative integer "
482                     "indicates whether the RunDay should be calculated from the "
483                     "beginning or the end of the month.  For example, 5 "
484 tony  1.1           "indicates the fifth day in RunMonth and -1 indicates the "
485                     "last day in the RunMonth.\n"
486                     "\n"
487                     "When RunDayOfWeek is not 0, RunDay is the day-in-month on "
488                     "which the Job is processed, defined in conjunction with "
489                     "RunDayOfWeek.  For example, if RunDay is 15 and "
490                     "RunDayOfWeek is Saturday, then the Job is processed on the "
491                     "first Saturday on or AFTER the 15th day in the RunMonth "
492                     "(e.g., the third Saturday in the month).  If RunDay is 20 "
493                     "and RunDayOfWeek is -Saturday, then this indicates the "
494                     "first Saturday on or BEFORE the 20th day in the RunMonth.  "
495                     "If RunDay is -1 and RunDayOfWeek is -Sunday, then this "
496                     "indicates the last Sunday in the RunMonth."), 
497                  MinValue (-31), MaxValue (31), 
498                  ModelCorrespondence {"CIM_Job.RunDay",
499                     "CIM_JobSettingData.RunMonth",
500                     "CIM_JobSettingData.RunDayOfWeek",
501                     "CIM_JobSettingData.RunStartInterval"} ]
502              sint8 RunDay;
503           
504                 [Write, Description (
505 tony  1.1           "Positive or negative integer used in conjunction with "
506                     "RunDay to indicate the day of the week on which a Job is "
507                     "processed.  RunDayOfWeek is set to 0 to indicate an exact "
508                     "day of the month, such as March 1.  A positive integer "
509                     "(representing Sunday, Monday, ..., Saturday) means that the "
510                     "day of week is found on or AFTER the specified RunDay.  A "
511                     "negative integer (representing -Sunday, -Monday, ..., "
512                     "-Saturday) means that the day of week is found on or BEFORE "
513                     "the RunDay."), 
514                  ValueMap {"-7", "-6", "-5", "-4", "-3", "-2", "-1", "0", "1",
515                     "2", "3", "4", "5", "6", "7" }, 
516                  Values {"-Saturday", "-Friday", "-Thursday", "-Wednesday",
517                     "-Tuesday", "-Monday", "-Sunday", "ExactDayOfMonth",
518                     "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
519                     "Friday", "Saturday" }, 
520                  ModelCorrespondence {"CIM_Job.RunDayOfWeek",
521                     "CIM_JobSettingData.RunMonth", "CIM_JobSettingData.RunDay",
522                     "CIM_JobSettingData.RunStartInterval"} ]
523              sint8 RunDayOfWeek;
524           
525                 [Write, Description (
526 tony  1.1           "The time interval after midnight when a Job should be "
527                     "processed.  For example,\n"
528                     " 00000000020000.000000:000\n"
529                     "indicates that the Job should be run on or after two "
530                     "o'clock, local time or UTC time (distinguished using the "
531                     "LocalOrUtcTime property."), 
532                  ModelCorrespondence {"CIM_Job.RunStartInterval",
533                     "CIM_JobSettingData.RunMonth", "CIM_JobSettingData.RunDay",
534                     "CIM_JobSettingData.RunDayOfWeek",
535                     "CIM_JobSettingData.LocalOrUtcTime"} ]
536              datetime RunStartInterval;
537           
538                 [Write, Description (
539                     "This property indicates whether the times represented in "
540                     "the RunStartInterval and UntilTime properties represent "
541                     "local times or UTC times.  Time values are synchronized "
542                     "worldwide by using the enumeration value 2, \"UTC Time\"."), 
543                  ValueMap {"1", "2"}, 
544                  Values {"Local Time", "UTC Time"} ]
545              uint16 LocalOrUtcTime;
546           
547 tony  1.1       [Write, Description (
548                     "The setting for a Job's UntilTime - the time after which an "
549                     "executing Job should be stopped or not be allowed to "
550                     "proceed.  This may be represented by an actual date and "
551                     "time, or an interval relative to the ScheduledStartTime.  A "
552                     "value of all nines indicates that the Job can run "
553                     "indefinitely."), 
554                  ModelCorrespondence {"CIM_Job.UntilTime",
555                     "CIM_JobSettingData.LocalOrUtcTime"} ]
556              datetime UntilTime;
557           
558                 [Write, Description (
559                     "The setting for a Job's Notify property - the user/email to "
560                     "be notified upon a scheduled Job's completion or failure."), 
561                  ModelCorrespondence {"CIM_Job.Notify"} ]
562              string Notify;
563           
564                 [Write, Description (
565                     "The setting for a Job's Owner property - the user, service "
566                     "method, etc.  that defined this setting data and causes the "
567                     "Job to be created."), 
568 tony  1.1        ModelCorrespondence {"CIM_Job.Owner"} ]
569              string Owner;
570           
571                 [Write, Description (
572                     "Indicates the urgency or importance of execution of the "
573                     "Job, as specified by the user or defining entity.  The "
574                     "actual Priority is found in the CIM_Job instance, "
575                     "associated via the ElementSettingData relationship.  Unless "
576                     "otherwise specified, a lower number indicates a higher "
577                     "priority."), 
578                  ModelCorrespondence {"CIM_Job.Priority"} ]
579              uint32 Priority;
580           
581                 [Write, Description (
582                     "Indicates whether or not the Job should be automatically "
583                     "deleted upon completion.  Note that the 'completion' of a "
584                     "recurring job is defined by its JobRunTimes or UntilTime "
585                     "properties, OR when the Job is terminated by manual "
586                     "intervention."), 
587                  ModelCorrespondence {"CIM_Job.DeleteOnCompletion"} ]
588              boolean DeleteOnCompletion;
589 tony  1.1 
590                 [Write, Description (
591                     "Describes the recovery setting if the Job does not "
592                     "unsuccessfully complete.  The possible values are:\n"
593                     "0 = \"Unknown\", meaning it is unknown as to what recovery "
594                     "action to take\n"
595                     "1 = \"Other\", indicating that the recovery action will be "
596                     "specified in the property, OtherRecoveryAction\n"
597                     "2 = \"Do Not Continue\", meaning stop the execution of the "
598                     "job and appropriately update its status\n"
599                     "3 = \"Continue With Next Job\", meaning continue with the "
600                     "next job in the queue\n"
601                     "4 = \"Re-run Job\", indicating that the job should be re-run\n"
602                     "5 = \"Run Recovery Job\", meaning run the Job associated "
603                     "using the RecoveryJob relationship.  Note that the recovery "
604                     "Job MUST already be on the queue from which it will run."), 
605                  ValueMap {"0", "1", "2", "3", "4", "5"}, 
606                  Values {"Unknown", "Other", "Do Not Continue",
607                      "Continue With Next Job", "Re-run Job", "Run Recovery Job"}, 
608                  ModelCorrespondence {"CIM_JobSettingData.OtherRecoveryAction",
609                     "CIM_Job.RecoveryAction"} ]
610 tony  1.1    uint16 RecoveryAction;
611           
612                 [Write, Description (
613                     "A string describing the recovery action when the instance's "
614                     "RecoveryAction property is 1 (\"Other\")."), 
615                  ModelCorrespondence {"CIM_JobSettingData.RecoveryAction",
616                     "CIM_Job.OtherRecoveryAction"} ]
617              string OtherRecoveryAction;
618           };
619           
620           
621           
622           
623           // ===================================================================
624           // OwningJobElement
625           // ===================================================================
626              [Association, Version ("2.7.0"), Description (
627                  "OwningJobElement represents an association between a Job and "
628                  "the ManagedElement responsible for the creation of the Job.  "
629                  "This association may not be possible, given that the execution "
630                  "of jobs can move between systems and that the lifecycle of the "
631 tony  1.1        "creating entity may not persist for the total duration of the "
632                  "job.  However, this can be very useful information when "
633                  "available.  This association defines a more specific 'owner' "
634                  "than is provided by the CIM_Job.Owner string."), 
635               ModelCorrespondence {"CIM_Job.Owner"} ]
636           class CIM_OwningJobElement {
637           
638                 [Key, Max (1), Description (
639                     "The ManagedElement responsible for the creation of the "
640                     "Job.") ]
641              CIM_ManagedElement REF OwningElement;
642           
643                 [Key, Description (
644                     "The Job created by the ManagedElement.") ]
645              CIM_Job REF OwnedElement;
646           };
647           
648           
649           // ===================================================================
650           // AffectedJobElement
651           // ===================================================================
652 tony  1.1    [Association, Version ("2.7.0"), Description (
653                  "AffectedJobElement represents an association between a Job and "
654                  "the ManagedElement(s) that may be affected by its execution.  "
655                  "It may not be feasible for the Job to describe all of the "
656                  "affected elements.  The main purpose of this association is to "
657                  "provide information when a Job requires exclusive use of the "
658                  "'affected' ManagedElment(s) or when describing that side "
659                  "effects may result.") ]
660           class CIM_AffectedJobElement {
661           
662                 [Key, Description (
663                     "The ManagedElement affected by the execution of the Job.") ]
664              CIM_ManagedElement REF AffectedElement;
665           
666                 [Key, Description (
667                     "The Job that is affecting the ManagedElement.") ]
668              CIM_Job REF AffectingElement;
669           
670                 [Description (
671                     "An enumeration describing the 'effect' on the "
672                     "ManagedElement.  This array corresponds to the "
673 tony  1.1           "OtherElementEffectsDescriptions array, where the latter "
674                     "provides details related to the high-level 'effects' "
675                     "enumerated by this property.  Additional detail is required "
676                     "if the ElementEffects array contains the value 1, "
677                     "\"Other\"."), 
678                  ValueMap {"0", "1", "2", "3", "4"}, 
679                  Values {"Unknown", "Other", "Exclusive Use",
680                      "Performance Impact", "Element Integrity"}, 
681                  ArrayType ("Indexed"), 
682                  ModelCorrespondence { 
683                     "CIM_AffectedJobElement.OtherElementEffectsDescriptions"} ]
684              uint16 ElementEffects[];
685           
686                 [Description (
687                     "Provides details for the 'effect' at the corresponding "
688                     "array position in ElementEffects.  This information is "
689                     "required whenever ElementEffects contains the value 1 "
690                     "(\"Other\")."), 
691                  ArrayType ("Indexed"), 
692                  ModelCorrespondence {"CIM_AffectedJobElement.ElementEffects"} ]
693              string OtherElementEffectsDescriptions[];
694 tony  1.1 };
695           
696           
697           // ===================================================================
698           // ProcessOfJob
699           // ===================================================================
700              [Association, Aggregation, Composition, Version ("2.7.0"), 
701               Description (
702                  "ProcessOfJob describes that the referenced Process is the "
703                  "result of the execution of the Job.  A Job may cause multiple "
704                  "Processes to run, perhaps on different operating systems.  "
705                  "This is allowed by the '*' cardinality of the Process "
706                  "reference.  Note that a Process can result from only one Job - "
707                  "hence, the '0..1' cardinality on Job.") ]
708           class CIM_ProcessOfJob : CIM_Component {
709           
710                 [Aggregate, Override ("GroupComponent"), Description (
711                     "Execution of the Job results in the creation of the Process "
712                     "referenced as PartComponent.  The Job aggregates the "
713                     "Process(es) that are created when it is executed.") ]
714              CIM_Job REF GroupComponent;
715 tony  1.1 
716                 [Override ("PartComponent"), Description (
717                     "The Process that results from the execution of the Job.") ]
718              CIM_Process REF PartComponent;
719           };
720           
721           
722           // ===================================================================
723           // JobDestination
724           // ===================================================================
725              [Version ("2.7.0"), Description (
726                  "JobDestination is an EnabledLogicalElement representing where "
727                  "a Job is submitted for processing.  It can refer to a queue "
728                  "that contains zero or more Jobs, such as a print queue "
729                  "containing print Jobs.  JobDestinations are hosted on Systems, "
730                  "similar to the way that Services are hosted on Systems.  Also, "
731                  "they may be enabled/disabled similar to Services.") ]
732           class CIM_JobDestination : CIM_EnabledLogicalElement {
733           
734                 [Key, Propagated ("CIM_System.CreationClassName"), Description (
735                     "The scoping System's CreationClassName."), 
736 tony  1.1        MaxLen (256) ]
737              string SystemCreationClassName;
738           
739                 [Key, Propagated ("CIM_System.Name"), Description (
740                     "The scoping System's Name."), 
741                  MaxLen (256) ]
742              string SystemName;
743           
744                 [Key, Description (
745                     "CreationClassName indicates the name of the class or the "
746                     "subclass used in the creation of an instance.  When used "
747                     "with the other key properties of this class, this property "
748                     "allows all instances of this class and its subclasses to be "
749                     "uniquely identified."), 
750                  MaxLen (256) ]
751              string CreationClassName;
752           
753                 [Key, Override ("Name"), Description (
754                     "The inherited Name serves as key of a JobDestination "
755                     "instance in a System."), 
756                  MaxLen (256) ]
757 tony  1.1    string Name;
758           };
759           
760           
761           // ===================================================================
762           // HostedJobDestination
763           // ===================================================================
764              [Association, Version ("2.7.1000"), Description (
765                  "An association between a JobDestination and a System on which "
766                  "it resides.  The cardinality of this association is "
767                  "1-to-many.  A System may host many Job queues.  Job "
768                  "Destinations are weak with respect to their hosting System.  "
769                  "Heuristic: A JobDestination is hosted on the System where the "
770                  "LogicalDevices, SoftwareFeatures or Services that implement/ "
771                  "provide the JobDestination are located.") ]
772           class CIM_HostedJobDestination : CIM_HostedDependency {
773           
774                 [Override ("Antecedent"), Min (1), Max (1), Description (
775                     "The hosting System.") ]
776              CIM_System REF Antecedent;
777           
778 tony  1.1       [Override ("Dependent"), Weak, Description (
779                     "The JobDestination hosted on the System.") ]
780              CIM_JobDestination REF Dependent;
781           };
782           
783           
784           // ===================================================================
785           // JobDestinationJobs
786           // ===================================================================
787              [Association, Version ("2.6.0"), Description (
788                  "An association describing where a Job is submitted for "
789                  "processing, ie to which JobDestination.") ]
790           class CIM_JobDestinationJobs : CIM_Dependency {
791           
792                 [Override ("Antecedent"), Max (1), Description (
793                     "The JobDestination, possibly a queue.") ]
794              CIM_JobDestination REF Antecedent;
795           
796                 [Override ("Dependent"), Description (
797                     "The Job that is in the Job queue/Destination.") ]
798              CIM_Job REF Dependent;
799 tony  1.1 };
800           
801           // ===================================================================
802           // JobProcessingStatistics
803           // ===================================================================
804              [Experimental, Version ("2.7.1000"), Description (
805                  "This class records the completion statistics (such as "
806                  "ElapsedTime) and other information for its associated Job.  "
807                  "The class will be extended in a future release to include "
808                  "statistics regarding resource utilization.  Note that there "
809                  "may be many instances of this class if the Job is recurring "
810                  "(i.e., if its JobRunTimes property is not 1).") ]
811           class CIM_JobProcessingStatistics : CIM_StatisticalData {
812           
813                 [Description (
814                     "The time that this invocation of the Job was started.  This "
815                     "SHOULD be represented by an actual date and time, and not "
816                     "in interval format."), 
817                  ModelCorrespondence {"CIM_Job.StartTime"} ]
818              datetime StartTime;
819           
820 tony  1.1       [Description (
821                     "The total execution time of the Job.  This MUST be "
822                     "represented in interval format."), 
823                  ModelCorrespondence {"CIM_Job.ElapsedTime"} ]
824              datetime ElapsedTime;
825           
826                 [Description (
827                     "Indicates the urgency or importance of execution of the "
828                     "Job.  The lower the number, the higher the priority."), 
829                  ModelCorrespondence {"CIM_Job.Priority"} ]
830              uint32 Priority;
831           
832                 [Description (
833                     "The percentage of the job that was completed at the time "
834                     "that the Job terminated.  Note that this value will be less "
835                     "than 100 if the Job terminated prematurely."), 
836                  Units ("Percent"), MinValue (0), MaxValue (101), 
837                  ModelCorrespondence {"CIM_Job.PercentComplete"} ]
838              uint16 PercentComplete;
839           
840                 [Description (
841 tony  1.1           "A vendor specific error code related to the processing of "
842                     "the Job.  This MUST be set to zero if the Job completed "
843                     "without error."), 
844                  ModelCorrespondence {"CIM_Job.ErrorCode",
845                     "CIM_JobProcessingStatistics.ErrorDescription"} ]
846              uint16 ErrorCode;
847           
848                 [Description (
849                     "A free form string containing the vendor error description "
850                     "for the property, ErrorCode."), 
851                  ModelCorrespondence {"CIM_Job.ErrorDescription",
852                     "CIM_JobProcessingStatistics.ErrorCode"} ]
853              string ErrorDescription;
854           };
855           
856           // ===================================================================
857           // JobQueue
858           // ===================================================================
859              [Experimental, Version ("2.7.1000"), Description (
860                  "Status and configuration of a JobQueue.  Jobs are held on a "
861                  "queue, and can move from queue to queue until being "
862 tony  1.1        "processed.") ]
863           class CIM_JobQueue : CIM_JobDestination {
864           
865                 [Description (
866                     "Provides queue-specific status information, beyond the "
867                     "ManagedSystemElement.OperationalStatus property.  This "
868                     "property further qualifies the status of the queue, or "
869                     "indicates a secondary condition (e.g.  queue full)."), 
870                  ValueMap {"0", "1", "2", "3"}, 
871                  Values {"Unknown", "Other", "No Additional Status",
872                      "Queue Full"}, 
873                  ModelCorrespondence {"CIM_JobQueue.QueueStatusInfo"} ]
874              uint16 QueueStatus;
875           
876                 [Description (
877                     "Provides a textual explanation for the status of the "
878                     "queue.  Information about both QueueStatus and the "
879                     "OperationalStatus property (inherited from "
880                     "ManagedSystemElement) may be described in QueueStatusInfo.  "
881                     "Note, however, that OperationalStatus' Descriptions (if "
882                     "available) MUST be provided in the StatusDescriptions "
883 tony  1.1           "array, inherited from ManagedSystemElement.  This is where "
884                     "management clients will expect to locate this information."), 
885                  ModelCorrespondence {"CIM_JobQueue.QueueStatus"} ]
886              string QueueStatusInfo;
887           
888                 [Description (
889                     "Specifies the priority that will be assigned to a new Job "
890                     "being submitted to this queue, if the Job does not "
891                     "explicitly specify a priority.  Note that lower numbers "
892                     "indicate higher priorities.  The default value of 0xFFFF is "
893                     "the lowest priority.") ]
894              uint32 DefaultJobPriority = 65535;
895           
896                 [Description (
897                     "Specifies the maximum time (using a datetime interval "
898                     "format) that a Job can remain on this Queue before "
899                     "completing.  If the MaxTimeOnQueue property is exceeded, "
900                     "then the Job SHOULD be removed from the Queue.  A value of "
901                     "0 (the default) indicates that there is no time limit.") ]
902              datetime MaxTimeOnQueue = "00000000000000.000000:000";
903           
904 tony  1.1       [Description (
905                     "Specifies the maximum number of Jobs that can reside on "
906                     "this Queue.  A value of 0 (the default) indicates that "
907                     "there is no time limit.") ]
908              uint32 MaxJobsOnQueue = 0;
909           
910                 [Description (
911                     "Specifies the maximum number of milliseconds of CPU time "
912                     "that a Job queued to this destination can consume to "
913                     "complete its execution."), 
914                  Units ("MilliSeconds") ]
915              uint32 MaxJobCPUTime;
916           };
917           
918           
919           // ===================================================================
920           // QueueStatisticalData
921           // ===================================================================
922              [Experimental, Version ("2.7.1000"), Description (
923                  "The statistical data of a JobQueue.  An instance of this class "
924                  "is associated with a specific JobQueue using the inherited "
925 tony  1.1        "ElementStatisticalData relationship.") ]
926           class CIM_QueueStatisticalData : CIM_StatisticalData {
927           
928                 [Description (
929                     "The number of Jobs whose MaxTimeOnQueue was exceeded.  This "
930                     "would cause the Job to be removed from the Queue, and not "
931                     "processed to completion.  This count begins at the time "
932                     "that the Queue was started/initialized."), 
933                  Counter ]
934              uint64 JobsMaxTimeExceeded;
935           
936                 [Description (
937                     "Specifies the current number of Jobs that are in the "
938                     "running state, for the related Queue."), 
939                  Gauge ]
940              uint32 RunningJobs;
941           
942                 [Description (
943                     "Specifies the current number of Jobs that are waiting to be "
944                     "put in the running state, for the related Queue."), 
945                  Gauge ]
946 tony  1.1    uint32 WaitingJobs;
947           };
948           
949           // ==================================================================
950           // RecoveryJob
951           // ==================================================================
952              [Association, Experimental, Version ("2.7.1000"), Description (
953                  "CIM_RecoveryJob specifies the Job that should be run to clean "
954                  "up or recover from the unsuccessful completion of the "
955                  "Dependent Job.") ]
956           class CIM_RecoveryJob : CIM_Dependency {
957           
958                 [Override ("Antecedent"), Description (
959                     "Antecedent represents the recovery Job.") ]
960              CIM_Job REF Antecedent;
961           
962                 [Override ("Dependent"), Description (
963                     "Dependent represents the Job which may not successfully "
964                     "complete and which is dependent on the 'RecoveryJob' for "
965                     "cleanup.") ]
966              CIM_Job REF Dependent;
967 tony  1.1 };
968           
969           // ===================================================================
970           // end of file
971           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2