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 start-up

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 group—with

 

compartment records taking precedence over application records, which

 

take precedence over Unix group records.)

 

 

By prmrun {-gtargetgrp-i}

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

prmrunapplication[LINEBREAK](-gtargetgrp

does not have a group, an error is returned.

is not specified)

 

 

 

By prmmove {targetgrp -i}

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 group—without creating an application record for each individual application.

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