&ktimemon; Martin Maierhofer
m.maierhofer@tees.ac.uk
TamásSzántóMagyar fordítás
tszanto@mol.hu
2001. 11. 29. 0.03.01 A &ktimemon; egy KDE-alapú rendszermonitorozó program KDE ktimemon rendszermonitor timemon
Bevezető A &ktimemon; segítségével könnyen nyomon lehet követni a rendszererőforrások kihasználtságá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 TDE panelba ágyazva is használható. A &ktimemon; egyelőre csak a következő 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ó átvitelében. A &ktimemon; elindítható parancssorból és a &kde; Start menüjéből (a Segédprogramok ágból) is. Ha a parancssorból történő indítást választja, akkor a &ktimemon; elfogadja a szokásos &X-Window;-paramétereket, például a argumentumot. A program figyelembe veszi a munkafolyamatokat, tehát kilépéskor elmenti a beállítá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,5 s, 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 rendszermag-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 esnek 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. <guimenuitem>Beállítások...</guimenuitem> 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ó. <guimenuitem>Dokkolás a panelba</guimenuitem> A Dokkolás a panelba menüpont 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 TDE panelban jelenik meg. A méretváltozástól eltekintve a kijelzett adatok ugyanazok, mint normál ablak esetén. <guimenu>Segítség</guimenu> &help.menu.documentation; <guimenuitem>Vízszintes oszlopok</guimenuitem> 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 ;-) <guimenuitem>Kilépés</guimenuitem> A Kilépés menüponttal 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/.trinity/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 lapon lehet beállítani az oszlopdiagramok megjelenítésénél használt színeket. A grafikon előnézeti 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 szeretnének 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őt találni, amely minden lehetséges lapozási és feladatváltási értékekhez megfelelő lenne (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 tartalmaz, mely 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 a 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. A közreműködők névsora 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 &underGPL;