Provided by: manpages-es-extra_0.8a-17_all bug

NOMBRE

       readprofile  -  una  herramienta  para  leer  la informacion del perfil
       (profile) del nucleo

SINOPSIS

       readprofile [ options ]

VERSI'ON

       Esta pagina de manual documenta la version 2.0 del programa.

DESCRIPCI'ON

       El  comando  readprofile  usa  la  informacion  de  /proc/profile  para
       imprimir datos ASCII por la salida estandar.  La salida esta organizada
       en tres columnas: la primera es el numero  de  impulsos  de  reloj,  la
       segunda  es  el nombre de la funcion C en el nucleo donde esos impulsos
       ocurrieron y el tercero es la `carga'  normalizada  del  procedimiento,
       calculada  como  un  ratio  entre  el  numero de impulsos de reloj y la
       duracion del procedimiento. La salida  es  rellenada  con  espacios  en
       blanco para mejorar la lectura.

       Las opciones de linea de comandos disponibles son los siguientes:

       -m mapfile
              Especifica    un    fichero    de    mapa,    el    defecto   es
              /usr/src/linux/System.map.  Puede especificar el fichero de mapa
              en  la linea de comandos si su nucleo actual no es el ultimo que
              compilo. Si el nombre del fichero de mapa termina con  `.gz'  es
              descomprimido transparentemente.

       -p pro-file
              Especifica  un  buffer  de  perfil  diferente,  por  defecto  es
              /proc/profile.  Es util especificar un  nuevo  buffer  si  desea
              tener  una  `instantanea'  del  perfil del nucleo en un instante
              determinado y desea leerla mas tarde.  El fichero  /proc/profile
              puede  ser  copiado  usando `cat' o `cp'. No existe soporte para
              buffers de perfil comprimidos, como en  readprofile-1.1,  porque
              el programa necesita saber de antemano el tamano del buffer.

       -i     Informacion.  Esto  hace que readprofile solo imprima el paso de
              perfil  usado  por  el  nucleo.   El  `paso  de  perfil'  es  la
              resolucion  del  buffer  de  perfil y es seleccionado durante la
              configuracion del nucleo (a traves de `make config'),  o  en  la
              linea de comandos del nucleo.

              Si  la opcion -t (conciso) es usada junto con -i solo se imprime
              el numero decimal.

       -a     Imprime todos los simbolos del fichero de mapa. Por defecto  los
              procedimientos con 0 impulsos de reloj no son impresos.

       -r     Reiniciar  el buffer de perfil. Esto solo puede ser invocado por
              el usuario  root,  porque  /proc/profile  puede  ser  leido  por
              cualquiera  pero  solo puede ser modificado por el superusuario.
              De todas maneras, puede hacer readprofile setuid 0,  para  poder
              reiniciar el buffer sin necesidad de los privilegios.

       -v     Prolijo.  La salida es organizada en cuatro columnas y rellenada
              con blancos. La primera  columna  es  la  direccion  RAM  de  la
              funcion  del  nucleo,  la segunda es el nombre de la funcion, la
              tercera es el numero de impulsos de reloj  y  la  ultima  es  la
              carga normalizada.

       -V     Version.  Esto hace que readprofile imprima su numero de version
              y termine.

EJEMPLOS

       Ver el buffer de perfil ordenandolo por impulsos de reloj:
          readprofile | sort -nr | less

       Imprimir los 20 procedimientos mas cargados:
          readprofile | sort -nr +2 | head -20

       Imprimir solo el perfil del sistema de ficheros:
          readprofile | grep _ext2

       Mirar toda la informacion del nucleo, con las direcciones de RAM:
          readprofile -av | less

       Ver una `instantanea' del buffer de perfil para un nucleo que no es  el
       actual:
          readprofile -p ~/profile.instantanea -m /zImage.map.gz

FALLOS

       readprofile  solo  funciona  con  nucleos  1.3.x  o  superiores, porque
       /proc/profile cambio en el paso entre el 1.2 y el 1.3

       Este programa solo funciona con nucleos ELF.  El  cambio  para  nucleos
       a.out es trivial y se deja como ejercicio para el usuario de a.out.

       Para  habilitar  el  perfil,  el  nucleo debe ser reiniciado, porque no
       existe un modulo para el perfil y no seria facil de  implementar.  Para
       habilitar el perfil, debe especificar "profile=2" (u otro numero) en la
       linea de comandos del nucleo. El numero que especifique es el exponente
       de dos usado como paso de perfil.

       El  perfil  se  encuentra  deshabilitado  cuando las interrupciones son
       deshabilitadas. Esto significa que muchos  de  los  impulsos  de  reloj
       ocurren  cuando  las  interrupciones  se  habilitan  de  nuevo.  Guarde
       atencion con la informacion que puede inducirle a error.

FICHEROS

       /proc/profile              Una imagen binaria del buffer de perfil.
       /usr/src/linux/System.map  El mapa de simbolos del nucleo.
       /usr/src/linux/*           El programa que se esta perfilando :-)