# &ktimemon;

Martin
Maierhofer

    m.maierhofer@tees.ac.uk

Tamás
Szántó
Magyar fordítás

    tszanto@mol.hu

1999-04-16
0.03.01

A &ktimemon; egy KDE alapú rendszermonitorozó program

KDE
ktimemon
rendszermonitor
timemon

# Bevezetés

A &ktimemon; segítségével könnyen nyomon lehet követni a rendszer-erőforrások kihasználtságának változását. Oszlopgrafikonok formájában lehet megtekinteni a CPU, a memória, a lapozási terület, a lemezhasználat és a feladatváltások jellemzőit. Hasonlóan a többi KDE alapú programhoz, ez is rendelkezik grafikus beállítófelülettel. Támogatja a dokkolást is, tehát a KDE panelba ágyazva is használható.

A &ktimemon; egyelőre csak a következő Unix rendszereket támogatja: a &Linux;-ot, a `/proc` fájlrendszeren keresztül, a &Solaris;-t a `kstat` programkönyvtáron keresztül, a Digital &UNIX;-ot (korábban: DEC/OSF1) a `table`(2) rendszerhíváson keresztül. Nagyon örülnék, ha valaki segíteni tudna a program más rendszerekre való portolásában.

A &ktimemon; elindítható a parancssorból vagy például a &kde; Alt+F2-re megjelenő parancsablakából is. Ha a parancssorból történő indítást választja, akkor a &ktimemon; értelmezni fogja a szokásos &X-Windows;-paramétereket, például a `-geometry` kapcsolót. A program kezeli a munkafolyamatokat, tehát elmenti a testreszabási paramétereket (például a színeket), és indításkor automatikusan visszaállítja a legutóbbi állapotot.

## A program kezelése

A &ktimemon; indulása után megjelenő kis ablakban láthatók az operációs rendszer legfontosabb adatai. Ha az egérmutatót az ablak fölött hagyja egy ideig, akkor megjelenik egy tipp (egy buborékszerű információs ablak), mely különféle numerikus adatokat tartalmaz a rendszerről, oszlopdiagram formájában megjelenítve. A tippeket le lehet tiltani (részletesebben lásd a Beállítások részben).

### Megjelenítési módok

A &ktimemon; két különböző információcsoportot tud megjeleníteni. A Beállítások részben részletesen elmagyarázzuk, hogyan lehet egérgombokat rendelni a különféle műveletekhez. Alapértelmezés szerint a bal egérgombbal lehet a kijelzési módok között váltani, tehát ha a bal egérgombbal az ablak területére kattint, akkor a kijelzési mód az alapértelmezett normál módról átvált az ún. kiterjesztett módra, és fordítva.

#### Normál mód

A &ktimemon; első indítása után megjelennek a CPU, a memória és a lapozási terület kihasználtsági mutatói. A kijelzéshez használt három oszlopdiagram folyamatosan változik a pillanatnyi érték függvényében (az alapértelmezett frissítési időköz 0,5s, ez megváltoztatható, lásd a Beállítások részt). Az oszlopok által reprezentált értékek (balról jobbra haladva):

a CPU kihasználtsága.

  Az oszlop három különböző színű részből tevődik össze, a CPU három módjában eltöltött idővel arányosan. Ezek lentről felfelé: a kernel-mód, a felhasználói mód és a csökkentett prioritású (nice) felhasználói mód - ez utóbbit a &Solaris;ban nem lehet lekérdezni, ezért az oszlop legfelső része ilyen rendszereknél a várakozási állapotban eltöltött időt mutatja. Az oszlop teteje és az ablak széle közötti rész a CPU üresjárati idejének felel meg.

Memóriahasználat

  A CPU-használat oszlopához hasonlóan ez az oszlop is három részből áll, a következő értékeket reprezentálva (lentről felfelé): a folyamatok által lefoglalt memória mennyisége, az I/O-pufferelés és a fájlgyorstár által lefoglalt memória. Digital &UNIX; rendszerekben a középső rész az inaktív memóriát jelképezi (a lefoglalt, de még fel nem használt memóriamennyiséget), &Solaris;-alapú rendszerekben pedig ez a középső rész nem használt, a legfelső rész a kernel által használt összes memóriát jelzi. Az oszlop teteje és az ablak pereme közötti rész a szabad, felhasználható memória mennyiségét reprezentálja.

