<chapter id="ktimemon">
<chapterinfo>

<title>&ktimemon;</title>

<authorgroup>
<author><firstname>Martin</firstname> <surname>Maierhofer</surname> <affiliation> <address><email>m.maierhofer@tees.ac.uk</email></address>
</affiliation>
</author>
<othercredit role="translator"> <firstname>Rafael</firstname> <surname>Osuna</surname> <affiliation><address><email>rosuna@wol.es</email></address></affiliation> <contrib>Traductor</contrib> </othercredit> <othercredit role="translator"> <firstname>Miguel</firstname> <surname>Revilla Rodríguez</surname> <affiliation><address><email>yo@miguelrevilla.com</email></address></affiliation> <contrib>Traductor</contrib> </othercredit> 
</authorgroup>
<date>2001-11-29</date> <releaseinfo>0.03.01</releaseinfo> <abstract> <para>&ktimemon; es un monitor de sistema para el K Desktop Environment</para>
</abstract>
<keywordset>
<keyword>KDE</keyword>
<keyword>ktimemon</keyword>
<keyword>monitor de sistema</keyword>
<keyword>timemon</keyword>
</keywordset>
</chapterinfo>

<title>Introducción</title>

<para>&ktimemon; es un pequeño programa para obtener información sobre la carga de trabajo de su ordenador. Puede mostrar gráficos de barras que contienen información sobre la <acronym>CPU</acronym>, la memoria y el espacio de intercambio así como del uso del disco y la actividad de cambio de contexto. Para mantener el espíritu de <ulink url="http://www.kde.org/">KDE</ulink>, soporta un entorno gráfico de configuración. También soporta el funcionamiento <emphasis>empotrado</emphasis>, es decir, puede mostrar información en la bandeja del panel del sistema.</para>

<note>
<para>En la actualidad, &ktimemon; sólo soporto un número limitado de sistemas: sistemas &Linux;  con el sistema de archivos <filename>/proc</filename>, sistemas &Solaris; con la biblioteca <filename>kstat</filename> y sistemas Digital &UNIX; (antes DEC/OSF1) con la llamada del sistema <command>table</command>(2). Se apreciará todo tipo de ayuda sobre la realización de versiones para otras plataformas. </para>
</note>

<para>&ktimemon; puede ser iniciado desde la línea de órdenes o desde el menú de <guimenu>inicio</guimenu> de &kde; (en el submenú <guisubmenu>Utilidades</guisubmenu>). Si elige iniciarlo desde la línea de órdenes, &ktimemon; acepta las opciones habituales de los programas para &X-Windows; como <option>-geometry</option>. &ktimemon; es activo en los <emphasis>cambios de sesión</emphasis>, es decir, mantiene registros del estado actual (colores, &etc;) y los recupera en la siguiente sesión del usuario. </para>

<sect1 id="fund">
<title>Aspectos fundamentales en pantalla</title>

<para>Después de iniciar &ktimemon; se abrirá una pequeña ventana mostrando información obtenida del sistema operativo. Si mueve en puntero del ratón sobre la ventana de &ktimemon; y lo deja quieto durante un pequeño espacio de tiempo, se abrirá una <emphasis>ventana de consejos</emphasis> (una pequeña ventana con información). La ventana de consejos contiene información numérica sobre los parámetros del sistema mostrados por los gráficos de barras. Las ventanas de consejos se puede desactivar (consulte en <link linkend="config">Configuración</link>). </para> 

<sect2 id="modes">
<title>Modos de presentación</title>

<para>&ktimemon; puede mostrar dos conjuntos diferentes de información del sistema. Como se explica en el capítulo <link linkend="config">Configuración</link>, a los botones del ratón puede asignarseles varias acciones. De forma predeterminada, el botón izquierdo del ratón está dedicado a la acción del cambio de modo, por ejemplo, pulsando con el botón izquierdo del ratón en cualquier lugar de la ventana de &ktimemon;, la información mostrar cambia del <guilabel>modo normal</guilabel> (el predeterminado) al <guilabel>modo extendido</guilabel>, y viceversa. </para>

<sect3 id="normalmode">
<title>Modo normal</title>

