# &ktimemon;

## Einführung

&ktimemon; ist ein kleines Programm, mit dessen Hilfe Sie die Systemauslastung Ihres Computers verfolgen können. Es ist möglich, sowohl Graphen mit Informationen über die Nutzung von CPU, Speicher und Auslagerungsdatei als auch über die Nutzung und Aktivität der Festplatte darzustellen. Ganz im Sinne von KDE unterstützt es die Einrichtung über eine graphische Benutzeroberfläche. Es unterstützt weiterhin das "Andocken", d. h. es kann z. B. Informationen in der Kontrollleiste anzeigen.

Gegenwärtig unterstützt &ktimemon; nur eine begrenzte Anzahl von Systemen: auf Linux basierte Installationen mit dem `/proc`-Dateisystem, auf &Solaris; basierte Installationen mit der `kstat`-Bibliothek und auf Digital &UNIX; (früher DEC/OSF1) basierte Installationen mit dem `table`(2)-Systemaufruf. Hilfe bei der Portierung auf andere Plattformen ist sehr willkommen.

&ktimemon; kann entweder von der Befehlszeile oder vom &kde;-Startmenü (Untermenü Dienstprogramme) aus gestartet werden. Wenn Sie von der Befehlszeile aus starten, können Sie &ktimemon; die üblichen &X-Window; Programmparameter mitgeben wie z. B. `-geometry`. &ktimemon; ist sitzungskonform, d. h. es speichert die gegenwärtigen Einstellungen (Farben &etc;) und stellt sie in der nächsten Sitzung wieder her.

## Grundsätzliches

Nach dem Start von &ktimemon; erscheint ein Fenster, das verschiedene Informationen über das Betriebssystem enthält. Wenn Sie den Mauszeiger über das &ktimemon;-Fenster führen und ihn für kurze Zeit nicht bewegen, so erscheint ein Kurztipp (d. h. ein kleines Fenster). Die Kurzinfo enthält Daten über die in Form von Graphen dargestellten Systemparameter. Dieses Verhalten kann abgeschaltet werden (siehe Einrichtung).

### Anzeigemodi

&ktimemon; kann die Systeminformationen auf zwei unterschiedliche Arten darstellen. Wie im Abschnitt Einrichtung beschrieben, können Maustasten mit verschiedenen Aktionen belegt werden. Standardmäßig bewirkt ein Druck auf die linke Maustaste im &ktimemon;-Fenster ein Umschalten vom Normalmodus (der Standard) in den Erweiterten Modus und zurück.

#### Normalmodus

Nach dem ersten Start zeigt &ktimemon; Informationen über die gegenwärtige CPU-Nutzung sowie über die Nutzung von Speicher- und Auslagerungsdatei an. Dies geschieht in Form von drei Graphen, die regelmäßig aktualisiert werden (das Standardintervall beträgt 0,5 Sekunden, kann aber geändert werden, siehe Einrichtung). Die drei Graphen stehen (von links nach rechts) für:

CPU-Auslastung.

- &ktimemon; zeigt den Balken in drei verschiedenen Farben an, die jeweils die CPU-Nutzung in verschiedenen Modi repräsentieren. Von unten nach oben sind dies: Kernel-Modus, Benutzer-Modus und Benutzer-Modus mit heruntergesetzter Priorität (Nice). Da &Solaris; Statistiken für den Nice-Modus nicht zu unterstützen scheint, steht der oberste Teil des Balkens auf diesen Systemen für die Zeit, die im wait-Status verbracht wurde. Die Lücke zwischen der Oberseite des Balkens und der Oberseite des Fensters zeigt den Prozentsatz der CPU-Inaktivität an.

Speichernutzung

- Ähnlich wie der CPU-Nutzungsbalken, besteht auch dieser aus drei Feldern, die folgendes anzeigen (von unten nach oben): Speicher, der von Prozessen belegt ist, Speicher, der für Eingabe/Ausgabe-Pufferung benutzt wird und Speicher, der als Dateicache benutzt wird. Bei auf Digital &UNIX; basierten Systemen, zeigt der mittlere Bereich inaktiven Speicher an, d. h. Speicher, der belegt ist und für eine bestimmte Zeit nicht genutzt wird. Bei &Solaris; Systemen wird der mittlere Teil des Balkens nicht benutzt, während der obere Teil hier den Teil des Speichers anzeigt, der vom Kernel genutzt wird. Die Lücke zwischen der Oberseite des Balkens und der Oberseite des Fensters zeigt den freien Speicher an.

