Infodoc ID |
|
Synopsis |
|
Date |
2167 |
|
Kernel variables/capacities and limits |
|
25 Feb 1996 |
This section describes certain kernel limits. Some of these may
be set by users or systems administrators; others are fixed for a
particular configuration. These limits can cause a number of
problems when exceeded. They are documented here so that you can
advise customers whose systems are misbehaving at, near, or above
these limits.
Variables covered are:
maxusers nproc MAXUPRC ninode nfile SWAPWARN
plus an unnamed variable returned from the getdtablesize(); system call
Variable: maxusers
--------- --------
Meaning: This variable is misnamed. It only approximates the
maximum number of simultaneously active users on
a system but is not a hard limit. Six other system
parameters depend on it. They are: nfile,
nproc, ncallout, ndquot, ninode, and
nclist.
Where defined: Edited in /usr/sys/<arch>/conf/<config- file>
Value, range, 4 or 8 in the GENERIC kernel;
or formula: May be reconfigured in the kernel being examined.
To configure, allow one user for each timesharing user, one for
each window typically used, one for each diskless client served.
Error Messages none
For more Chapters 9 and 22 of System & Network
information: Administration Manual
Variable: nproc
--------- -----
Meaning: The maximum number of processes that may be
running at any one time.
Where defined: usr/sys/conf.common/param.c
Value, range, 10 + 16*MAXUSERS
or formula:
Error messages: o %d not in pgrp hash table
o Error in search (for process id)
For more Chapter 22 of System & Network Administration
information: Manual, 700; sys/os/kern_proc.c, sys/os/prot.c.
Variable: MAXUPRC
--------- -------
Meaning: The maximum number of user processes that may
be running at any one time. Five processes are
allowed for the kernel; also a non-superuser is not
allowed the last free process.
Where defined: usr/sys/conf.common/param.c
Value, range, NPROC - 5
or formula:
Error messages: o System process table is full.
o User is not privileged.
o Error: no memory.
For more sys/os/kern_fork.c
information:
Variable: ninode
--------- ------
Meaning: The maximum number of inodes.
Where defined: usr/sys/conf.common/param.c
Value, range, (NPROC + 16 + MAXUSERS) +64 + 12*MAXUSERS
or formula:
Error messages o Error in getvnodefp.
o Error in old stat system call.
o Error in getting attributes.
For more Chapter 22 of System & Network Administration
information: Manual, sys/os/vfs_xxx.c
Variable: nfile
--------- -----
Meaning: The number of file table structures. One file table
structure is used for each open, unshared, file
structure.
Where defined: usr/sys/conf.common/param.c
Value, range, 64 + 16*()/10 if no windows (i.e. if NWIN=0).
or formula: 64 + 16*(NPROC+16+MAXUSERS)/5 if windows
are being used (i.e. if NWIN>0).
Error messages: none
For more Chapter 22 of System & Network Administration
information: Manual
Variable: SWAPWARN
--------- --------
Meaning: Minimum amount of swap space in 512-byte blocks
before a warning is issued.
Where defined: usr/sys/conf.common/param.c, autoconf.c:swapconf().
There are 2 ways to increase the swap space: 1) In a
diskless client, use mkfile. 2) Set up a second
swap partition. To increase the size remaining
before a warning, add an options line to the
configuration, e.g. options SWAPWARN= 1024.
Value, range, Default is 256K bytes (i.e., value is 512)
or formula:
Error message: WARNING: swap space is probably too small.
For more System & Network Administration Manual, pages
information: 246-248.
Variable: This variable has no name; it is returned from the
--------- getdtablesize(); system call
Meaning: The number of file descriptors. Prior to Release
4.1, this was a constant value. In 4.1, the value
will change within a process only if that process
alters the value.
Where defined: sys/os/descrip.c; dependent on OS; use the
c-shell limit command
Value, range, > 077; soft limit of RLIMIT_NOFILE.
or formula: RLIMIT_NOFILE is defined in resource.h as the
maximum descriptor index + 1. Its initial soft limit
is 64 and its initial hard limit is 256.
Error messages: o Not configured.
For more Chapter 6 of 4.1 Release Manual,45;
information: sys/os/init_sysent.c, kern_descrip.c, syscalls.c
SOLUTION SUMMARY:
Top
Sun Proprietary/Confidential: Internal Use Only
Feedback to SunSolve Team