<para>Después de iniciar &ktimemon; por primera vez, se mostrará información sobre la actividad actual de la CPU, así como del uso de la memoria y el espacio de intercambio. Se utiliza un gráfico con tres barras para presentar esta información. Dichas barras son actualizadas periódicamente (el tiempo predeterminado es de medio segundo, pero se puede cambiar, vea <link linkend="config">Configuración</link>). Las tres barras representan (de izquierda a derecha): <variablelist>
<varlistentry>
<term>Uso de la <acronym>CPU</acronym>.</term>
<listitem>
<para>&ktimemon; muestra la barra con tres colores diferentes, representando el tiempo usado de la <acronym>CPU</acronym> en varios modos. De abajo a arriba son: modo del núcleo, modo de usuario y modo de usuario de baja prioridad (<emphasis>nice</emphasis>). Ya que &Solaris; no parece soportar estadísticas para el modo de baja prioridad, la parte superior de la barra mostrará el estado de <emphasis>espera</emphasis> en esos sistemas. El espacio entre el final de la barra y la parte superior de la ventana muestra el porcentaje de <acronym>CPU</acronym> no ocupada.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Uso de la memoria.</term>
<listitem>
<para>De forma similar a la barra de uso de la <acronym>CPU</acronym>, esta barra se compone de tres apartados, que representan (de abajo a arriba): memoria reservada por los procesos, memoria para prealmacenamiento de E/S y memoria utilizada para la caché de archivos. En los sistemas Digital &UNIX;, la sección central representa la memoria «inactiva» (es decir, la memoria reservada por los procesos pero no utilizada durante un tiempo), y en los sistemas &Solaris;, la sección central de la barra no se utiliza, y la sección superior representa la cantidad de memoria usada por el núcleo. Como antes, el espacio entre el extremo superior de la barra y el límite de la ventana representa la memoria libre.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Uso del espacio de intercambio.</term>
<listitem>
<para>Esta barra consta de un solo campo que representa el uso actual del espacio de intercambio en base a la cantidad total de espacio de intercambio del sistema. </para>
</listitem>
</varlistentry>
</variablelist>
</para>

<para>Pulsando con el botón destinado al «cambio de modo» sobre la ventana de &ktimemon;, se entra en el «modo extendido».</para>

</sect3>

<sect3 id="xtndmode">
<title>Modo extendido </title>

<para>En este modo, los tres gráficos de barras se utilizan para mostrar diferentes conjuntos de información de sistema. Nuevamente de izquierda a derecha, muestran:</para>

<variablelist>
<varlistentry>
<term>Actividad de paginación.</term>
<listitem>
<para>Esta barra consta de dos partes. La mitad inferior, que informa del número de páginas de memoria escritas en un almacenamiento secundario en el último intervalo de muestra. De forma similar, la mitad superior muestra el número de páginas leídas de un almacenamiento secundario.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Actividad de intercambio.</term>
<listitem>
<para>La segunda barra muestra información análoga de la actividad del espacio de intercambio.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Conmutadores de contexto.</term>
<listitem>
<para>Esta barra consta de un solo campo que indica el número de conmutadores de contexto en el último intervalo de muestra.</para>
</listitem>
</varlistentry>
</variablelist>

<para>Ya que no hay una manera «natural» de establecer la escala de la información que se muestra en el «modo extendido», de forma predeterminada &ktimemon; utiliza <emphasis>autoescalado</emphasis> (explicado en la <link linkend="autoscaling">Sección de preguntas comunes</link>). Existe, sin embargo, la posibilidad de especificar la información de la escala, vea la sección <link linkend="config">Configuración</link>.</para>

<para>Nótese que los dos conjuntos de gráficos de barras tienen los mismos colores, &ie;, los colores configurados para el «modo normal» se usan también para mostrar la información en el «modo extendido» (vea también en la sección <link linkend="config">Configuración</link> cómo cambiar el esquema de colores).</para>
</sect3>
</sect2>
  </sect1>

<sect1 id="menu">
<title>Estructura de menús</title>

<para>De forma predeterminada, el botón derecho del ratón está asignado a la acción de apertura del «menú emergente», es decir, pulsar con el botón derecho del ratón sobre cualquier lugar de la ventana de &ktimemon; abre un menú, que está explicado en las siguientes secciones. </para>

<sect2 id="config-menu">
<title><guimenuitem>Opciones...</guimenuitem></title>

