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@blv.com.br>
(tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx>
(revisão)