<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
>Ольга</firstname
> <surname
>Карпова</surname
> <affiliation
><address
><email
>karpovolga@hotmail.com</email
></address
></affiliation
></othercredit
> 
</authorgroup>
<date
>2001-11-29</date
> <releaseinfo
>0.03.01</releaseinfo
> <abstract
> <para
>&ktimemon; - это системный монитор для рабочей среды KDE</para>
</abstract>
<keywordset>
<keyword
>KDE</keyword>
<keyword
>ktimemon</keyword>
<keyword
>системный монитор</keyword>
<keyword
>timemon</keyword>
</keywordset>
</chapterinfo>

<title
>Введение</title>

<para
>&ktimemon; - это небольшая программа, позволяющая следить за использованием системы вашего компьютера. Она выводит на экран диаграммы, содержащий информацию о процессоре, использовании памяти и подкачки, а также об использовании дискового пространства и контекстных переключениях. Действуя в духе <ulink url="http://www.kde.org/"
>KDE</ulink
>, она поддерживает настройку через графический интерфейс. &ktimemon; также поддерживает <emphasis
>встроенный</emphasis
> режим, то есть может выводить данные на панель системного лотка.</para>

<note>
<para
>В настоящее время &ktimemon; поддерживает лишь ограниченное число систем: на основе &Linux; с файловой системой <filename
>/proc</filename
>, на основе &Solaris; с библиотекой <filename
>kstat</filename
> и на основе Digital &UNIX; (ранее DEC/OSF1) с системным вызовом <command
>table</command
>(2). Помощь в переносе на другие платформы приветствуется. </para>
</note>

<para
>&ktimemon; можно запустить из командной строки или из меню &kde; <guimenu
>запуск</guimenu
> (в подменю <guisubmenu
>утилиты</guisubmenu
>). Если вы предпочитаете запуск из командной строки, &ktimemon; работает с обычными аргументами &X-Window;, такими как <option
>-geometry</option
>. &ktimemon; распознает <emphasis
>сеансы</emphasis
>, то есть следит за текущим состоянием (цвета и т.п.) и восстанавливает его во время следующего сеанса. </para>

<sect1 id="fund">
<title
>Основы интерфейса</title>

<para
>После запуска &ktimemon; появится небольшое окно со сведениями об операционной системе. Если поместить курсор мыши в окно &ktimemon;, то вскоре появится <emphasis
>подсказка</emphasis
> (т.е. небольшое временное окно). В подсказке содержатся числовые данные о параметрах системы, отображенных в столбчатой диаграмме. Подсказку можно отключить (см. <link linkend="config"
>Настройки</link
>). </para
> 

<sect2 id="modes">
<title
>Режимы визуального отображения</title>

<para
>&ktimemon; может отображать два вида информации о системе. Как объясняется в разделе <link linkend="config"
>Настройки</link
>, кнопки мыши могут быть привязаны к определенным действиям. По умолчанию, левая кнопка мыши привязана к действию переключателя режимов, то есть при щелчке левой кнопки мыши в окне &ktimemon; высвечиваемая информация переводится из <guilabel
>Обычного режима</guilabel
> (по умолчанию) в <guilabel
>Расширенный режим</guilabel
> и обратно. </para>

<sect3 id="normalmode">
<title
>Обычный режим</title>

<para
>При первом запуске &ktimemon; выдается информация о текущей деятельности процессора, а также об использовании памяти и подкачки. Для этого используются три диаграммы, представленные в них сведения регулярно обновляются (по умолчанию, интервал равен 0.5 сек, но может быть изменен, см. <link linkend="config"
>Настройки</link
>). Три столбца на графике обозначают (слева направо): <variablelist>
<varlistentry>
<term
>Загруженность <acronym
>Процессора</acronym
>.</term>
<listitem>
<para
>KTimemon использует три разных цвета для отображения времени, в течении которого процессор находился в различных режимах. Начиная снизу, это режим ядра, режим пользователя и режим пользователя с пониженным приоритетом. В Solaris, верхняя часть отображает время, проведенное системой в режиме ожидания. Промежуток между верхней частью диаграммы и границей окна обозначает время простоя процессора.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Использование памяти.</term>
<listitem>
<para
>Подобно диаграмме использования процессора, три области на диаграмме использования памяти обозначают (снизу вверх): память, отведенную под различные процессы, память под буфер, а также память, используемую для кэширование файлов. В системах Digital Unix средняя часть обозначает <quote
>неактивную</quote
> память (т.е, выделенную память, которая не использовалась в течение некоторого времени), в системах Solaris средняя часть не используется, а верхняя область обозначает количество памяти, используемое ядром. Промежуток между верхней частью диаграммы и границей окна обозначает свободную память.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Использование подкачки.</term>
<listitem>
<para
>Эта диаграмма демонстрирует соотношение между текущим использованием подкачки и общим размером области подкачки в системе. </para>
</listitem>
</varlistentry>
</variablelist>
</para>

<para
>Щелчок в окне &ktimemon; кнопки мыши, привязанной к переключателю режимов, вызывает переход в <quote
>расширенный режим</quote
>.</para>

</sect3>