<para>El menú <guimenuitem>Opciones...</guimenuitem> se utiliza para abrir el diálogo de configuración. Las opciones de configuración se aclaran en la sección <link linkend="config">Configuración</link>. </para> 
</sect2>

<sect2 id="docked-in-panel">
<title><guimenuitem>Incrustado en el panel</guimenuitem></title>

<para>Seleccionando la opción del menú <guimenuitem>Incrustado en el panel</guimenuitem>, &ktimemon; cambiará su aspecto normal (&ie; una ventana) y pasará al estado panelizado, donde desaparece la ventana de &ktimemon; y aparece un versión más pequeña en el panel del sistema. Aparte de la reducción en tamaño, el &ktimemon; «panelizado» se comporta exactamente igual que su hermano mayor. </para> 
</sect2>

<sect2 id="help">
<title><guimenu>Ayuda</guimenu></title> &help.menu.documentation; </sect2>

<sect2 id="horizontal-bars">
<title><guimenuitem>Barras horizontales</guimenuitem></title>

<para>Seleccionando <guimenuitem>Barras horizontales</guimenuitem> en el menú, &ktimemon; cambia la barras verticales por horizontales y vice versa. No es muy útil, pero era sencillo de implementar ;-) </para>
</sect2>

<sect2 id="quit">
<title><guimenuitem>Salir</guimenuitem></title>

<para>La opción del menú <guimenuitem>Salir</guimenuitem> se utiliza para finalizar &ktimemon;. Guardará el estado actual (el esquema de color, el tamaño de la ventana, si se está mostrando en el panel) para su recuperación en la próxima invocación del programa. </para>

<para>La información de configuración se guarda en el archivo <filename>$<envar>HOME</envar>/.trinity/share/config/ktimemonrc</filename>, donde <filename class="directory">$<envar>HOME</envar></filename> hace referencia a la carpeta personal del usuario. Si se borra este archivo, &ktimemon; comenzará en el estado predeterminado la siguiente vez. </para> 
</sect2>
</sect1>

<sect1 id="config">
<title>Configuración</title>

<para>&ktimemon; se puede configurar a través de un diálogo directo (ver también la explicación sobre el <link linkend="config-menu">menú Configuración</link>). En el apartado <guilabel>General</guilabel>, el intervalo predeterminado se puede cambiar así como la información sobre el escalado (vea también la explicación sobre el <link linkend="xtndmode">modo extendido</link>). Si el recuadro de <guilabel>Autoescalado</guilabel> está marcado (el autoescalado se explica en la sección de <link linkend="autoscaling">preguntas más comunes</link>), los factores de escala no pueden ser editados, ya que &ktimemon; los determina automáticamente. </para>

<para>El apartado <guilabel>Colores</guilabel> sirve para personalizar los colores de los gráficos de barras. Un pequeño gráfico de ejemplo proporciona una previsualización inmediata. </para>

<para>En la página de <guilabel>Interacción</guilabel> se pueden modificar las asignaciones del ratón. Pulsar con el ratón sobre la ventana de &ktimemon; puede ser ignorado, hacer que cambie el modo (vea también <link linkend="modes">Modos</link>), llamar el menú contextual (vea también <link linkend="menu">Menú</link>), o llamar a un proceso externo. La línea de órdenes especificada para los procesos externos se interpretará por el entorno de órdenes predeterminado, es decir, que se pueden utilizar órdenes, variables de entorno, redireccionamientos, etc.</para> 

<para>La página <guilabel>Interacción</guilabel> también contiene una opción para desactivar la aparición automática de las ventanas de consejos con información numérica sobre los gráficos de barras (compare <link linkend="fund">Aspectos fundamentales en pantalla</link>).</para> 
</sect1>

<sect1 id="faq">
<title>Preguntas y respuestas comunes </title>

<qandaset>
<qandaentry>
<question>
<para>¿Qué sistemas operativos soporta &ktimemon;?</para>
</question>
<answer>
<para>&ktimemon; soporta sistemas basados en &Linux; que tengan el sistema de archivos <filename class="devicefile">/proc</filename>, sistemas &Solaris; con la biblioteca <filename>kstat</filename>, y sistemas Digital &UNIX; (antes DEC/OSF1) con la interfaz de llamadas del sistema <command>table</command>(2). La versión más probada ha sido la de &Linux;. Si tiene cualquier problema con las versiones de &Solaris; y Digital &UNIX;, no dude en ponerse en contacto conmigo. </para>

