Стартиране на дъщерен процес
#include<sys/types.h>
#include<unistd.h>
pid_t fork(void);
pid_t getpid(void);
pid_t getppid(void);
- Успешно извикване на fork() създава нов процес, идентичен почти във всички аспекти с извикващия го процес.
 - Родителският процес получава идентификатора (pid) на дъщерния процес, а дъщерния процес получава нула.
 - При грешка и дъщерния процес не е създаден, fork() връща -1 и грешката (errno) може да бъде:
 
| Грешка | Пояснение | 
|---|---|
| EAGAIN | Ядрото не успя да разпредели определени ресурси, като например нов идентификатор (pid) на процес. | 
| ENOMEM | Няма достатъчно памет на ядрото за изпълнение на заявката. | 
Програмен фрагмен за стартиране на дъщерен процес:
pid_t pid = fork();
if(pid > 0)
{
    printPIDs("PARENT");
    wait(&child_status);
}
else if(!pid) {
    printPIDs("CHILD");
    exit(0);
}
else if(pid == -1) 
    printf("ERROR");
    return EXIT_FAILURE;
}
Повече информация: Linux Programming