<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.vmssoftware.com/index.php?action=history&amp;feed=atom&amp;title=%24CREPRC</id>
	<title>$CREPRC - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.vmssoftware.com/index.php?action=history&amp;feed=atom&amp;title=%24CREPRC"/>
	<link rel="alternate" type="text/html" href="https://wiki.vmssoftware.com/index.php?title=$CREPRC&amp;action=history"/>
	<updated>2026-04-30T18:01:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://wiki.vmssoftware.com/index.php?title=$CREPRC&amp;diff=1159&amp;oldid=prev</id>
		<title>Darya.zelenina: added a link to an example</title>
		<link rel="alternate" type="text/html" href="https://wiki.vmssoftware.com/index.php?title=$CREPRC&amp;diff=1159&amp;oldid=prev"/>
		<updated>2019-07-09T07:14:46Z</updated>

		<summary type="html">&lt;p&gt;added a link to an example&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 07:14, 9 July 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l306&quot;&gt;Line 306:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 306:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=See also=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=See also=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Template:SyservI}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Template:SyservI}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [http://www.eight-cubed.com/examples/framework.php?file=sys_creprc.c Example by James Duff]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:System Services]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:System Services]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Darya.zelenina</name></author>
	</entry>
	<entry>
		<id>https://wiki.vmssoftware.com/index.php?title=$CREPRC&amp;diff=830&amp;oldid=prev</id>
		<title>Darya.zelenina at 09:56, 8 June 2019</title>
		<link rel="alternate" type="text/html" href="https://wiki.vmssoftware.com/index.php?title=$CREPRC&amp;diff=830&amp;oldid=prev"/>
		<updated>2019-06-08T09:56:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:56, 8 June 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l306&quot;&gt;Line 306:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 306:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=See also=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=See also=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Template:SyservI}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Template:SyservI}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:System Services]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Darya.zelenina</name></author>
	</entry>
	<entry>
		<id>https://wiki.vmssoftware.com/index.php?title=$CREPRC&amp;diff=377&amp;oldid=prev</id>
		<title>Darya.zelenina: Created page with &quot;&#039;&#039;&#039;$CREPRC&#039;&#039;&#039; is a system service that is used to create a subprocess or detached process on the current node, or a deta...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.vmssoftware.com/index.php?title=$CREPRC&amp;diff=377&amp;oldid=prev"/>
		<updated>2019-03-21T16:04:56Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;#039;&amp;#039;&amp;#039;$CREPRC&amp;#039;&amp;#039;&amp;#039; is a &lt;a href=&quot;/System_Service&quot; title=&quot;System Service&quot;&gt;system service&lt;/a&gt; that is used to create a &lt;a href=&quot;/Subprocess&quot; title=&quot;Subprocess&quot;&gt;subprocess&lt;/a&gt; or &lt;a href=&quot;/Detached_Process&quot; title=&quot;Detached Process&quot;&gt;detached process&lt;/a&gt; on the current node, or a deta...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;$CREPRC&amp;#039;&amp;#039;&amp;#039; is a [[System Service|system service]] that is used to create a [[Subprocess|subprocess]] or [[Detached Process|detached process]] on the current node, or a detached process on another node on behalf of the calling process.&lt;br /&gt;
