Provided by: manpages-es_1.55-10_all bug

NOMBRE

       proc - pseudo-sistema de ficheros de información de procesos

DESCRIPCIÓN

       /proc  es  un  pseudo-sistema de ficheros que se usa como interfaz para las estructuras de
       datos del núcleo en lugar de leer e interpretar /dev/kmem. La mayor parte de este  sistema
       de  ficheros  es  de  sólo  lectura,  pero algunos ficheros permiten cambiar variables del
       núcleo.

       El siguiente resumen proporciona una rápida visita a la jerarquía /proc.

       [número]
              Hay un subdirectorio numérico  para  cada  proceso  en  ejecución;  el  nombre  del
              subdirectorio  es  el  ID  del  proceso.  Cada uno de ellos contiene los siguientes
              pseudo ficheros y directorios.

              cmdline
                     Éste contiene la línea de órdenes completa para el proceso, a menos  que  el
                     proceso entero se haya intercambiado a disco o a menos que el proceso sea un
                     proceso zombie. En cualquiera de estos dos últimos casos, no hay nada en  el
                     fichero,  es  decir,  una lectura sobre este fichero devolverá 0 caracteres.
                     Los argumentos de la línea de órdenes  aparecen  en  este  fichero  como  un
                     conjunto  de cadenas separadas por nulos, con un byte nulo adicional tras la
                     última cadena.

              cwd    Éste es un enlace hacia el directorio de trabajo  actual  del  proceso.  Por
                     ejemplo,  para  encontrar  el  directorio  de trabajo actual del proceso 20,
                     puede hacer esto:

                     cd /proc/20/cwd; /bin/pwd

                     Dese cuenta que la orden pwd es frecuentemente una orden interna del  shell,
                     y podría no funcionar adecuadamente. En bash, debe usar pwd -P.

              environ
                     Este  fichero contiene el entorno del proceso. Las entradas están serparadas
                     por caracteres nulos, y podría haber un carácter nulo al final.  Por  tanto,
                     para mostrar el entorno del proceso 1, debería hacer:

                     (cat /proc/1/environ; echo) | tr "\000" "\n"

                     (Una  razón  por  la  que  alguien querría hacer esto, la puede encontrar en
                     lilo(8).)

              exe    En la versiones 2.2 y 2.4 de Linux exe es un enlace simbólico  que  contiene
                     el  nombre de la ruta actual de la orden ejecutada.  El enlace simbólico exe
                     se puede resolver de  forma  normal  -  el  intentar  abrir  exe  abrirá  el
                     ejecutable.  Incluso  puede  teclear  /proc/[number]/exe  para ejecutar otra
                     copia del mismo proceso [número].

                     En Linux 2.0 y versiones anteriores exe es un puntero al fichero binario que
                     fue  ejecutado  y  aparece como un enlace simbólico. Una llamada readlink(2)
                     aplicada al fichero especial "exe" devuelve una cadena con el formato:

                     [dispositivo]:nodo-i

                     Por ejemplo, [0301]:1502 sería el  nodo-i  1502  sobre  el  dispositivo  con
                     número mayor 03 (discos IDE, MFM, etc.) y número menor 01 (primera partición
                     del primer disco.

                     find(1) con la opción -inum se puede usar para buscar el fichero.

              fd     Éste es un subdirectorio que contiene una entrada por cada fichero que tiene
                     abierto  el proceso, nombrada con el descriptor del fichero, y la cual es un
                     enlace simbólico al fichero real (como lo es la entrada exe). Por  tanto,  0
                     es  la entrada estándar, 1 es la salida estándar, 2 es la salida estándar de
                     error, etc.

                     Los programas que no leen de la  entrada  estándar,  sino  que  leen  de  un
                     fichero,  y  que  no escriben en la salida estándar, sino que escriben en un
                     fichero, pueden ser engañados de la siguiente manera, suponiendo que  -i  es
                     la  opción  que  designa al fichero de entrada y -o la opción que designa al
                     fichero de salida:
                     foobar -i /proc/self/fd/0 -o /proc/self/fd/1
                     y de esta manera su programa funcionará  como  filtro.   Note  que  esto  no
                     funcionará  en programas que realizan accesos aleatorios sobre sus ficheros,
                     ya que los ficheros del directorio fd no permiten este tipo de acceso.

                     /proc/self/fd/N  es  aproximadamente  lo  mismo  que  /dev/fd/N  en  algunos
                     sistemas UNIX y sistemas al estilo UNIX. De hecho, la mayoría de los guiones
                     shell MAKEDEV de Linux enlazan simbólicamente /proc/self/fd con /dev/fd.

              maps   Fichero que contiene las regiones de memoria  actualmente  asociadas  y  sus
                     permisos de acceso.

                     El formato es:

        Dirección         perms desplaz disp  nodo-i    ruta
        08048000-08056000 r-xp 00000000 03:0c 64593      /usr/sbin/gpm
        08056000-08058000 rw-p 0000d000 03:0c 64593      /usr/sbin/gpm
        08058000-0805b000 rwxp 00000000 00:00 0
        40000000-40013000 r-xp 00000000 03:0c 4165       /lib/ld-2.2.4.so
        40013000-40015000 rw-p 00012000 03:0c 4165       /lib/ld-2.2.4.so
        4001f000-40135000 r-xp 00000000 03:0c 45494      /lib/libc-2.2.4.so
        40135000-4013e000 rw-p 00115000 03:0c 45494      /lib/libc-2.2.4.so
        4013e000-40142000 rw-p 00000000 00:00 0
        bffff000-c0000000 rwxp 00000000 00:00 0

                     donde dirección es el espacio de direcciones del proceso que ocupa, perms es
                     un conjunto de permisos:

                          r = leer
                          w = escribir
                          x = ejecutar
                          s = compartido
                          p = privado (copia en escritura)

                     desplaz es el desplazamiento dentro del fichero/cosa, disp es el dispositivo
                     (mayor:menor)  y nodo-i es el nodo-i en ese dispositivo. 0 indica que no hay
                     un nodo-i asociado a la región de memoria, como ocurriría con la región  bss
                     del proceso.

                     En Linux 2.0 no existe un campo que dé el nombre de la ruta.

              mem    A  través del fichreo mem se puede acceder a las páginas de la memoria de un
                     proceso mediante open(2), read(2) y fseek(3).

              root   Unix y Linux soportan la idea de  una  raíz  del  sistema  de  ficheros  por
                     proceso,  asignada  por  la  llamada al sistema chroot(2).  Root apunta a la
                     raíz del sistema de ficheros y se comporta como lo hacen exe, fd/*, etc.

              stat   Información de estado del proceso. Ésta es usada por ps(1).   Se  define  en
                     /usr/src/linux/fs/proc/array.c.

                     Los  campos,  en orden, junto con sus indicadores de formato apropiados para
                     scanf(3), son:

                     pid %d Identificador del proceso.

                     comm %s
                            Nombre de fichero del ejecutable,  en  paréntesis.  Éste  es  visible
                            dependiendo de si el ejecutable ha sido o no intercambiado.

                     state %c
                            Un  carácter  de la cadena "RSDZTW" donde R significa en ejecución, S
                            bloqueado de forma interrumpible, D bloqueado de forma ininterrupible
                            en  una espera de disco, Z zombie, T proceso en ejecución paso a paso
                            o parado (en una señal) y W transfiriendo páginas.

                     ppid %d
                            El PID del padre.

                     pgrp %d
                            El identificador del grupo de procesos del proceso.

                     session %d
                            El identificador de sesión del proceso.

                     tty_nr %d
                            El terminal que usa el proceso.

                     tpgid %d
                            El identificador del grupo de procesos del proceso al  que  pertenece
                            actualmente la terminal a la que está conectado el proceso.

                     flags %u
                            Las  banderas  del  proceso.  El bit "math" es el 4 (en decimal) y el
                            bit "paso a paso" el 10 (en decimal).

                     minflt %lu
                            El número de fallos de página menores producidos por el  proceso  que
                            no han necesitado la carga de una página de memoria desde disco.

                     cminflt %lu
                            El número de fallos de página menores producidos por el proceso y sus
                            hijos.

                     majflt %lu
                            El número de fallos de página mayores producidos por el  proceso  que
                            han necesitado la carga de una página de memoria desde disco.

                     cmajflt %lu
                            El número de fallos de página mayores producidos por el proceso y sus
                            hijos.

                     utime %ld
                            El número de jiffies que este  proceso  se  ha  planificado  en  modo
                            usario.

                     stime %ld
                            El  número  de  jiffies  que  este  proceso se ha planificado en modo
                            núcleo.

                     cutime %ld
                            El número de jiffies que este proceso y sus hijos se han  planificado
                            en modo usuario.

                     cstime %ld
                            El  número de jiffies que este proceso y sus hijos se han planificado
                            en modo núcleo.

                     priority %ld
                            El valor ``nice'' estándar, más 15. El valor nunca es negativo dentro
                            del núcleo.

                     nice %ld
                            El  valor  ``nice'',  que va desde 19 (el más generoso) hasta -19 (el
                            más codicioso).

                     0 %ld  Este valor se fija a 0 en el propio código y representa el lugar  que
                            ocupaba de un campo eliminado.

                     itrealvalue %u
                            El  tiempo  en  jiffies  antes  de que la siguiente señal SIGALRM sea
                            enviada al proceso.

                     starttime %lu
                            Tiempo en jiffies desde el arranque del sistema hasta el inicio de la
                            ejecución del proceso.

                     vsize %lu
                            Tamaño de la memoria virtual en bytes.

                     rss %ld
                            Tamaño del conjunto residente (RSS): número de páginas que el proceso
                            tiene en memoria real, menos  3  (para  propósitos  administrativos).
                            Dicho  conjunto está formado por las páginas que componen actualmente
                            el espacio de código, datos y pila. No incluye aquellas  páginas  que
                            no se han cargado bajo demanda o que se han intercambiado a disco.

                     rlim %lu
                            Límite actual, en bytes, del RSS del proceso (normalmente, 4294967295
                            en i386).

                     startcode %lu
                            Dirección por encima de la cual  se  puede  ejecutar  el  código  del
                            programa.

                     endcode %lu
                            Dirección  por  debajo  de  la  cual  se puede ejecutar el código del
                            programa.

                     startstack %lu
                            Dirección de comienzo de la pila.

                     kstkesp %lu
                            El valor actual del registro ESP  (puntero  de  pila),  tal  como  se
                            encuentra en la página de pila del proceso.

                     kstkeip %lu
                            Valor actual del EIP (puntero de instrucción).

                     signal %lu
                            Mapa de bits de señales pendientes (normalmente 0).

                     blocked %lu
                            Mapa  de  bits  de  señales  bloqueadas  (normalmente  0,  2 para los
                            shells).

                     sigignore %lu
                            Mapa de bits de señales ignoradas.

                     sigcatch %lu
                            Mapa de bits de señales capturadas.

                     wchan %lu
                            Este es el ``canal'' en el que  está  esperando  el  proceso.  Es  la
                            dirección  de una llamada al sistema y se puede mirar en una lista de
                            nombres si necesita un nombre textual. (Pruebe ps -l para  ver  WCHAN
                            en acción.)

                     nswap %lu
                            Número de páginas intercambiadas - no guardadas.

                     cnswap %lu
                            nswap acumulativo para los procesos hijos.

                     exit_signal %d
                            Señal a enviar al padre cuando muramos.

                     processor %d
                            Número de CPU en la que se ejecutó por última vez.

              statm  Proporciona  información,  en  páginas,  sobre la situación de memoria.  Las
                     columnas son:
                      size       tamaño total del programa
                      resident   tamaño del conjunto residente
                      share      páginas compartidas
                      trs        texto (código)
                      drs        datos/pila
                      lrs        biblioteca
                      dt         páginas modificadas

              status Proporciona gran parte de la información de stat y statm en un  formato  que
                     es mucho más fácil de leer para una persona.

       apm    Proporciona  información sobre la batería y la versión de APM cuando se ha definido
              CONFIG_APM en el instante de compilación del núcleo.

       bus    Contiene subdirectorios para los buses instalados.

              pccard Subdirectorio para dispositivos PCMCIA cuando se ha  definido  CONFIG_PCMCIA
                     en el instante de compilación del núcleo.

                     drivers

              pci    Contiene  varios  subdirectorios  de  buses  y  pseudoficheros que contienen
                     información sobre buses pci, dispositivos instalados y manejadores (drivers)
                     de dispositivo. Algunos de estos ficheros no son ASCII.

                     devices
                            Información  sobre  dispositivos pci. Se puede acceder a los mismos a
                            través de lspci(8) y setpci(8).

       cmdline
              Argumentos pasados al núcleo de Linux al arrancar. Normalmente se hace a través  de
              un gestor de arranque como lilo(1).

       cpuinfo
              Este  es una colección de elementos dependientes de la CPU y de la arquitectura del
              sistema. Para cada  arquitectura  soportada,  una  lista  diferente.  Dos  entradas
              comunes son processor que da el número de CPU y bogomips, una constante del sistema
              que se calcula durante el arranque del núcleo. Las máquinas SMP tienen  información
              para cada CPU.

       devices
              Lista  de  números  mayores de dispositivo y grupos de dispositivos. Esta puede ser
              usada por los guiones MAKEDEV para consistencia con el núcleo.

       dma    Esta es una lista de los canales DMA (acceso directo a memoria) ISA registrados  en
              uso.

       driver Subdirectorio vacío.

       execdomains
              Lista de dominios de ejecución (personalidades ABI).

       fb     Información sobre el frame buffer cuando se define CONFIG_FB furante la compilación
              del núcleo.

       filesystems
              Lista de los  sistemas  de  ficheros  que  fueron  compilados  dentro  del  núcleo.
              Incidentalmente, mount(1) usa esto para circular a través de diferentes sistemas de
              ficheros cuando no se especifica ninguno.

       fs     Subdirectorio vacío.

       ide    ide existe en sistemas  con  bus  ide.  Hay  directorios  para  cada  canal  ide  y
              dispositivo conectado. Los ficheros incluyen:

              cache              tamaño del buffer en KB
              capacity           número de sectores
              driver             versión del manejador
              geometry           geometría física y lógica
              identify           en hexadecimal
              media              tipo de medio
              model              número de modelo del fabricante
              settings           configuración de la unidad
              smart_thresholds   en hexadecimal
              smart_values       en hexadecimal

              La utilidad hdparm(8) proporciona acceso a esta información en un formato amigable.

       interrupts
              Éste  es  usado  para registrar el número de interrupciones para cada IRQ sobre (al
              menos) la arquitectura i386. El formato es muy fácil de leer, realizado en ASCII.

       iomem  Mapa de memoria de E/S en Linux 2.4.

       ioports
              Ésta es una  lista  de  las  regiones  de  puertos  de  entrada/salida  actualmente
              registrados que están en uso.

       kcore  Este  fichero  representa  la  memoria  física del sistema y su formato es el de un
              fichero core ELF. Con este pseudofichero y un binario del  núcleo  con  información
              sobre  símbolos (/usr/src/linux/vmlinuz), se puede usar GDB para examinar el estado
              actual de cualquier estrutura de datos del núcleo.

              La longitud total de este fichero es el tamaño de la memoria física (RAM) más 4KB.

       kmsg   Este fichero se puede usar en lugar de la llamada al sistema  syslog(2)  para  leer
              mensajes  del núcleo. Un proceso debe tener permisos de superusuario para leer este
              fichero y sólo un proceso debe leer este fichero. Este fichero no se debe  leer  si
              se  está  ejecutando un proceso syslog que usa la llamada al sistema syslog(2) para
              registrar mensajes del núcleo.

              A la información de este fichero se accede con el programa dmesg(8).

       ksyms  Éste mantiene las difiniciones de símbolos exportados del  núcleo  usadas  por  las
              herramientas de manejo de modulos(X) para enlazar dinámicamente módulos.

       loadavg
              Los  números  de  carga  media  dan  el  número  promedio de trabajos en la cola de
              ejecución (estado R) o en espera de E/S de disco (estado D) en los últimos 1,  5  y
              15  minutos.  Estos  números  son  idénticos a los números de carga media dados por
              uptime(1) y otros programas.

       locks  Este fichero muestra los bloqueos de fichero (flock(2) y fcntl(2)) y arrendamientos
              (fcntl(2)) actuales.

       malloc Este  fichero  sólo  está  presente  si  se  definió  CONFIGDEBUGMALLOC  durante la
              compilación.

       meminfo
              Éste es usado por free(1) para informar de la cantidad de memoria libre y usada  en
              el  sistema  (tanto física como de intercambio) así como de la memoria compartida y
              los buffers usados por el núcleo.

              El formato es el mismo que el de free(1), salvo que los datos se dan en bytes y  no
              en KB.

       modules
              Lista de módulos que han sido cargados por el sistema.  Véase también lsmod(8).

       mtrr   Memory  Type  Range  Registers.  Vea /usr/src/linux/Documentation/mtrr.txt para más
              detalles.

       net    directorio que contiene varios pseudoficheros, los cuales dan el estado de  algunas
              partes  de la capa de red. Estos ficheros contienen estructuras ASCII y, por tanto,
              se pueden leer con cat. Sin embargo, la aplicación netstat(8) proporciona un acceso
              mucho más claro a estos ficheros.

              arp    Este mantiene un vaciado ASCII legible de la tabla ARP del núcleo usada para
                     la resolución de direcciones. Mostrará tanto  las  entradas  ARP  aprendidas
                     dinámicamente como las preprogramadas. El formato es:

        IP address     HW type   Flags     HW address          Mask   Device
        192.168.0.50   0x1       0x2       00:50:BF:25:68:F3   *      eth0
        192.168.0.250  0x1       0xc       00:00:00:00:00:00   *      eth0

              Aquí  `IP  address'  es  la  dirección IPv4 de la máquina y `HW type' es el tipo de
              hardware de la dirección según el RFC 826. `Flags' son las banderas internas de  la
              estructura  ARP  (tal  y  como  se  definen  en  /usr/include/linux/if_arp.h) y `HW
              address' es, si se conoce, la dirección de la capa física asociada a  la  dirección
              IP.

              dev    El  pseudofichero dev contiene información de estado del dispositivo de red.
                     Da el número de paquetes recividos  y  enviados,  el  número  de  errores  y
                     colisiones  y  otras  estadísticas básicas. Estas son usadas por el programa
                     ifconfig(8) para informar del estado del dispositivo. El formato es:

 Inter-|   Receive                                                |  Transmit
  face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
     lo: 2776770   11307    0    0    0     0          0         0  2776770   11307    0    0    0     0       0          0
   eth0: 1215645    2751    0    0    0     0          0         0  1782404    4324    0    0    0   427       0          0
   ppp0: 1622270    5552    1    0    0     0          0         0   354130    5669    0    0    0     0       0          0
   tap0:    7714      81    0    0    0     0          0         0     7714      81    0    0    0     0       0          0
                     ·

              dev_mcast
                     Se define en /usr/src/linux/net/core/dev_mcast.c:
                          indx ifterface_name  dmi_u dmi_g dmi_address
                          2    eth0            1     0     01005e000001
                          3    eth1            1     0     01005e000001
                          4    eth2            1     0     01005e000001

              igmp   Internet     Group     Management     Protocol.       Se      define      en
                     /usr/src/linux/net/core/igmp.c.

              rarp   Este  fichero  usa  el mismo formato que el fichero arp y contiene la actual
                     base de datos de asociaciones inversas usada para proporcionar los servicios
                     de  búsqueda  de  direcciones inversas de Si RARP no está configurado dentro
                     del núcleo, este fichero no estará presente.

              raw    Contiene un vaciado de la tabla de conectores RAW. La mayor  parte  de  esta
                     información no es útil salvo para propósitos de depuración. El valor `sl' es
                     el número de entrada hash del núcleo para el conector. `local address' es la
                     pareja  formada  por  la  dirección  local y el número de puerto. `St' es el
                     estado interno del conector. `tx_queue' y `rx_queue' son las colas de  datos
                     de  entrada  y  salida  en términos de uso de memoria del núcleo. Los campos
                     `tr', `tm->when' y `rexmits' no los usa RAW.  El  campo  `uid'  contiene  el
                     idenficador de usario efectivo del creador del conector.

              snmp   Este fichero contiene los datos ASCII que necesitan las Bases de Información
                     para Administración de IP, ICMP, TCP y UDP para un agente SNMP.

              tcp    Contiene un vaciado de la tabla de conectores TCP. La mayor  parte  de  esta
                     información no es útil salvo para propósitos de depuración. El valor `sl' es
                     el número de la ranura hash del núcleo para el conector. `local address'  es
                     la  pareja  formada  por  la  dirección local y el número de puerto. `remote
                     address' es la pareja formada por la dirección remota y el número de  puerto
                     (si  hay  conexión).  `St'  es  el estado interno del conector. `tx_queue' y
                     `rx_queue' son las colas de datos de entrada y salida en términos de uso  de
                     memoria  del  núcleo.  Los  campos  `tr',  `tm->when'  y `rexmits' contienen
                     información del núcleo del estado  del  conector  y  sólo  son  útiles  para
                     depuración.  El  campo  `uid' contiene el idenficador de usario efectivo del
                     creador del conector.

              udp    Contiene un vaciado de la tabla de conectores UDP. La mayor  parte  de  esta
                     información no es útil salvo para propósitos de depuración. El valor `sl' es
                     el número de la entrada hash del núcleo para el conector. `local address' es
                     la  pareja  formada  por  la  dirección local y el número de puerto. `remote
                     address' es la pareja formada por la dirección remota y el número de  puerto
                     (si  hay  conexión).  `St'  es  el estado interno del conector. `tx_queue' y
                     `rx_queue' son las colas de datos de entrada y salida en términos de uso  de
                     memoria  del  núcleo.  Los campos `tr', `tm->when' y `rexmits' no son usados
                     por UDP.  El campo `uid' contiene el  idenficador  de  usario  efectivo  del
                     creador del conector. El formato es:

 sl  local_address rem_address   st tx_queue rx_queue tr rexmits  tm->when uid
  1: 01642C89:0201 0C642C89:03FF 01 00000000:00000001 01:000071BA 00000000 0
  1: 00000000:0801 00000000:0000 0A 00000000:00000000 00:00000000 6F000100 0
  1: 00000000:0201 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0

              unix   Lista de conectores de dominio UNIX presentes dentro del sistena y el estado
                     de cada uno de ellos. El formato es:
                     Num RefCount Protocol Flags    Type St Path
                      0: 00000002 00000000 00000000 0001 03
                      1: 00000001 00000000 00010000 0001 01 /dev/printer

              Aquí `Num' es el número de entrada en la tabla del núcleo, `RefCount' es el  número
              de usuarios del conector, `Protocol' es, actualmente, siempre 0, `Flags' representa
              las banderas internas del núcleo que contienen el estado del conector. Actualmente,
              `Type'  es  siempre 1 (los conectores de dominio UNIX del tipo datagrama todavía no
              están soportados en el núcleo). `St' es el estado interno del conector y `Path' es,
              si existe, la ruta asociada del conector.

       partitions
              Contains  major and minor numbers of each partition as well as number of blocks and
              partition name.

       pci    Es una lista de todos los dispositivos PCI encontrados  durante  la  inicialización
              del núcleo y sus configuraciones respectivas.

       scsi   Directorio  con  pseudoficheros  SCSI  de  nivel  medio  y  varios  directorios  de
              manejadores (drivers) SCSI de bajo nivel, que contienen un fichero para  cada  host
              SCSI  presente  en  el sistema, cada uno de los cuales da el estado de alguna parte
              del subsystema de E/S SCSI. Estos  ficheros  contienen  estructuras  ASCII  y,  por
              tanto, son legibles con cat.

              También  se  puede  escribir  en  algunos  de  estos  ficheros para reconfigurar el
              subsistema o para activar y desactivar ciertas características.

              scsi   Esta es una lista de todos los dispositivos SCSI conocidos por el núcleo. La
                     lista  es  similar  a  la  que se ve durante el arranque.  Actualmente, scsi
                     únicamente soporta la orden add-single-device que  permite  al  superusuario
                     añadir  a  la  lista  de dispositivos conocidos un dispositivo conectado "en
                     caliente".

                     echo `scsi add-single-device 1 0 5 0` > /proc/scsi/scsi  hará  que  el  host
                     scsi1  explore el canal SCSI 0 en busca de un dispositivo en la dirección ID
                     5 LUN 0. Si ya hay  un  dispositivo  conocido  en  esa  dirección  o  si  la
                     dirección es inválida, se devolverá un error.

              drivername
                     Actualmente,  drivername  puede  ser  NCR53c7xx,  aha152x, aha1542, aha1740,
                     aic7xxx, buslogic,  eata_dma,  eata_pio,  fdomain,  in2000,  pas16,  qlogic,
                     scsi_debug,  seagate, t128, u15-24f, ultrastore o wd7000.  Estos directorios
                     presentan todos los manejadores que registraron al menos un HBA  SCSI.  Cada
                     directorio  contiene un fichero por host registrado. Cada fichero host tiene
                     como nombre el número que el host obtuvo durante la inicialización.

                     La lectura de estos  ficheros  mostrará  normalmente  la  configuración  del
                     manejador y el host, estadísticas, etc.

                     La  escritura  en  estos  ficheros permite diferentes cosas sobre diferentes
                     hosts. Por ejemplo, con las órdenes latency  y  nolatency,  el  superusuario
                     puede  activar  y  desactivar  en  el  manejador  eata_dma el código para la
                     medición de la latencia de las órdenes. Con las órdenes lockup y unlock,  el
                     superusuario puede controlar las búsquedas de bus simuladas por el manejador
                     scsi_debug.

       self   Este directorio hace referencia al  proceso  que  está  accediendo  al  sistema  de
              ficheros /proc y es idéntico al directorio de /proc cuyo nombre es el PID del mismo
              proceso.

       slabinfo
              Información sobre las memorias cachés del núcleo. Las columnas son:
              cache-name
              num-active-objs
              total-objs
              object-size
              num-active-slabs
              total-slabs
              num-pages-per-slab
              Vea slabinfo(5) para más detalles.

       stat   Estadísticas del núcleo/sistema. Varían con la arquitectura. Entradas comunes son:

              cpu  3357 0 4313 1362393
                     El número de jiffies (centésimas de segundo) que el sistema  gastó  en  modo
                     usuario,  modo  usuario  con  baja prioridad (nice), modo supervisor y en la
                     tarea `idle', respectivamente. El último valor debe ser 100 veces la segunda
                     entrada del pseudofichero uptime.

              page 5741 1808
                     El  número de páginas que el sistema cargó y el número de páginas que fueron
                     descargadas (desde disco).

              swap 1 0
                     El número de páginas de intercambio que han sido introducidas y sacadas.

              intr 1462898
                     El número de interrupciones recibidas desde el arranque del sistema.

              disk_io: (2,0):(31,30,5764,1,2) (3,0):...
                     (mayor,menor):(noinfo,     ops_lectura,     bloqs_leídos,     ops_escritura,
                     bloqs_escritos)

              ctxt 115315
                     El número de cambios de contexto que el sistema ha sufrido.

              btime 769041601
                     Instante de arranque, en segundos desde el 1 de Enero de 1970

              processes 86031
                     Número de llamadas al sistema `fork' desde el arranque.

       swaps  Áreas de intercambio en uso. Véase también swapon(8).

       sys    Este  directorio  (presente  desde  la  versión  1.3.57) contiene varios ficheros y
              subdirectorios correspondientes a variables del núcleo. Estas variables  se  pueden
              leer  y  algunas veces modificar usando el sistema de ficheros proc y la llamada al
              sistema sysctl(2).  Actualmente, existen los subdirectorios abi,  debug,  dev,  fs,
              kernel, net, proc, rxrpc, sunrpc y vm

              que contienen a su vez más ficheros y subdirectorios.

              abi    Este  directorio  puede contener ficheros con datos ABI (`application binary
                     information`). No existe en algunos sistemas.

              debug  Este directorio puede estar vacío.

              dev    Este  directorio  contiene  información  específica  de  dispositivos   (por
                     ejemplo, dev/cdrom/info). En algunos sistemas puede estar vacío.

              fs     Éste contiene el subdirectorio binfmt_misc y los ficheros dentry-state, dir-
                     notify-enable, dquot-nr,  file-max,  file-nr,  inode-max,  inode-nr,  inode-
                     state, lease-break-time, leases-enable, overflowgid, overflowuid super-max y
                     super-nr, cuya función se deduce cláramente a partir del nombre.

              Se puede encontrar documentación para los ficheros de /proc/sys/binfmt_misc  en  el
              fichero Documentation/binfmt_misc.txt de los fuentes del núcleo.

              El  fichero  dentry-state  contiene  seis  números, nr_dentry, nr_unused, age_limit
              (edad en segundos), want_pages (páginas solicitadas por el sistema) y  dos  valores
              ``tontos''.   nr_dentry parece ser 0 todo el tiempo.  nr_unused seems parece ser el
              número de dentries sin usar.  age_limit es la edad en  segundos  tras  la  cual  se
              puede  reclamar  una entrada dentry cuando hay poca memoria y want_pages no es cero
              después de que el núcleo haya llamado a shrink_dcache_pages() y no se haya reducido
              todavía el tamaño de la dcache.

              El  fichero  dir-notify-enable  se  puede usar para activar o desactivar en todo el
              sistema la interfaz dnotify descrita en fcntl(2).   Un  valor  0  en  este  fichero
              desactiva la interfaz y un valor 1 la activa.

              El  fichero  dquot-max muestra el número máximo de entradas de cuota de disco en la
              caché correspondiente. Este fichero no existe en  algunos  sistemas  (2.4).  Si  el
              número de entradas libres en la caché de cuotas de disco es muy pequeño y el número
              de usuarios simultáneos que tiene es muy grande, tal vez quiera subir este límite.

              El fichero dquot-nr el número de entradas de cuota de disco asignadas y  el  número
              de entradas libres.

              El  fichero  file-max  es  un límite global del sistema sobre el número de ficheros
              abiertos por todos los procesos.  (Véase también setrlimit(2), que un proceso puede
              usar  para  establecer el límite por proceso, RLIMIT_NOFILE, del número de ficheros
              que se pueden abrir.)  Si obtiene un montón de mensajes de error que indican que se
              ha quedado sin manejadores de fichero, intente incrementar este valor:

              echo 100000 > /proc/sys/fs/file-max

              La  constante  del  núcleo  NR_OPEN impone un límite superior sobre el valor que se
              puede colar en file-max.

              Sin incrementa file-max, asegúrese de incrementar inode-max a 3-4  veces  el  nuevo
              valor de file-max, o se quedará sin nodos-i.

              El  fichero (de sólo lectura) file-nr proporciona el número de ficheros abiertos en
              este momento. Contiene tres números: el número de manejadores de fichero asignados,
              el  número  de  manejadores  de fichero libres y el número máximo de manejadores de
              fichero. El núcleo reserva manejadores de fichero dinámicamente, pero no los libera
              otra  vez.  Si  el  número  de  ficheros  asignados está cercano al máximo, debería
              considerar el incrementar dicho máximo.  Cuando el número de manejadores de fichero
              libres  es  grande,  ha  encontrado  un  pico en su uso de manejadores de fichero y
              probablemente no necesite incrementar el máximo.

              El fichero inode-max contiene el número máximo de nodos-i en memoria. Este  fichero
              podría  no  existir en algunos sistemas (2.4). Este valor debería ser 3-4 veces más
              grande que el valor de file-max, ya que stdin,  stdout  y  los  conectores  de  red
              también  necesitan  un  nodo-i  para poder manejarlos.  Si se queda sin nodos-i con
              frecuencia, necesitará incremetar este valor.

              El fichero inode-nr contiene contiene los dos primeros valores de inode-state.

              El fichero inode-state contiene siete números: nr_inodes, nr_free_inodes, preshrink
              y  cuatro valores sin utilidad. nr_inodes es el número de nodos-i que el sistema ha
              asignado. Este número puede ser  ligeramente  mayor  que  inode-max  ya  que  Linux
              reserva  nodos-i  usando  páginas  enteras.  nr_free_inodes representa el número de
              nodos-i libres. preshrink es distinto de cero cuando nr_inodes  >  inode-max  y  el
              sistema necesita recortar la lista de nodos-i en lugar de reservar más.

              El fichero lease-break-time especifica el periodo de gracia que el núcleo concede a
              un proceso que posee un arrendamiento de fichero (fcntl(2)) después de que le  haya
              enviado  una señal a ese proceso notificándole que otro proceso está esperando para
              abrir el fichero.  Si  el  arrendatario  no  elimina  o  reduce  la  categoría  del
              arrendamiento  dentro del periodo de gracia, el núcleo elimina el arrendamiento por
              la fuerza.

              El fichero leases-enable se puede usar para activar o desactivar los arrendamientos
              de  ficheros  (fcntl(2)) de forma global.  Si este fichero contiene el valor 0, los
              arrendamientos están desactivados. Si el valor es distinto de 0, los arrendamientos
              están permitidos.

              Los  ficheros  overflowgid y overflowuid le permiten cambiar el valor del UID y GID
              fijos.  El valor por omisión es 65534. Algunos sistemas de ficheros  sólo  permiten
              UIDs  y GIDs de 16 bits, aunque en Linux los UIDs y GIDs son de 32 bits. Cuando uno
              de estos sistemas de ficheros está montado con escrituras permitidas, cualquier UID
              y  GID  que  excediera  65535 se traduciría al valor de desbordamiento antes de ser
              escrito en disco.

              El fichero super-max controla el número máximo de superbloques  y,  por  tanto,  el
              número  máximo  de  sistemas  de ficheros montados que puede tener el núcleo.  Sólo
              necesita incrementar super-max si necesita montar más sistemas de ficheros  que  el
              valor  actual  de  super-max le permite.  El fichero super-nr contiene el número de
              sistemas de ficheros montados actualmente.

              kernel Este  directorio   contiene   los   ficheros   acct,   cad_pid,   cap-bound,
                     core_uses_pid,   ctrl-alt-del,  dentry-state,  domainname,  hostname,  htab-
                     reclaim (sólo en PowerPC), java-appletviewer (binfmt_java, obsoleto),  java-
                     interpreter  (binfmt_java,  obsoleto),  l2cr  (sólo  en  PowerPC), modprobe,
                     msgmax, msgmnb, msgmni, osrelease, ostype, overflowgid, overflowuid,  panic,
                     powersave-nap  (sólo  en PowerPC), printk, random, real-root-dev, reboot-cmd
                     (són en SPARC),  rtsig-max,  rtsig-nr,  sem,  sg-big-buff,  shmall,  shmmax,
                     shmmni,  sysrq, tainted, threads-max, version y zero-paged (sólo en PowerPC)
                     cuya función está bastante clara a partir del nombre.

              El fichero acct contiene tres números: highwater, lowwater y  frequency.   Si  está
              activa  la  contabilidad  de  procesos al estido de BSD, estos valores controlan su
              comportamiento. Si el espacio libre en el sistema de ficheros donde se encuentra el
              registro  cae por debajo del porcentaje `lowwater', la contabilidad se suspende. Si
              el espacio libre supera el porcentaje  `highwater',  la  contabilidad  se  reanuda.
              `Frequency'  determina  la frecuencia con la que el núcleo comprueba la cantidad de
              espacio libre (el valor está en segundos). Los valores por omisión son 4, 2  y  30.
              Esto  es,  suspende  la contabilidad si el espacio libre es igual o inferior al 2%;
              reanúdala si el espacio libre es igual  o  superior  al  4%;  considera  válida  la
              información sobre el espacio libre durante 30 segundos.

              El  fichero  cap-bound contiene el valor del conjunto de capacidades limitantes del
              núcleo.  (expresado como un entero decimal con signo). Durante un exec, se hace  un
              Y-lógico entre este conjunto y la capacidades permitidas al proceso.

              El  fichero core_uses_pid se puede usar en Linux 2.4 para controlar la forma de dar
              nombre a un fichero de vaciado de memoria (``core dump''). Si este fichero contiene
              el valor 0, el fichero simplemente se llama core.  Si el valor es distinto de cero,
              el fichero de vaciado de memoria incluye el ID del proceso en un nombre de la forma
              core.PID.

              El  fichero  ctrl-alt-del  controla  la  gestión de la combinación Ctrl-Alt-Del del
              teclado. Cuando el valor de este fichero es 0, se captura Ctrl-Alt-Del y  se  envía
              al  programa init(1) para tratar un reinicio elegante. Cuando este valor es > 0, la
              reacción de Linux a un ``Vulcan Nerve Pinch'' (tm) (N.T.: frase con la que  también
              se  conoce al saludo de los tres dedos) será un reinicio inmediato, sin ni siquiera
              escribir en disco los buffers modificados.  Nota: cuando un programa (como  dosemu)
              tiene  el teclado en modo `crudo', el programa interpreta ctrl-alt-del antes de que
              la combinación de teclas alcance la capa tty del núcleo y es  asunto  del  programa
              decidir qué hacer con ella.

              Los  ficheros  domainname  y  hostname  se pueden usar para establecer el nombre de
              dominio NIS/YP y el nombre de host de su ordenador exactamente de  la  misma  forma
              que las órdenes domainname y hostname, es decir:

              # echo "darkstar" > /proc/sys/kernel/hostname
              # echo "mydomain" > /proc/sys/kernel/domainname

              tienen el mismo efecto que

              # hostname "darkstar"
              # domainname "mydomain"

              Observe,  sin  embargo,  que  el  clásico darkstar.frop.org tiene el nombre de host
              ``darkstart''  y  el  nombre  de  dominio  DNS  (Internet   Domain   Name   Server)
              ``frop.org'',  que  no  se  debe  confundir  con  el nombre de dominio NIS (Network
              Information Service) o YP (Yellow Pages). En general, estos dos nombres de  dominio
              son  diferentes.  Para  una  discusión  más  detallada,  vea  la  página  de manual
              hostname(1).

              Si al fichero htab-reclaim (sólo en PowerPC) se le  asigna  un  valor  distinto  de
              cero,      el      PowerPC      htab     (vea     el     fichero     del     núcleo
              Documentation/powerpc/ppc_htab.txt) se reduce cada vez que el  sistema  alcanza  el
              bucle ocioso.

              El  fichero l2cr (sólo en PowerPC) contiene una bandera que controla la caché L2 de
              las placas base de los procesadores G3. Si contiene 0, la caché se  desactiva.  Una
              valor distinto de cero la activa.

              El fichero modprobe se describe en el fichero Documentation/kmod.txt de los fuentes
              del núcleo.

              El fichero msgmax es un límite global del sistema que especifica el  número  máximo
              de bytes de un único mensaje escrito en una cola de mensajes System V.

              El  fichero  msgmni  define  el  límite  global  del  sistema  para  el  número  de
              identificadores de colas de mensajes.  (Este fichero sólo existe  en  Linux  2.4  y
              posteriores.)

              El fichero msgmnb es un parámetro global del sistema que se usa para inicializar el
              valor msg_qbytes para las colas de mensajes creadas posteriormente.   El  valor  de
              configuración  msg_qbytes  especifica  el  número  máximo  de  bytes  que se pueden
              escribir en una cola de mensajes.

              Los ficheros ostype y osrelease dan subcadenas de /proc/version.

              Los    ficheros    overflowgid    y    overflowuid    duplican     los     ficheros
              /proc/sys/fs/overflowgid y /proc/sys/fs/overflowuid.

              El  fichero  panic da los accesos de lectura/escritura sobre la variable del núcleo
              panic_timeout.  Si esto es 0, el núcleo entrará  en  un  bucle  infinito  ante  una
              situación  de  pánico; si no es cero, indica que el núcleo debe autoreinicializarse
              después de ese número de segundos. Cuando usa el manejador del dispositivo guardián
              software, el valor recomendado es 60.

              El  fichero  powersave-nap  (sólo en PowerPC) contiene una bandera. Si está activa,
              Linux-PPC usará el modo `nap' de ahorro de energía, en caso contrario usará el modo
              `doze'.

              Los     cuatro     valores     del    fichero    printk    son    console_loglevel,
              default_message_loglevel, minimum_console_level y default_console_loglevel.   Estos
              valores  influyen  en el comportamiento de printk() cuando se muestran o guardan en
              registro mensajes de error. Vea syslog(2) para obtener más  información  sobre  los
              diferentes  `loglevels' (niveles de registro). Los mensajes con una prioridad mayor
              que console_loglevel se mostrarán en la consola. Los  mensajes  sin  una  prioridad
              explícita      se      mostrará      con      prioridad      default_message_level.
              minimum_console_loglevel es el valor mínimo (el más alto) que se  puede  asignar  a
              console_loglevel.    default_console_loglevel   es   el   valor  por  omisión  para
              console_loglevel.

              El directorio random contiene varios parámetros que controlan el funcionamiento del
              fichero /dev/random.

              El fichero real-root-dev se documenta en el fichero Documentation/initrd.txt de los
              fuentes del núcleo.

              El fichero reboot-cmd (sólo en Sparc) parece  ser  una  forma  de  proporcionar  un
              argumento al cargador de arranque de la ROM/Flash de la SPARC. ¿Quizás para decirle
              qué hacer tras rearrancar?.

              El fichero rtsig-max se puede  usar  para  ajustar  el  número  máximo  de  señales
              (encoladas) POSIX de tiempo real que pueden estar pendientes en el sistema.

              El  fichero  rtsig-nr  muestra  el  número  de señales POSIX de tiempo real que hay
              encoladas actualmente.

              El fichero sem (disponible desde la versión 2.4 de Linux) contiene  4  números  que
              definen límites para los semáforos IPC de System V. Estos campos son, en orden:

              SEMMSL  Número máximo de semáforos por conjunto de semáforos.

              SEMMNS  Límite  global  del  sistema  para  el  número  de  semáforos  en todos los
                      conjuntos de semáforos.

              SEMOPM  Número máximo de operaciones que  se  pueden  especificar  en  una  llamada
                      semop(2).

              SEMMNI  Límite  global  del  sistema  para  el  número máximo de identificadores de
                      semáforo.

              El fichero sg-big-buff muestra el tamaño del buffer del dispositivo  SCSI  genérico
              (sg).   Todavía  no  puede  ajustarlo,  pero  puede  cambiarlo al compilar editando
              include/scsi/sg.h y cambiando el valor de  SG_BIG_BUFF.  No  obstante,  no  debería
              existir ninguna razón para cambiar este valor.

              El  fichero  shmall  contiene  un límite global del sistema para el número total de
              páginas de memoria compartida System V.

              El fichero shmmax se puede usar para consultar y establecer el límite en tiempo  de
              ejecución del tamaño máximo de segmento (IPC de System V) de memoria compartida que
              se puede crear.  Actualmente,  se  permiten  en  el  núcleo  segmentos  de  memoria
              compartida de hasta 1 Gb. El valor por omisión de este valor es SHMMAX.

              El  fichero  shmmni (disponible desde la versión 2.4 de Linux) especifica el número
              máximo de segmentos de memoria compartida System V que se pueden crear en  todo  el
              sistema.

              El fichero version contiene una cadena como:

              #5 Wed Feb 25 21:49:24 MET 1998.TP

              El  `#5'  significa  que  ésta es la quinta compilación del núcleo a partir de esta
              base de los fuentes y la fecha que hay detrás indica  el  instante  en  el  que  se
              construyó el núcleo.

              El  fichero  zero-paged  (sólo en PowerPC) contiene una bandera. Cuando está activa
              (valor distinto de cero), Linux-PPC se decicará a rellenar páginas con ceros en  el
              bucle ocioso, posiblemente acelerando la ejecución de get_free_pages.

              net    Este directorio contiene cosas de redes.

              proc   Este directorio puede estar vacío.

              sunrpc Este  directorio  da  soporte a las llamadas a procedimientos remotos de Sun
                     para sistemas de ficheros de red (NFS). Este fichero podría  no  existir  en
                     algunos sistemas.

              vm     Este  directorio contiene ficheros para el ajuste de la gestión de memoria y
                     la gestión de buffers y cachés.

       sysvipc
              Subdirectorio que contiene los pseudoficheros  msg,  sem  y  shm.   Estos  ficheros
              listan  los  objetos IPC (Interprocess Communication) de System V (respectivamente:
              colas de mensajes, semáforos y memoria compartida) que actualmente  existen  en  el
              sistema,  proporcionando  información  similar  a  aquella  disponible  a través de
              ipcs(1).  Estos ficheros poseen encabezados y se formatean (mostrando un objeto IPC
              por  línea)  para  una  mejor interpretación.  ipc(5) proporciona datos adicionales
              sobre la información mostrada por estos ficheros.

       tty    Subdirectorio que contiene pseudoficheros y  subdirectorios  para  los  manejadores
              (drivers) tty y las disciplinas de líneas.

       uptime Este  fichero  contien dos números: los segundos que el sistema lleva funcionando y
              los segundos gastados en el proceso `idle'.

       version
              Esta cadena identifica la versión del núcleo que se  está  ejecutando  actualmente.
              Incluye  el contenido de /proc/sys/ostype, /proc/sys/osrelease y /proc/sys/version.
              Por ejemplo:
            Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994

VÉASE TAMBIÉN

       cat(1),  find(1),  free(1),  mount(1),  ps(1),  tr(1),  uptime(1),   chroot(2),   mmap(2),
       readlink(2),  syslog(2),  slabinfo(5),  hier(7), arp(8), dmesg(8), hdparm(8), ifconfig(8),
       lsmod(8),          lspci(8),          netstat(8),          procinfo(8),           route(8)
       /usr/src/linux/Documentation/filesystems/proc.txt

CONFORME A

       Esto  conforma  aproximadamente  con  el núcleo 2.4.17 de Linux. Por favor, actualice esto
       cuando sea necesario.

       Ultima actualización para la versión 2.4.17 de Linux.

ATENCIÓN

       Observe que muchas cadenas (por ejemplo, el entorno  y  la  línea  de  ordenes)  están  en
       formato  interno,  con  los subcampos terminados por bytes NUL, por lo que puede encontrar
       que  las  cosas  son  más  legibles  si  usa  od  -c  o  tr  "\000"  "\n"  para   leerlas.
       Alternativamente, también funciona bien echo `cat <file>`.

       Esta  página  de  manual  está incompleta, posiblemente inexacta y es el tipo de cosas que
       necesitan ser actualizadas con mucha frecuencia.

RECONOCIMIENTOS

       El material sobre /proc/sys/fs y /proc/sys/kernel se basa en gran medida en  los  ficheros
       de documentación de los fuentes del núcleo escritos por Rik van Riel.

                                          13 julio 2002                                   PROC(5)