Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!brl-adm!brl-smoke!gwyn
From: gwyn@brl-smoke.ARPA (Doug Gwyn )
Newsgroups: comp.unix.questions
Subject: Re: Suspending processes
Message-ID: <5507@brl-smoke.ARPA>
Date: Sat, 10-Jan-87 14:24:16 EST
Article-I.D.: brl-smok.5507
Posted: Sat Jan 10 14:24:16 1987
Date-Received: Mon, 12-Jan-87 21:54:11 EST
References: <836@A60.UUCP>
Reply-To: gwyn@brl.arpa (Doug Gwyn (VLD/VMB) )
Organization: Ballistic Research Lab (BRL), APG, MD.
Lines: 20

In article <836@A60.UUCP> lee@A60.UUCP (G. Lee) writes:
>  Does UNIX provide a standard way to suspend a processes ( stop it
>from getting CPU time )?

There isn't any universal way of doing this, and on some UNIXes
there is no way at all.  Around SVR2.1 or so, a "switch" character
was added for terminals, usually set to ^Z or ^Y, that operates in
conjunctions with the "shl" poor-man's process manager to control
processes more or less as you seem to wish.  4.1BSD and later include
a fancier "job control" mechanism that does similar things in
conjunction with a shell that understands this environment (C-shell,
BRL Bourne shell, or Korn shell).  The System V scheme is cleaner but
doesn't provide any way for a process to notice that the terminal
display has been asynchronously messed-up by the "shl" operations,
which is sometimes quite a nuisance when your resumed screen-oriented
software doesn't have any way to request a screen repaint.

The best facility I've seen for this is the /proc mechanism of 8th
Edition UNIX.  Unfortunately I haven't seen this adopted in any
generally-available version of UNX.