&lt;br /&gt;
=Format=&lt;br /&gt;
SYS$CREPRC [pidadr] ,[image] ,[input] ,[output] ,[error] ,[prvadr] ,[quota] ,[prcnam] ,[baspri] ,[uic] ,[mbxunt] ,[stsflg] ,[itmlst] ,[node] ,[home_rad]&lt;br /&gt;
&lt;br /&gt;
==pidadr==&lt;br /&gt;
&lt;br /&gt;
The address of a longword into which $CREPRC writes the [[PID]] of the newly created process.&lt;br /&gt;
&lt;br /&gt;
==image==&lt;br /&gt;
&lt;br /&gt;
The address of a character string descriptor pointing to the file specification of the image to be activated in the newly created proces.&lt;br /&gt;
&lt;br /&gt;
The image name can have a maximum of 63 characters. If the image name contains a logical name, the logical name is translated in the created process and must therefore be in a logical name table that it can access.&lt;br /&gt;
&lt;br /&gt;
To create a process that will run under the control of a command language interpreter (CLI), specify SYS$SYSTEM:LOGINOUT.EXE as the image name.&lt;br /&gt;
&lt;br /&gt;
==input==&lt;br /&gt;
&lt;br /&gt;
Equivalence name to be associated with the logical name SYS$INPUT in the logical name table of the created process. The input argument is the address of a character string descriptor pointing to the equivalence name string.&lt;br /&gt;
&lt;br /&gt;
==output==&lt;br /&gt;
&lt;br /&gt;
Equivalence name to be associated with the logical name SYS$OUTPUT in the logical name table of the created process. The output argument is the address of a character string descriptor pointing to the equivalence name string.&lt;br /&gt;
&lt;br /&gt;
==error==&lt;br /&gt;
&lt;br /&gt;
Equivalence name to be associated with the logical name SYS$ERROR in the logical name table of the created process. The error argument is the address of a character string descriptor pointing to the equivalence name string.&lt;br /&gt;
Note that the error argument is ignored if the image argument specifies SYS$SYSTEM:LOGINOUT.EXE; in this case, SYS$ERROR has the same equivalence name as SYS$OUTPUT.&lt;br /&gt;
&lt;br /&gt;
==prvadr==&lt;br /&gt;
&lt;br /&gt;
Privileges to be given to the created process. The prvadr argument is the address of a quadword bit mask wherein each bit corresponds to a privilege; setting a bit gives the privilege. If the prvadr argument is not specified, the current privileges are used.&lt;br /&gt;
&lt;br /&gt;
Each bit has a symbolic name; the $PRVDEF macro defines these names. You form the bit mask by specifying the symbolic name of each desired privilege in a logical OR operation.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;#039;col&amp;#039; | Privilege&lt;br /&gt;
! colspan=&amp;#039;col&amp;#039; | Symbolic Name&lt;br /&gt;
! colspan=&amp;#039;col&amp;#039; | Description&lt;br /&gt;
|-&lt;br /&gt;
| [[ACNT]]&lt;br /&gt;
| PRV$M_ACNT&lt;br /&gt;
| Create processes for which no accounting is done&lt;br /&gt;
|-&lt;br /&gt;
| [[ALLSPOOL]]&lt;br /&gt;
| PRV$M_ALLSPOOL&lt;br /&gt;
| Allocate a spooled device&lt;br /&gt;
|-&lt;br /&gt;
| [[ALTPRI]]&lt;br /&gt;
| PRV$M_ALTPRI&lt;br /&gt;
| Set (alter) any process privilege&lt;br /&gt;
|-&lt;br /&gt;
| [[AUDIT]]&lt;br /&gt;
| PRV$M_AUDIT&lt;br /&gt;
| Generate audit records&lt;br /&gt;
|-&lt;br /&gt;
| [[BUGCHK]]&lt;br /&gt;
| PRV$M_BUGCHK&lt;br /&gt;
| Make bugcheck error log entries&lt;br /&gt;
|-&lt;br /&gt;
| [[BYPASS]]&lt;br /&gt;
| PRV$M-BYPASS&lt;br /&gt;
| Bypass [[UIC Protection|UIC-based protection]]&lt;br /&gt;
|-&lt;br /&gt;
| [[CMEXEC]]&lt;br /&gt;
| PRV$M_CMEXEC&lt;br /&gt;
| Change mode to executive&lt;br /&gt;
|-&lt;br /&gt;
| [[CMKRNL]]&lt;br /&gt;
| PRV$M_CMKRNL&lt;br /&gt;
| Change mode to kernel&lt;br /&gt;
|-&lt;br /&gt;
| [[DIAGNOSE]]&lt;br /&gt;
| PRV$M_DIAGNOSE&lt;br /&gt;
| Can diagnose devices&lt;br /&gt;
|-&lt;br /&gt;
| [[DOWNGRADE]]&lt;br /&gt;
| PRV$M_DOWNGRADE&lt;br /&gt;
| Can downgrade classification&lt;br /&gt;
|-&lt;br /&gt;
| [[EXQUOTA]]&lt;br /&gt;
| PRV$M_EXQUOTA&lt;br /&gt;
| Can exceed quotas&lt;br /&gt;
|-&lt;br /&gt;
| [[GROUP Privilege|GROUP]]&lt;br /&gt;
| PRV$M_GROUP&lt;br /&gt;
| Group process control&lt;br /&gt;
|-&lt;br /&gt;
| [[GRPNAM]]&lt;br /&gt;
| PRV$M_GRPNAM&lt;br /&gt;
| Place name in a group logical name table&lt;br /&gt;
|-&lt;br /&gt;
| [[GRPPRV]]&lt;br /&gt;
| PRV$M_GRPPRV&lt;br /&gt;
| Group access via system protection field&lt;br /&gt;
|-&lt;br /&gt;
| [[IMPERSONATE]]&lt;br /&gt;
| PRV$M_IMPERSONATE&lt;br /&gt;
| Can create detached processes under another UIC&lt;br /&gt;
|-&lt;br /&gt;
| [[IMPORT]]&lt;br /&gt;
| PRV$M_IMPORT&lt;br /&gt;
| Mount a nonlabeled tape volume&lt;br /&gt;
|-&lt;br /&gt;
| [[LOG_IO]]&lt;br /&gt;
| PRV$M_LOG_IO&lt;br /&gt;
| Perform logical I/O operations&lt;br /&gt;
|-&lt;br /&gt;
| [[MOUNT Privilege|MOUNT]]&lt;br /&gt;
| PRV$M_MOUNT&lt;br /&gt;
| Issue mount volume QIO&lt;br /&gt;
|-&lt;br /&gt;
| [[NETMBX]]&lt;br /&gt;
| PRV$M_NETMBX&lt;br /&gt;
| Create a network device&lt;br /&gt;
|-&lt;br /&gt;
| [[OPER]]&lt;br /&gt;
| PRV$M_OPER&lt;br /&gt;
| All operator privileges&lt;br /&gt;
|-&lt;br /&gt;
| [[PFNMAP]]&lt;br /&gt;
| PRV$M_PFNMAP&lt;br /&gt;
| Map to section by physical page frame number&lt;br /&gt;
|-&lt;br /&gt;
| [[PHY_IO]]&lt;br /&gt;
| PRV$M_PHY_IO&lt;br /&gt;
| Perform physical I/O operations&lt;br /&gt;
|-&lt;br /&gt;
| [[PRMCEB]]&lt;br /&gt;
| PRV$M_PRMCEB&lt;br /&gt;
| Create permanent common event flag clusters&lt;br /&gt;
|-&lt;br /&gt;
| [[PRMGBL]]&lt;br /&gt;
| PRV$M_PRMGBL&lt;br /&gt;
| Create permanent global sections&lt;br /&gt;
|-&lt;br /&gt;
| [[PRMMBX]]&lt;br /&gt;
| PRV$M_PRMMBX&lt;br /&gt;
| Create permanent [[Mailbox|mailboxes]]&lt;br /&gt;
|-&lt;br /&gt;
| [[PSWAPM]]&lt;br /&gt;
| PRV$M_PSWAPM&lt;br /&gt;
| Change process swap mode&lt;br /&gt;
|-&lt;br /&gt;
| [[READAL]]&lt;br /&gt;
| PRV$M_READALL&lt;br /&gt;
| Posess read access to everything&lt;br /&gt;
|-&lt;br /&gt;
| [[SECURITY]]&lt;br /&gt;
| PRV$M_SECURITY&lt;br /&gt;
| Can perform security functions&lt;br /&gt;
|-&lt;br /&gt;
| [[SETPRV]]&lt;br /&gt;
| PRV$M_SETPRV&lt;br /&gt;
| Set any process privilege&lt;br /&gt;
|-&lt;br /&gt;
| [[SHARE]]&lt;br /&gt;
| PRV$M_SHARE&lt;br /&gt;
| Can assign a channel to a nonshared device&lt;br /&gt;
|-&lt;br /&gt;
| [[SYSGBL]]&lt;br /&gt;
| PRV$M_SYSGBL&lt;br /&gt;
| Can create system global sections&lt;br /&gt;
|-&lt;br /&gt;
| SYSLCK&lt;br /&gt;
| PRV$M_SYSLCK&lt;br /&gt;
| Queue systemwide locks&lt;br /&gt;
|-&lt;br /&gt;
| [[SYSNAM]]&lt;br /&gt;
| PRV$M_SYSNAM&lt;br /&gt;
| Place name in system [[Logical Name|logical name]] table&lt;br /&gt;
|-&lt;br /&gt;
| [[SYSPRV]]&lt;br /&gt;
| PRV$M_SYSPRV&lt;br /&gt;
| Access files and other resources as if you have a system [[UIC]]&lt;br /&gt;
|-&lt;br /&gt;
| [[TMPMBX]]&lt;br /&gt;
| PRV$M_TMPMBX&lt;br /&gt;
| Create temporary [[Mailbox|mailboxes]]&lt;br /&gt;
|-&lt;br /&gt;
| [[UPGRADE]]&lt;br /&gt;
| PRV$M_UPGRADE&lt;br /&gt;
| Can upgrade classification&lt;br /&gt;
|-&lt;br /&gt;
| [[VOLPRO]]&lt;br /&gt;
| PRV$M_VOLPRO&lt;br /&gt;
| Override volume protection&lt;br /&gt;
|-&lt;br /&gt;
| [[WORLD]]&lt;br /&gt;
| PRV$M_WORLD&lt;br /&gt;
| World process control&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
You need the user privilege SETPRV to grant a process any privileges other than your own. If the caller does not have this privilege, the mask is minimized with the current privileges of the creating process; any privileges the creating process does not have are not granted, but no error status code is returned.&lt;br /&gt;
&lt;br /&gt;
==quota==&lt;br /&gt;
&lt;br /&gt;
Process quotas to be established for the created process. These quotas limit the created process&amp;#039;s use of system resources. The quota argument is the address of a list of quota descriptors, where each quota descriptor consists of a 1-byte quota name followed by a longword that specifies the desired value for that quota. The list of quota descriptors is terminated by the symbolic name PQL$_LISTEND.&lt;br /&gt;
If you do not specify the quota argument or specify it as 0, the operating system supplies a default value for each quota.&lt;br /&gt;
&lt;br /&gt;
Example in C:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
#include &amp;lt;pqldef.h&amp;gt; &lt;br /&gt;
... &lt;br /&gt;
#pragma member_alignment save &lt;br /&gt;
#pragma nomember_alignment &lt;br /&gt;
typedef struct &lt;br /&gt;
  { &lt;br /&gt;
  char Quota; &lt;br /&gt;
  int Value; &lt;br /&gt;
  } QUOTA_ENTRY_T; &lt;br /&gt;