<sect3 id="xtndmode">
<title
>Расширенный режим </title>

<para
>В этом режиме три диаграммы отображают системную информацию другого вида. Слева направо, они показывают:</para>

<variablelist>
<varlistentry>
<term
>Страницы памяти.</term>
<listitem>
<para
>Эта диаграмма состоит из двух частей, в нижней части указывается количество страниц памяти, записанных во вспомогательный накопитель за последний интервал времени. Верхняя половина обозначает количество страниц, прочитанных из вспомогательного накопителя.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Подкачка.</term>
<listitem>
<para
>Вторая диаграмма отображает аналогичную информацию об использовании подкачки.</para>
</listitem>
</varlistentry>
<varlistentry>
<term
>Контекстные переключения.</term>
<listitem>
<para
>Данная диаграмма отображает количество контекстных переключений за последний интервал времени.</para>
</listitem>
</varlistentry>
</variablelist>

<para
>Поскольку невозможно <quote
>естественным</quote
> способом масштабировать информацию, представленную в <quote
>расширенном режиме</quote
>, &ktimemon; использует по умолчанию <emphasis
>автоматическое масштабирование</emphasis
> (см. раздел <link linkend="autoscaling"
>Часто задаваемые вопросы</link
>). Однако, возможно также выбрать определенный масштаб, см. раздел <link linkend="config"
>Настройки</link
>.</para>

<para
>Обратите внимание на то, что в диаграммах обоих видов используются одинаковые цвета, т.е. цветовые настройки для  <quote
>обычного режима</quote
> также используются для отображения информации в <quote
>расширенном режиме</quote
> (о том, как изменить цветовую схему, см. <link linkend="config"
>Настройки</link
>).</para>
</sect3>
</sect2>
  </sect1>

<sect1 id="menu">
<title
>Структура меню</title>

<para
>По умолчанию, правая кнопка мыши привязана к высвечиваемому на экране меню, т.е. щелчок правой кнопки мыши в окне &ktimemon; вызывает меню, о котором говорится в последующих разделах. </para>

<sect2 id="config-menu">
<title
><guimenuitem
>Настройки...</guimenuitem
></title>

<para
>Пункт меню <guimenuitem
>Настройки...</guimenuitem
> используется для вызова диалога настроек. О параметрах настроек говорится в разделе <link linkend="config"
>Настройки</link
>. </para
> 
</sect2>

<sect2 id="docked-in-panel">
<title
><guimenuitem
>Встроенный в панель</guimenuitem
></title>

<para
>Выбор пункта меню <guimenuitem
>Встроенный в панель</guimenuitem
> вызывает переключение режимов, в которых &ktimemon; выводится на экран: от стандартного изображения (т.е. в обычном окне) к встроенному в панель, когда исчезает окно &ktimemon;, а на системной панели появляется уменьшенный вариант. За исключением разницы в размере, в остальном <quote
>встроенный</quote
> &ktimemon; функционирует таким же образом. </para
> 
</sect2>

<sect2 id="help">
<title
><guimenu
>Справка</guimenu
></title
> &help.menu.documentation; </sect2>

<sect2 id="horizontal-bars">
<title
><guimenuitem
>Горизонтальная диаграмма</guimenuitem
></title>

<para
>При выборе пункта меню &ktimemon; <guimenuitem
>Горизонтальная диаграмма</guimenuitem
> столбцы диаграммы меняют свое расположение из вертикального в горизонтальное и обратно. </para>
</sect2>

<sect2 id="quit">
<title
><guimenuitem
>Выход</guimenuitem
></title>

<para
>Пункт меню <guimenuitem
>Выход</guimenuitem
> используется для выхода из &ktimemon; (что характерно!). При этом будет сохранено текущее состояние (напр. цветовая схема, размер окна, находится ли программа во встроенном в панель режиме) и восстановлено при последующем вызове программы. </para>

<para
>Настройки сохранены в файле <filename
>$<envar
>HOME</envar
>/.kde/share/config/ktimemonrc</filename
>, где <filename class="directory"
>$<envar
>HOME</envar
></filename
> обозначает домашний каталог пользователя. Если этот файл будет удален, при последующем вызове &ktimemon; будут восстановлены параметры по умолчанию. </para
> 
</sect2>
</sect1>

<sect1 id="config">
<title
>Настройки</title>

<para
>Конфигурирование &ktimemon; может происходить интерактивно (см. также <link linkend="config-menu"
>Меню настроек</link
>). На странице <guilabel
>Общее</guilabel
> можно задать временной интервал обновления данных, а также выбрать масштаб (см. также <link linkend="xtndmode"
>Расширенный режим</link
>). Если поставлена метка около режима <guilabel
>Автоматическое масштабирование</guilabel
>, (о режиме автоматического масштабирования см. в разделе<link linkend="autoscaling"
>Часто задаваемые вопросы и ответы</link
>), масштабный коэффициент не может быть изменен, т.к. &ktimemon; определяет его автоматически. </para>

<para
>На странице <guilabel
>Цвета</guilabel
> можно настроить цвета диаграммы по вашему выбору. Выбранный вариант демонстрируется на уменьшенной модели. </para>

