A Kpm használata

Kpm kézikönyv
Vissza |  | Tovább

# Fejezet 2. A Kpm használata

# 2.1. A Kpm indulása

Amikor a Kpm futása elkezdődik, megjelenítésre kerülnek a következő információk: rendszerterhelés, CPU-használat, memóriahasználat, lapozóterület-használat, a rendszer eddigi futásideje és a folyamatok összesített nézete.

## 2.1.1. Kijelzők

### 2.1.1.1. Terheléskijelző

A rendszerterhelési kijelző egy grafikon, amely az átlagos rendszerterhelést jeleníti meg folyamatosan. A rendszerterhelési grafikonra kattintva egy szöveges megjelenítő jelenik meg a grafikon helyén, pontosabb információkat nyújtva.

### 2.1.1.2. CPU-kijelző

A CPU-kijelző egy oszlop, amely azt mutatja, a CPU-erőforrásoknak hány százalékát használják a felhasználói, a módosított prioritású illetve a rendszer-folyamatok, továbbá kijelzi az üresjárat mértékét. A CPU-grafikonra kattintva egy szöveges megjelenítő jelenik meg a grafikon helyén, pontosabb információkat nyújtva (százalékosan).

### 2.1.1.3. Memóriakijelző

A memória-kijelző egy oszlop, amely azt mutatja, a memória mekkora része van használatban, továbbá mekkora része puffer, gyorstár illetve szabad. A memória-grafikonra kattintva egy szöveges megjelenítő jelenik meg a grafikon helyén, pontosabb információkat nyújtva (megabájtban) illetve megjelenítve a rendszeren elérhető teljes memória méretét.

### 2.1.1.4. Lapozóterület-kijelző

A lapozóterület-kijelző egy oszlop, amely a használatban levő lapozóterület-méretet jeleníti meg. A lapozóterület-grafikonra kattintva egy szöveges megjelenítő jelenik meg a grafikon helyén, pontosabb információt nyújtva (megabájtban) illetve megjelenítve a rendszeren elérhető teljes lapozóterület-méretet.

### 2.1.1.5. Futásidő-kijelző

A futásidő-kijelző egy szöveges megjelenítő, amely azt mutatja, mennyi ideje fut a rendszer folyamatosan.

## 2.1.2. Folyamatlista

Alapértelmezés szerint a folyamatlista a program indulása után az összes folyamatot megjeleníti a felhasználói mezőkkel. Beállítható, hogy csak az aktuális felhasználó folyamatai legyenek megjelenítve, vagy a nem-rendszergazdai folyamatok, vagy a futó folyamatok. A mezők esetében beállítható, hogy a feladatmezők, a memóriamezők vagy egyénileg kiválasztott mezők legyenek megjelenítve. A lista bármely mezőre rendezhető, ehhez kattintson a megfelelő oszlopfejlécre. Ugyanazon oszlopfejlécre való ismételt kattintás megfordítja a rendezési sorrendet.

### 2.1.2.1. Felhasználói mezők

PID

  Folyamat-azonosító. Minden folyamat rendelkezik egy egyéni folyamat-azonosító számmal (PID). A folyamat-azonosító szám 1-től indul és felfelé halad. Egy új folyamat létrejöttekor a következő szabad PID lesz azon folyamat számára kijelölve. A PID jelenleg 16-bites előjeles egész szám, tehát 32767-nél körbefordul a számláló.

USER

  A folyamat tulajdonosa. A folyamat valódi tulajdonosának nevét jelöli. Ha egy folyamat érvényes felhasználó-azonosítója különbözik ezen valódi felhasználó-azonosítótól, ezt az azonosító után levő * vagy + jelzi. A * azt jelöli, hogy az érvényes felhasználó a rendszergazda (ez általában olyan programot jelöl, amely a rendszergazdához lett rendelve a `setuid`-vel).

PRI

  A következő időszelet hossza. A folyamat következő időszeletének maximális hosszát jelöli (a jelenleg futó folyamat esetén pedig azt, hogy mennyi van hátra a folyamat jelenlegi időszeletéből). A szám a -20...20 intervallumra van vetítve, a kisebb szám hosszabb időszeletet jelez.

NICE

  Prioritás az időosztásos rendszerben. Az érték azt határozza meg, hogy egy folyamat futása milyen gyakorisággal van engedélyezve, illetve milyen hosszú az időszelete. Az érték a -20...20 intervallumba esik, az alapértelmezés a 0. Alacsonyabb érték esetén több CPU-időt kap az adott folyamat. Ezt az értéket csak a rendszergazda csökkentheti.

