process_id_max – Specifies the maximum value the system should use for PIDs assigned to new processes. Changing it does not affect PIDs already assigned. This tunable parameter first appears in 11i v3. The default value is 30,000 to provide an environment compatible with that of HP-UX versions prior to 11i v3. Increase this tunable when more than 30,000 active processes are needed or if you want PIDs to be reused less frequently. However, increasing it to a value higher than 30,000 can cause some applications to fail.

process_id_min – Specifies the minimum value the system should use for PIDs assigned to new processes. Changing it does not affect PIDs already assigned. This tunable paramter first appears in 11i v3. The default value is 0. The purpose of this tunable is to support program qualification. It allows the creation of an environment where large values are used for all PIDs. This environment can then be used to validate, in part, that programs can properly handle large PID values. When this tunable is increased, the system should be rebooted to ensure all processes have large PID values. For program validation, the recommended values for process_id_min and process_id_max are 1,000,000,000 and 1,070,000,000, respectively.

Cautions

As noted in the previous section, setting tunable limits on PID values, or the number of active processes to values higher than 30000, can cause some applications to fail. There are several critical maximum values:

30,000 – applications with hard-coded dependencies on the old limits of 30,000 can fail if PID values or the number of processes exceed 30,000

32,767 – applications with stored PID values in 16-bit signed integer variables can fail if PID values exceed 32,767. Applications that maintain counts of processes in 16-bit signed integer variables can fail if the number of processes exceeds 32,767.

65,535 – applications with stored PID values in 16-bit unsigned integer variables can fail if PID values exceed 65,535. Applications that maintain counts of processes in 16-bit unsigned integer variables can fail if the number of processes exceeds 65,535.

99,999 – applications with a builtin assumption that PID values do not exceed 5 decimal digits can fail if PID values exceed 99,999. PID values with more than 5 decimal digits can also cause display format issues (such as uneven columns, fields that run together, and so on).

These are the most common dependencies on the number of processes or the PID values. Programs can have other dependencies. The next section describes how correct programs should handle the values, some of the incorrect assumptions programs might make, and how to detect them in program source.

Programmer Notes

This section describes aspects of PID values and the number of processes useful to program developers. Programmers should also be familiar with the Administrator Notes in the previous section.

Correct Handling of PID and Number of Processes

This section describes how correct programs handle PID values and the number of processes. Note that what applies to PID values also applies to PGIDs and SIDs.

5