Nutzung der Auslagerungsdatei

- Dieser Balken besteht aus einem einzigen Feld, welches die gegenwärtige Nutzung der Auslagerungsdatei relativ zur Gesamtgröße des vorhandenen Auslagerungsbereichs anzeigt.

Durch Drücken derjenigen Maustaste, die für das Umschalten eingestellt wurde, wechselt &ktimemon; in den Erweiterten Modus.

#### Erweiterter Modus

In diesem Modus zeigen die drei Balken andere Systeminformationen an. Auch hier wieder von links nach rechts:

Speicheraktivität

- Dieser Balken besteht aus zwei Teilen. Die untere Hälfte zeigt die Anzahl der Schreibzugriffe auf den Speicher während des letzten Aktualisierungsintervalls. Entsprechend zeigt die obere Hälfte die Lesezugriffe an.

Auslagerungsaktivität

- Der zweite Balken zeigt die entsprechenden Informationen über die Auslagerungsaktivität an.

Kontext-Umschaltung

- Dieser Balken besteht aus einem Feld und zeigt die Kontext-Umschaltungen im letzten Aktualisierungsintervall an.

Da es keinen normalen Weg gibt, die im erweiterten Modus angezeigten Informationen zu skalieren, benutzt &ktimemon; standardmäßig eine automatische Skalierung (dies wird im Abschnitt Allgemeine Fragen näher erläutert). Es gibt jedoch trotzdem einen Weg der manuellen Skalierung (siehe den Abschnitt Einrichtung).

Beachten Sie, dass die beiden Balken-Fenster die gleichen Farben benutzen, d. h. die Farben im Normalmodus werden auch für den Erweiterten Modus verwendet (siehe auch unter Einrichtung Wie verändere ich die Farbeinstellungen?).

## Menüstruktur

Standardmäßig ist die rechte Maustaste mit dem Kontextmenü verknüpft, d. h. ein Klick auf die rechte Maustaste irgendwo im &ktimemon;-Fenster öffnet ein Menü, welches im folgenden Abschnitt beschrieben wird.

### Einstellungen

Das Menü Einstellungen ... öffnet ein Einrichtungsfenster. Dessen Optionen werden im Abschnitt Einrichtung näher erläutert.

### Andocken

Bei Anwahl des Menüs Andocken, schaltet &ktimemon; zwischen dem normalen Fenster und dem Andocken um, wobei in diesem Fall das normale Fenster verschwindet und durch eine minimierte Version in der Kontrollleiste ersetzt wird. Bis auf die Größe weist das minimierte Fenster die gleichen Funktionen wie das große auf.

### Hilfe

&help.menu.documentation;

### Horizontale Balken

Durch Auswahl des Menü-Eintrags Horizontale Balken, schaltet &ktimemon; von vertikaler Balkendarstellung auf horizontale Darstellung und zurück. Dies ist nicht wirklich nützlich, aber mancher mag widersprechen.

### Beenden

Das Menü Beenden schließt &ktimemon;. Es speichert vorher die aktuellen Einstellungen (wie &zb; Farbschema, Fenstergröße und ob es in der Kontrollleiste angezeigt wird) und stellt diese beim nächsten Aufruf wieder her.

Die Einrichtungs-Informationen werden in der Datei `$`HOME`/.trinity/share/config/ktimemonrc`, wobei sich ``$`HOME` auf den Persönlichen Ordner des Benutzers bezieht. Falls die Datei gelöscht wird, startet &ktimemon; beim nächsten Aufruf mit seinen Standardeinstellungen.

## Einrichtung

&ktimemon; kann über einen Dialog konfiguriert werden (siehe auch die Bemerkungen zu den Einstellungen). Auf der Seite Allgemein kann sowohl das Aktualisierungsintervall als auch die Skalierungsmethode eingestellt werden (siehe auch die Bemerkungen zum Erweiterten Modus). Wenn die Option Autoskalierung aktiviert ist (nähere Informationen hierzu gibt es im Abschnitt FAQ), so kann der Skalierungsfaktor nicht manuell festgelegt werden, da &ktimemon; diesen selbstständig ermittelt.

Über die Seite Farben können die Balkenfarben eingestellt werden. Ein kleiner Musterbalken liefert hierzu eine Vorschau.

