Number of Processes and Process ID Values on HP-UX
5
• 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.