ptg10805159
302 Process Relationships Chapter 9
background
process group(s)
foreground
process group
login shell
login
exec
gettyor
telnetd
exec,aftersetsid,then
establishing controlling terminal
init,inetd,orlaunchd
user at a
terminal
terminal
driver
terminal-generated signals(SIGINT
,SIGQUIT
,SIGTSTP
)
delivered to process group
terminal input/output
read from terminal
generates
SIGTTIN
write to terminal may
generate
SIGTTOU
tcsetpgrp
to set process group
for controlling terminal
change in statusof children
change in status
setpgidof children
setpgid
session
Figure 9.9Summary of job control features with foreground and background jobs, and terminal driver
group to the actual terminal. The dashed line corresponding to theSIGTTOUsignal
means that whether the output from a process in the background process group appears
on the terminal is an option.
Is job control necessary or desirable? Job control was originally designed and
implemented beforewindowing terminals werewidespread. Some people claim that a
well-designed windowing system removes any need for job control. Some complain
that the implementation of job control — requiring support from the kernel, the terminal