[net.unix] job control in Sys V

mullen@NRL-CSS.ARPA@sri-unix.UUCP (06/13/84)

From:  Preston Mullen <mullen@NRL-CSS.ARPA>

I keep seeing hints that System V (perhaps only release 2?)
has some form of job control.  Could someone elaborate on this
and compare it with 4.2bsd job control?  I am especially
interested in job control at the user command (shell) level,
not capabilities that are only implemented in system calls.

(end of message)

gwyn@BRL-VLD.ARPA (06/17/84)

From:      Doug Gwyn (VLD/VMB) <gwyn@BRL-VLD.ARPA>

UNIX System V Release 2 provides a form of job control, but it differs
significantly from Berkeley's:

- Uses "sxt" pseudo-devices (like pty's but better)
- Obtained by running "shl" (shell layers) program
- Layers are transparent to applications
- No signals are involved
- Apparently applications cannot determine the "shl" activity (so that
  for example a screen editor will not be able to automatically refresh
  the display when the editor job is reactivated)

Not available on the PDP-11/70, according to the SRD.

jab@uokvax.UUCP (06/19/84)

#R:sri-arpa:-82700:uokvax:6100034:004:1637
uokvax!jab    Jun 18 19:43:00 1984

/***** uokvax:net.unix / sri-arpa!ARPA / 10:11 pm  Jun 14, 1984 */
From:  Preston Mullen <mullen@NRL-CSS.ARPA>

I keep seeing hints that System V (perhaps only release 2?)
has some form of job control.  Could someone elaborate on this
and compare it with 4.2bsd job control?  I am especially
interested in job control at the user command (shell) level,
not capabilities that are only implemented in system calls.
/* ---------- */

I'll tell you about it, with a quick disclaimer: I'll provide you with facts
(not a rave about how good it is, or a flame about how bad it is) and let
you for your own opinions.

System V Release 2.0 has a utility called "shell layers", named after
the "layers" program that runs on the Teletype 5620 terminal and implements
windows on the dot-mapped-display screen.

"shell layers" is best thought of as a "virtual terminal" facility, although
it isn't as complete as the Purdue "pseudo-tty" driver. You are given the
ability to run up to seven virtual terminals (each with its own /dev entry),
and switch between them via a magic character, which is usually ^Z.

For example,

	% shl
	>>> create layer1
	layer1				(PS1 is set to the layer name)
	layer1 ls
		(output from ls)
	layer1 ^Z
	>>> create layer2
	layer2 cd /
	layer2 ^Z
	>>> resume layer1
	(resuming layer1)
	layer1

You get the gist. The magic differences from the "job control" you see now
is that ^Z takes you to a "manager", not to a shell, and that the programs
in each "virtual terminal" don't know that they're running in a layer.

Let's not get into a discussion on whether this is a good or bad implementation.

	Jeff Bowles
	Lisle, IL