perm filename NSL[3,2] blob sn#649738 filedate 1982-03-25 generic text, type T, neo UTF8
A user who wishes to run a long compute-bound program unobtrusively in a
sort of background mode can enable the "Negative Service Level" privilege,
NSL, for the given job.  This means that the job will be run only when
there aren't any normal (non-NSL) jobs trying to run.  Therefore an NSL
job will not bog down the rest of the system (it will, however, increase
the actual load average by 1, since presumably it will be in the RUNQ all
the time).  NSL can be enabled and disabled by anyone with the monitor
commands:

ENABLE NSL
DISABLE NSL

and the NSL privilege (4,,0 bit in the passive privilege word) can be
enabled or disabled by the SETPRV UUO from any program.  Although NSL is
in the privilege word, it is really just a status bit for the job in
question.  The NSL "privilege" is not copied to a new job started by FORK.
However, it is copied to a new job started by the SWAP UUO.  The WHO
program displays "NSL" for any job that has the NSL privilege enabled.