Lines Matching +full:user +full:- +full:defined

9 priocntl \- process scheduler control
30 time-sharing class, the fair-share class, and the fixed-priority class. The
168 The \fIid\fR argument is a user ID. The \fBpriocntl()\fR function applies to
169 all LWPs with this effective user ID.
196 session ID, task ID, class ID, user ID, group ID, project ID, zone ID, or
201 \fBPC_SETXPARMS\fR command as explained below), the real or effective user ID
206 class-specific scheduling parameters.
214 \fBP_UID\fR and an \fIid\fR value of 0 would specify all processes with a user
223 the time-sharing class is almost always the appropriate choice. (Other choices
232 A \fBpcinfo_t\fR structure with the following members, defined in
250 The \fIpc_clname\fR member is a buffer of size \fBPC_CLNMSZ\fR, defined in
252 \fBTS\fR for time-sharing, \fBIA\fR for interactive, \fBFSS\fR for fair-share,
253 or \fBFX\fR for fixed-priority. Each string is null-terminated.
256 The \fIpc_clinfo\fR member is a buffer of size \fBPC_CLINFOSZ\fR, defined in
258 specific class. The format of this data is class-specific and is described
259 under the appropriate heading (\fBREALTIME CLASS\fR, \fBTIME-SHARING CLASS\fR,
260 \fBINTERACTIVE CLASS\fR, \fBFAIR-SHARE CLASS\fR, or \fBFIXED-PRIORITY CLASS\fR)
264 A \fBpcparms_t\fR structure with the following members, defined in
271 int pc_clparms[PC_CLPARMSZ]; /* Class-specific params */
283 The \fIpc_clparms\fR buffer holds class-specific scheduling parameters. The
286 \fIpc_clparms\fR buffer and is defined in \fB<sys/priocntl.h>\fR.
291 command code is a class name: \fBRT\fR for realtime, \fBTS\fR for time-sharing,
292 \fBIA\fR for interactive, \fBFSS\fR for fair-share, or \fBFX\fR for
293 fixed-priority. The parameters after the class name build a chain of (key,
304 and \fBPC_GETPARMS\fR on a long-term basis.
352 The \fIidtype\fR and \fIid\fR arguments are ignored. If \fIarg\fR is non-null,
362 a given class is defined in the \fB<sys/rtpriocntl.h>\fR,
378 \fIidtype\fR and \fIid\fR arguments are ignored. If \fIarg\fR is non-null, it
386 class is defined in the \fB<sys/rtpriocntl.h>\fR, \fB<sys/tspriocntl.h>\fR,
401 Get the class and/or class-specific scheduling parameters of an LWP. The
415 for selecting an LWP to return in this case is class-dependent. If none of the
430 Get the class or class-specific scheduling parameters of an LWP. The class name
432 value) pair sequence contains a pointer to the class-specific parameters. The
433 keys and the types of the class-specific parameter data are described below
434 and can also be found in the class-specific headers \fB<sys/rtpriocntl.h>\fR,
447 class-dependent. If none of the specified LWPs exist or none of them belong to
471 Set the class and class-specific scheduling parameters of the specified LWP(s)
473 \fIidtype\fR of P_LWPID, it will set the class and class-specific scheduling
476 and the \fIpc_clparms\fR buffer contains the class-specific parameters you are
477 setting. The format of the class-specific parameter data is defined in the
483 the set in an implementation-specific order. If \fBpriocntl()\fR encounters an
501 Set the class and class-specific scheduling parameters of the specified LWP(s)
503 \fBP_LWPID\fR as \fIidtype\fR, it will set the class and class-specific
506 value) pair sequence contains the class-specific parameters to be changed. Only
508 specified. The keys and the types of the class-specific parameter data are
509 described below and can also be found in the class-specific header files
514 the set in an implementation-specific order. If \fBpriocntl()\fR encounters an
528 user/application control of scheduling priorities. If the realtime class is
543 request by the user/application to change the \fIrt_pri\fR value of the LWP.
593 A \fBrtinfo_t\fR structure with the following members, defined in
614 A \fBrtparms_t\fR structure with the following members, defined in
616 class-specific scheduling parameters of an LWP.
620 short rt_pri; /* Real-Time priority */
644 defined in \fB<sys/rtpriocntl.h>\fR. Specifying \fBRT_NOCHANGE\fR when changing
654 priority, the one returned is implementation-dependent.
662 (decimal) would result in a time quantum of two and one-half seconds.
668 implementation-specific and equal to \fBINT_MAX\fR ticks. The \fBINT_MAX\fR
669 value is defined in \fB<limits.h>\fR. Requesting a quantum greater than this
678 values defined in \fB<sys/rtpriocntl.h>\fR, in which case the value of
760 quantum that can be specified is implementation-specific and equal to
761 \fBINT_MAX\fR ticks, defined in \fB<limits.h>\fR. Requesting a quantum greater
778 LWP whose real or effective user ID matches the real of effective user ID of
784 user-defined signal handler across the \fBexec\fR functions, the new image must
785 install an appropriate user-defined signal handler before the time quantum
787 .SH TIME-SHARING CLASS
788 The time-sharing scheduling policy provides for a fair and effective allocation
790 The objectives of the time-sharing policy are to provide good response time to
791 interactive LWPs and good throughput to CPU-bound jobs, while providing a
792 degree of user/application control over scheduling.
795 The time-sharing class has a range of time-sharing user priority (see
797 \fIts_upri\fR value of 0 is defined as the default base priority for the
798 time-sharing class. User priorities range from \(mi\fIx\fR to +\fIx\fR where
804 The purpose of the user priority is to provide some degree of user/application
805 control over the scheduling of LWPs in the time-sharing class. Raising or
806 lowering the \fIts_upri\fR value of an LWP in the time-sharing class raises or
810 determine the scheduling priority of a time-sharing LWP. The system can
811 dynamically adjust the internal scheduling priority of a time-sharing LWP based
815 In addition to the system-wide limits on user priority (returned by the
816 \fBPC_GETCID\fR and \fBPC_GETCLINFO\fR commands) there is a per LWP user
822 A \fBtsinfo_t\fR structure with the following members, defined in
824 the time-sharing class.
828 short ts_maxupri; /* Limits of user priority range */
835 time-sharing class attributes in the \fBpc_clinfo\fR buffer in this format.
838 The \fBts_maxupri\fR member specifies the configured maximum user priority
839 value for the time-sharing class. If \fBts_maxupri\fR is \fIx\fR, the valid
840 range for both user priorities and user priority limits is from \(mi\fIx\fR to
844 A \fBtsparms_t\fR structure with the following members, defined in
845 \fB<sys/tspriocntl.h>\fR, defines the format used to specify the time-sharing
846 class-specific scheduling parameters of an LWP.
850 short ts_uprilim; /* Time-Sharing user priority limit */
851 short ts_upri; /* Time-Sharing user priority */
858 commands, if \fBpc_cid\fR specifies the time-sharing class, the data in the
863 the time-sharing class and more than one time-sharing LWP is specified, the
864 scheduling parameters of the time-sharing LWP with the highest \fIts_upri\fR
867 the highest user priority, the one returned is implementation-dependent.
870 Any time-sharing LWP can lower its own \fIts_uprilim\fR (or that of another LWP
871 with the same user ID). Only a time-sharing LWP with sufficient privileges can
872 raise a \fIts_uprilim\fR. When changing the class of an LWP to time-sharing
879 Any time-sharing LWP can set its own \fIts_upri\fR (or that of another LWP with
880 the same user ID) to any value less than or equal to the LWP's
887 special value \fBTS_NOCHANGE\fR, defined in \fB<sys/tspriocntl.h>\fR, to set
892 changing the class of an LWP to time-sharing (from some other class) causes the
900 time-sharing class (\fBTS\fR). The next arguments are formed as (key, value)
902 time-sharing class can be found in \fB<sys/tspriocntl.h>\fR. A repeated
914 \fBTS_KY_UPRILIM\fR \fBpri_t\fR user priority limit
915 \fBTS_KY_UPRI\fR \fBpri_t\fR user priority
928 and without a following (key, value) pair will set or reset all time-sharing
930 Changing the class of an LWP to time-sharing from some other class causes the
931 parameters to be set to their default values. The default value for the user
932 priority limit (\fBTS_KY_UPRILIM\fR) is \fB0\fR. The default value for the user
933 priority (\fBTS_KY_UPRI\fR) is equal to the user priority limit
941 The time-sharing user priority and user priority limit are inherited across
944 The interactive scheduling policy is a variation on the time-sharing scheduling
945 policy. All that can be said about the time-sharing scheduling policy is also
948 has its time-sharing priority boosted by \fBIA_BOOST\fR (10).
951 An \fBiainfo_t\fR structure with the following members, defined in
957 short ia_maxupri; /* Limits of user priority range */
967 The \fIia_maxupri\fR member specifies the configured maximum user priority
969 range for both user priorities and user priority limits is from -x to +x.
972 A \fBiaparms_t\fR structure with the following members, defined in
974 class-specific scheduling parameters of an LWP.
978 short ia_uprilim; /* Interactive user priority limit */
979 short ia_upri; /* Interactive user priority */
996 the highest user priority, the one returned is implementation-dependent.
999 All that is said above in the TIME-SHARING CLASS section concerning
1006 \fBIA_NOCHANGE\fR, defined in \fB<sys/iapriocntl.h>\fR, to set the interactive
1023 \fBIA_KY_UPRILIM\fR \fBpri_t\fR user priority limit
1024 \fBIA_KY_UPRI\fR \fBpri_t\fR user priority
1041 parameters to be set to their default values. The default value for the user
1042 priority limit (\fBIA_KY_UPRILIM\fR) is 0. The default value for the user
1043 priority (\fBIA_KY_UPRI\fR) is equal to the user priority limit
1052 The interactive user priority and user priority limit are inherited across fork
1054 .SH FAIR-SHARE CLASS
1055 The fair-share scheduling policy provides a fair allocation of CPU resources
1061 The fair share class supports the notion of per-LWP user priority (see
1062 \fBfss_upri\fR below) values for compatibility with the time-sharing scheduling
1063 class. An \fIfss_upri\fR value of 0 is defined as the default base priority for
1064 the fair-share class. User priorities range from -\fIx\fR to +\fIx\fR where the
1070 The purpose of the user priority is to provide some degree of user/application
1071 control over the scheduling of LWPs in the fair-share class. Raising the
1072 \fBfss_upri\fR value of an LWP in the fair-share class tells the scheduler to
1077 factor used to determine the scheduling priority of a fair-share LWP. The
1078 system can dynamically adjust the internal scheduling priority of a fair-share
1079 LWP based on other factors such as recent CPU usage. The fair-share scheduler
1080 attempts to provide an evenly graded effect across the whole range of user
1084 User priority values do not interfere with project shares. That is, changing a
1085 user priority value of a process does not have any effect on its project CPU
1090 In addition to the system-wide limits on user priority (returned by the
1091 \fBPC_GETCID\fR and \fBPC_GETCLINFO\fR commands), there is a per-LWP user
1097 A \fBfssinfo_t\fR structure with the following members, defined in
1099 the fair-share class.
1103 short fss_maxupri; /* Limits of user priority range */
1110 fair-share class attributes in the \fIpc_clinfo\fR buffer in this format.
1113 \fIfss_maxupri\fR specifies the configured maximum user priority value for the
1114 fair-share class. If \fBfss_maxupri\fR is \fIx\fR, the valid range for both
1115 user priorities and user priority limits is from -\fIx\fR to +\fIx\fR.
1118 A \fBfssparms_t\fR structure with the following members, defined in
1119 \fB<sys/fsspriocntl.h>\fR, defines the format used to specify the fair-share
1120 class-specific scheduling parameters of an LWP.
1124 short fss_uprilim; /* Fair-share user priority limit */
1125 short fss_upri; /* Fair-share user priority */
1132 commands, if \fIpc_cid\fR specifies the fair-share class, the data in the
1137 the fair-share class and more than one fair-share LWP is specified, the
1138 scheduling parameters of the fair-share LWP with the highest \fIfss_upri\fR
1141 the highest user priority, the one returned is implementation-dependent.
1144 Any fair-share LWP can lower its own \fIfss_uprilim\fR (or that of another LWP
1145 with the same user ID). Only a fair-share LWP with sufficient privileges can
1146 raise an \fIfss_uprilim\fR. When changing the class of an LWP to fair-share
1150 \fIfss_uprilim\fR greater than 0 fail with a return value of -1 and \fBerrno\fR
1154 Any fair-share LWP can set its own \fIfss_upri\fR (or that of another LWP with
1155 the same user ID) to any value less than or equal to the LWP's
1162 special value \fBFSS_NOCHANGE\fR (defined in \fB<sys/fsspriocntl.h>\fR) to set
1167 changing the class of an LWP to fair-share (from some other class) causes the
1173 The fair-share user priority and user priority limit are inherited across
1175 .SH FIXED-PRIORITY CLASS
1176 The fixed-priority class provides a fixed-priority preemptive scheduling policy
1178 adjusted by the system and that the user/application have control of the
1182 The fixed-priority class has a range of fixed-priority user priority (see
1184 \fIfx_upri\fR value of 0 is defined as the default base priority for the
1185 fixed-priority class. User priorities range from 0 to \fIx\fR where the value
1190 The purpose of the user priority is to provide user/application control over
1191 the scheduling of processes in the fixed-priority class. For processes in the
1192 fixed-priority class, the \fIfx_upri\fR value is, for all practical purposes,
1194 completely determines the scheduling priority of a fixed-priority process
1199 In addition to the system-wide limits on user priority (returned by the
1200 \fBPC_GETCID\fR and \fBPC_GETCLINFO\fR commands), there is a per-LWP user
1206 A structure with the following member (defined in \fB<sys/fxpriocntl.h>\fR)
1207 defines the format used for the attribute data for the fixed-priority class.
1211 pri_t fx_maxupri; /* Maximum user priority */
1218 fixed-priority class attributes in the \fIpc_clinfo\fR buffer in this format.
1221 The \fIfx_maxupri\fR member specifies the configured maximum user priority
1222 value for the fixed-priority class. If \fIfx_maxupri\fR is \fIx\fR, the valid
1223 range for both user priorities and user priority limits is from 0 to \fIx\fR.
1226 A structure with the following members (defined in \fB<sys/fxpriocntl.h>\fR)
1227 defines the format used to specify the fixed-priority class-specific scheduling
1232 pri_t fx_upri; /* Fixed-priority user priority */
1233 pri_t fx_uprilim; /* Fixed-priority user priority limit */
1242 commands, if \fIpc_cid\fR specifies the fixed-priority class, the data in the
1247 the fixed-priority class and more than one fixed-priority LWP is specified, the
1248 scheduling parameters of the fixed-priority LWP with the highest \fIfx_upri\fR
1251 the highest user priority, the one returned is implementation-dependent.
1254 Any fixed-priority LWP can lower its own \fIfx_uprilim\fR (or that of another
1255 LWP with the same user ID). Only a fixed-priority LWP with sufficient
1257 fixed-priority from some other class, sufficient privileges are required to set
1260 greater than 0 fail with a return value of -1 and errno set to \fBEPERM\fR.
1263 Any fixed-priority LWP can set its own \fIfx_upri\fR (or that of another LWP
1264 with the same user ID) to any value less than or equal to the LWP's
1271 special value \fBFX_NOCHANGE\fR (defined in \fB<sys/fxpriocntl.h>\fR) to set
1276 changing the class of an LWP to fixed-priority (from some other class) causes
1289 (decimal) would result in a time quantum of two and one-half seconds.
1295 implementation-specific and equal to \fBINT_MAX\fR ticks (defined in
1304 values (defined in \fB<sys/fxpriocntl.h>\fR), in which case the value of
1330 Do not set the time quantum. This value is useful in changing the user priority
1332 changing the class of an LWP to fixed-priority from some other class is
1340 the fixed-priority class (FX). The next arguments are formed as (key, value)
1341 pairs, terminated by a 0 key. The definition for the keys of the fixed-priority
1353 \fBFX_KY_UPRILIM\fR \fBpri_t\fR user priority limit
1354 \fBFX_KY_UPRI\fR \fBpri_t\fR user priority
1373 class of an LWP to fixed-priority from some other class causes the parameters
1374 to be set to their default values. The default value for the user priority
1375 limit (\fBFX_KY_UPRILIM\fR) is 0. The default value for the user priority
1376 (\fBFX_KY_UPRI\fR) is equal to the user priority limit (\fBFX_KY_UPRILIM\fR)
1387 quantum that can be specified is implementation-specific and equal to
1388 \fBINT_MAX\fR ticks, defined in \fB<limits.h>\fR. Requesting a quantum greater
1400 The fixed-priority user priority and user priority limit are inherited across
1415 resources other than memory (for example, class-specific kernel data