LINUX下fork 和kill函式

2021-09-13 19:17:13 字數 599 閱讀 1419

1、fork()函式:pid_t fork(void);

返回值:fork僅僅被呼叫一次,卻能夠返回兩次,它可能有三種不同的返回值

(1)在父程序中,fork返回新建立子程序的程序id;

(2)在子程序中,fork返回0;

(3)如果出現錯誤,fork返回乙個負值;

在fork函式執行完畢後,如果建立新程序成功,則出現兩個程序,乙個是子程序,乙個是父程序。在子程序中,fork函式返回0,在父程序中,fork返回新建立子程序的程序id。

2、kill()函式:int kill(pid_t pid, int sig);

函式引數:①pid:指定程序的程序id,注意使用者的許可權,比如普通使用者不可以殺死1號程序(init)。

pid>0:傳送訊號給指定程序

pid=0:傳送訊號給與呼叫kill函式程序屬於同一程序組的所有程序

pid<0:傳送訊號給pid絕對值對應的程序組

pid=-1:傳送給程序有許可權傳送的系統中的所有程序

②訊號量:本實驗用sigteram。程式結束(terminate)訊號,和sigkill不同的是該訊號可以被阻塞和處理,通常用來要求程式自己退出。如果終止不了,我們才會嘗試sigkill。

Linux下Kill函式用法

kill 功能描述 用於向任何程序組或程序傳送訊號。標頭檔案用法 1 include sys types.h 23 include signal.h 45 intkill pid t pid,intsig 引數 pid 可能選擇有以下四種 1.pid大於零時,pid是訊號欲送往的程序的標識。2.pi...

Linux下Kill函式用法

kill 功能描述 用於向任何程序組或程序傳送訊號。1 include sys types.h 23 include signal.h 45 intkill pid t pid,intsig 67 引數 pid 可能選擇有以下四種 1.pid大於零時,pid是訊號欲送往的程序的標識。2.pid等於零...

linux下kill命令詳解

當需要中斷乙個前台程序的時候,通常是使用 ctrl c 組合鍵 但是對於乙個後台程序恐怕就不是乙個組合鍵所能解決的了,這時就必須求助於kill命令。該命令可以終止後台程序。至於終止後台程序的原因很多,或許是該程序占用的cpu時間過多 或許是該程序已經掛死。總之這種情況是經常發生的。kill命令是通過...