SYNOPSIS
#include <unistd.h>
pid_t fork(void);
DESCRIPTION
The
- Real and effective user and group IDs
- Environment settings
- Signal handling settings
- Attached shared memory segments
- Memory mapped segments
- Process group ID
- Current working directory
- File mode creation mask
- Controlling terminal
- nice value
The child process differs from the parent process in the following ways:
- The child process has a unique process ID, which also does not match any active process group ID.
- The child process has a different parent process ID (that is, the process ID of the process that called
fork()).
- The child process has its own copy of the parent's file descriptors Each of the child's file descriptors refers to the same open file structures as the file descriptor of the parent.
- The child process has its own copy of the parent's open directory streams.
- The child process' process execution times (as returned by
times()) are set to zero.
- Pending alarms are cleared for the child.
- All semaphore adjustment values are cleared.
- File locks set by the parent process are not inherited by the child process.
- The set of signals pending for the child process is cleared.
- Interval timers are reset.
The new process has a single thread. If a multi-threaded process calls
PARAMETERS
None.
RETURN VALUES
If successful,
- EAGAIN
The system lacked the necessary resources to create another process, or the system-imposed limit on the total number of processes under execution system-wide would be exceeded.
The process calling
fork()is not a NuTCRACKER Platform process.
- ENOSYS
fork()was called inside the child of a vfork()operation.
CONFORMANCE
UNIX 98, with exceptions.
MULTITHREAD SAFETY LEVEL
Async-signal-safe, with exceptions.
This function is only Async-signal-safe on Windows NT, not on Windows 9x.
PORTING ISSUES
The Windows process model differs considerably from the UNIX process model.
The NuTCRACKER Platform implements
You may not call
You may not call
AVAILABILITY
PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Professional Developers 64-Bit Edition
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition
SEE ALSO
- Functions:
alarm(), execl(), execle(), execlp(), execlpe(), execv(), execve(), execvp(), execvpe(), mmap(), pthread_atfork(), semop(), setitimer(), setpriority(), shmat(), signal(), times(), umask(), vfork()
PTC MKS Toolkit 10.1 patch 1 Documentation Build 2.