Article View: comp.std.unix
Article #672qfork()
From: Donald Lewine
Date: Thu, 20 Dec 1990 21:13
Date: Thu, 20 Dec 1990 21:13
33 lines
1733 bytes
1733 bytes
Submitted-by: lewine@cheshirecat.webo.dg.com (Donald Lewine)
[[I hope that this has not been covered in detail on comp.std.unix.
Delivery of the newsgroup has been uneven for the last few weeks.]]
[It's not been so much delivery as posting, due to lessened attention
on my part because of lack of funding, and also because of no snitch
reports. -mod]
Draft 5 of POSIX.1a defines qfork() by saying:
"The qfork() function shall be identical to the fork() function with
the following exception: behavior is undefined if the child process
executes any code between the return from qfork() and the succeeding
call to one of the exec functions or _exit()."
This seems to be a very harsh restriction. The following code seems
like it would be undefined:
status = qfork();
if (status == 0) execve(...);
I would propose replacing the phrase: "executes any code" with "calls
any function defined in this standard or the C standard {8}" I think
that does what you mean.
--------------------------------------------------------------------
Donald A. Lewine (508) 870-9008 Voice
Data General Corporation (508) 366-0750 FAX
4400 Computer Drive. MS D112A
Westboro, MA 01580 U.S.A.
uucp: uunet!dg!lewine Internet: lewine@cheshirecat.webo.dg.com
Volume-Number: Volume 22, Number 35
Technical Details
Message-ID:
<16066@cs.utexas.edu>Path:
arc1-ca.pugleaf.net!utzoo!attcan!telly!lethe!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!jsqShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!telly!lethe!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!jsq From: lewine@cheshirecat.webo.dg.com (Donald Lewine) Newsgroups: comp.std.unix Subject: qfork() Message-ID: <16066@cs.utexas.edu> Date: 20 Dec 90 21:13:25 GMT Sender: jsq@cs.utexas.edu Lines: 33 Approved: jsq@cs.utexas.edu (Moderator, John S. Quarterman) X-Submissions: std-unix@uunet.uu.net