Voltar à lista
Linux x86_64Sinais#62

kill

Envia um sinal a um processo ou grupo de processos.

Descrição

Apesar do nome, não mata necessariamente o processo — o efeito depende do sinal enviado e de como o destinatário o trata. `pid` positivo, negativo, 0 ou -1 selecionam formas diferentes de endereçar processos individuais ou grupos inteiros.

Header: signal.hman 2

Nota

`sig == 0` é o idioma padrão para testar se um processo com um dado PID existe e é acessível, sem efeitos colaterais.

Assinatura

int kill(pid_t pid, int sig);

Parâmetros

ParâmetroTipoDescrição
pidpid_tAlvo: > 0 processo específico; 0 todo o grupo do chamador; -1 (exceto init) todos os processos alcançáveis; < -1 o grupo de processos |pid|.
sigintNúmero do sinal a enviar, ou 0 para apenas checar permissão/existência sem enviar nada.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1pidpid_t
rsiargumento 2sigint

Valor de retorno

0 em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

EINVAL(22)
Argumento inválido.
EPERM(1)
Operação não permitida (falta de privilégio).
ESRCH(3)
Processo inexistente.

Relacionadas