Auf der Seite Interaktion können die Mauseinstellungen angepasst werden. Mausklicks im &ktimemon;-Fenster können ignoriert werden, einzelne Maustasten können als "Modus umschaltend" definiert werden (siehe auch Modi), das Kontextmenü aufrufen (siehe Menü) oder einen externen Prozess starten. Eine hierfür eingegebene Befehlsabfolge wird von der Standard-Shell abgearbeitet.

Die Interaktion-Seite enthält desweiteren eine Option, die es ermöglicht, den Kurztipp auszuschalten (vergleiche Grundsätzliches).

## Häufige Fragen und Antworten

Welche Betriebssysteme werden von &ktimemon; unterstützt?

&ktimemon; unterstützt auf &Linux; basierende Systeme mit dem `/proc`-Dateisystem, auf &Solaris; basierende Systeme mit der `kstat`-Bibliothek, und auf Digital &UNIX; (früher DEC/OSF1) beruhende Systeme mit dem `table`(2)-Systemaufruf. Lediglich die &Linux;-Version wurde gründlich getestet. Falls Sie irgendwelche Probleme unter &Solaris;/Digital &UNIX; entdecken, kontaktieren Sie mich bitte.

Desweiteren ist Hilfe bei der Portierung von &ktimemon; auf andere Plattformen ist sehr willkommen. Kontaktieren Sie mich unter m.maierhofer@tees.ac.uk, falls Sie beabsichtigen, KTimemon auf andere &UNIX;-Systeme zu portieren.

Wie funktioniert die Autoskalierung?

Da es keinen vorbestimmten Skalierungsfaktor für Paging/Auslagerungsaktivität gibt, benutzt &ktimemon; einen halbintelligenten Autoskalierungsmechanismus. Dies funktioniert so:

- Jeder der drei Balkengraphen hat, wie Abschnitt Erweiterter Modus beschrieben, einen entsprechenden Skalierungsfaktor. Die Anfangswerte der einzelnen Faktoren werden anfangs auf einen vorbestimmten Wert gesetzt.

- Sobald die Anzeige aktualisiert wird, wird der entsprechende Wert abhängig vom entsprechenden Faktor skaliert. Falls der Wert in der vom Faktor gewählten Skalierung angezeigt werden kann, wird keine Änderung in der Darstellung vorgenommen (d. h. dass sich kleine Änderungen der Aktivität auf die Höhe des Balkens auswirken).

- Falls der skalierte Wert zu groß oder zu klein ist, um mit dem gegenwärtigen Skalierungsfaktor angezeigt werden zu können, so wird die Skalierung dahin geändert, dass der neue Wert, welcher dargestellt wird, etwas größer als der dargestellte Balken ist. Hierdurch sollten spätere Werte ohne erneute Skalierung dargestellt werden können.

Warum erscheint die Meldung diagnostic output from child command?

Wenn sie ihre Maustaste mit einem externen Befehl verknüpfen (wie im Abschnitt Einrichtung beschrieben), überprüft &ktimemon; Ihre Eingabe nicht. Stattdessen wird eine Shell aufgerufen, um den Befehl auszuführen. Um dem Benutzer eine Rückmeldung zu liefern, zeigt &ktimemon; die `stderr`-Ausgabe der Shell in der Dialogbox an.

Während dieses Verhalten sehr sinnvoll sein kann, falls der Befehl nicht gefunden wird, so ist es eher lästig, falls ein Befehl lediglich Rückmeldungen ausgibt. Eine sehr einfache und gleichzeitig zweckmäßige Lösung dieses Problems ist es, an das Ende des Kommandos den Befehl `2>/dev/null` anzufügen. Dieser Befehl leitet alle Meldungen der Shell an das Nulldevice und verhindert somit das Erscheinen der Nachricht.

## Danksagungen

&ktimemon; basiert auf der Xt-Version meines Bruders.

Dank an Tobe Toben ttoben@artis.uni-oldenburg.de, Cristian Tibirna ctibirna@gch.ulaval.ca, Dirk A. Mueller dmuell@rhrk.uni-kl.de, Mark Krischer krischem@amp.com, und Lubos Lunak l.lunak@sh.cvut.cz für Bug-Hinweise, Patches, Kommentare und Vorschläge.

Übersetzung:

- Christian Schmittchris.81@gmx.de

- Andreas Kunadt kunsen@web.de

&underGPL;