Léxico de TI › Programação › exec

exec

Programação Svenska → Atualizado: 2026-09-29

A chamada de sistema que troca o conteúdo de um processo por outro programa — mesmo processo, código novo.

Enquanto o fork() cria um novo processo, o exec() mantém o processo, descarta sua memória, carrega um novo executável e começa pelo ponto de entrada. O PID, os descritores de arquivo abertos e o diretório de trabalho são preservados. Em caso de sucesso, a chamada nunca retorna — não sobrou código para onde voltar.

A combinação fork-depois-exec é o jeito do Unix de iniciar programas, e a separação é proposital: entre as duas chamadas o filho pode mudar coisas que devem valer para o novo programa — redirecionar a saída padrão, definir variáveis de ambiente, abrir mão de privilégios. É exatamente o que um shell faz quando você digita um comando com >.

← Voltar ao léxico