ver procesos ejecucion corriendo comando aux linux memory process operating-system

corriendo - ver procesos en ejecucion linux



¿Cómo encontrar o calcular el tamaño de la tabla de páginas de un proceso de Linux y otra contabilidad del kernel? (5)

¿Cómo puedo averiguar qué tan grande es la tabla de páginas de un proceso Linux, junto con cualquier otra contabilidad de proceso de tamaño variable?


Hmmm, en Ye Olden Tymes, solíamos llamar a nlist (3) para obtener la dirección del sistema para los datos que estábamos interesados, luego abrimos / dev / kmem, buscamos la dirección y luego leemos los datos. No estoy seguro de si esto funciona en Linux, pero podría valer la pena escribir "man 3 nlist" y ver qué devuelve.


No estoy seguro acerca de Linux, pero la mayoría de las variantes de UNIX proporcionan sysctl(3) para este propósito. También está la utilidad de línea de comandos sysctl(8) .


Si está realmente interesado en las tablas de páginas, haga una

$ cat /proc/meminfo | grep PageTables PageTables: 24496 kB


Debe describir su problema y no preguntar sobre los detalles. Si bifurca demasiado (especialmente con un proceso que tiene un gran espacio de direcciones) hay todo tipo de cosas que van mal (incluida la memoria), golpear un tamaño máximo de la tabla de páginas no es en absoluto un problema realista.

Thad dijo: "También me gustaría leer un contenido de página de proceso compartido en Linux".

Como regla general, puede suponer que cada proceso ocupa una parte de la tabla de páginas que es igual a su tamaño virtual, por ejemplo, 6 bytes para cada página. Entonces, por ejemplo, si tiene una Base de Datos Oracle con 8GB SGA y 500 Procesos que la comparten, cada uno de los procesos usará una tabla de 14MB, lo que da como resultado 7GB de tablas de páginas + 8 GB de SGA. (Números de muestra de http://kevinclosson.wordpress.com/2009/07/25/little-things-doth-crabby-make-%E2%80%93-part-ix-sometimes-you-have-to-really -really-want-your-hugepages / )


Desde Linux 2.6.10, la cantidad de memoria utilizada por las tablas de página de un solo proceso ha sido expuesta a través del campo VmPTE de /proc/<pid>/status .