Provided by: manpages-tr_2.0.6-2_all bug

İSİM

       kill - bir sürece sinyal gönderir

BİLDİRİM

       #include <sys/types.h>
       #include <signal.h>

       int kill (pid_t pid, int sig);

       Glibc için özellik sınama makrosu gereksinimi
           _POSIX_C_SOURCE (bkz, feature_test_macros(7))

AÇIKLAMA

       kill sistem çağrısı bir sürece veya bir süreç grubuna sinyal göndermekte kullanılabilir.

       pid pozitif olduğunda, pid sürecine sig sinyali gönderilir.

       pid sıfırsa, o anki sürecin süreç grubundaki her sürece sig sinyali gönderilir.

       pid -1 ise, 1 numaralı süreç (init) haricindeki her sürece sig sinyali gönderilir (Aşağıda
       bahsedilen durum dışında).

       pid -1’den küçükse, -pid süreç grubundaki her sürece sig sinyali gönderilir.

       sig sıfırsa, hiçbir sinyal gönderilmez, ancak varlık ve izin denetimleri yapılır;
       çağrıcının sinyal göndermesine izin verilen bir süreç kimliğinin veya süreç grubu
       kimliğinin varlığını sınamak için kullanılabilir.

       Bir sürecin sinyal gönderme iznine sahip olması için, ya ayrıcalıklı olması (Linux
       altında: hedef sürecin kullanıcı isim alanında CAP_KILL yeteneğine sahip olması) ya da
       gönderen sürecin gerçek veya etkin kullanıcı kimliğinin hedef sürecin gerçek veya etkin
       kullanıcı kimliğine eşit olması gerekir. SIGCONT durumunda, gönderen ve alan süreçlerin
       aynı oturuma ait olması yeterlidir. (Geçmişte kurallar farklıydı; bkz. NOTLAR)

DÖNÜŞ DEĞERİ

       Başarı durumunda (en azından bir sinyal gönderilmiştir) sıfır döner. Hata oluşursa -1
       döner ve hata errno değişkenine atanır.

HATALAR

       EINVAL
           Geçersiz bir sinyal belirtilmiş.

       ESRCH
           Süreç kimliği (pid) ya da süreç grubu mevcut değil. Burada bir süreç zombi olabilir,
           bir süreç sonlandırma almış ancak henüz sinyali beklemiyor (wait(2)) olabilir.

       EPERM
           Süreç, alıcı süreçlere sinyal göndermek için yeterli izinlere sahip değil. Bir sürecin
           sinyal göndermek için yeterli izinlere sahip olması için ya onun root yetkilerine
           sahip olması ya da gönderici sürecin gerçek ya da etkin kullanıcı kimliğinin alıcı
           sürecin gerçek ya da kayıtlı kullanıcı kimliği ile aynı olması gerekir. SIGCONT
           durumunda, gönderici ve alıcı sürecin aynı oturumun üyesi olması yeterlidir.

UYUMLULUK

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.

NOTLAR

       1 numaralı süreç olan init sürecine bir sinyal yakalayıcıya sahip olmadığı için bir sinyal
       göndermek mümkün değildir. Bu, kazaen sistemin çökertilmemesini garanti etmek için böyle
       yapılmıştır.

       POSIX.1, o anki sürecin sinyal gönderebildiği tüm süreçlere (bazı gerçeklenime özgü sistem
       süreçleri hariç) sig sinyalinin kill(-1,sig) ile gönderilmesini gerektirir. Linux bir
       sürecin kendi kendine sinyal gönderebilmesini mümkün kılar ancak, Linux üzerinde
       kill(-1,sig) çağrısı ile süreç kendisine sinyal gönderemez.

       POSIX.1’e göre, bir süreç kendisine bir sinyal gönderirse ve gönderen evrede sinyal
       engellenmemişse ve engellemesi kaldırılmış veya sigwait(3) ile bekleyen başka evre yoksa,
       kill işlevi dönmeden önce gönderen evreye engellenmemiş en az bir sinyalin teslim edilmiş
       olması gerekir.

   LINUX TARİHÇESİ
       Farklı çekirdek sürümleriyle, Linux, başka bir sürece sinyal gönderecek yetkisiz bir
       sürece gereken izinler için farklı kurallar getirmiştir. 1.0 dan 1.2.2’ye kadar sürümlü
       çekirdeklerde, göndericinin etkin kullanıcı kimliği alıcınınkiyle ya da göndericinin
       gerçek kullanıcı kimliği alıcınınkiyle eşleşmeliydi. 1.2.3 den 1.3.77’ye kadar sürümlü
       çekirdeklerde, göndericinin etkin kullanıcı kimliği alıcının gerçek ya da etkin kullanıcı
       kimliği ile eşleşmeliydi. 1.3.78 sürümünden itibaren çekirdek sürümlerinde POSIX.1 uyumlu
       kurallar geçerlidir.

İLGİLİ BELGELER

       exit(2), exit(3), signal(2), signal(7), feature_test_macros(7).

ÇEVİREN

       © 2003, 2022 Nilgün Belma Bugüner
       Bu çeviri özgür yazılımdır: Yasaların izin verdiği ölçüde HİÇBİR GARANTİ YOKTUR.
       Lütfen, çeviri ile ilgili bildirimde bulunmak veya çeviri yapmak için
       https://github.com/TLBP/manpages-tr/issues adresinde "New Issue" düğmesine tıklayıp yeni
       bir konu açınız ve isteğinizi belirtiniz.