ultrix man page for vfork

Query: vfork

OS: ultrix

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

vfork(2)							System Calls Manual							  vfork(2)

Name
       vfork - spawn new process in a virtual memory-efficient way

Syntax
       pid = vfork()
       int pid;

Description
       The  can  be used to create new processes without fully copying the address space of the old process, which is inefficient in a paged envi-
       ronment.  It is useful when the purpose of would have been to create a new system context for an The system call differs from in  that  the
       child borrows the parent's memory and thread of control until a call to or an exit (either by a call to or abnormally.)	The parent process
       is suspended while the child is using its resources.

       The system call returns a value of zero (0) in the child's context and, later, the pid of the child in the parent's context.

       The system call can normally be used just like It does not work, however, to return while running in the childs context from the  procedure
       which  called because the eventual return from would then return to a nonexistent stack frame.  Be careful, also, to call _exit rather than
       exit if you cannot call because exit will flush and close standard I/O channels and thereby cause problems in the parent process's standard
       I/O data structures.  Even with it is wrong to call exit, because buffered data would then be flushed twice.

Restrictions
       To avoid a possible deadlock situation, processes which are children in the middle of a are never sent SIGTTOU or SIGTTIN signals.  Rather,
       output or ioctls are allowed, and input attempts result in an end-of-file indication.

Diagnostics
       Same as for

See Also
       execve(2), fork(2), sigvec(2), wait(2)

																	  vfork(2)
Related Man Pages
vfork(3) - linux
vfork(2) - ultrix
vfork(2) - opendarwin
vfork(2) - freebsd
vfork(2) - posix
Similar Topics in the Unix Linux Community
pause() problems
Program to spawn multiple processes
when parent process close, how to close the child?
Problem with Pipes => Only works first pipe
program to send messages to parent using pipes and select system call