Provided by: manpages-pl-dev_0.5-1_all 

NAZWA
kill - wysłanie sygnału do procesu
SKŁADNIA
#include <sys/types.h>
#include <signal.h>
int kill(pid_t pid, int sig);
OPIS
Uwaga! To tłumaczenie może być nieaktualne!
Funkcja systemowa kill może służyć do przesłania dowolnego sygnału do dowolnego procesu lub do dowolnej
grupy procesów.
Jeśli pid ma wartość dodatnią, to sygnał sig jest przesyłany do procesu pid.
Jeśli pid jest równy 0, to sig jest przesyłany do wszystkich procesów należących do tej samej grupy, co
proces bieżący.
Jeśli pid jest równy -1, to sygnał jest przesyłany do wszystkich procesów, oprócz procesu nr 1 (init),
szczegóły poniżej.
Jeśli pid jest mniejszy niż -1, to sygnał jest przesyłany do wszystkich procesów należących do grupy
procesów o numerze -pid.
If sig jest równy 0, to nie jest przesyłany żaden sygnał, ale nadal jest wykonywana kontrola błędów.
WARTOŚĆ ZWRACANA
Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.
BŁĘDY
EINVAL Podano nieprawidłowy sygnał.
ESRCH Pid lub grupa procesów nie istnieje. Należy zauważyć, że istniejący proces może być zombie, czyli
procesem, który już popełnił samobójstwo, lecz jeszcze na niego nie zaczekano ( wait ).
EPERM Proces nie ma uprawnień do wysłania sygnału do któregokolwiek z otrzymujących go procesów. Aby
proces miał prawo wysłać sygnał do procesu pid musi on mieć uprawnienia roota albo rzeczywisty lub
efektywny ID użytkownika procesu wysyłającego musi być równy rzeczywistemu ID lub zachowanemu set
UID procesu otrzymującego sygnał. W przypadku sygnału SIGCONT wystarcza, aby procesy wysyłający i
otrzymujący należały do tej samej sesji.
UWAGI
Nie można wysyłać sygnału, dla którego nie ma zainstalowanego pogramu obsługi, do zadania numer 1, czyli
procesu init. Zabezpiecza to przed przypadkowym załamaniem systemu.
POSIX 1003.1-2001 wymaga, aby kill(-1,sig) wysyłało sig do wszystkich procesów, do których aktualny
proces może go wysłać, za ewentualnym wyjątkiem pewnych, zdefiniowanych w implementacji, procesów
systemowych. Linux pozwala procesowi wysłać sygnał do samego siebie, ale wywołanie kill(-1,sig) pod
Linuksem nie powoduje wysłania sygnału do bieżącego procesu.
HISTORIA LINUKSA
W różnych wersjach jądra, Linux wymusza różne reguły dotyczące uprawnień wymaganych od procesu
nieuprzywilejowanego, aby mógł on wysłać sygnał do innego procesu. W jądrach od 1.0 do 1.2.2 sygnał mógł
być wysłany, gdy efektywny identyfikator użytkownika wysyłającego jest taki sam, jak odbierającego, lub
gdy rzeczywisty identyfikator użytkownika wysyłającego jest taki sam, jak odbierającego. Od jądra 1.2.3
aż do 1.3.77, sygnał mógł być wysłany, gdy efektywny identyfikator użytkownika wysyłającego jest taki
sam, jak efektywny lub rzeczywisty identyfikator użytkownika odbierającego. Obecne zasady, zgodnie z
POSIX 1003.1-2001, zostały przyjęte w jądrze 1.3.78.
ZGODNE Z
SVr4, SVID, POSIX.1, X/OPEN, BSD 4.3, POSIX 1003.1-2001
ZOBACZ TAKŻE
_exit(2), killpg(2), signal(2), tkill(2), exit(3), signal(7)
INFORMACJE O TŁUMACZENIU
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub
funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
man --locale=C 2 kill
Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem
http://sourceforge.net/projects/manpages-pl/.
Linux 2.5.0 2001-12-18 KILL(2)