İş Denetim Sinyalleri
Önceki Standart Sinyaller Sonraki
İş Denetim Sinyalleri
Bu sinyaller iş denetimine (job control) destek için kullanılır. Sisteminizde iş denetimi desteği yoksa, bu makrolar tanımlanmış bile olsa, sinyaller üretilemez ve yakalanamaz.
İş denetiminin nasıl çalıştığı hakkında bir fikriniz yoksa bu sinyalleri unutun. Daha fazla bilgi için İş Denetimi bölümüne bakınız.
int SIGCHLD
makro
Bu sinyal, bir alt süreci çalıştıran sürece alt süreç durdurulduğunda ya da sonlandırıldığında gönderilir.
Bu sinyal için öntanımlı eylem yoksayılmaktır. Sonlandırılmış alt süreçlerinizin olup bunların durumlarının wait veya waitpid (Süreç Tamamlama) ile bildirilmediği durumlar için ya da bir işletim sistemine bağımlı olmamak için bu sinyal için bir eylemci oluşturabilirsiniz.
int SIGCLD
makro
SIGCHLD için atıl olmuş bir sinyal ismidir.
int SIGCONT
makro
SIGCONT sinyalini bir sürecin devam etmesini istemek için üretebilirsiniz. Bu sinyal alınmadan önce durmuş olan bir sürecin çalışmasını sürdürmesi istendiğinde gönderilir. Öntanımlı davranış başka bir şey yapılmamasıdır. Bu sinyal engellenemez. Bir eylemci belirtseniz bile SIGCONT sürecin çalışmaya devam etmesini sağlar.
Çoğu yazılım için SIGCONT sinyalini yakalamanın bir anlamı yoktur; basitçe hiç durdurulmamışlar gibi çalışmaya kaldıkları yerden devam edeceklerdir. Bu sinyal için bir eylemci sadece durdurulduktan sonra çalıştırldığında yazılıma özel bazı işlemler yapmanız gerekiyorsa anlamlıdır. Örneğin, durdurma öncesi uçbirim çıktılaması kapalıyken açtıysanız, çalışmaya devam edileceğinde bunu tekrar kapatmak isteyebilirsiniz.
int SIGSTOP
makro
SIGSTOP sinyali süreci durdurur. Yakalanamaz, engellenemez, yoksayılamaz.
int SIGTSTP
makro
SIGTSTP sinyali bir etkileşimli durdurma sinyalidir. SIGSTOP sinyalinin aksine yakalanabilir ve yoksayılabilir.
Bu sinyalle bir durdurma isteği geldiğinde dosyalarınızı ve sistem tablolarınızı güvenli durumda bırakmak isterseniz bu sinyal için bir eylemci oluşturmalısınız. Örneğin uçbirimde çıktılamayı kapatmışsanız, durdurma sırasında bunu açmanız gerekir.
Bu sinyal kullanıcı tarafından SUSP karakteri (normalde C-z) tuşlandığında üretilir. Uçbirim sürücü desteği ile ilgili daha fazla bilgi için Özel Karakterler bölümüne bakınız.
int SIGTTIN
makro
Bir süreç bir artalan işi olarak çalışıyorsa kullanıcı uçbirimini okuyamaz. Bir artalan işindeki herhangi bir süreç uçbirimden okuma yapmak istediğinde işteki tüm süreçlere bir SIGTTIN sinyali gönderilir. Bu sinyal için öntanımlı eylem sürecin durdurulmasıdır. Uçbirimle girilen bu etkileşimle ilgili daha fazla bilgi almak için Denetim Uçbirimine Erişim bölümüne bakınız.
int SIGTTOU
makro
SIGTTIN sinyaline benzer, farklı olarak artalandaki iş içindeki süreç uçbirime yazmaya ya da kipi değiştirmeye çalıştığında üretilir. Burada da öntanımlı eylem sürecin durdurulmasıdır. SIGTTOU sinyali sadece TOSTOP çıktı kipi belirtilerek uçbirime yazmaya çalışıldığında üretilir; bkz, Çıktı Kipleri.
Bir süreç durdurulduğunda SIGKILL ve SIGCONT sinyalleri dışında hiçbir sinyali alamaz, süreç devam ettirilene kadar askıya alınırlar. SIGKILL sinyali daima süreci sonlandırır ve engellenemez, yakalanamaz ve yoksayılamaz. SIGCONT sinyali yoksayılabilir ama daima durdurulmuş bir sürecin kaldığı yerden çalışmasına devam etmesini sağlar. Bir sürece SIGCONT sinyalinin gönderilmesi askıda bekleyen bir durdurma sinyali varsa iptal edilmesine sebep olur. Benzer şekilde, askıya alınmış bir SIGCONT sinyali bir durdurma sinyali alındığında iptal edilir.
Bir öksüz süreç grubundaki bir süreç SIGTSTP, SIGTTIN veya SIGTTOU sinyallerinden birini alırsa ve o sinyali yakalamıyorsa, süreç durmaz. Şüphesiz böyle bir sürecin durdurulması pek kullanışlı değildir. Çünkü böyle bir süreci durması için uyaracak bir kabuk ya da devam etmesine izin verecek bir kullanıcı olmayacaktır. Bazı sistemler hiçbir şey yapmayabilir; bazıları da bunun yerine SIGKILL veya SIGHUP gibi bir sinyal alabilir. GNU sistemlerinde süreç SIGKILL ile öldürülür; bu sistemde durmuş ya da öksüz kalmış süreçlerle ilgili sorunları da çözer.
Önceki Üst Ana Başlık Sonraki
Eşzamansız G/Ç Sinyalleri Başlangıç İşlemsel Hata Sinyalleri
Bir Linux Kitaplığı Sayfası