<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Información sobre los procesos</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.0"><link rel="home" href="index.html" title="Guía de Referencia"><link rel="up" href="proc-fs.html" title="Capítulo 10. El sistema de archivos /proc"><link rel="previous" href="proc-fs.html" title="Capítulo 10. El sistema de archivos /proc"><link rel="next" href="ch10s02.html" title="Información sobre el hardware"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Información sobre los procesos</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="proc-fs.html">Anterior</a> </td><th width="60%" align="center">Capítulo 10. El sistema de archivos /proc</th><td width="20%" align="right"> <a accesskey="n" href="ch10s02.html">Siguiente</a></td></tr></table><hr></div><div class="sect1" lang="es"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2556534"></a>Información sobre los procesos</h2></div></div><div></div></div><p><a name="BId-proc-fs-pa3"></a><a class="indexterm" name="BId-proc-fs-it1"></a>Si Usted lista el contenido del directorio <tt class="filename">/proc</tt>, verá muchos directorios cuyo nombre es un número. Estos son los directorios que contienen información sobre todos los procesos que están corriendo en el sistema en ese momento:</p><a name="BId-proc-fs-pl1"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="programlisting">$ ls -d /proc/[0-9]* /proc/1/ /proc/302/ /proc/451/ /proc/496/ /proc/556/ /proc/633/ /proc/127/ /proc/317/ /proc/452/ /proc/497/ /proc/557/ /proc/718/ /proc/2/ /proc/339/ /proc/453/ /proc/5/ /proc/558/ /proc/755/ /proc/250/ /proc/385/ /proc/454/ /proc/501/ /proc/559/ /proc/760/ /proc/260/ /proc/4/ /proc/455/ /proc/504/ /proc/565/ /proc/761/ /proc/275/ /proc/402/ /proc/463/ /proc/505/ /proc/569/ /proc/769/ /proc/290/ /proc/433/ /proc/487/ /proc/509/ /proc/594/ /proc/774/ /proc/3/ /proc/450/ /proc/491/ /proc/554/ /proc/595/</pre></td></tr></table><p><a name="BId-proc-fs-pa4"></a>Note que como usuario no privilegiado, Usted (lógicamente) sólo puede mostrar la información relacionada con sus propios procesos, pero no con los de los otros usuarios. Entonces, seamos <tt class="literal">root</tt> y veamos que información está disponible acerca del proceso 127:</p><a name="BId-proc-fs-pl2"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="programlisting">$ su Password: $ cd /proc/127 $ ls -l total 0 -r--r--r-- 1 root root 0 dic 14 19:53 cmdline lrwx------ 1 root root 0 dic 14 19:53 cwd -> // -r-------- 1 root root 0 dic 14 19:53 environ lrwx------ 1 root root 0 dic 14 19:53 exe -> /usr/sbin/apmd* dr-x------ 2 root root 0 dic 14 19:53 fd/ pr--r--r-- 1 root root 0 dic 14 19:53 maps| -rw------- 1 root root 0 dic 14 19:53 mem lrwx------ 1 root root 0 dic 14 19:53 root -> // -r--r--r-- 1 root root 0 dic 14 19:53 stat -r--r--r-- 1 root root 0 dic 14 19:53 statm -r--r--r-- 1 root root 0 dic 14 19:53 status $</pre></td></tr></table><p><a name="BId-proc-fs-pa5"></a>Cada directorio contiene las mismas entradas. Aquí tiene una descripción breve de algunas de ellas:</p><div class="orderedlist"><ol type="1"><li><p><a name="BId-proc-fs-pa6"></a><tt class="filename">cmdline</tt>: este (pseudo-)archivo contiene toda la línea de comandos usada para invocar al proceso. No tiene formato: no hay un espacio entre el programa y sus argumentos, y tampoco hay un salto de línea al final. Para poder verlo, puede usar: <span><b class="command">perl -ple 's,\00, ,g' cmdline</b></span>.</p></li><li><p><a name="BId-proc-fs-pa7"></a><tt class="filename">cwd</tt>: este vínculo simbólico apunta al directorio de trabajo corriente (“<span class="quote">current working directory</span>” en inglés, de allí el nombre) del proceso.</p></li><li><p><a name="BId-proc-fs-pa8"></a><a class="indexterm" name="BId-proc-fs-it2"></a><tt class="filename">environ</tt>: este archivo contiene todas las variables de entorno definidas por este proceso, de la forma <tt class="option">VARIABLE=valor</tt>. Al igual que con <tt class="filename">cmdline</tt>, la salida no tiene formato alguno: no hay saltos de línea para separar las diferentes variables, y tampoco al final. Una solución para verlo:<span><b class="command">perl -ple 's,\00,\n,g' environ</b></span>.</p></li><li><p><a name="BId-proc-fs-pa9"></a><tt class="filename">exe</tt>: este es un vínculo simbólico que apunta al archivo ejecutable correspondiente al proceso en curso de ejecución.</p></li><li><p><a name="BId-proc-fs-pa10"></a><tt class="filename">fd</tt>: este subdirectorio contiene la lista de los “<span class="quote">descriptores</span>” de archivo abiertos actualmente por el proceso. Vea abajo.</p></li><li><p><a name="BId-proc-fs-pa11"></a><tt class="filename">maps</tt>: cuando Usted muestra el contenido de esta tubería nombrada (por ejemplo, con <span><b class="command">cat</b></span>), puede ver las partes del espacio de direccionamiento del proceso que en ese momento están proyectadas sobre un archivo. Los campos, de izquierda a derecha, son: el espacio de direccionamiento asociado a esta proyección, los permisos asociados a esta proyección, el desplazamiento desde el comienzo del archivo donde comienza la proyección, el dispositivo en el cual se encuentra el archivo proyectado, el número de i-nodo del archivo, y finalmente el nombre del archivo en sí mismo. Consulte <span class="citerefentry"><span class="refentrytitle"><a name="BId-proc-fs-rt1"></a>mmap</span>(2)</span>.</p></li><li><p><a name="BId-proc-fs-pa12"></a><a class="indexterm" name="BId-proc-fs-it3"></a><tt class="filename">root</tt>: este es un vínculo simbólico que apunta al directorio raíz usado por el proceso. Generalmente, será <tt class="filename">/</tt>, pero consulte <span class="citerefentry"><span class="refentrytitle"><a name="BId-proc-fs-rt2"></a>chroot</span>(2)</span>.</p></li><li><p><a name="BId-proc-fs-pa13"></a><tt class="filename">status</tt>: este archivo contiene información diversa sobre el proceso: el nombre del ejecutable, su estado corriente su <span class="acronym">PID</span> y su <span class="acronym">PPID</span>, sus <span class="acronym">UID</span> y <span class="acronym">GID</span> reales y efectivos, su uso de memoria, y otra información. Note que los archivos <tt class="filename">stat</tt> y <tt class="filename">statm</tt> ahora son obsoletos. La información que contenían ahora se almacena en <tt class="filename">status</tt>.</p></li></ol></div><p><a name="BId-proc-fs-pa14"></a>Si listamos el contenido del directorio <tt class="filename">fd</tt>, siempre para nuestro proceso 127, obtenemos lo siguiente:</p><a name="BId-proc-fs-pl3"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="programlisting">$ ls -l fd total 0 lrwx------ 1 root root 64 dic 16 22:04 0 -> /dev/console l-wx------ 1 root root 64 dic 16 22:04 1 -> pipe:[128] l-wx------ 1 root root 64 dic 16 22:04 2 -> pipe:[129] l-wx------ 1 root root 64 dic 16 22:04 21 -> pipe:[130] lrwx------ 1 root root 64 dic 16 22:04 3 -> /dev/apm_bios lr-x------ 1 root root 64 dic 16 22:04 7 -> pipe:[130] lrwx------ 1 root root 64 dic 16 22:04 9 -> /dev/console $</pre></td></tr></table><p><a name="BId-proc-fs-pa15"></a>De hecho, esta es la lista de los descriptores de archivo que abrió el proceso. Cada descriptor abierto está materializado por un vínculo simbólico cuyo nombre es el número del descriptor, y que apunta al archivo abierto por este descriptor<sup>[<a name="id2557035" href="#ftn.id2557035">27</a>]</sup>. También puede notar los permisos sobre los vínculos simbólicos: este es el único lugar donde los derechos tienen sentido, ya que representan los permisos con los cuales se abrió el archivo correspondiente al descriptor.</p><div class="footnotes"><br><hr width="100" align="left"><div class="footnote"><p><sup>[<a name="ftn.id2557035" href="#id2557035">27</a>] </sup>Si recuerda lo que se mencionó en la sección <a href="shell-pipes.html" title="Redirecciones y tuberías">“Redirecciones y tuberías”</a>, sabrá el significado de los descriptores 0, 1 y 2.</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="proc-fs.html">Anterior</a> </td><td width="20%" align="center"><a accesskey="u" href="proc-fs.html">Subir</a></td><td width="40%" align="right"> <a accesskey="n" href="ch10s02.html">Siguiente</a></td></tr><tr><td width="40%" align="left" valign="top">Capítulo 10. El sistema de archivos /proc </td><td width="20%" align="center"><a accesskey="h" href="index.html">Inicio</a></td><td width="40%" align="right" valign="top"> Información sobre el hardware</td></tr></table></div></body></html>