Sinopsis (Synopsis)
ps [-AaCcEefhjlMmrSTvwXx] [-O biçim | -o biçim] [-G grup_id[,grup_id...]] [-g grup[,grup...]]
[-u uid[,uid...]] [-p pid[,pid...]] [-t tty[,tty...]] [-U kullanıcı[,kullanıcı...]]
ps [-L]
Açıklama (Description)
ps yardımcı programı, kontrol terminaline sahip tüm süreçleriniz hakkında bilgi içeren satırların takip ettiği bir başlık satırı görüntüler.
Görüntülenmek üzere farklı bir süreç kümesi, -a, -G, -g, -p, -T, -t, -U ve -u seçeneklerinin herhangi bir kombinasyonu kullanılarak seçilebilir. Bu seçeneklerden birden fazlası verilirse, ps verilen seçeneklerden en az biriyle eşleşen tüm süreçleri seçecektir.
Görüntülenmek üzere seçilen süreçler için, ps genellikle süreç başına bir satır görüntüler. -M seçeneği, bazı süreçler için birden fazla çıktı satırı (iş parçacığı başına bir satır) ile sonuçlanabilir. Varsayılan olarak tüm bu çıktı satırları önce kontrol terminaline, ardından süreç kimliğine (PID) göre sıralanır. -m, -r ve -v seçenekleri sıralama düzenini değiştirir. Birden fazla sıralama seçeneği verildiyse, seçilen süreçler belirtilen son sıralama seçeneğine göre sıralanacaktır.
Görüntülenmek üzere seçilen süreçler için, görüntülenecek bilgi bir dizi anahtar kelimeye göre seçilir (bkz. -L, -O ve -o seçenekleri). Varsayılan çıktı biçimi, her süreç için sürecin kimliğini (PID), kontrol terminalini, CPU süresini (hem kullanıcı hem de sistem süresi dahil), durumunu ve ilişkili komutunu içerir.
Seçenekler aşağıdaki gibidir:
-A: Kontrol terminali olmayanlar da dahil olmak üzere diğer kullanıcıların süreçleri hakkındaki bilgileri görüntüler.-a: Kendi süreçlerinizin yanı sıra diğer kullanıcıların süreçleri hakkındaki bilgileri de görüntüler. Bu seçenek, -x seçeneği de belirtilmedikçe, kontrol terminali olmayan süreçleri atlayacaktır.-C: "Yerleşik" (resident) süreyi yoksayan "ham" (raw) bir CPU hesaplaması kullanarak CPU yüzdesinin hesaplanma şeklini değiştirir (bu normalde hiçbir etki yapmaz).-c: "command" sütun çıktısını, tam komut satırı yerine yalnızca yürütülebilir dosya adını içerecek şekilde değiştirir.-d: -A gibidir, ancak oturum liderlerini (session leaders) hariç tutar.-E: Ortamı (environment) da görüntüler. Bu, süreç başlatıldıktan sonra ortamda yapılan değişiklikleri yansıtmaz.-e: -A ile aynıdır.-f: uid, pid, ebeveyn pid, son CPU kullanımı, süreç başlangıç zamanı, kontrol tty, geçen CPU kullanımı ve ilişkili komutu görüntüler. -u seçeneği de kullanılıyorsa, sayısal uid yerine kullanıcı adını görüntüler. -f seçeneğini takiben görüntüye ekleme yapmak için -o veya -O kullanıldığında, komut alanı diğer biçimlerde olduğu kadar ciddi şekilde kesilmez.-G: Belirtilen gerçek grup kimlikleriyle (group ID) çalışan süreçler hakkındaki bilgileri görüntüler.-g: Belirtilen süreç grubu liderlerine sahip süreçler hakkındaki bilgileri görüntüler.-h: Bilgi sayfa başına bir başlık garanti edecek şekilde bilgi başlığını gerektiği sıklıkta tekrarlar.-j: Aşağıdaki anahtar kelimelerle ilişkili bilgileri yazdırır: user, pid, ppid, pgid, sess, jobc, state, tt, time ve command.-L: -O ve -o seçenekleri için kullanılabilen anahtar kelimelerin listesini sunar.-l: Aşağıdaki anahtar kelimelerle ilişkili bilgileri görüntüler: uid, pid, ppid, flags, cpu, pri, nice, vsz=SZ, rss, wchan, state=S, paddr=ADDR, tty, time ve command=CMD.-M: Her göreve karşılık gelen iş parçacıklarını (threads) yazdırır.-m: Kontrol terminali ve süreç kimliği kombinasyonu yerine bellek kullanımına göre sıralar.-O: Varsayılan bilgi ekranında süreç kimliğinden sonra, belirtilen boşluk veya virgülle ayrılmış anahtar kelime listesiyle ilişkili bilgileri ekler. Anahtar kelimelerin sonuna bir eşittir (‘=’) işareti ve bir dize eklenebilir. Bu, yazdırılan başlığın standart başlık yerine belirtilen dizeyi kullanmasını sağlar.-o: Belirtilen boşluk veya virgülle ayrılmış anahtar kelime listesiyle ilişkili bilgileri görüntüler. Birden fazla -o seçeneği şeklinde çoklu anahtar kelimeler de verilebilir. Anahtar kelimelerin sonuna bir eşittir (‘=’) işareti ve bir dize eklenebilir. Bu, yazdırılan başlığın standart başlık yerine belirtilen dizeyi kullanmasını sağlar. Tüm anahtar kelimelerin boş başlık metinleri varsa, başlık satırı yazılmaz.-p: Belirtilen süreç kimlikleriyle (PID) eşleşen süreçler hakkındaki bilgileri görüntüler.-r: Kontrol terminali ve süreç kimliği kombinasyonu yerine mevcut CPU kullanımına göre sıralar.-S: Tüm sonlandırılmış çocuk süreçleri ebeveyn süreçlerine toplayarak süreç süresinin hesaplanma şeklini değiştirir.-T: Standart girişle ilişkili cihaza bağlı süreçler hakkındaki bilgileri görüntüler.-t: Belirtilen terminal cihazlarına bağlı süreçler hakkındaki bilgileri görüntüler.-U: Belirtilen gerçek kullanıcı kimliklerine (UID) ait süreçleri görüntüler.-u: Belirtilen kullanıcı adlarına ait süreçleri görüntüler.-v: Aşağıdaki anahtar kelimelerle ilişkili bilgileri görüntüler: pid, state, time, sl, re, pagein, vsz, rss, lim, tsiz, %cpu, %mem ve command. -v seçeneği -m seçeneğini ima eder.-w: Bilgileri görüntülemek için pencere boyutunuz olan varsayılan değer yerine 132 sütun kullanır. Eğer -w seçeneği birden fazla kez belirtilirse, ps pencere boyutunuzu dikkate almaksızın gerektiği kadar sütun kullanacaktır. Çıktı bir terminale yapılmadığında, her zaman sınırsız sayıda sütun kullanılır.-X: Diğer seçeneklerle eşleşen süreçleri görüntülerken, kontrol terminali olmayan süreçleri atlar.-x: Diğer seçeneklerle eşleşen süreçleri görüntülerken, kontrol terminali olmayan süreçleri de dahil eder. Bu, -X seçeneğinin tersidir. Aynı komutta hem -X hem de -x belirtilirse, ps en son belirtilen seçeneği kullanacaktır.
Mevcut anahtar kelimelerin tam listesi aşağıda verilmiştir. Bu anahtar kelimelerden bazıları aşağıdaki gibi tanımlanmıştır:
%cpu Sürecin CPU kullanımı; bu, bir dakikaya kadar olan önceki (gerçek) sürenin azalan ortalamasıdır. Bunun hesaplandığı zaman tabanı değiştiği için (bazı süreçler çok yeni olabilir), tüm %cpu alanlarının toplamının %100'ü aşması mümkündür.
%mem Bu süreç tarafından kullanılan gerçek belleğin yüzdesi.
flags <sys/proc.h> include dosyasında olduğu gibi süreçle ilişkili bayraklar:
P_ADVLOCK 0x00001 Süreç bir POSIX tavsiye kilidi (advisory lock) tutabilir P_CONTROLT 0x00002 Bir kontrol terminaline sahip P_LP64 0x00004 Süreç LP64'tür P_NOCLDSTOP 0x00008 Çocuklar durduğunda SIGCHLD gönderilmez P_PPWAIT 0x00010 Ebeveyn, çocuğun exec/exit yapmasını bekliyor P_PROFIL 0x00020 Profil oluşturmayı başlattı P_SELECT 0x00040 Seçim yapıyor; uyanma/bekleme tehlikesi P_CONTINUED 0x00080 Süreç durduruldu ve devam ettirildi P_SUGID 0x00100 Son exec işleminden bu yana set id ayrıcalıklarına sahip oldu P_SYSTEM 0x00200 Sistem süreci: sinyal, istatistik veya takas yok P_TIMEOUT 0x00400 Uyku sırasında zaman aşımına uğruyor P_TRACED 0x00800 İzlenen hata ayıklama süreci P_WAITED 0x01000 Hata ayıklama süreci çocuk için bekledi P_WEXIT 0x02000 Çıkış üzerinde çalışıyor P_EXEC 0x04000 Süreç exec çağrısı yaptı P_OWEUPC 0x08000 Bir sonraki ast işleminde sürece bir addupc() çağrısı borçlu P_WAITING 0x40000 Sürecin devam eden bir wait() işlemi var P_KDEBUG 0x80000 Bu süreç için Kdebug izlemesi açık
lim setrlimit(2) çağrısı yoluyla belirtilen, kullanılan bellekteki esnek sınır (soft limit).
lstart strftime(3) içinde açıklanan ‘%c’ biçimini kullanan, komutun başladığı kesin zaman.
nice Süreç zamanlama artışı (bkz. setpriority(2)).
rss sürecin gerçek bellek (yerleşik küme) boyutu (1024 baytlık birimler halinde).
start Komutun başladığı zaman. Komut 24 saatten daha kısa bir süre önce başladıysa, başlangıç zamanı strftime(3) içinde açıklanan “%l:ps.1p” biçimi kullanılarak görüntülenir. Komut 7 günden daha kısa bir süre önce başladıysa, başlangıç zamanı “%a6.15p” biçimi kullanılarak görüntülenir. Aksi takdirde, başlangıç zamanı “%e%b%y” biçimi kullanılarak görüntülenir.
state Durum, örneğin “RWNA” gibi bir dizi karakterle verilir. İlk karakter sürecin çalışma durumunu gösterir:
I Boşta (idle) olan bir süreci işaretler (yaklaşık 20 saniyeden daha uzun süredir uyuyor). R Çalıştırılabilir bir süreci işaretler. S Yaklaşık 20 saniyeden daha kısa süredir uyuyan bir süreci işaretler. T Durdurulmuş bir süreci işaretler. U Kesintisiz beklemede (uninterruptible wait) olan bir süreci işaretler. Z Ölü bir süreci (bir “zombie”) işaretler.
Bunlardan sonraki ek karakterler, varsa, ek durum bilgilerini gösterir:
Süreç, kontrol terminalinin ön plan süreç grubundadır.
< Sürecin CPU zamanlama önceliği yükseltilmiştir.
Süreç bellek gereksinimlerinde esnek bir sınır belirtmiştir ve şu anda bu sınırı aşmaktadır; böyle bir süreç (zorunlu olarak) takas edilmemiştir.
A Süreç rastgele sayfa değişimi talep etmiştir (örneğin bir çöp toplama işleminde lisp(1) için vadvise(2)'den gelen VA_ANOM). E Süreç çıkış yapmaya çalışmaktadır. L Sürecin sayfaları çekirdekte kilitlenmiştir (örneğin ham G/Ç için). N Sürecin CPU zamanlama önceliği düşürülmüştür (bkz. setpriority(2)). S Süreç FIFO sayfa değişimi talep etmiştir (örneğin hacimli verilere ardışık olarak erişmek için sanal bellek kullanan büyük bir görüntü işleme programı için vadvise(2)'den gelen VA_SEQL). s Süreç bir oturum lideridir. V Süreç bir vfork(2) sırasında askıya alınmıştır. W Süreç takas edilmiştir (swapped out). X Süreç izlenmekte veya hata ayıklanmaktadır.
tt Varsa, kontrol terminalinin yol adının kısaltması. Kısaltma, /dev/tty ifadesini takip eden üç harften veya konsol için “con” ifadesinden oluşur. Süreç artık o kontrol terminaline ulaşamıyorsa (yani iptal edildiyse), bunu bir ‘-’ takip eder.
wchan Bir sürecin beklediği olay (sistemdeki bir adres). Sayısal olarak yazdırıldığında, adresin ilk kısmı kırpılır ve sonuç onaltılık olarak yazdırılır, örneğin 0x80324000 değeri 324000 olarak yazdırılır.
command anahtar kelimesi kullanılarak yazdırılırken, sonlandırılmış ve henüz ebeveyni tarafından beklenmemiş bir süreç (diğer bir deyişle bir zombi) “
Anahtar Kelimeler (Keywords)
Aşağıda, mevcut anahtar kelimelerin ve anlamlarının tam bir listesi yer almaktadır. Bunlardan bazılarının takma adları (eş anlamlı olan anahtar kelimeler) vardır.
%cpu yüzde CPU kullanımı (takma ad pcpu) %mem yüzde bellek kullanımı (takma ad pmem) acflag muhasebe bayrağı (takma ad acflg) args komut ve argümanlar comm komut command komut ve argümanlar cpu kısa vadeli CPU kullanım faktörü (zamanlama için) etime geçen çalışma süresi flags onaltılık düzende süreç bayrakları (takma ad f) gid süreçlerin grup kimliği (takma ad group) inblk okunan toplam blok sayısı (takma ad inblock) jobc iş kontrolü sayısı ktrace izleme bayrakları ktracep izleme vnode'u lim bellek kullanımı sınırı logname oturumu başlatan kullanıcının giriş adı lstart başlama zamanı majflt toplam sayfa hatası (page faults) minflt toplam sayfa geri kazanımı msgrcv alınan toplam mesaj (borulardan/soketlerden okumalar) msgsnd gönderilen toplam mesaj (borulara/soketlere yazmalar) nice nice değeri (takma ad ni) nivcsw toplam irade dışı bağlam anahtarlaması nsigs alınan toplam sinyal (takma ad nsignals) nswap toplam içeri/dışarı takas sayısı nvcsw toplam iradeli bağlam anahtarlaması nwchan bekleme kanalı (bir adres olarak) oublk yazılan toplam blok sayısı (takma ad oublock) p_ru kaynak kullanımı (yalnızca zombi için geçerlidir) paddr takas adresi pagein sayfa girişleri (majflt ile aynı) pgid süreç grubu numarası pid süreç kimliği (ID) ppid ebeveyn süreç kimliği (ID) pri zamanlama önceliği prsna persona re çekirdek yerleşiklik süresi (saniye cinsinden; 127 = sonsuz) rgid gerçek grup kimliği (ID) rss yerleşik küme boyutu (resident set size) ruid gerçek kullanıcı kimliği (ID) ruser kullanıcı adı (ruid'den) sess oturum kimliği (ID) sig bekleyen sinyaller (takma ad pending) sigmask engellenen sinyaller (takma ad blocked) sl uyku süresi (saniye cinsinden; 127 = sonsuz) start başlama zamanı state sembolik süreç durumu (takma ad stat) svgid bir setgid yürütülebilir dosyasından kaydedilen gid svuid bir setuid yürütülebilir dosyasından kaydedilen UID tdev kontrol terminali cihaz numarası time birikmiş CPU süresi, kullanıcı + sistem (takma ad cputime) tpgid kontrol terminali süreç grubu kimliği (ID) tsess kontrol terminali oturum kimliği (ID) tsiz metin boyutu (Kbayt cinsinden) tt kontrol terminali adı (iki harfli kısaltma) tty kontrol terminalinin tam adı ucomm muhasebe için kullanılacak ad uid etkin kullanıcı kimliği (ID) upr sistem çağrısından dönerken zamanlama önceliği (takma ad usrpri) user kullanıcı adı (UID'den) utime kullanıcı CPU süresi (takma ad putime) vsz Kbayt cinsinden sanal boyut (takma ad vsize) wchan bekleme kanalı (sembolik bir ad olarak) wq iş sırası iş parçacıklarının (workqueue threads) toplam sayısı wqb engellenen iş sırası iş parçacıklarının sayısı wqr çalışan iş sırası iş parçacıklarının sayısı wql iş sırası sınır durumu (C = kısıtlı iş parçacığı sınırı, T = toplam iş parçacığı sınırı) xstat çıkış veya durma durumu (yalnızca durdurulmuş veya zombi süreç için geçerlidir)
Ortam Değişkenleri (Environment)
Aşağıdaki ortam değişkenleri ps'in yürütülmesini etkiler:
COLUMNS Ayarlanmışsa, kullanıcının sütun konumlarındaki tercih edilen çıktı genişliğini belirtir. Varsayılan olarak ps, terminal genişliğini otomatik olarak belirlemeye çalışır.
Dosyalar (Files)
/dev özel dosyalar ve cihaz adları /var/run/dev.db /dev ad veri tabanı /var/db/kvm_kernel.db sistem ad listesi veri tabanı
Eski Özellikler (Legacy Description)
Eski modda ps, aşağıdaki farklarla yukarıda açıklandığı gibi çalışır:
-e: Ortamı da görüntüler. -E ile aynıdır.-g: Uyumluluk için yoksayılır. Argüman almaz.-l: Aşağıdaki anahtar kelimelerle ilişkili bilgileri görüntüler: uid, pid, ppid, cpu, pri, nice, vsz, rss, wchan, state, tt, time ve command.-u: Aşağıdaki anahtar kelimelerle ilişkili bilgileri görüntüler: user, pid, %cpu, %mem, vsz, rss, tt, state, start, time ve command. -u seçeneği -r seçeneğini ima eder.
En büyük değişiklik, artık belirtilen kullanıcı adına (adlarına) ait süreçleri görüntüleyen -u seçeneğinin yorumlanmasındadır. Bu nedenle, "ps -aux" başarısız olacaktır (kullanıcı "x" hakkında bilgi edinmek istemediğiniz sürece). Ancak kolaylık olması açısından "ps aux" hala Tiger'da olduğu gibi çalışmaktadır.
Eski mod hakkında daha fazla bilgi için compat(5) sayfasına bakın.
Ayrıca Bakınız (See Also)
kill(1), w(1), kvm(3), strftime(3), sysctl(8)
Standartlar (Standards)
ps yardımcı programı, Single UNIX Specification standardının Sürüm 3'ünü (“SUSv3”) destekler.
Tarihçe (History)
ps komutu Versiyon 4 AT&T UNIX'te ortaya çıkmıştır.
Hatalar (Bugs)
ps sistemden daha hızlı çalışamayacağı ve diğer herhangi bir zamanlanmış süreç gibi çalıştırıldığı için, görüntülediği bilgiler asla kesin olamaz.
ps yardımcı programı, çok baytlı karakterler içeren argüman listelerini doğru şekilde görüntülemez.
macOS 26.4 20 Mart, 2005 macOS 26.4