Gestion De Procesos En Linux
GABRIEL GALVÁN HERNÁNDEZ FELIX MEDINA ARTEAGA
ING. SAMIR CASTAÑO RIVERA
SISTEMAS OPERATIVOS
UNIVERSIDAD DE CÓRDOBA FACULTAD DE INGENIERIAS INGENIERÍA DE SISTEMAS MONTERIA – CÓRDOBA 2012
Gestion De Procesos en Sistemas Linux Basados en Debian
El núcleo de los sistemas Linux es el kernel, el cual se encarga de realizar o ejecutar todoslos procesos. Durante su arranque pone en funcionamiento una carpeta virtual llamada /proc, donde vuelca la información que recopila de la máquina, así como muchos de sus datos internos, durante la ejecución el directorio /proc está implementado sobre memoria y no se guarda en disco. Los datos contenidos no son ni binarios ni textos y su tamaño es 0; contiene todos los detalles del sistema Linux,incluyendo el kernel, procesos y parámetros de configuración. En los sistemas Linux, todo es administrado como un archivo; incluso los dispositivos son accedidos como archivos (en el directorio /dev), el directorio /proc contiene una extraño tipo de archivo: archivos virtuales. Estos archivos son listados, pero realmente no existen en disco; el sistema operativo los crea al vuelo si tratas deleerlos. La mayoría de los archivos virtuales siempre tienen una marca de tiempo (timestamp) actual, lo que indica que están constantemente siendo actualizados. El directorio /proc en sí mismo es creado cada vez que arrancas tu equipo. Se requiere ser usuario root para poder examinar completamente el directorio en su totalidad, algunos de los archivos (tales como los relacionados a procesos) sonpropiedad del usuario que los ejecutó. Y aunque casi todos los archivos son de solo lectura, hay algunos pocos con permisos de escritura (notablemente en /proc/sys) que permiten realizar cambios en los parámetros del kernel. Organización del directorio /proc. El directorio /proc está organizado en directorios virtuales y subdirectorios, que agrupan archivos de tópicos similares. Trabajando comousuario administrador y ejecutando el comando ls /proc se muestran los directorios y archivos contenidos.
Los directorios con números corresponden a cada proceso en ejecución; un autoenlace simbólico apunta al proceso actual. Algunos archivos virtuales proveen información sobre el hardware, tal como /proc/cpuinfo y /proc/interrupts. Otros proporcionan información relacionada a los archivos, talescomo /proc/filesystems o /proc/partitions. Los archivos situados bajo /proc/sys son relacionados a la configuración de parámetros del kernel. Ejemplo: El comando cat /proc/meminfo puede traer a la pantalla la información de memoria:
Al ejecutar los comandos top o free, es posible que reconocer algunos de estos valores. De hecho, varias utilerías muy conocidas acceden al directorio /proc paraobtener su información. Por ejemplo, si se desea
saber qué tipo de kernel estás corriendo, se puede utilizar el comando uname -svr, o ir directamente al origen y teclear cat /proc/versión. Ejemplo:
Listados de ficheros importantes del directorio /proc y descripción.
¿Cómo se representan los procesos dentro del directorio /proc?. Dentro del directorio /proc existen subdirectorios con nombrenumérico que representan a los procesos en ejecución. Cuando un proceso termina, su directorio /proc desaparece automáticamente. Si se abre
cualquiera de estos directorios mientras existen, se encontraran diferentes archivos como:
Dentro de los archivos principales se encuentran: cmdline: Contiene el comando que inicio el proceso, con todos sus parámetros. cwd: Enlace simbólico al directorioactual de trabajo (current working directory cwd) del proceso; enlaces exe a los procesos ejecutables y enlaces root a su directorio superior. environ: Muestras todas las variables de ambiente para el proceso. fd: Contiene los descriptores de archivo para el proceso, mostrando cuáles archivos o dispositivos lo están usando. maps, statm and mem: Trabaja con la memoria en uso por el proceso. stat...
Regístrate para leer el documento completo.