<para
>На странице <guilabel
>Интерактивный режим</guilabel
> можно установить привязки мыши. Щелчок мыши в окне &ktimemon; может быть проигнорирован, приводить к переключению режимов (см. также <link linkend="modes"
>Режимы</link
>), вызывать контекстное меню (см. также <link linkend="menu"
>Меню</link
>) или вызывать внешний процесс. Командная строка для внешнего процесса интерпретируется стандартной оболочкой, т.е. могут использоваться команды оболочки, переменные окружения, переадресация и т.п..</para
> 

<para
>На странице <guilabel
>Интерактивный режим</guilabel
> можно также отключить автоматическое появление подсказки с числовыми данными о диаграмме (ср. <link linkend="fund"
>Основы</link
>). </para
> 
</sect1>

<sect1 id="faq">
<title
>Часто задаваемые вопросы и ответы </title>

<qandaset>
<qandaentry>
<question>
<para
>Какие операционные системы поддерживает &ktimemon;?</para>
</question>
<answer>
<para
>&ktimemon; поддерживает инсталляции на основе &Linux; с файловой системой <filename
>/proc</filename
>, инсталляции на основе &Solaris; с библиотекой <filename
>kstat</filename
> и инсталляции на основе Digital &UNIX; (ранее DEC/OSF1) с интерфейсом системного вызова <command
>table</command
>(2). Лишь системы Linux прошли основательное тестирование, если у вас возникнут какие-либо проблемы с переносом на &Solaris;/Digital &UNIX; свяжитесь со мной. </para>

<para
>Помощь в переносе &ktimemon; на другие платформы приветствуется. Свяжитесь со мной по адресу <email
>m.maierhofer@tees.ac.uk</email
>, если вы намерены перенести &ktimemon; на другие варианты &UNIX;. </para>
</answer>

</qandaentry>

<qandaentry id="autoscaling">
<question>
<para
>Как осуществляется автоматическое масштабирование? </para>
</question>
<answer>
<para
>Рад, что вы спросили. Поскольку не существует логически обоснованного заранее определенного масштабного коэффициента для операций страниц памяти/подкачки и контекстных переключений (в отличие, например, от использования памяти, когда можно взять за основу общий размер памяти), &ktimemon; использует <quote
>полуразумный</quote
> механизм автоматического масштабирования. Автоматическое масштабирование осуществляется следующим образом: </para>

<itemizedlist>
<listitem>
<para
>Каждая из трех диаграмм, как описано в разделе <link linkend="xtndmode"
>Расширенный режим</link
>, имеет соответствующий масштабный коэффициент. Исходные значения этих коэффициентов заранее определены.  </para
> 
</listitem>
<listitem>
<para
>Каждый раз, когда обновляются данные, соответствующее значение условно масштабируется. Если полученную величину можно отобразить на том же уровне шкалы, диаграмма сохраняется в прежнем виде (т.е. изменения отражаются в изменении высоты столбика диаграммы). </para>
</listitem>
<listitem>
<para
>Если полученная величина слишком велика или слишком мала и не может быть отображена текущим коэффициентом, масштаб выравнивается, и новое значение отмечается приблизительно посередине столбика диаграммы. Таким образом, последующие изменения могут быть отображены относительно текущего значения, без повторного изменения масштаба. </para>
</listitem>
</itemizedlist>
</answer>
</qandaentry>

<qandaentry>
<question>
<para
>Почему появляется сообщение <errorname
>диагностика дочернего процесса</errorname
>? </para>
</question>
<answer>
<para
>Если кнопка мыши привязана к внешней команде, как описано в разделе <link linkend="config"
>Настройки</link
>, &ktimemon; не проверяет имя программы на правильность. Вместо этого вызывается оболочка для выполнения оператора (поэтому могут использоваться команды оболочки, переменные окружения, и т.п.). Для того, чтобы обеспечить обратную связь с пользователем, &ktimemon; контролирует <systemitem
>stderr</systemitem
> выходные данные оболочки и посылает отчет в окне сообщений. </para>

<para
>Эта схема бывает полезной в случае, если процесс не обнаружен, но может быть и надоедливой, если печатает безобидную диагностическую информацию о <systemitem
>stderr</systemitem
>. Простое решение: добавьте в конце спецификации процесса <userinput
>2&gt;/dev/null</userinput
>.Это переадресует диагностические сообщения в <quote
>дыру</quote
> и остановит появление окон с сообщениями.  </para>
</answer>
</qandaentry>

</qandaset>
</sect1>

<sect1 id="ktimemon-thanks-and-acknowledgements">
<title
>Благодарности</title>

<para
>&ktimemon; создан на основе версии Xt моего брата.</para>

<para
>Благодарность 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
>, and Lubos Lunak <email
>l.lunak@sh.cvut.cz</email
>за сообщения об ошибках, патчи, комментарии и предложения. </para>

<para
>Перевод на русский: Ольга Карпова<email
>karpovolga@hotmail.com</email
></para
> 
&underGPL; </sect1>
</chapter>

<!--
Local Variables:
mode: sgml
sgml-omittag: nil
sgml-shorttag: t
End:
-->

