vfork() (was Re: RS6000 questions/comments)

Jack F. Vogel jackv at turnkey.tcc.com
Mon Jul 1 06:01:00 AEST 1991


In article <1991Jun29.133535.8354 at batcomputer.tn.cornell.edu> shore at theory.TC.Cornell.EDU (Melinda Shore) writes:
 
|Since most contemporary Unixes support copy on write, there is no
|compelling reason to use vfork when writing new code.  vfork only
|exists because there was a bug in the Vax mm hardware a long, long time
|ago (when BSD was first being developed).  And, as we all know, once
|something goes into a system it can never come out.  Vfork lives on,
|even though we don't need it.

Ah, but did you know that AIX on the 370 does not have copy on write??
I was told at some point that there was a hardware reason, and looking
around in the code I've seen comments claiming that there is inadequate
information at trap time to support it. However, I am dubious about this
claim, true the 370 is different in that the reference and modify bits
are not in the pte, they are in the storage array and the key protection
bits are in that array also, nevertheless there is a page protection bit
in the pte. So, unless I'm overlooking something, it seems like everything
you need is there. But, enough of my rambling, the fact of the matter is
that it doesn't do copy on write at present, so vfork() may not be such
a bad idea for code on the 370. The PS/2, on the other hand, does support
copy on write.

Disclaimer: I don't speak for my employer.


-- 
Jack F. Vogel			jackv at locus.com
AIX370 Technical Support	       - or -
Locus Computing Corp.		jackv at turnkey.TCC.COM



More information about the Comp.unix.aix mailing list