PS(1) | Linux Programmer's Manual | PS(1) |
ps - a processzek állapotát adja meg
ps [-] [lujsvmaxScewhrnu] [txx] [O[+|-]k1[[+|-]k2...]] [pids]
van még továbbá három hosszú opció:
--sortX[+|-]key[,[+|-]key[,...]]
--help
--version
A többi hosszú opció előkészületben...
A ps program az aktuális processzek pillanatfelvételét adja. Amennyiben az állapotok ismétlődő frissítésére van szükség, a top használata javasolt.
Ez a kézikönyvlap a ps program /proc-alapú változatát dokumentálja, vagy legalábbis megpróbálja megtenni.
A ps jelen változatának parancssori opciói a ps, BSD változata alapján készültek, nem pedig a System V változat szerint.
A parancssori argumentumoknak nem ajánlott `-' karakterrel kezdődniük, mivel a jövőben, ez a Unix98-standard parancssori argumentumok jelölésére lesz fenntartva, ezért `-' nélkül kell az aktuális ``kiterjesztett BSD'' stílusú argumentumokat jelölni.
Pillanatnyilag a ps program figyelmeztetést ad, ha egy `-'-t használunk rövid opció jelölésére, de működni fog. Ha olyan shell szkriptjeid vannak, melyek BSD-stílusú argumentumokat használnak a ps hívásához, akkor a figyelmeztetések nyomán célszerű ezeket lecserélni, különben a közeljövőben ezek a szkriptek használhatatlanná válhatnak. Amennyiben ki akarod kapcsolni a figyelmeztetéseket, be kell állítani a I_WANT_A_BROKEN_PS környezeti változót.
Van néhány GNU stílusú ``hosszú opció'' is; lásd lentebb.
Ezen opció használata esetén a megfelelő PID értékű processzek mindenképp listázásra kerülnek, függetlenül az `x' és `a' opcióktól.
Ezen opciók előtt két `-'-jel taláható.
Megjegyezzük, hogy a rendezéshez használt értékek a ps által használt belső értékek és nem azok az értékek, melyeket a kimeneti formátummezők némelyikében látunk.
SHORT LONG DESCRIPTION
A ps ezen proc -alapú változata a proc fájlrendszer fájljait olvassa munka közben, melyek a /proc -ban találhatók. Ezért ezen ps -változatnak nem szükséges, hogy a kmem `suid'-os legyen, vagy speciális előjogokkal fusson.
Nem célszerű ezen programnak semmilyen különleges előjogot adni.
Szükség lehet a /etc/psdatabase frissítésére a /usr/sbin/psupdate futtatásával, hogy a WCHAN mező értelmes információkat tartalmazzon. Ezt minden új kernelfordításkor célszerű megtenni. Szintén érdemes lefuttatni a ps -t egyszer root-ként, majd ezt megismételni, ha a `/dev'-ben egy tty eszköz megváltozik.
Akárcsak a procps-1.00 esetén, a `ps' és a `top' közvetlenül olvassa a `System.map'-ot ha lehetséges. A kernel cím-szimbólum feloldás lehetőségei (address-to-symbol resolution):
$PS_SYSTEM_MAP
/boot/System.map-`uname -r`
/boot/System.map
/lib/modules/`uname -r`/System.map
/etc/psdatabase
/boot/psdatabase-`uname -r`
/boot/psdatabase,
/lib/modules/`uname -r`/psdatabase
A task_struct struktúra used_math tagja nem kerül kijelzésre, mivel crt0.s ellenőrzi, hogy jelen van-e matematikai koprocesszor. Ez azt jelenti, hogy a `math flag' minden processzre be lesz állítva, ami pedig haszontalan.
A lemezre swap-pelt programok parancssori argumentumok nélkül jelennek meg, és hacsak a c opció nem adott, zárójelbe kerülnek.
%CPU A "CPU idő/valós idő" arányt mutatja százalékban. Ez nem fogja elérni a 100%-ot, hacsak nincs szerencsénk. Ez a felhasznált idő és a program futásidejének hányadosa.
A SIZE és RSS mezők nem számolják a laptáblákat (page tables) és a task_struct -ját a processznek; ez pedig legalább 12 kilobájt memóriát jelent, amely mindenképp rezidens. SIZE a processz virtuális mérete (code+data+stack).
Az eszközszámokat a nevekre való leképezéshez a ps egy /etc/psdevtab nevő fájlt tart karban, ami a "/dev" minden megújításakor frissítődik ha az engedélyek ezt megengedik. Amennyiben az engedélyek nem engedik a frissítést, a ps minden hívása egy stat(2) hívást igényel a "/dev" minden fájljára. Amennyiben a "/dev" tartalma gyakran változik a rendszeren, a ps -t célszerű gyakran lefuttatni root-ként. Esetleg egy $HOME alatti fájl is hozzáadható a programhoz, ha nagy lesz a közvélemény nyomása.
A ps -t eredetileg Branko Lankester <lankeste@fwi.uva.nl> írta. Michael K. Johnson <johnsonm@redhat.com> jelentős részben újraírta, hogy a `proc' fájlrendszert használja. Michael Shields <mjshield@nyx.cs.du.edu> a PID-listák lehetőségét adta a programhoz. Charles Blake <cblake@bbn.com> a többszintű rendezést, a `dirent-style library', az eszköznév-szám térkép adatbázisát, a közelítő bináris keresést a System.map-ban és sok kódolási illetve dokumentálási javítást adott a programhoz. David Mossberger-Tang az általános BSD támogatást írta a psupdate-hez. Michael K. Johnson <johnsonm@redhat.com> az aktuális karbantartó.
Hibajelentéseket a <procps-bugs@redhat.com> címre kérjük küldeni.
Horváth András <horvatha@rs1.szif.hu>
A fordító megjegyzése: Az eredeti dokumentum sok nehezen érthető mondatot, nem definiált rövidítést, szleng kifejezést tartalmazott. Sok esetben bizonytalan vagyok a fordításban. Kérem, óvatosan olvassa mindenki ezt a fordítást, és ha egyes részeket valaki tud pontosítani, tudassa velem.
3 Sep 1997 | Cohesive Systems |