Manpages

NOME

fork − cria um processo filho

SINOPSE

#include <unistd.h>

pid_t fork(void);

DESCRIPTION

fork cria um processo filho que diferencia-se a partir do processo pai somente em suas PID e PPID, e np fato que a utilização de recursos é selecionada para 0. Arquivos travados e sinais pendentes não são herdados.

No Linux, fork is implemented using copy-on-write pages, so the only penalty incurred by fork is the time and memory required to duplicate the parent’s page tables, and to create a unique task structure for the child.

RETURN VALUE

Em caso de sucesso, a PID do processo filho é devolvida na thread pai de execução, e um 0 é retornado na thread filha de execução. Caso contrário, um −1 será retornado no contexo pai, e nenhum processo filho será criado, e errno será selecionado adequadamente.

ERROS

EAGAIN

fork não pode alocar memória suficiente para copiar as tabelas de páginas pais e alocar a estrutura de tarefa para o filho.

ENOMEM

fork falhou ao alocar as estruturas do kernel necessárias porque a memória é pequena.

DE ACORDO COM

A chamada fork obedece SVr4, SVID, POSIX, X/OPEN, BSD 4.3.

VEJA TAMBÉM

clone(2), execve(2), vfork(2), wait(2)

TRADUZIDO POR LDP-BR em 21/08/2000.

André L. Fassone Canova <lonelywolf [AT] blv.br> (tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx [AT] xxxxxx.xx> (revisão)