<para>También será bienvenidas todas aquellas contribuciones que ayuden a adaptar &ktimemon; a otras plataformas. Por favor contacte conmigo en <email>m.maierhofer@tees.ac.uk</email> si tiene la intención de convertir &ktimemon; a otros tipos de &UNIX;. </para>
</answer>

</qandaentry>

<qandaentry id="autoscaling">
<question>
<para>¿Cómo funciona el autoescalado? </para>
</question>
<answer>
<para>Me alegro de que me haga esa pregunta. Ya que no hay a priori una manera de determinar el factor de escala para las operaciones de paginado/intercambio y para los conmutadores de contexto (a diferencia de &eg; la utilización de la memoria, donde se tiene el tamaño total de la memoria como base para el cálculo), &ktimemon; utiliza un mecanismo semi-inteligente (bueno, ...) de autoescalado. Funciona de la siguiente manera: </para>

<itemizedlist>
<listitem>
<para>Cada una de las tres barras descritas en la <link linkend="xtndmode">sección de modo extendido</link> tiene asociada un factor de escala. Los valores iniciales de esos factores se establecen a un valor predeterminado. </para> 
</listitem>
<listitem>
<para>Cada vez que se presenta una nueva muestra, el valor respectivo es escalado con el factor correspondiente. Si se puede mostrar el valor en la escala elegida por el factor, no ocurrirá ningún cambio (esto significa que los pequeños cambios de actividad se reflejan en un cambio de la altura de la barra). </para>
</listitem>
<listitem>
<para>Si el valor escalado resulta demasiado grande o demasiado pequeño como para ser mostrado con el factor de escala actual, se ajusta el escalado de forma que el nuevo valor mostrado esté más o menos en la mitad de la barra. Por tanto, los subsiguientes cambios debería mostrarse de forma relativa al valor actual, sin tener que volver a cambiar la escala. </para>
</listitem>
</itemizedlist>
</answer>
</qandaentry>

<qandaentry>
<question>
<para>¿Por qué aparece un mensaje que contiene <errorname>salida de diagnóstico de la orden hija</errorname>? </para>
</question>
<answer>
<para>Si asigna un botón de ratón a una orden externa tal y como se describe en el capítulo <link linkend="config">Configuración</link>, &ktimemon; no comprueba si la orden es correcto. En vez de eso ejecuta un entorno de órdenes de forma que se puedan utilizar las variables de entorno y otras opciones. Para darle algo de información al usuario sobre este extremo, &ktimemon; escucha en el <systemitem>stderr</systemitem> de la salida de la orden, e informa de ello en este mensaje. </para>

<para>Aunque este sistema puede ser útil en caso de que no se encuentre una orden, puede resultar molesto si la orden llamada imprime información de diagnóstico en <systemitem>stderr</systemitem>. Una solución sencilla y elegante para este problema consiste en añadir <userinput>2&gt;/dev/null</userinput> al final de la especificación de la orden. Esto envía los mensajes de diagnóstico al Limbo, y detiene la apertura de la caja de mensaje. </para>
</answer>
</qandaentry>

</qandaset>
</sect1>

<sect1 id="ktimemon-thanks-and-acknowledgements">
<title>Agradecimientos y reconocimientos</title>

<para>&ktimemon; está basado en una versión Xt de mi hermano.</para>

<para>Gracias a Tobe Toben, <email>ttoben@artis.uni-oldenburg.de</email>, Cristian Tibirna <email>ctibirna@gch.ulaval.ca</email>, Dirk A. Mueller <email>dmuell@rhrk.uni-kl.de</email>, Mark Krischer <email>krischem@amp.com</email>, y Lubos Lunak <email>l.lunak@sh.cvut.cz</email> por los informes de errores, parches, comentarios, sugerencias. </para>

<para>Traducido por Rafael Osuna <email>rosuna@wol.es</email></para> <para>Traducido por Miguel Revilla Rodríguez <email>yo@miguelrevilla.com</email></para> 
&underGPL; </sect1>
</chapter>