SIZE

  A folyamat virtuális mérete kilobájtban. A folyamat teljes méretét jelöli. Ebbe beletartozik az összes programkód és adat, valamint a folyamat által használt megosztott könyvtárak, beleértve a háttértárolóra kilapozott memórialapokat.

RSS

  Rezidens méret kilobájtban. A folyamat azon részének mérete (programkód és adat), amely ténylegesen a fizikai memóriában (RAM) van, beleértve a megosztott könyvtárakat. Ez egy jó közelítést ad arra, hogy mennyi RAM-ot használ egy folyamat.

SHARE

  Megosztott memória kilobájtban. Azon memória mennyisége, amelyet a folyamat más folyamatokkal megosztva használ. Ez nem azt jelenti, hogy azon memóriát ténylegesen használja egy másik folyamat, hanem csak azt, hogy ez lehetséges.

STAT

  A folyamat állapota. Egy folyamat mindig a következő állapotok valamelyikében van:

  R

    A folyamat fut egy CPU-n, vagy készen áll a futásra.

  S

    A folyamat egy esemény bekövetkeztére vár (mint például I/O-művelet vagy időzítő).

  D

    A folyamat egy esemény bekövetkeztére vár, és nem megszakítható (általában: várakozás egy eszközmeghajtóban).

  T

    A folyamat le lett állítva, vagy nyomkövetés alatt áll egy másik folyamat által.

  Z

    A folyamat befejeződött, de a szülőfolyamat erről még nem értesült.

  W

    A folyamat teljes mértékben ki lett lapozva (azaz nincsen memóriarezidens része). Ez érvényes a kernelfolyamatokra is, mint például `kswapd`.

%CPU

  CPU-százalék a legutóbbi frissítés óta. Azt jelöli, hogy a CPU-időnek mekkora részét használta fel a folyamat a Kpm folyamat-táblázatának legutóbbi frissítése óta.

%MEM

  A felhasznált memória aránya. A teljes RAM-nak a folyamat által (rezidensen) használt százalékát jelöli. A megosztott könyvtárak ebben benne vannak, így ez az érték magasabbnak tűnhet a valóságosnál.

TIME

  A teljes felhasznált CPU-idő. Jelentése: mennyi CPU-időt használt fel a folyamat, amióta el lett indítva.

CMDLINE

  A parancssor, amellyel a folyamat el lett indítva. Azon parancssort jelöli, az átadott argumentumokat is beleértve, amely parancssor a folyamatot elindította. A kilapozott folyamatoknál előfordulhat, hogy csak a parancs neve kerül megjelenítésre, zárójelben. Ez érvényes a kernelfolyamatokra is.

### 2.1.2.2. Feladatmezők

PID

  Folyamat-azonosító. Minden folyamat rendelkezik egy egyedi folyamat-azonosító (PID) számmal. Ez a szám 1-től indul, és növekvő irányban halad. Amikor egy új folyamat kerül létrehozásra, akkor a következő nem használt PID lesz kijelölve a számára. A PID-k jelenleg 16-bites előjeles egész számok, ezért 32767-nél körbefordul a számláló.

PPID

  A szülőfolyamat azonosítója. Az 1-es sorszámú folyamat kivételével minden folyamatnak van pontosan 1 szülőfolyamata. A kivételt képező 1-es folyamat (`init`) a folyamat-hierarchia csúcsa; szülőfolyamattal nem rendelkezik.

PGID

  Folyamatcsoport-azonosító. Minden folyamat tagja egy folyamatcsoportnak. A folyamatcsoportok segítségével szignálok küldhetők több meghatározott folyamatnak, továbbá a folyamatcsoportokat a terminálok használhatják a bemenet olvasásának jogáról való döntésre. A terminállal azonos csoportba tartozó folyamatok az előtérben futnak, és olvashatják a bemenetet, a többi folyamat viszont szignállal lesz felfüggesztve, ha olvasást kísérel meg.

SID

  Munkafolyamat-azonosító. Ezek főként annak meghatározására vannak használva, hogy mi történjen terminál-felfüggesztések esetén.

