1 PRIOCNTL(1) User Commands PRIOCNTL(1) 2 3 4 5 NAME 6 priocntl - display or set scheduling parameters of specified 7 process(es) 8 9 SYNOPSIS 10 priocntl -l 11 12 13 priocntl -d [-i idtype] [idlist] 14 15 16 priocntl -s [-c class] [class-specific options] 17 [-i idtype] [idlist] 18 19 20 priocntl -e [-c class] [class-specific options] command 21 [argument(s)] 22 23 24 DESCRIPTION 25 The priocntl command displays or sets scheduling parameters of the 26 specified process(es). It can also be used to display the current 27 configuration information for the system's process scheduler or execute 28 a command with specified scheduling parameters. 29 30 31 Processes fall into distinct classes with a separate scheduling policy 32 applied to each class. The process classes currently supported are the 33 real-time class, time-sharing class, interactive class, fair-share 34 class, and the fixed priority class. The characteristics of these 35 classes and the class-specific options they accept are described below 36 in the USAGE section under the headings Real-Time Class, Time-Sharing 37 Class, Inter-Active Class, Fair-Share Class, and Fixed-Priority Class. 38 With appropriate permissions, the priocntl command can change the class 39 and other scheduling parameters associated with a running process. 40 41 42 In the default configuration, a runnable real-time process runs before 43 any other process. Therefore, inappropriate use of real-time processes 44 can have a dramatic negative impact on system performance. 45 46 47 If an idlist is present, it must appear last on the command line and 48 the elements of the list must be separated by white space. If no idlist 49 is present, an idtype argument of pid, ppid, pgid, sid, taskid, class, 50 uid, gid, projid, or zoneid specifies the process ID, parent process 51 ID, process group ID, session ID, task ID, class, user ID, group ID, 52 project ID, or zone ID, respectively, of the priocntl command itself. 53 54 55 The command 56 57 priocntl -d [-i idtype] [idlist] 58 59 60 61 62 displays the class and class-specific scheduling parameters of the 63 process(es) specified by idtype and idlist. 64 65 66 The command 67 68 priocntl -s [-c class] [class-specific options] \ 69 [-i idtype] [idlist] 70 71 72 73 74 sets the class and class-specific parameters of the specified processes 75 to the values given on the command line. The -c class option specifies 76 the class to be set. (The valid class arguments are RT for real-time, 77 TS for time-sharing, IA for inter-active, FSS for fair-share, or FX for 78 fixed-priority.) 79 80 81 The class-specific parameters to be set are specified by the class- 82 specific options as explained under the appropriate heading below. If 83 the -c class option is omitted, idtype and idlist must specify a set of 84 processes which are all in the same class, otherwise an error results. 85 If no class-specific options are specified, the process's class- 86 specific parameters are set to the default values for the class 87 specified by -c class (or to the default parameter values for the 88 process's current class if the -c class option is also omitted). 89 90 91 In order to change the scheduling parameters of a process using 92 priocntl the real or effective user ID (respectively, groupID) of the 93 user invoking priocntl must match the real or effective user ID 94 (respectively, groupID) of the receiving process or the effective user 95 ID of the user must be super-user. These are the minimum permission 96 requirements enforced for all classes. An individual class can impose 97 additional permissions requirements when setting processes to that 98 class or when setting class-specific scheduling parameters. 99 100 101 When idtype and idlist specify a set of processes, priocntl acts on the 102 processes in the set in an implementation-specific order. If priocntl 103 encounters an error for one or more of the target processes, it can or 104 cannot continue through the set of processes, depending on the nature 105 of the error. 106 107 108 If the error is related to permissions, priocntl prints an error 109 message and then continues through the process set, resetting the 110 parameters for all target processes for which the user has appropriate 111 permissions. If priocntl encounters an error other than permissions, it 112 does not continue through the process set but prints an error message 113 and exits immediately. 114 115 116 A special sys scheduling class exists for the purpose of scheduling the 117 execution of certain special system processes (such as the swapper 118 process). It is not possible to change the class of any process to sys. 119 In addition, any processes in the sys class that are included in the 120 set of processes specified by idtype and idlist are disregarded by 121 priocntl. For example, if idtype were uid, an idlist consisting of a 122 zero would specify all processes with a UID of 0, except processes in 123 the sys class and (if changing the parameters using the -s option) the 124 init process. 125 126 127 The init process (process ID 1) is a special case. In order for the 128 priocntl command to change the class or other scheduling parameters of 129 the init process, idtype must be pid and idlist must be consist of only 130 a 1. The init process can be assigned to any class configured on the 131 system, but the time-sharing class is almost always the appropriate 132 choice. Other choices can be highly undesirable; see the System 133 Administration Guide: Basic Administration for more information. 134 135 136 The command 137 138 priocntl -e [-c class] [class-specific options] command \ 139 [argument...] 140 141 142 143 144 executes the specified command with the class and scheduling parameters 145 specified on the command line (arguments are the arguments to the 146 command). If the -c class option is omitted the command is run in the 147 user's current class. 148 149 OPTIONS 150 The following options are supported: 151 152 -c class 153 Specifies the class to be set. (The valid class arguments 154 are RT for real-time, TS for time-sharing, IA for inter- 155 active, FSS for fair-share, or FX for fixed-priority.) If 156 the specified class is not already configured, it is 157 automatically configured. 158 159 160 -d 161 Displays the scheduling parameters associated with a set 162 of processes. 163 164 165 -e 166 Executes a specified command with the class and scheduling 167 parameters associated with a set of processes. 168 169 170 -i idtype 171 This option, together with the idlist arguments (if any), 172 specifies one or more processes to which the priocntl 173 command is to apply. The interpretation of idlist depends 174 on the value of idtype. If the -i idtype option is omitted 175 when using the -d or -s options the default idtype of pid 176 is assumed. 177 178 The valid idtype arguments and corresponding 179 interpretations of idlist are as follows: 180 181 -i all 182 The priocntl command applies to all existing 183 processes. No idlist should be specified (if 184 one is specified, it is ignored). The 185 permission restrictions described below still 186 apply. 187 188 189 -i ctid 190 idlist is a list of process contract IDs. The 191 priocntl command applies to all processes 192 with a process contract ID equal to an ID 193 from the list. 194 195 196 -i class 197 idlist consists of a single class name (RT 198 for real-time, TS for time-sharing, IA for 199 inter-active, FSS for fair-share, or FX for 200 fixed-priority). The priocntl command applies 201 to all processes in the specified class. 202 203 204 -i gid 205 idlist is a list of group IDs. The priocntl 206 command applies to all processes with an 207 effective group ID equal to an ID from the 208 list. 209 210 211 -i pgid 212 idlist is a list of process group IDs. The 213 priocntl command applies to all processes in 214 the specified process groups. 215 216 217 -i pid 218 idlist is a list of process IDs. The priocntl 219 command applies to the specified processes. 220 221 222 -i ppid 223 idlist is a list of parent process IDs. The 224 priocntl command applies to all processes 225 whose parent process ID is in the list. 226 227 228 -i projid 229 idlist is a list of project IDs. The priocntl 230 command applies to all processes with an 231 effective project ID equal to an ID from the 232 list. 233 234 235 -i sid 236 idlist is a list of session IDs. The priocntl 237 command applies to all processes in the 238 specified sessions. 239 240 241 -i taskid 242 idlist is a list of task IDs. The priocntl 243 command applies to all processes in the 244 specified tasks. 245 246 247 -i uid 248 idlist is a list of user IDs. The priocntl 249 command applies to all processes with an 250 effective user ID equal to an ID from the 251 list. 252 253 254 -i zoneid 255 idlist is a list of zone IDs. The priocntl 256 command applies to all processes with an 257 effective zone ID equal to an ID from the 258 list. 259 260 261 262 -l 263 Displays a list of the classes currently configured in the 264 system along with class-specific information about each 265 class. The format of the class-specific information 266 displayed is described under USAGE. 267 268 269 -s 270 Sets the scheduling parameters associated with a set of 271 processes. 272 273 274 275 The valid class-specific options for setting real-time parameters are: 276 277 -p rtpri 278 Sets the real-time priority of the specified 279 process(es) to rtpri. 280 281 282 -t tqntm [-r res] 283 Sets the time quantum of the specified process(es) 284 to tqntm. You can optionally specify a resolution 285 as explained below. 286 287 288 -q tqsig 289 Sets the real-time time quantum signal of the 290 specified process(es) to tqsig. 291 292 293 294 The valid class-specific options for setting time-sharing parameters 295 are: 296 297 -m tsuprilim 298 Sets the user priority limit of the specified 299 process(es) to tsuprilim. 300 301 302 -p tsupri 303 Sets the user priority of the specified process(es) to 304 tsupri. 305 306 307 308 The valid class-specific options for setting inter-active parameters 309 are: 310 311 -m iauprilim 312 Sets the user priority limit of the specified 313 process(es) to iauprilim. 314 315 316 -p iaupri 317 Sets the user priority of the specified process(es) to 318 iaupri. 319 320 321 322 The valid class-specific options for setting fair-share parameters are: 323 324 -m fssuprilim 325 Sets the user priority limit of the specified 326 process(es) to fssuprilim. 327 328 329 -p fssupri 330 Sets the user priority of the specified process(es) to 331 fssupri. 332 333 334 335 The valid class-specific options for setting fixed-priority parameters 336 are: 337 338 -m fxuprilim 339 Sets the user priority limit of the specified 340 process(es) to fxuprilim. 341 342 343 -p fxupri 344 Sets the user priority of the specified process(es) to 345 fxupri. 346 347 348 -t tqntm 349 [-r res] Sets the time quantum of the specified 350 process(es) to tqntm. You can optionally specify a 351 resolution as explained below. 352 353 354 USAGE 355 Real-Time Class 356 The real-time class provides a fixed priority preemptive scheduling 357 policy for those processes requiring fast and deterministic response 358 and absolute user/application control of scheduling priorities. If the 359 real-time class is configured in the system, it should have exclusive 360 control of the highest range of scheduling priorities on the system. 361 This ensures that a runnable real-time process is given CPU service 362 before any process belonging to any other class. 363 364 365 The real-time class has a range of real-time priority (rtpri) values 366 that can be assigned to processes within the class. Real-time 367 priorities range from 0 to x, where the value of x is configurable and 368 can be displayed for a specific installation that has already 369 configured a real-time scheduler, by using the command 370 371 priocntl -l 372 373 374 375 376 The real-time scheduling policy is a fixed priority policy. The 377 scheduling priority of a real-time process never changes except as the 378 result of an explicit request by the user/application to change the 379 rtpri value of the process. 380 381 382 For processes in the real-time class, the rtpri value is, for all 383 practical purposes, equivalent to the scheduling priority of the 384 process. The rtpri value completely determines the scheduling priority 385 of a real-time process relative to other processes within its class. 386 Numerically higher rtpri values represent higher priorities. Since the 387 real-time class controls the highest range of scheduling priorities in 388 the system, it is guaranteed that the runnable real-time process with 389 the highest rtpri value is always selected to run before any other 390 process in the system. 391 392 393 In addition to providing control over priority, priocntl provides for 394 control over the length of the time quantum allotted to processes in 395 the real-time class. The time quantum value specifies the maximum 396 amount of time a process can run, assuming that it does not complete or 397 enter a resource or event wait state (sleep). Notice that if another 398 process becomes runnable at a higher priority, the currently running 399 process can be preempted before receiving its full time quantum. 400 401 402 The command 403 404 priocntl -d [-i idtype] [idlist] 405 406 407 408 409 displays the real-time priority, time quantum (in millisecond 410 resolution), and time quantum signal value for each real-time process 411 in the set specified by idtype and idlist. 412 413 414 Any combination of the -p, -t [-r], and -q options can be used with 415 priocntl -s or priocntl -e for the real-time class. If an option is 416 omitted and the process is currently real-time, the associated 417 parameter is unaffected. If an option is omitted when changing the 418 class of a process to real-time from some other class, the associated 419 parameter is set to a default value. The default value for rtpri is 0 420 and the default for time quantum is dependent on the value of rtpri and 421 on the system configuration; see rt_dptbl(4). 422 423 424 When using the -t tqntm option, you can optionally specify a resolution 425 using the -r res option. (If no resolution is specified, millisecond 426 resolution is assumed.) If res is specified, it must be a positive 427 integer between 1 and 1,000,000,000 inclusively and the resolution used 428 is the reciprocal of res in seconds. For example, specifying -t 10 -r 429 100 would set the resolution to hundredths of a second and the 430 resulting time quantum length would be 10/100 seconds (one tenth of a 431 second). Although very fine (nanosecond) resolution can be specified, 432 the time quantum length is rounded up by the system to the next 433 integral multiple of the system clock's resolution. Requests for time 434 quantums of zero or quantums greater than the (typically very large) 435 implementation-specific maximum quantum result in an error. 436 437 438 The real-time time quantum signal can be used to notify runaway real- 439 time processes about the consumption of their time quantum. Those 440 processes, which are monitored by the real-time time quantum signal, 441 receive the configured signal in the event of time quantum expiration. 442 The default value (0) of the time quantum signal tqsig denotes no 443 signal delivery. A positive value denotes the delivery of the signal 444 specified by the value. Like kill(1) and other commands operating on 445 signals, the -q tqsig option is also able to handle symbolically named 446 signals, like XCPU or KILL. 447 448 449 In order to change the class of a process to real-time (from any other 450 class), the user invoking priocntl must have super-user privilege. In 451 order to change the rtpri value or time quantum of a real-time process, 452 the user invoking priocntl must either be super-user, or must currently 453 be in the real-time class (shell running as a real-time process) with a 454 real or effective user ID matching the real or effective user ID of the 455 target process. 456 457 458 The real-time priority, time quantum, and time quantum signal are 459 inherited across the fork(2) and exec(2) system calls. When using the 460 time quantum signal with a user defined signal handler across the 461 exec(2) system call, the new image must install an appropriate user 462 defined signal handler before the time quantum expires. Otherwise, 463 unpredictable behavior would result. 464 465 Time-Sharing Class 466 The time-sharing scheduling policy provides for a fair and effective 467 allocation of the CPU resource among processes with varying CPU 468 consumption characteristics. The objectives of the time-sharing policy 469 are to provide good response time to interactive processes and good 470 throughput to CPU-bound jobs, while providing a degree of 471 user/application control over scheduling. 472 473 474 The time-sharing class has a range of time-sharing user priority 475 (tsupri) values that can be assigned to processes within the class. 476 User priorities range from -x to +x, where the value of x is 477 configurable. The range for a specific installation can be displayed 478 by using the command 479 480 priocntl -l 481 482 483 484 485 The purpose of the user priority is to provide some degree of 486 user/application control over the scheduling of processes in the time- 487 sharing class. Raising or lowering the tsupri value of a process in the 488 time-sharing class raises or lowers the scheduling priority of the 489 process. It is not guaranteed, however, that a time-sharing process 490 with a higher tsupri value runs before one with a lower tsupri value. 491 This is because the tsupri value is just one factor used to determine 492 the scheduling priority of a time-sharing process. The system can 493 dynamically adjust the internal scheduling priority of a time-sharing 494 process based on other factors such as recent CPU usage. 495 496 497 In addition to the system-wide limits on user priority (displayed with 498 priocntl -l), there is a per process user priority limit (tsuprilim), 499 which specifies the maximum tsupri value that can be set for a given 500 process. 501 502 503 The command 504 505 priocntl -d [-i idtype] [idlist] 506 507 508 509 510 displays the user priority and user priority limit for each time- 511 sharing process in the set specified by idtype and idlist. 512 513 514 Any time-sharing process can lower its own tsuprilim (or that of 515 another process with the same user ID). Only a time-sharing process 516 with super-user privilege can raise a tsuprilim. When changing the 517 class of a process to time-sharing from some other class, super-user 518 privilege is required in order to set the initial tsuprilim to a value 519 greater than zero. 520 521 522 Any time-sharing process can set its own tsupri (or that of another 523 process with the same user ID) to any value less than or equal to the 524 process's tsuprilim. Attempts to set the tsupri above the tsuprilim 525 (and/or set the tsuprilim below the tsupri) result in the tsupri being 526 set equal to the tsuprilim. 527 528 529 Any combination of the -m and -p options can be used with priocntl -s 530 or priocntl -e for the time-sharing class. If an option is omitted and 531 the process is currently time-sharing, the associated parameter is 532 normally unaffected. The exception is when the -p option is omitted and 533 -m is used to set a tsuprilim below the current tsupri. In this case, 534 the tsupri is set equal to the tsuprilim which is being set. If an 535 option is omitted when changing the class of a process to time-sharing 536 from some other class, the associated parameter is set to a default 537 value. The default value for tsuprilim is 0 and the default for tsupri 538 is to set it equal to the tsuprilim value which is being set. 539 540 541 The time-sharing user priority and user priority limit are inherited 542 across the fork(2) and exec(2) system calls. 543 544 Inter-Active Class 545 The inter-active scheduling policy provides for a fair and effective 546 allocation of the CPU resource among processes with varying CPU 547 consumption characteristics while providing good responsiveness for 548 user interaction. The objectives of the inter-active policy are to 549 provide good response time to interactive processes and good throughput 550 to CPU-bound jobs. The priorities of processes in the inter-active 551 class can be changed in the same manner as those in the time-sharing 552 class, though the modified priorities continue to be adjusted to 553 provide good responsiveness for user interaction. 554 555 556 The inter-active user priority limit, iaupri, is equivalent to tsupri. 557 The inter-active per process user priority, iauprilim, is equivalent to 558 tsuprilim. 559 560 561 Inter-active class processes that have the iamode ("interactive mode") 562 bit set are given a priority boost value of 10, which is factored into 563 the user mode priority of the process when that calculation is made, 564 that is, every time a process's priority is adjusted. This feature is 565 used by the X windowing system, which sets this bit for those processes 566 that run inside of the current active window to give them a higher 567 priority. 568 569 Fair-Share Class 570 The fair-share scheduling policy provides a fair allocation of system 571 CPU resources among projects, independent of the number of processes 572 they own. Projects are given "shares" to control their entitlement to 573 CPU resources. Resource usage is remembered over time, so that 574 entitlement is reduced for heavy usage, and increased for light usage, 575 with respect to other projects. CPU time is scheduled among processes 576 according to their owner's entitlements, independent of the number of 577 processes each project owns. 578 579 580 The FSS scheduling class supports the notion of per-process user 581 priority and user priority limit for compatibility with the time-share 582 scheduler. The fair share scheduler attempts to provide an evenly 583 graded effect across the whole range of user priorities. Processes with 584 negative fssupri values receive time slices less frequently than 585 normal, while processes with positive fssupri values receive time 586 slices more frequently than normal. Notice that user priorities do 587 not interfere with shares. That is, changing a fssupri value of a 588 process is not going to affect its project's overall CPU usage which 589 only relates to the amount of shares it is allocated compared to other 590 projects. 591 592 593 The priorities of processes in the fair-share class can be changed in 594 the same manner as those in the time-share class. 595 596 Fixed-Priority Class 597 The fixed-priority class provides a fixed priority preemptive 598 scheduling policy for those processes requiring that the scheduling 599 priorities do not get dynamically adjusted by the system and that the 600 user/application have control of the scheduling priorities. 601 602 603 The fixed-priority class shares the same range of scheduling priorities 604 with the time-sharing class, by default. The fixed-priority class has a 605 range of fixed-priority user priority (fxupri) values that can be 606 assigned to processes within the class. User priorities range from 0 to 607 x, where the value of x is configurable. The range for a specific 608 installation can be displayed by using the command 609 610 priocntl -l 611 612 613 614 615 The purpose of the user priority is to provide user/application control 616 over the scheduling of processes in the fixed-priority class. For 617 processes in the fixed-priority class, the fxupri value is, for all 618 practical purposes, equivalent to the scheduling priority of the 619 process. The fxupri value completely determines the scheduling priority 620 of a fixed-priority process relative to other processes within its 621 class. Numerically higher fxupri values represent higher priorities. 622 623 624 In addition to the system-wide limits on user priority (displayed with 625 priocntl -l), there is a per process user priority limit (fxuprilim), 626 which specifies the maximum fxupri value that can be set for a given 627 process. 628 629 630 Any fixed-priority process can lower its own fxuprilim (or that of 631 another process with the same user ID). Only a process with super-user 632 privilege can raise a fxuprilim. When changing the class of a process 633 to fixed-priority from some other class, super-user privilege is 634 required in order to set the initial fxuprilim to a value greater than 635 zero. 636 637 638 Any fixed-priority process can set its own fxupri (or that of another 639 process with the same user ID) to any value less than or equal to the 640 process's fxuprilim. Attempts to set the fxupri above the fxuprilim (or 641 set the fxuprilim below the fxupri) result in the fxupri being set 642 equal to the fxuprilim. 643 644 645 In addition to providing control over priority, priocntl provides for 646 control over the length of the time quantum allotted to processes in 647 the fixed-priority class. The time quantum value specifies the maximum 648 amount of time a process can run, before surrendering the CPU, assuming 649 that it does not complete or enter a resource or event wait state 650 (sleep). Notice that if another process becomes runnable at a higher 651 priority, the currently running process can be preempted before 652 receiving its full time quantum. 653 654 655 Any combination of the -m, -p, and -t options can be used with priocntl 656 -s or priocntl -e for the fixed-priority class. If an option is omitted 657 and the process is currently fixed-priority, the associated parameter 658 is normally unaffected. The exception is when the -p option is omitted 659 and the -m option is used to set a fxuprilim below the current fxupri. 660 In this case, the fxupri is set equal to the fxuprilim which is being 661 set. If an option is omitted when changing the class of a process to 662 fixed-priority from some other class, the associated parameter is set 663 to a default value. The default value for fxuprilim is 0. The default 664 for fxupri is to set it equal to the fxuprilim value which is being 665 set. The default for time quantum is dependent on the fxupri and on the 666 system configuration. See fx_dptbl(4). 667 668 669 The time quantum of processes in the fixed-priority class can be 670 changed in the same manner as those in the real-time class. 671 672 673 The fixed-priority user priority, user priority limit, and time quantum 674 are inherited across the fork(2) and exec(2) system calls. 675 676 EXAMPLES 677 The following are real-time class examples: 678 679 Example 1 Setting the Class 680 681 682 The following example sets the class of any non-real-time processes 683 selected by idtype and idlist to real-time and sets their real-time 684 priority to the default value of 0. The real-time priorities of any 685 processes currently in the real-time class are unaffected. The time 686 quantums of all of the specified processes are set to 1/10 seconds. 687 688 689 example% priocntl -s -c RT -t 1 -r 10 -i idtype idlist 690 691 692 693 Example 2 Executing a Command in Real-time 694 695 696 The following example executes command in the real-time class with a 697 real-time priority of 15 and a time quantum of 20 milliseconds: 698 699 700 example% priocntl -e -c RT -p 15 -t 20 command 701 702 703 704 Example 3 Executing a Command in Real-time with a Specified Quantum 705 Signal 706 707 708 The following example executes command in the real-time class with a 709 real-time priority of 11, a time quantum of 250 milliseconds, and where 710 the specified real-time quantum signal is SIGXCPU: 711 712 713 example% priocntl -e -c RT -p 11 -t 250 -q XCPU command 714 715 716 717 718 The following are time-sharing class examples: 719 720 Example 4 Setting the Class of non-time-sharing Processes 721 722 723 The following example sets the class of any non-time-sharing processes 724 selected by idtype and idlist to time-sharing and sets both their user 725 priority limit and user priority to 0. Processes already in the time- 726 sharing class are unaffected. 727 728 729 example% priocntl -s -c TS -i idtype idlist 730 731 732 733 Example 5 Executing a Command in the Time-sharing Class 734 735 736 The following example executes command with the arguments arguments in 737 the time-sharing class with a user priority limit of 0 and a user 738 priority of -15: 739 740 741 example% priocntl -e -c TS -m 0 -p -15 command [arguments] 742 743 744 745 Example 6 Executing a Command in Fixed-Priority Class 746 747 748 The following example executes a command in the fixed-priority class 749 with a user priority limit of 20 and user priority of 10 and time 750 quantum of 250 milliseconds: 751 752 753 example% priocntl -e -c FX -m 20 -p 10 -t 250 command 754 755 756 757 EXIT STATUS 758 The following exit values are returned: 759 760 761 For options -d, -l, and -s: 762 763 0 764 Successful operation. 765 766 767 1 768 Error condition. 769 770 771 772 For option -e: 773 774 775 Return of the Exit Status of the executed command denotes successful 776 operation. Otherwise, 777 778 1 779 Command could not be executed at the specified priority. 780 781 782 ATTRIBUTES 783 See attributes(5) for descriptions of the following attributes: 784 785 786 787 788 +---------------+-----------------+ 789 |ATTRIBUTE TYPE | ATTRIBUTE VALUE | 790 +---------------+-----------------+ 791 |CSI | Enabled | 792 +---------------+-----------------+ 793 794 SEE ALSO 795 kill(1), nice(1), ps(1), dispadmin(1M), exec(2), fork(2), priocntl(2), 796 fx_dptbl(4), process(4), rt_dptbl(4), attributes(5), zones(5), FSS(7) 797 798 799 System Administration Guide: Basic Administration 800 801 DIAGNOSTICS 802 priocntl prints the following error messages: 803 804 Process(es) not found 805 806 None of the specified processes exists. 807 808 809 Specified processes from different classes 810 811 The -s option is being used to set parameters, the -c class option 812 is not present, and processes from more than one class are 813 specified. 814 815 816 Invalid option or argument 817 818 An unrecognized or invalid option or option argument is used. 819 820 821 822 823 April 1, 2008 PRIOCNTL(1)