Voltar à lista
Linux x86_64Processos & threads#302

prlimit64

Consulta e/ou define limites de recurso de qualquer processo (não apenas o chamador), com valores de 64 bits sem truncamento.

Descrição

Combina e substitui `getrlimit`/`setrlimit`, adicionando a capacidade de ajustar limites de outro processo (com permissão) — usado por ferramentas de gerência de recursos e supervisores de processo.

man 2Desde o kernel 2.6.36

Assinatura

int prlimit64(
    pid_t pid,
    int resource,
    const struct rlimit64 * new_limit,
    struct rlimit64 * old_limit
);

Parâmetros

ParâmetroTipoDescrição
pidpid_tProcesso alvo; 0 significa o chamador.
resourceintTipo de recurso.
new_limitconst struct rlimit64 *Novos limites, ou NULL para apenas consultar.
old_limitstruct rlimit64 *Se não for NULL, recebe os limites anteriores.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1pidpid_t
rsiargumento 2resourceint
rdxargumento 3new_limitconst struct rlimit64 *
r10argumento 4old_limitstruct rlimit64 *

Valor de retorno

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

Códigos de erro (errno)

EFAULT(14)
Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).
EINVAL(22)
Argumento inválido.
EPERM(1)
Operação não permitida (falta de privilégio).
ESRCH(3)
Processo inexistente.

Relacionadas