TTY

  Vezérlő terminál. A vezérlő terminál (tty) általában azon eszköz (soros port, pty, stb.), amelyről a folyamat el lett indítva, és amelyet az bevitelhez (input) illetve kivitelhez (output) használ. Nem minden folyamatnak van vezérlő terminálja. A Kpm megvizsgálja a `/dev` könyvtárat annak érdekében, hogy meghatározza a terminál nevét, de nem biztos, hogy ez sikerrel jár. Helykímélés céljából a terminálnévnek csak az utolsó 2 karaktere van megjelenítve (így a `/dev/ttyp6` p6-ként jelenik meg).

TPGID

  A terminál tulajdonosának folyamatcsoport-azonosítója. Egy használatban levő terminál egy folyamat tulajdonában van. Ez azon folyamat PGID-kódja.

STAT

  A folyamat állapota. Egy folyamat mindig a következő állapotok valamelyikében van:

  R

    A folyamat fut egy CPU-n, vagy futásra kész.

  S

    A folyamat egy esemény bekövetkeztére vár (mint például I/O vagy egy időzítő).

  D

    A folyamat egy esemény bekövetkeztére vár, és nem megszakítható (általában: várakozás egy eszközmeghajtóban).

  T

    A folyamat le lett állítva, vagy egy másik folyamat által végzett nyomkövetés alatt áll.

  Z

    A folyamat befejeződött, de a szülőfolyamat erről még nem értesült.

  W

    A folyamat teljes mértékben ki lett lapozva (vagyis nincsenek olyan lapjai, amelyek a memóriában lennének). Ez a kernelfolyamatokra is érvényes, mint például `kswapd`.

UID

  Numerikus felhasználó-azonosító. A folyamat (valódi) tulajdonosát jelöli.

TIME

  A teljes felhasznált CPU-idő. Azt jelöli, mennyi CPU-időt használt fel a folyamat, amióta el lett indítva.

CMDLINE

  A parancssor, amellyel a folyamat el lett indítva. Azon parancssort jelöli, az átadott argumentumokat is beleértve, amely parancssor a folyamatot elindította. A kilapozott folyamatoknál előfordulhat, hogy csak a parancs neve kerül megjelenítésre, zárójelben. Ez érvényes a kernelfolyamatokra is.

### 2.1.2.3. Memóriamezők

PID

  Folyamat-azonosító. Minden folyamat rendelkezik egy egyedi folyamat-azonosító (PID) számmal. Ez a szám 1-től indul, és növekvő irányban halad. Amikor egy új folyamat kerül létrehozásra, akkor a következő nem használt PID lesz kijelölve a számára. A PID-k jelenleg 16-bites előjeles egész számok, ezért 32767-nél körbefordul a számláló.

TTY

  Vezérlő terminál. A vezérlő terminál (tty) általában azon eszköz (soros port, pty, stb.), amelyről a folyamat el lett indítva, és amelyet az bevitelhez (input) illetve kivitelhez (output) használ. Nem minden folyamatnak van vezérlő terminálja. A Kpm megvizsgálja a `/dev` könyvtárat annak érdekében, hogy meghatározza a terminál nevét, de nem biztos, hogy ez sikerrel jár. Helykímélés céljából a terminálnévnek csak az utolsó 2 karaktere van megjelenítve (így a `/dev/ttyp6` p6-ként jelenik meg).

MAJFLT

  Az eddig bekövetkezett, lemezről való olvasást eredményező memóriakezelési megszakítások ("major page faults", azaz nagyobb laphibák) száma. Laphiba (page fault) akkor fordul elő, amikor egy folyamat olyan memórialap olvasását illetve írását kísérli meg, amely lap nincs jelen a RAM-ban. Ez a fajta laphiba azt jelenti, hogy lemezhozzáférés vált szükségessé, például memórialapok be- illetve kilapozása.

MINFLT

  Az eddig bekövetkezett, lemezről való olvasást nem eredményező memóriakezelési megszakítások ("minor page faults", azaz kisebb laphibák) száma. Laphiba (page fault) akkor fordul elő, amikor egy folyamat olyan memórialap olvasását illetve írását kísérli meg, amely lap nincs jelen a RAM-ban, illetve amikor nem-írható lapra kísérli meg az írást. Ez a fajta laphiba azt jelenti, hogy lemezhozzáférés nem vált szükségessé, például "írás esetén másolandó" (copy-on-write) megosztott lapra való írás esetén.

TRS

  A programkód rezidens mérete kilobájtban. A folyamathoz tartozó (végrehajtható) programkód RAM-ban levő részének méretét jelöli.

