A função ulimit () deve controlar os limites do processo. Os limites do processo que podem ser controlados por essa função incluem o tamanho máximo de um único arquivo que pode ser gravado (isso é equivalente ao uso de setrlimit () com RLIMIT_FSIZE).
Além disso, se você olhar para a setrlimitpágina de manual, a estrutura de dados subjacente que contém as informações de limite é chamada rlimit.
getrlimit e setrlimit get e definem limites de recursos, respectivamente. Cada recurso possui um limite flexível e flexível associado, conforme definido pela estrutura rlimit (o argumento rlim para getrlimit () e setrlimit ()):
struct rlimit {
rlim_t rlim_cur; /* Soft limit */
rlim_t rlim_max; /* Hard limit (ceiling
for rlim_cur) */
};
Referindo-se à página de manual ulimit , é um comando bash shell para controlar os rlimits do sistema e uma parte dos bash-builtins como printf, read, source, etc.
Na página getrlimits de referência , ela representa as APIs via C / C ++ usando chamadas do sistema para controlar os rlimits do sistema. A documentação adicional da glibc explica melhor os rlimits (= limites de recursos).
Respostas:
Eu acho que a confusão vem do fato de que o sistema subjacente chama de ulimit wraps é chamado setrlimit .
trecho da página de manual ulimit
Além disso, se você olhar para a
setrlimit
página de manual, a estrutura de dados subjacente que contém as informações de limite é chamadarlimit
.trecho da página de manual setrlimit
Referências
fonte
Referindo-se à página de manual ulimit , é um comando bash shell para controlar os rlimits do sistema e uma parte dos bash-builtins como printf, read, source, etc.
Na página getrlimits de referência , ela representa as APIs via C / C ++ usando chamadas do sistema para controlar os rlimits do sistema. A documentação adicional da glibc explica melhor os rlimits (= limites de recursos).
fonte
ulimit
pode ser duas coisas:uma interface da API do POSIX 7 C que foi preterida em favor de
getrlimit()
: http://pubs.opengroup.org/onlinepubs/9699919799/functions/ulimit.htmlEste não foi o caso quando
sim
respondido no POSIX 6.No GNU / Linux,
getrlimit()
eulimit()
são implementados com asys_getrlimit
chamada do sistema. Não existesys_ulimit
.um utilitário CLI POSIX 7 não reprovado: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ulimit.html
Pode ser implementado com
ulimit()
ougetrlimit()
.fonte