Rechercher une page de manuel
getrlimit
Langue: es
Version: 23 julio 1993 (fedora - 25/11/07)
Section: 2 (Appels système)
NOMBRE
getrlimit, getrusage, setrlimit - devuelve/establece el límite de recursos y su utilizaciónSINOPSIS
#include <sys/time.h>#include <sys/resource.h>
#include <unistd.h>
int getrlimit (int resource, struct rlimit *rlim);
int getrusage (int who, struct rusage *usage);
int setrlimit (int resource, const struct rlimit *rlim);
DESCRIPCIÓN
getrlimit y setrlimit devuelve / establece el límite de recursos, respectivamente. resource debería ser uno de los siguientes:RLIMIT_CPU /* tiempo de CPU en segundos */
RLIMIT_FSIZE /* tamaño Máximo de fichero */
RLIMIT_DATA /* tamaño máximo de los datos */
RLIMIT_STACK /* tamaño máximo de la pila */
RLIMIT_CORE /* tamaño máximo del fichero del núcleo */
RLIMIT_RSS /* tamaño máximo de la parte
residente (fija) */
RLIMIT_NPROC /* núero máximo de procesos */
RLIMIT_NOFILE /* número máximo de ficheros abiertos */
RLIMIT_MEMLOCK /* máximo espacio de direcciones fijado
en memoria*/
RLIMIT_AS /* límite del espacio de direcciones
(memoria virtual) */
Un recurso puede definirse como ilimitado si se establece el límite en RLIM_INFINITY. RLIMIT_OFILE es el nombre BSD para RLIMIT_NOFILE.
La estructura rlimit está definida como sigue:
struct rlimit { int rlim_cur; int rlim_max; };
getrusage devuelve la utilización actual de los recursos, para un who de cualquiera de los siguientes, bien RUSAGE_SELF oo RUSAGE_CHILDREN.
struct rusage { struct timeval ru_utime; /* tiempo de usuario utilizado */ struct timeval ru_stime; /* tiempo de sistema utilizado */ long ru_maxrss; /* tamaño máximo de la parte establecida como residente */ long ru_ixrss; /* tamaño total de la memoria compartida */ long ru_idrss; /* tamaño total de la memoria no compartida */ long ru_isrss; /* tamaño de pila no compartido */ long ru_minflt; /* peticiones de página */ long ru_majflt; /* fallos de página */ long ru_nswap; /* intercambios */ long ru_inblock; /* operaciones de entrada de bloques */ long ru_oublock; /* operaciones de salida de bloques */ long ru_msgsnd; /* mensajes enviados */ long ru_msgrcv; /* mensajes recibidos */ long ru_nsignals; /* señales recibidas */ long ru_nvcsw; /* cambios de contexto voluntarios */ long ru_nivcsw; /* cambios de contexto involuntarios */ };
VALOR DEVUELTO
Si tiene éxito, devuelve cero. Si hay error, devuelve -1, y errno toma el correspondiente valor.ERRORES
- EFAULT
- rlim o usage apuntan fuera del espacio de direcciones accesible.
- EINVAL
- getrlimit o setrlimit es llamado con un resource erróneo, o getrusage es llamado con un who erróneo.
- EPERM
- Un no-superusuario intenta utilizar setrlimit() para incrementar el límite `flexible' o `estricto' por encima del límite estricto actual, o un superusuario intenta incrementar RLIMIT_NOFILE por encima del máximo actual del núcleo.
CONFORME A
SVr4, BSD 4.3VÉASE TAMBIÉN
ulimit(2), quotactl(2)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre