¿Sabías que el directorio /proc se rellena desde cero cada vez que tu sistema GNU/Linux arranca y durante todo el tiempo que esté funcionando? El kernel hace un estudio de todo el hardware del sistema y almacena esa información allí, facilitando a otros programas la búsqueda de información detallada sobre el hardware del sistema.
Probablemente lo más importante que hay que entender sobre “/proc” es que no es un directorio normal con archivos normales – es más bien una vista de las partes internas del sistema. Los archivos de este directorio no se leen y se guardan en el disco duro como un documento normal o un MP3 – son generados por el núcleo de Linux sobre la marcha. Acceder al archivo “/proc/meminfo” probablemente te dará resultados diferentes cada vez porque el uso de la memoria está casi siempre fluctuando.
Al poner este tipo de información del sistema en un sistema de archivos virtual como “/proc”, los desarrolladores se adhieren a la filosofía UNIX “todo es un archivo”. Hacen esto para que pueda ser leído fácilmente por cualquier persona o software con la misma facilidad que un archivo de texto normal, sin necesidad de bibliotecas o lenguajes especiales. Para nosotros, esto significa que la información actualizada del sistema está siempre fácilmente disponible.
Vamos a ver las opciones que nos ofrece el directorio /proc.
/proc/cpuinfo
Si has pasado algún tiempo en “/proc”, es muy probable que estés familiarizado con este archivo. Mostrar el contenido de “/proc/cpuinfo” te dará una imagen detallada de qué CPU tienes exactamente y qué características soporta.

/proc/meminfo
El otro archivo bien conocido en /proc, “meminfo”, es un archivo muy útil para tenerlo a mano. Muestra información sobre el uso de la memoria y el swap y es una de las formas en que los scripts y los programas pueden saber qué hay disponible.

/proc/cmdline
Este archivo muestra las opciones que se utilizan para iniciar el kernel. Esto puede ser útil cuando se solucionan problemas de arranque o si necesitas verificar qué archivo del kernel se utilizó para el arranque. También puede comprobar si tu lista negra de controladores funciona.

/proc/filesystems
Un archivo menos conocido pero aún útil es “filesystems”. Desde aquí puedes leer la lista (algo extensa) de sistemas de archivos actualmente soportados por tu kernel. No todos estos son el tipo de sistemas de archivos que usarías para almacenar tus datos – algunos son como “/proc” y tienen usos especiales.

/proc/PID
En este caso, PID es el ID del proceso de un programa en ejecución. Cada proceso tiene un número único que el sistema utiliza para identificar esa instancia particular de ese programa concreto. Por ejemplo, cuando ejecutas el programa top desde la línea de órdenes de terminal, ves una lista de procesos en ejecución y sus PID. Cada proceso tiene su propio subdirectorio en “/proc”, en el que puedes buscar información sobre ese proceso en particular.
Cuando usas la orden top o el monitor del sistema, lo que aparece en ejecución es información de los PID de /proc.

/proc/modules
Uno de los archivos más importantes de /proc, “modules”, contiene una lista completa de los módulos del kernel actualmente activos. Si alguna vez has tenido que trabajar con problemas de controladores de vídeo, probablemente sabrás lo útil que puede ser esto. Aunque probablemente no sea algo que utilices a diario, este archivo puede ser un salvavidas para la resolución de problemas.

/proc/mounts
Puedes comprobar rápida y fácilmente todos tus dispositivos montados abriendo el archivo “mounts”. Una vez más, muchos de los elementos aquí no son necesariamente puntos de montaje que un usuario necesita conocer. La mayoría de las secciones relevantes para ti se encontrarán hacia el final.

Ciertamente hay más en “/proc” de lo que se puede cubrir aquí, por lo que animo a cualquiera que lea esto a que hurgue un poco en “/proc” para encontrar los trozos de información que podrían ser realmente útiles para ti. Aunque muchos de los archivos que encontrarás allí están destinados a ser utilizados por el propio sistema operativo, todos ellos pueden proporcionar una valiosa mirada a las operaciones de nuestro sistema GNU/Linux.
Fuente: maslinux
