Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: fg/bg on FreeBSD.
- X-seq: zsh-workers 11237
- From: "Bart Schaefer" <schaefer@xxxxxxxxxxxxxxxxxxxxxxx>
- To: Tanaka Akira <akr@xxxxxxxx>, zsh-workers@xxxxxxxxxxxxxx
- Subject: Re: fg/bg on FreeBSD.
- Date: Sat, 6 May 2000 18:45:03 +0000
- In-reply-to: <hvozoq3mux1.fsf@xxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxxxxxx; run by ezmlm
- References: <hvo3dnvoh59.fsf@xxxxxxxxxxxxxxx> <1000506170828.ZM2063@xxxxxxxxxxxxxxxxxxxxxxx> <hvozoq3mux1.fsf@xxxxxxxxxxxxxxx>
On May 7, 2:48am, Tanaka Akira wrote:
} Subject: Re: fg/bg on FreeBSD.
}
} In article <1000506170828.ZM2063@xxxxxxxxxxxxxxxxxxxxxxx>,
} "Bart Schaefer" <schaefer@xxxxxxxxxxxxxxxxxxxxxxx> writes:
}
} > Why is the PGID of sleep different on FreeBSD? Did it change after the
} > sleep was started because the echo exited?
}
} Possibly. But NetBSD has no problem...
Yes, what I'm wondering is whether this is a FreeBSD bug.
} | Z:akr@dhcp21% ktrace -i zsh -f
} | dhcp21% sleep 100|sleep 200
} | ^Z
} | zsh: suspended sleep 100 | sleep 200
} | dhcp21% jobs -l
} | [1] + 29245 suspended sleep 100 |
} | 29246 suspended sleep 200
} | dhcp21% ps j29245; ps j29246
} | USER PID PPID PGID SESS JOBC STAT TT TIME COMMAND
} | akr 29245 29244 29245 94d480 2 T p3 0:00.00 sleep 100
} | USER PID PPID PGID SESS JOBC STAT TT TIME COMMAND
} | akr 29246 29244 29245 94d480 2 T p3 0:00.00 sleep 200
}
} PGID is first sleep's PID. It's good.
}
} | dhcp21% bg
} | [1] + continued sleep 100 | sleep 200
} | dhcp21% ps j29245; ps j29246
} | USER PID PPID PGID SESS JOBC STAT TT TIME COMMAND
} | akr 29245 29244 29245 94d480 2 I p3 0:00.00 sleep 100
} | USER PID PPID PGID SESS JOBC STAT TT TIME COMMAND
} | akr 29246 29244 29245 94d480 2 I p3 0:00.00 sleep 200
}
} It's successfully resumed.
OK, now, can you "fg" it, wait for the first sleep (but not the second)
to exit, then ^Z again and check the PGIDs?
If the PGID is going to change every time the group leader exits, then
we've got a problem -- we can't simply record the group leader's PID and
keep using it unless we arrange for a group leader that's guaranteed to
stay alive for the whole pipeline.
Another test to try:
echo | sleep 100 | sleep 200
If you ^Z this, do both sleeps get the same PGID, or do they each become
their own process group? (I'm hoping the latter, for sanity, otherwise
it's a guessing game as to what PID becomes the leader.)
--
Bart Schaefer Brass Lantern Enterprises
http://www.well.com/user/barts http://www.brasslantern.com
Messages sorted by:
Reverse Date,
Date,
Thread,
Author