15 Ağustos 2014 Cuma

Shell

Background Process

Shell (kabuk) ile bir process'i arkaplana atınca CPU açısından hiç bir şey değişmez. Aslında CPU bir process'in arka veya önplanda olup olmadığını da bilmez. Arka veya önplanda olma kavramları tamamen kabuk ile ilgilidir. Bu kavram sadece kabuğun bir process'in bitip bitmesini bekleyip beklemeyeceğini gösterir.

Programı Durdurmak
"Ctrl + C" tuşları ile ön planda çalışan bir programı durdurmak mümkün. Bu tuşlar ile programa SIGINT gönderiliyor. Konuylar ilgili Linux Sinyalleri başlıklı yazıya göz atabilirsiniz.

Ön Planda Çalışan Programı duraklatmak

"Ctrl + Z" tuşları ile ön planda çalışan bir programı duraklatmak mümkün. Bu tuşlar ile programa SIGTSTP sinyali gönderiliyor. Konuylar ilgili Linux Sinyalleri başlıklı yazıya göz atabilirsiniz.
Duraklatılan program ps ile bakılınca T işareti ile belirtilir.

oli     3278  0.0  0.0  14492  3160 pts/4    T    13:59   0:00 nano TEST
Process State Codes tablosu
PROCESS STATE CODES
       
       D    uninterruptible sleep (usually IO)
       R    running or runnable (on run queue)
       S    interruptible sleep (waiting for an event to complete)
       T    stopped, either by a job control signal or because it is being traced.
       W    paging (not valid since the 2.6.xx kernel)
       X    dead (should never be seen)
       Z    defunct ("zombie") process, terminated but not reaped by its parent.


Çıktının akışını durdurmak
"Ctrl + S" ile çıktının akması durdurulur. "Ctrl + Q" ile devam ettirilir. Bu tuşlat vt100 terminalinde Software Flow Control için kullanılırlar. XON ve XOFF sinyali göndererek akışı kontrol ederler. Bilgi için Seri Port API'si başlıklı yazıya da göz atabilirsiniz.

Shell ve EOF
Linux'ta Ctrl + D , Windows'ta Ctr + Z ile input stream'e EOF yazılarak shell'in çalıştırdığı programın input stream'i kapatılabilir. Böylece program sonlanır.


Hiç yorum yok:

Yorum Gönder