DRS

  Az adatok rezidens mérete kilobájtban. A folyamathoz tartozó (nem végrehajtható kódot jelentő) adatok RAM-ban levő részének méretét jelöli.

SIZE

  A folyamat virtuális mérete kilobájtban. A folyamat teljes méretét jelöli. Ebbe beletartozik az összes programkód és adat, valamint a folyamat által használt megosztott könyvtárak, beleértve a háttértárolóra kilapozott memórialapokat.

SWAP

  A lapozóeszközön levő kilobájtok. A SIZE és az RSS értékek közti különbséget jelöli, vagyis azt, hogy egy folyamat mekkora része van lemezen.

RSS

  Rezidens méret kilobájtban. A folyamat azon részének mérete (programkód és adat), amely ténylegesen a fizikai memóriában (RAM) van, beleértve a megosztott könyvtárakat. Ez egy jó közelítést ad arra, hogy mennyi RAM-ot használ egy folyamat.

SHARE

  Megosztott memória kilobájtban. Azon memória mennyisége, amelyet a folyamat más folyamatokkal megosztva használ. Ez nem azt jelenti, hogy azon memóriát ténylegesen használja egy másik folyamat, hanem csak azt, hogy ez lehetséges.

DT

  A kiíratlan (dirty) lapok száma. Azon, RAM-ban levő lapok száma (nem pedig bájtok száma), amelyek módosításra kerültek a legutóbbi, lemezre való írás óta. A kiíratlan lapokat lemezre szükséges írni, mielőtt felszabadításra kerülnek más adatok számára.

CMDLINE

  A parancssor, amellyel a folyamat el lett indítva. Azon parancssort jelöli, az átadott argumentumokat is beleértve, amely parancssor a folyamatot elindította. A kilapozott folyamatoknál előfordulhat, hogy csak a parancs neve kerül megjelenítésre, zárójelben. Ez érvényes a kernelfolyamatokra is.

### 2.1.2.4. Egyéb mezők

PLCY

  Ütemezési módszer. A "FIFO" (F) és a "Round-Robin" (R) módszerek valós idejű ütemezési módszerek. Az "Other" (O) módszer a normál Unix-os időosztásos módszer. Az F és az R típusú folyamatoknak 1 és 99 közti valós idejű prioritásuk van. Egy folyamat addig fut, amíg nincs nála nagyobb prioritású futtatható folyamat. A "Round-Robin" típusú folyamatok 1 időszeletnyi futás után az ő prioritásuknak megfelelő sorba kerülnek, utolsóként. A "FIFO" típusú folyamatok addig futnak, amíg le nem mondanak a CPU-időjükről (várakozó illetve blokkolt állapotba való kerüléssel) vagy amíg egy magasabb prioritású folyamat meg nem szerzi a futási jogot. Csak a rendszergazda (root) módosíthatja az ütemezési módszert.

RPRI

  A valós idejű folyamatoknak ("FIFO" illetve "Round-Robin") 1 és 99 közti prioritásuk van. Egy folyamat a nála alacsonyabb prioritású folyamatoknál előbb kap futási jogot. A normál időosztásos folyamatok (O jelű módszer) prioritása mindig 0. Csak a rendszergazda (root) módosíthatja a valós idejű prioritást.

FLAGS

  A folyamat állapotjelzői (hexadecimális). Kiegészítő információ egy folyamat állapotáról. Ezzel kapcsolatosan további információk találhatók a Linux kernel forráskódjában.

WCHAN

  Azon függvény, amelynél a folyamat várakozó állapotba került. Ha a folyamat valaminek a megtörténtére vár, akkor ez az a kernelfüggvény, amelynél leállt a futása. A név elején levő "do_" illetve "sys_" nem kerül megjelenítésre, hogy a név rövidebb legyen.

%WCPU

  Súlyozott CPU-százalék. A folyamat által használt CPU-idő-arány a legutóbbi 30 másodpercre vonatkozóan átlagolva (exponenciálisan csökkenő átlag).

START

  Folyamatindítás időpontja. Azon időpontot adja meg, amikor a folyamat létre lett hozva.

COMM

  A folyamatot elindító parancs. Azon parancs (fájlnév), amely elindította a folyamatot. A hosszú nevek levágásra kerülnek.

Vissza | Tartalom | Tovább
Bevezetés |  | Erőforrás-használat megjelenítése