Lapozási terület

  Ez az oszlop csak egy részből áll, a felhasznált lapozási terület arányát mutatja a teljes rendelkezésre álló területhez képest.

Ha a módváltáshoz rendelt egérgombbal kattint a &ktimemon; ablakban, akkor a program kiterjesztett módba vált.

#### Kiterjesztett mód

Ebben a módban is három oszlopgrafikon látszik, de így más értékeket jeleznek. Balról jobbra haladva:

Lapozási aktivitás

  Ez az oszlop két részből áll, az alsó az utolsó mintavételezési időszakban a háttértárra kiírt memórialapok számát mutatja, a felső pedig ugyanezen időszak alatt a háttértárról beolvasott memórialapok számát.

Lapozási aktivitás (lemezre)

  A második oszlop az elsőhöz hasonló információt, a lemezre történő lapozást mutatja.

A feladatváltások száma

  Ez az oszlop csak egy részből áll, mely a legutolsó mintavételezési időszakban történt feladatváltások számát reprezentálja.

Minthogy nem lehet előre megmondani, hogy a kijelzett értékek milyen tartományba eshetnek a kiterjesztett módban, ezért alapértelmezésben a program automatikus skálázást használ (ennek leírása a Gyakran feltett kérdések részben található). De arra is van lehetőség, hogy megadja a skálázás értékeit, ennek módját megtalálható a Beállítások részben.

A két grafikoncsoport közös színbeállításokat használ, tehát a normál módban beállított színek a kiterjesztett módban is érvényesek lesznek (a színbeállításról részletesen a Beállítások részben olvashat).

## A menüstruktúra

Alapértelmezés szerint a jobb egérgombbal lehet előhívni a felbukkanó menüt, tehát ha a jobb egérgombbal kattint az ablak területén belül, akkor megjelenik egy menü, melynek leírását a következő fejezetekben találhatja meg.

### Beállítások...

A Beállítások... menüponttal lehet előhívni a beállítóablakot. A beállítások részletes leírása a Beállítások fejezetben található.

### Dokkolás a panelba

A Dokkolás a panelba menüelem segítségével lehet átváltani a standard megjelenítés (azaz a normál ablak) és a beágyazott állapot között: ilyenkor a program kicsinyített megjelenítőablaka a KDE panelban jelenik meg. A méretváltozástól eltekintve a kijelzett adatok ugyanazok, mint normál ablak esetén.

### Segítség

&help.menu.documentation;

### Vízszintes oszlopok

Ha rákattint a Vízszintes oszlopok menüpontra, akkor a program függőleges oszlopdiagramok helyett vízszinteseket fog megjeleníteni (vagy fordítva). Nem túl hasznos opció, de könnyű volt leprogramozni ;-)

### Kilépés

A Kilépés menüponttal - micsoda meglepetés - lehet kilépni a programból. Kilépés előtt a program elmenti az aktuális állapotot (a színbeállításokat, az ablakméretet, hogy a panelba ágyazottan fut-e a program) és a következő indításnál mindent automatikusan visszatölt.

A beállításokat a program a `$`HOME`/.kde/share/config/ktimemonrc` nevű fájlba menti, ahol `$`HOME`` a felhasználó saját könyvtárát jelenti. Ha a fájl valami miatt törlődik, akkor a program legközelebb az alapértelmezett beállításokkal fog indulni.

## Beállítások

A &ktimemon; beállításai egy könnyen áttekinthető párbeszédablakban jelennek meg (lásd még A beállítómenü fejezetet). Az Általános lapon lehet megadni a frissítés időközét és a skálázás jellemzőit (lásd a kiterjesztett mód fejezetet). Ha az automatikus skálázás be van jelölve (erről részletesebben a GY. I. K. fejezetben olvashat), akkor a skálázási tényezőket nem lehet módosítani, mert azokat a program futás közben számolja ki.

A Színek lehet beállítani az oszlopdiagramok megjelenítésénél használt színeket. A grafikon előképén azonnal leellenőrizhető a beállítások hatása.

A Műveletek lapon lehet módosítani az egérrel végrehajtható parancsok beállításait. A kattintásokat figyelmen kívül lehet hagyni, hozzá lehet őket rendelni a módváltáshoz (lásd a Módok fejezetet), a felbukkanó menü előhívásához (lásd a Menü fejezetet), külső program végrehajtásához. Külső program végrehajtásánál a beírt parancsot a parancsértelmező fogja feldolgozni, ezért belső parancsok, környezeti változók, átirányítás is használható (többek között).

