execute permission to the application. An application can be assigned to only one PRM group at a time. Child processes inherit their parent’s PRM group. Therefore, all the application’s child processes run in the same PRM group as the parent application by default.
You can explicitly place an application in a PRM group of your choosing with two commands. Use the prmmove command to move an existing application to another group. Use the prmrun command to start an application in a specified group.
These rules may not apply to processes that bypass login. See the section “Special case of interest: Client/server connections” (page 99) for more details.
How application processes are assigned to PRM groups at
Table 8 describes what PRM groups an application process is started in based on how the application is started.
Table 8 PRM’s group assignments at process start-up
Process initiated | Process runs in PRM group as follows |
By user | Process runs in the user’s initial group. If the user does not have an initial |
By at | group, the process runs in the user default group, OTHERS. (If the process |
By cron | has a compartment record, an application record, or a Unix group record, |
Upon login | it still starts in the invoking user’s initial group. However, the application |
| manager will soon move the process to its assigned |
| compartment records taking precedence over application records, which |
| take precedence over Unix group records.) |
By prmrun | Process runs in the PRM group specified by targetgrp or in the user’s |
| initial group. The PRM application manager cannot move a process started |
| in this manner to another group. |
By | Process runs in the application’s assigned PRM group. If the application |
does not have a group, an error is returned. | |
is not specified) |
|
By prmmove {targetgrp | Process runs in the PRM group specified by targetgrp or in the user’s |
| initial group. The PRM application manager cannot move a process started |
| in this manner to another group. |
By another process | Process runs in the parent process’s group. |
How PRM handles child processes
When they first start, child processes inherit the PRM groups of their parent processes. At configurable polling intervals, the application manager checks the PRM configuration file against all processes currently running. If any processes should be assigned to different PRM groups, the application manager moves those applications to the correct PRM groups.
If you move a parent process to another PRM group (with the prmmove command), all of its child processes remain in the original PRM group. If the parent and child processes should be kept together, move them as a process group or by user login name.
Pattern matching for filenames
Application filenames in application records can contain pattern matching notation as described in the regexp(5) manpage. This feature allows you to assign all appropriate applications that reside in a single directory to a PRM
The wildcard characters ([, ], *, and ?) can be used to specify application filenames. However, these characters cannot be used in directory names.
To assign all the applications in a directory to a PRM group, create an application record similar to the following, with the filename specified only by an asterisk (*):
32 Understanding how PRM manages resources