ibm-information-center/dist/eclipse/plugins/i5OS.ic.cl_5.4.0.1/crtcls.htm

372 lines
16 KiB
HTML
Raw Permalink Normal View History

2024-04-02 14:02:31 +00:00
<!doctype html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Create Class (CRTCLS)</title>
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body bgcolor="white">
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<a name="CRTCLS.Top_Of_Page"></a>
<h2>Create Class (CRTCLS)</h2>
<table width="100%">
<tr>
<td valign="top" align="left"><b>Where allowed to run: </b>All environments (*ALL)<br>
<b>Threadsafe: </b>No
</td>
<td valign="top" align="right">
<a href="#CRTCLS.PARAMETERS.TABLE">Parameters</a><br>
<a href="#CRTCLS.COMMAND.EXAMPLES">Examples</a><br>
<a href="#CRTCLS.ERROR.MESSAGES">Error messages</a></td>
</tr>
</table>
<div> <a name="CRTCLS"></a>
<p>The Create Class command creates a class object and specifies the attributes to be contained in the class. The class defines the processing attributes for jobs that use the class. The class used by a job is specified in the subsystem description routing entry used to start the job. If a job consists of multiple routing steps, the class used by each subsequent routing step is specified in the routing entry used to start the routing step.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div>
<h3><a name="CRTCLS.PARAMETERS.TABLE">Parameters</a></h3>
<table border="1" cellpadding="4" cellspacing="0">
<!-- col1="10" col2="15" col3="30" col4="10" -->
<tr>
<th bgcolor="aqua" valign="bottom" align="left">Keyword</th>
<th bgcolor="aqua" valign="bottom" align="left">Description</th>
<th bgcolor="aqua" valign="bottom" align="left">Choices</th>
<th bgcolor="aqua" valign="bottom" align="left">Notes</th>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CRTCLS.CLS"><b>CLS</b></a></td>
<td valign="top">Class</td>
<td valign="top"><i>Qualified object name</i></td>
<td valign="top" rowspan="3">Required, Positional 1</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Class</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i>, <b><u>*CURLIB</u></b></td>
</tr><tr>
<td valign="top"><a href="#CRTCLS.RUNPTY"><b>RUNPTY</b></a></td>
<td valign="top">Run priority</td>
<td valign="top">1-99, <b><u>50</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.TIMESLICE"><b>TIMESLICE</b></a></td>
<td valign="top">Time slice</td>
<td valign="top">0-9999999, <b><u>2000</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.PURGE"><b>PURGE</b></a></td>
<td valign="top">Eligible for purge</td>
<td valign="top"><b><u>*YES</u></b>, *NO</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.DFTWAIT"><b>DFTWAIT</b></a></td>
<td valign="top">Default wait time</td>
<td valign="top">0-9999999, <b><u>30</u></b>, *NOMAX</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.CPUTIME"><b>CPUTIME</b></a></td>
<td valign="top">Maximum CPU time</td>
<td valign="top">1-9999999, <b><u>*NOMAX</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.MAXTMPSTG"><b>MAXTMPSTG</b></a></td>
<td valign="top">Maximum temporary storage</td>
<td valign="top">1-2147483647, <b><u>*NOMAX</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.MAXTHD"><b>MAXTHD</b></a></td>
<td valign="top">Maximum threads</td>
<td valign="top">1-32767, <b><u>*NOMAX</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.TEXT"><b>TEXT</b></a></td>
<td valign="top">Text 'description'</td>
<td valign="top"><i>Character value</i>, <b><u>*BLANK</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CRTCLS.AUT"><b>AUT</b></a></td>
<td valign="top">Authority</td>
<td valign="top"><i>Name</i>, <b><u>*LIBCRTAUT</u></b>, *CHANGE, *ALL, *USE, *EXCLUDE</td>
<td valign="top">Optional</td>
</tr>
</table>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
</div>
<div> <a name="CRTCLS.CLS"></a>
<h3>Class (CLS)</h3>
<p>Specifies the name and library used for the class name.
</p>
<p>This is a required parameter.
</p>
<p><b>Qualifier 1: Class</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the class.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><u>*CURLIB</u></b></dt>
<dd>The class is created in the current library for the thread. If no library is specified as the current library for the thread, the QGPL library is used.
</dd>
<dt><b><i>name</i></b></dt>
<dd>Specify the library where the class is created.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.RUNPTY"></a>
<h3>Run priority (RUNPTY)</h3>
<p>Specifies the run priority of jobs that use the class. Run priority is a value ranging from 1 (highest priority) through 99 (lowest priority) that represents the priority at which the job competes for the processing unit relative to other jobs that are active at the same time. For multi-threaded jobs, the run priority is also the highest run priority allowed for any thread within the job. Individual threads within the job may have a lower priority.
</p>
<p>This value represents the relative, not absolute, importance of the job. For example, a job with a run priority of 25 is <b>not</b> twice as important as one with a run priority of 50.
</p>
<dl>
<dt><b><u>50</u></b></dt>
<dd>Jobs that use this class have a run priority of 50.
</dd>
<dt><b><i>1-99</i></b></dt>
<dd>Specify the run priority of jobs using this class.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.TIMESLICE"></a>
<h3>Time slice (TIMESLICE)</h3>
<p>Specifies the maximum amount of processor time (in milliseconds) given to each thread in a job using this class before other threads in a job or other jobs are given the opportunity to run. The time slice establishes the amount of time needed by a thread in a job to accomplish a meaningful amount of processing. At the end of the time slice, the thread might be put in an inactive state so that other threads can become active in the storage pool.
</p>
<dl>
<dt><b><u>2000</u></b></dt>
<dd>A maximum run time of 2000 milliseconds is allocated to each thread each time it is allowed to process.
</dd>
<dt><b><i>0-9999999</i></b></dt>
<dd>Specify the maximum amount of time (in milliseconds) that each thread in a job using this class can have to run when it is given processing time.
<p>
<b>Note: </b>Although you can specify a value of less than 8, the system takes a minimum of 8 milliseconds to run a process. If you display a job's run attributes, the time slice value is never less than 8.
</p>
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.PURGE"></a>
<h3>Eligible for purge (PURGE)</h3>
<p>Specifies whether the job is eligible to be moved out of main storage and put into auxiliary storage at the end of a time slice or when there is a long wait (such as waiting for a work station user's response). The operating system no longer uses this parameter.
</p>
<dl>
<dt><b><u>*YES</u></b></dt>
<dd>The job is eligible to be moved out of main storage and into auxiliary storage. However, a job with multiple threads is never purged from main storage.
</dd>
<dt><b>*NO</b></dt>
<dd>The job is not eligible to be moved out of main storage and put into auxiliary storage. However, when main storage is needed, pages belonging to a thread in this job may be moved to auxiliary storage. Then, when a thread in this job runs again, its pages are returned to main storage as they are needed.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.DFTWAIT"></a>
<h3>Default wait time (DFTWAIT)</h3>
<p>Specifies the default maximum time (in seconds) that a thread in the job waits for a system instruction, such as the LOCK machine interface (MI) instruction, to acquire a resource. This default wait time is used when a wait time is not otherwise specified for a given situation. Normally, this would be the amount of time the system user would be willing to wait for the system before the request is ended. If the wait time for any one instruction is exceeded, an error message can be displayed or it can be automatically handled by a Monitor Message (MONMSG) command.
</p>
<dl>
<dt><b><u>30</u></b></dt>
<dd>An instruction wait has a maximum of 30 seconds in which to complete.
</dd>
<dt><b>*NOMAX</b></dt>
<dd>There is no maximum wait time.
</dd>
<dt><b><i>0-9999999</i></b></dt>
<dd>Specify the maximum time (in seconds) that the system waits for an instruction to acquire a resource.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.CPUTIME"></a>
<h3>Maximum CPU time (CPUTIME)</h3>
<p>Specifies the maximum processing unit time (in milliseconds) that the job can use. If the job consists of multiple routing steps, each routing step is allowed to use this amount of processing unit time. If the maximum time is exceeded, the job is ended.
</p>
<dl>
<dt><b><u>*NOMAX</u></b></dt>
<dd>There is no limit on the processing unit time used.
</dd>
<dt><b><i>1-9999999</i></b></dt>
<dd>Specify the maximum amount of processing unit time (in milliseconds) that can be used.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.MAXTMPSTG"></a>
<h3>Maximum temporary storage (MAXTMPSTG)</h3>
<p>Specifies the maximum amount of temporary (auxiliary) storage (in kilobytes) that the job can use. If the job consists of multiple routing steps, this is the maximum temporary storage that the routing step can use. This temporary storage is used for storage required by the program itself and by implicitly created internal system objects used to support the job. It does not include storage in the QTEMP library. If the maximum temporary storage is exceeded, the job is ended. This parameter does not apply to the use of permanent storage, which is controlled through the user profile.
</p>
<dl>
<dt><b><u>*NOMAX</u></b></dt>
<dd>The system maximum is used.
</dd>
<dt><b><i>1-2147483647</i></b></dt>
<dd>Specify the maximum amount of temporary storage (in kilobytes) that can be used.
<p>
<b>Note: </b>Although the value is specified in kilobytes, the specified value is stored in the class rounded up to the nearest megabyte.
</p>
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.MAXTHD"></a>
<h3>Maximum threads (MAXTHD)</h3>
<p>Specifies the maximum number of threads that a job using this class can run with at any time. If multiple threads are initiated simultaneously, this value may be exceeded. If this maximum value is exceeded, the excess threads will be allowed to run to their normal completion. Initiation of additional threads will be inhibited until the maximum number of threads in the job drops below this maximum value.
</p>
<dl>
<dt><b><u>*NOMAX</u></b></dt>
<dd>There is no maximum number of threads.
</dd>
<dt><b><i>1-32767</i></b></dt>
<dd>Specify the maximum number of threads for a job.
<p>
<b>Note: </b>Depending upon the resources used by the threads and the resources available on the system, the initiation of additional threads may be inhibited before this maximum value is reached.
</p>
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.TEXT"></a>
<h3>Text 'description' (TEXT)</h3>
<p>Specifies the text that briefly describes the object.
</p>
<dl>
<dt><b><u>*BLANK</u></b></dt>
<dd>No text is specified.
</dd>
<dt><b><i>'description'</i></b></dt>
<dd>Specify no more than 50 characters of text, enclosed in apostrophes.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CRTCLS.AUT"></a>
<h3>Authority (AUT)</h3>
<p>Specifies the authority you are giving to users who do not have specific authority for the object, who are not on an authorization list, and whose group profile or supplemental group profiles do not have specific authority for the object.
</p>
<dl>
<dt><b><u>*LIBCRTAUT</u></b></dt>
<dd>The authority for the object is taken from the value specified for the <b>Create authority (CRTAUT)</b> parameter of the library in which the object is being created. If the value specified for the CRTAUT parameter is changed, the new value will not affect any existing objects.
</dd>
</dl>
<dl>
<dt><b>*CHANGE</b></dt>
<dd>The user can perform all operations on the object except those limited to the owner or controlled by object existence (*OBJEXIST) and object management (*OBJMGT) authorities. The user can change and perform basic functions on the object. *CHANGE authority provides object operational (*OBJOPR) authority and all data authority. If the object is an authorization list, the user cannot add, change, or remove users.
</dd>
</dl>
<dl>
</dl>
<dl>
<dt><b>*ALL</b></dt>
<dd>The user can perform all operations except those limited to the owner or controlled by authorization list management (*AUTLMGT) authority. The user can control the object's existence, specify the security for the object, change the object, and perform basic functions on the object. The user also can change ownership of the object.
</dd>
</dl>
<dl>
</dl>
<dl>
<dt><b>*USE</b></dt>
<dd>The user can perform basic operations on the object, such as running a program or reading a file. The user cannot change the object. Use (*USE) authority provides object operational (*OBJOPR), read (*READ), and execute (*EXECUTE) authorities.
</dd>
</dl>
<dl>
</dl>
<dl>
<dt><b>*EXCLUDE</b></dt>
<dd>The user cannot access the object.
</dd>
</dl>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of an authorization list to be used for authority to the object. Users included in the authorization list are granted authority to the object as specified in the list. The authorization list must exist when the object is created.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CRTCLS.COMMAND.EXAMPLES">Examples</a> </h3>
<p>
<pre>
CRTCLS CLS(CLASS1) RUNPTY(60) TIMESLICE(900)
TEXT('This class for all batch jobs from Dept 4836')
</pre>
</p>
<p>This command creates a class called CLASS1. The class is stored in the current library specified for the job. The user text 'This class for all batch jobs from Dept 4836' describes the class. The attributes of this class provide a run priority of 60 and a time slice of 900 milliseconds. If the job has not finished running at the end of a time slice, it is eligible to be moved out of main storage until it is allocated another time slice. The defaults for the other parameters are assumed.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CRTCLS.ERROR.MESSAGES">Error messages</a> </h3>
<p><b><u>*ESCAPE Messages</u></b>
</p>
<dl>
<dt><b>CPF1027</b></dt>
<dd>No authority to library &amp;1.
</dd>
<dt><b>CPF1039</b></dt>
<dd>Class library &amp;1 not found.
</dd>
<dt><b>CPF1064</b></dt>
<dd>Class &amp;1 exists in library &amp;2.
</dd>
<dt><b>CPF1067</b></dt>
<dd>Cannot allocate library &amp;1.
</dd>
<dt><b>CPF9802</b></dt>
<dd>Not authorized to object &amp;2 in &amp;3.
</dd>
<dt><b>CPF9899</b></dt>
<dd>Error occurred during processing of command.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CRTCLS.Top_Of_Page">Top</a></td></tr>
</table>
</body>
</html>