Usando getrlimit (RLIMIT_MEMLOCK), se puede obtener la cantidad permitida de memoria bloqueada que un proceso puede asignar (mlock() o mlockall()).Cuánta memoria está bloqueada en un proceso
¿Pero cómo recuperar la cantidad de memoria actualmente bloqueada?
Por ejemplo, getrusage() no devuelve información.
En Linux, es posible leer/proc/self/status y extraer la cantidad de memoria bloqueada de la línea que comienza con VmLck.
¿Hay alguna forma portátil de recuperar la cantidad de memoria bloqueada que funcionaría en Linux, * BSD y otros sistemas POSIX compatibles?
POSIX especifica que las llamadas a mlock y mlockall fallarán con ENOSYS si la llamada no se implementa. Esto significa que no hay una interfaz portátil garantizada para bloquear/desbloquear, portátil en el sentido de que está garantizado su implementación. También. No hay una forma especificada de POSIX para enumerar las páginas bloqueadas de la memoria de proceso. –