A Műveletek lapon található egy olyan opció is, amellyel le lehet tiltani a tippek megjelenítését (ezek buborékszerű ablakban jelennek a grafikon fölött, numerikus adatokat tartalmazva, lásd A program kezelése fejezetet).

## Válaszok a leggyakrabban feltett kérdésekre

Mely operációs rendszereket támogatja a &ktimemon;?

A &ktimemon; csak azokat a &Linux;-alapú rendszereket támogatja, amelyekben elérhető a `/proc` fájlrendszer, a &Solaris;-alapú rendszereket a `kstat` programkönyvtáron keresztül, a Digital &UNIX; (korábban: DEC/OSF1) rendszereket a `table`(2) rendszerhíváson keresztül. Csak a &Linux;-alapú verziót teszteltük alaposan, ha valamilyen problémát fedezett fel a &Solaris;/Digital &UNIX; változatban, kérem, értesítsen.

Várom azok jelentkezését, akik segíteni tudnak a program más platformokra való átültetésében. Elérhető vagyok az m.maierhofer@tees.ac.uk címen.

Hogyan működik az automatikus skálázás?

Minthogy nem lehet olyan skálázási tényezőket találni, amelyek minden lehetséges lapozási és feladatváltási értékekhez megfelelnének (a memóriakihasználtság esetén a teljes memória megadja a maximális értéket), ezért a program egy intelligens automatikus skálázási algoritmust is tartalmaz. Ez a következőképpen működik:

- Az oszlopdiagramok mindegyik komponensének (lásd a kiterjesztett mód fejezetét) saját skálázási tényezője van. Ezek kezdeti értéke előre rögzített.

- Minden megjelenítési ciklus elején az aktuális értéket beszorozza a program az aktuális skálázási tényezővel. Ha az így módosított érték a megjelenítési határok közé esik, akkor a skálázás változatlan marad (tehát kis változások esetén csak az oszlop magassága változik, a skálázás nem).

- Ha a skálázott érték túl nagy vagy túl kicsi ahhoz, hogy megjeleníthető legyen az aktuális skálázással, akkor a skálázási tényezőt úgy változtatja meg a program, hogy a kapott oszlop kb. az ablak fele magasságáig érjen. Így a legtöbb esetben elkerülhető, hogy az állandó újraskálázás miatt folyamatosan változzanak a skálázási tényezők (ami a grafikon "ugrálását" vonná maga után.

Miért jelenik meg néha egy diagnosztikai kimenet érkezett az alfolyamatból üzenet?

Ha valamelyik egérgombot egy külső programhoz rendeli, ahogy a Beállítások fejezetben le van írva, akkor a program nem ellenőrzi le a parancs tartalmát. A parancs végrehajtása a parancsértelmező segítségével fog megtörténni, ezért annak belső parancsai, környezeti változók stb. is szerepelhetnek benne. A &ktimemon; figyeli a program stderr kimenetét, és annak tartalmát (ha van) megjeleníti egy üzenetablakban.

A programnak ez a képessége hasznos lehet hibakeresésnél, ha a parancs nem az elvárt módon működik, de zavaróvá válhat, ha a program nagymennyiségű adatot ír ki az stderr kimenetre. A probléma egyik lehetséges megoldási módja az, ha a parancs végéhez hozzáfűzi a `2>/dev/null` átirányítási utasítást. Ennek hatására a kimenetet az operációs rendszer elnyeli, emiatt az üzenetablak sem jelenik meg.

## Köszönetnyilvánítás

A &ktimemon; a testvérem által írt Xt-alapú programra épül.

Köszönet Tobe Tobennek (ttoben@artis.uni-oldenburg.de) Cristian Tibirna-nak (ctibirna@gch.ulaval.ca), Dirk A. Muellernek (dmuell@rhrk.uni-kl.de), Mark Krischernek (krischem@amp.com) és Lubos Lunaknak (l.lunak@sh.cvut.cz) a hibajelentésekért, a javításokért, a megjegyzésekért és a sok javaslatért.

Magyar fordítás: Szántó Tamás tszanto@mol.hu

&underFDL; &underGPL;