job - Linux Jobs kernel module overiew
DESCRIPTION
A job is a group of related processes all descended from a
point of entry process and identified by a unique job
identifier (jjiidd). A job can contain multiple process
groups or sessions, and all processes in one of these sub
groups can only be contained within a single job.
The primary purpose for having jobs is to provide job
based resource limits. The current implementation only
provides the job container and resource limits will be
provided in a later implementation. When an implementa
tion that provides job limits is available, this descrip
tion will be expanded to provide further explanation of
job based limits.
Not every process on the system is part of a job. That
is, only processes which are started by a login initiator
like login, rlogin, rsh and so on, get assigned a job ID.
In the Linux environment, jobs are created via a PAM mod
ule.
Jobs on Linux are provided using a loadable kernel module.
Linux jobs have the following characteristics:
· A job is an inescapable container. A process cannot
leave the job nor can a new process be created outside
the job without explicit action, that is, a system
call with root privilege.
· Each new process inherits the jjiidd and limits [when
implemented] from its parent process.
· All point of entry processes (job initiators) create a
new job and set the job limits [when implemented]
appropriately.
· Job initiation on Linux is performed via a PAM session
module.
· The job initiator performs authentication and security
checks.
· Users can raise and lower their own job limits within
maximum values specified by the system administrator
[when implemented].
· Not all pocesses on a system need be members of a job.
· The process control initialization process (init(1M))
and startup scripts called by init are not part of a
job.
batch processes. Limit domain names are defined by the
system administrator when the user limits database (ULDB)
is created. [The ULDB will be implemented in conjunction
with future job limits work.]
NNoottee:: The existing command jobs(1) applies to shell "jobs"
and it is not related to the Linux Kernel Module jobs.
The at(1), atd(8), atq(1), batch(1), atrun(8), atrm(1))
man pages refer to shell scripts as a job. a shell
script.
SEE ALSO
job(1), jwait(1), jstat(1), jkill(1)
Man(1) output converted with
man2html