[net.unix-wizards] Help wanted with job control

greg@isrnix.UUCP (Gregory R. Travis) (03/29/84)

   I'm trying to bring up job control on our 2.8BSD system.  I plugged in
the (buggy) code that came with 2.8 for job control (in the job.control
directory) and also had to merge some stuff from a 4.1 vax system into the
kernel.  I have the kernel compiled and it will boot - however, as soon
as I start a process under the single-user shell the system crashes.  What
seems to happen is a) The process I started finishes and calles
'exit'.  b) The shell wakes up from its sleep (in 'wait')
c) The system crashes.  The shells status is 'R' (running) - this I
get from a crash dump.  However, the system is IDLING!  The pc always
points to waitloc, although there is a process running.  So the kernel
is not dispatching the cpu to the shell that wants it.

   Has anyone brought up the job control code on a 2.8 system?  I'm tired
of waiting for 2.9.  If someone who has performed the above could let me
know what changes/deletions/additions are needed in the 4.1 job control
code/signal mechanism I'ld really appreciate it.

-- 
    Gregory R. Travis
    Institute for Social Research - Indiana University - Bloomington, In
    ihnp4!inuxc!isrnix!greg
    {pur-ee,allegra,qusavx}!isrnix!greg

jdi@psuvax.UUCP (John D. Irwin) (03/31/84)

Re:	Unix dying upon termination of job in 2.8 with job control.

What's probably happening here is that what a child of the shell terminates,
it sends a SIGCHLD to its parent.  Well, unless you've changed your signal
handling to understand this sufficiently, it will treat it as any other sig-
nal.  Thus killing the shell.

My advice:	Run PSUnix 1.1.  Unfortunately, we aren't quite ready for dis-
	bution.  Also, you could try hacking in the 4.1 sig.c stuff, but be-
	ware -- that code is pretty full of holes on an 11.

Even more fun is trying to get the 4.2 tty routines to work on an 11, which is
what I'm doing now.  It seems that when UCB wrote 4.2 they abandoned all hope of
ever having it work on anything besides a 32 bit machine.  Thus they use 'int'
all the time, even when they should say 'long'.

Anybody heard anything about 2.9?  Our problem with PSUnix 1.1 is that we 
basically work on the kernel only, ignoring user programs to an extent
(although we run csh and vi).  What we'd really like is to have BSD
Flexnames, but that requires modifying the assembler.  Anybody want to
volunteer (V7 assembler is written in, you guessed it, assembler)? :-)
-- 
Spoken:	John D. Irwin
AT&T:	814-237-5068
Bitnet:	jdi@psuvax1.BITNET
Csnet:	jdi@penn-state.CSNET
Uucp:	{akgua, allegra, cornell, princeton, ihnp4, burdvax}!psuvax!jdi