乙個程序,包括**、資料和分配給程序的資源。fork()函式通過系統呼叫建立乙個與原來程序幾乎完全相同的程序,也就是兩個程序可以做完全相同的事,但如果初始引數或者傳入的變數不同,兩個程序也可以做不同的事。
乙個程序呼叫fork()函式後,系統先給新的程序分配資源,例如儲存資料和**的空間。然後把原來的程序的所有值都複製到新的新程序中,只有少數值與原來的程序的值不同。相當於轉殖了乙個自己。
子程序建立成果後,**的執行位置
父子程序的執行順序
如何區分父子程序:
#include#include#include#include#include using namespace std;
int main()
pid = fork();
//父程序
if (pid > 0) {
cout << "parent process,pid = " << getpid()《程式輸出:
------------ i = 0
------------ i = 1
------------ i = 2
------------ i = 3
parent process,pid = 8340
i = 0
i = 1
i = 2
i = 3
child process,pid = 8344 ppid = 1
i = 0
i = 1
i = 2
i = 3
kill 向指定的程序傳送訊號
Linux程序控制(二)exec
4.執行另乙個程式 exec系列函式 子程序經常要呼叫exec函式執行另乙個程式,程序id不變,exec系列函式有7種 include int execl const char pathname,const char arg0,int execv const char pathname,char c...
linux 程序控制
什麼是程序 每乙個程序在系統中都有唯一的id標示它,此id為程序標示符 程序標示符的型別 pit t,其實是乙個無符號整形 乙個程序標示符對應唯一的乙個程序,多個程序標示符可以對應同乙個程式 程序和程式的區別 程式 可執行的二進位制 檔案,這種檔案載入到記憶體中執行就得到了乙個程序 程序 同乙個程式...
Linux程序控制
linux程序控制 獲取pid include include pid t getpdi void 獲取本程序id pdi t getppid vodi 獲取父程序id,及獲取建立子程序的程序id 程序建立 include pid t fork void 建立子程序 呼叫一次返回兩次值 1.父程序中...