SUMMARY Max. number of processes per user under SunOS

From: Niall O Broin - Gray Wizard (
Date: Thu Mar 14 1996 - 09:44:46 CST

Only two answers to this question, but as the first was from Casper that
was all I needed (Kevin Sheehan sneaked in with the same answer as I was
writing this summary)

To set the maximum number of processes per user under SunOS, you need to
edit conf.common/param.c (usually under /usr/kvm/sys). By default this
has the following

#define NPROC (10 + 16 * MAXUSERS)
#undef MAXUPRC
#define MAXUPRC (NPROC - 5)

which is to my mind very silly - as any system will have considerably more than 5
daemon processes running, it's terribly easy for any user to bring a system to its
knees by doing something like the following for sufficently large N

for (i = 0; i < N ; i++) fork();

I've modified the third line above to be

#define MAXUPRC 128

which suits my needs just fine.

To change this in the running kernel and in the kernel object, you need to change
the kernel variable maxuprc which is done as follows (as root, of course) :

Note that what you should type is preceded by + and what the Sun responds is
preceded by *. # and subsequent characters are my comments - they won't appear
and are not to be entered.

+adb -k -w /vmunix /dev/mem
*physmem 7f96 # amount of memory in the machine
+maxuprc?W0txxx # set maxuprc in /vmunix to xxx decimal
*_maxuprc: 0x100 = 0x80 # old value = new value
+maxuprc/W80 # set maxuprc in the running kernel
*_maxuprc: 0x100 = 0x80
+$q # quit adb

Kindest regards,

Niall O Broin

UNIX Network Administrator, Stations and Communications Engineering Department
European Space Operations Centre
Darmstadt, Germany Ph./Fax +49 6151 90 3619/2179

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:10:55 CDT