UNIX is
a multiprocessing operating system, so you can run multiple processes
at the same time. For example, you can have one process running in
the foreground and three in the background.
A foreground process
executes while you wait for the prompt. That is, you cannot execute
additional commands while the current command is being executed. After
you enter a command, the shell starts a process to execute the command.
After the system executes the command, the shell displays the prompt
and you can enter additional commands. The following is an example
of SAS executing as a foreground process:
sas
Running in the foreground
enables you to access standard input and output.
A background process
executes independently of the shell. After you enter a command, the
shell starts a process to execute the command, and then issues the
system prompt. You can enter other commands or start other background
processes without waiting for your initial command to execute. The
following is an example of the command that is used to execute a background
process:
sas&
Note: Both the C shell and the
Korn shell include commands that enable you to move jobs among three
possible states: running in the foreground, running in the background,
and suspended. If you run SAS in –nodms mode, the process stops
waiting for input. In dms mode, control of standard output and input
is retained by the shell.