#pragma member_alignment restore &lt;br /&gt;
... &lt;br /&gt;
  QUOTA_ENTRY_T QuotaArray[] = &lt;br /&gt;
    {{PQL$_PRCLM, 2}, {PQL$_ASTLM, 6}, {PQL$_LISTEND, 0}};&lt;br /&gt;
 &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The description of each quota lists its minimum value (a system parameter), its default value (a system parameter), and whether it is deductible, nondeductible, or pooled. These terms have the following meanings:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| Minimum value&lt;br /&gt;
| A process cannot be created with a quota less than this minimum. Any quota value you specify is maximized against this minimum. You obtain the minimum value for a quota by running [[SYSGEN]] to display the corresponding [[System Parameters|system parameter]].&lt;br /&gt;
|-&lt;br /&gt;
| Default value&lt;br /&gt;
| If the quota list does not specify a value for a particular quota, the system assigns the process this default value. You obtain the default value by running SYSGEN to display the corresponding system parameter.&lt;br /&gt;
|-&lt;br /&gt;
| Deductible quota&lt;br /&gt;
| When you create a [[Subprocess|subprocess]], the value for a deductible quota is subtracted from the creating process&amp;#039;s current quota and is returned to the creating process when the subprocess is deleted. There is currently only one deductible quota, the CPU time limit. Note that quotas are never deducted from the creating process when a detached process is created.&lt;br /&gt;
|-&lt;br /&gt;
| Nondeductible quota&lt;br /&gt;
| Nondeductible quotas are established and maintained separately for each process and subprocess.&lt;br /&gt;
|-&lt;br /&gt;
| Pooled quota&lt;br /&gt;
| Pooled quotas are established when a detached process is created, and they are shared by that process and all its descendent subprocesses. Charges against pooled quota values are subtracted from the current available totals as they are used and are added back to the total when they are not being used.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==prcnam==&lt;br /&gt;
&lt;br /&gt;
Process name to be assigned to the created process. The &amp;#039;&amp;#039;&amp;#039;prcnam&amp;#039;&amp;#039;&amp;#039; argument is the address of a character string descriptor pointing to a process name string.&lt;br /&gt;
If a subprocess is being created, the process name is implicitly qualified by the UIC group number of the creating process. If a detached process is being created, the process name is qualified by the group number specified in the uic argument.&lt;br /&gt;
&lt;br /&gt;
==baspri==&lt;br /&gt;
&lt;br /&gt;
Base priority to be assigned to the created process. The baspri argument is a longword value. The OpenVMS Alpha and Integrity servers range is 0 to 63, with real-time priorities in the range 32 to 63.&lt;br /&gt;
&lt;br /&gt;
If you want a created process to have a higher priority than its creating process, you must have [[ALTPRI]] privilege to raise the priority level. If the caller does not have this privilege, the specified base priority is compared with the caller&amp;#039;s priority and the lower of the two values is used.&lt;br /&gt;
&lt;br /&gt;
A process with [[ALTPRI]] privilege running on a VAX node can create a process with a priority greater than 31 on an Alpha or Integrity servers node.&lt;br /&gt;
&lt;br /&gt;
If the baspri argument is not specified, the priority defaults to 2 for VAX MACRO, VAX BLISS--32, and Pascal; it defaults to 0 for all other languages.&lt;br /&gt;
&lt;br /&gt;
==uic==&lt;br /&gt;
&lt;br /&gt;
[[UIC|User identification code (UIC)]] to be assigned to the created process. The uic argument is a longword value containing the UIC.&lt;br /&gt;
If you do not specify the uic argument or specify it as 0 (the default), $CREPRC creates a process and assigns it the UIC of the creating process.&lt;br /&gt;
&lt;br /&gt;
If you specify a nonzero value for the uic argument, $CREPRC creates a detached process. This value is interpreted as a 32-bit octal number, with two 16-bit fields:&lt;br /&gt;
&lt;br /&gt;
bits 0--15---member number &lt;br /&gt;
bits 16--31---group number&lt;br /&gt;
You need [[IMPERSONATE]] or [[CMKRNL]] privilege to create a detached process with a UIC that is different from the UIC of the creating process.&lt;br /&gt;
&lt;br /&gt;
If the image argument specifies the [[SYS$SYSTEM:LOGINOUT.EXE]], the UIC of the created process will be the UIC of the caller of $CREPRC, and the UIC parameter is ignored.&lt;br /&gt;
&lt;br /&gt;
==mbxunt==&lt;br /&gt;
&lt;br /&gt;
Unit number of a [[Mailbox|mailbox]] to receive a termination message when the created process is deleted. The mbxunt argument is a word containing this number.&lt;br /&gt;
If you do not specify the mbxunt argument or specify it as 0 (the default), the operating system sends no termination message when it deletes the process.&lt;br /&gt;
&lt;br /&gt;
The Get Device/Volume Information ($GETDVI) service can be used to obtain the unit number of the mailbox.&lt;br /&gt;
&lt;br /&gt;
If you specify the mbxunt argument, the mailbox is used when the created process actually terminates. At that time, the $ASSIGN service is issued for the mailbox in the context of the terminating process and an accounting message is sent to the mailbox. If the mailbox no longer exists, cannot be assigned, or is full, the error is treated as if no mailbox had been specified.&lt;br /&gt;
&lt;br /&gt;
If you specify this argument when you create a process on another node, an accounting message will be written to the mailbox when the process terminates. If the node is removed from the cluster before the created process terminates, an accounting message will be simulated. The simulated message will contain the created process&amp;#039;s PID and name and a final status of SS$_NODELEAVE, but will lack execution statistics.&lt;br /&gt;
&lt;br /&gt;
Note that two processes on different nodes cannot use the termination mailbox for general interprocess communication.&lt;br /&gt;
&lt;br /&gt;
The accounting message is sent before process rundown is initiated but after the process name has been set to null. Thus, a significant interval of time can occur between the sending of the accounting message and the final deletion of the process.&lt;br /&gt;
&lt;br /&gt;
To receive the accounting message, the caller must issue a read to the mailbox. When the I/O completes, the second longword of the I/O status block, if one is specified, contains the process identification of the deleted process.&lt;br /&gt;
&lt;br /&gt;
The $ACCDEF macro defines symbolic names for offsets of fields within the accounting message. The offsets, their symbolic names, and the contents of each field are shown in the following table. Unless stated otherwise, the length of the field is 4 bytes.&lt;br /&gt;
&lt;br /&gt;
==stsflg==&lt;br /&gt;
&lt;br /&gt;
Options selected for the created process. The stsflg argument is a longword bit vector wherein a bit corresponds to an option. Only bits 0 to 22 are used; the others are reserved and must be 0.&lt;br /&gt;
Each option (bit) has a symbolic name, which the $PRCDEF macro defines. &lt;br /&gt;
&lt;br /&gt;
==itmlst==&lt;br /&gt;
&lt;br /&gt;
Reserved by VSI.&lt;br /&gt;
&lt;br /&gt;
==node==&lt;br /&gt;
&lt;br /&gt;
Name of the OpenVMS Cluster node on which the process is to be created. The node argument is the address of a character string descriptor pointing to a 1- to 6-character SCS node name string. If the argument is present but zero or if the string is zero length, the process is created on the current node.&lt;br /&gt;
&lt;br /&gt;
==home_rad==&lt;br /&gt;
&lt;br /&gt;
Sets the home resource affinity domain (RAD) of a process.&lt;br /&gt;
The home RAD is determined by the operating system, unless you explicitly request one. If bit PRC$M_HOME_RAD in the stsflg is set, home_rad is the RAD on which the process is to start. Note that you may set this bit to 0 on non-RAD systems.&lt;br /&gt;
&lt;br /&gt;
RAD is supported on AlphaServer GS series systems and starting from OpenVMS Version 8.4, support is extended to NUMA capable Integrity servers. &lt;br /&gt;
&lt;br /&gt;
=See also=&lt;br /&gt;
* {{Template:SyservI}}&lt;/div&gt;</summary>
		<author><name>Darya.zelenina</name></author>
	</entry>
</feed>