pid_t 型別——定義程序號型別;
實際型別:我們可找到其定義:
1、在centos6.5的/usr/include/sys/type.h中可找到其定義:
總結:pid_t 就是 int 型
2、fork()函式建立子程序
需要的標頭檔案:#include和#include
功能:從乙個已經存在的程序中建立新程序,原程序稱父程序,新程序稱子程序
函式原型:pid_t fork(void);
返回值:a)、對於父程序返回子程序的id號;
b)、對於子程序返回0;
c)、建立失敗,返回-1(記憶體不足或程序數達上線);
例1,如下**:
可以看到,main函式列印了兩次id;
說明:fork()建立的子程序是通過父程序寫實拷貝而來,相當於父程序的乙個複製品;
fork呼叫的乙個奇妙之處就是它僅僅被呼叫一次,卻能夠返回兩次,它可能有三種不同的返回值。
例2:
#include #include #include int main()
if(pid == 0)
}if(pid>0)
}return 0;
}
結果:
總結:fork之後相當是兩個近似相同的程序,只是fork對應父程序和子程序返回不同。
建立程序 fork函式
最近,我在linux中學到了乙個神奇的函式,名為fork 函式,它的作用是建立程序。它的神奇之處在於呼叫fork 函式時,系統會建立乙個與原來程序幾乎完全相同的程序,大致的意思就是兩個程序可以做完全相同的事,但如果初始引數或者傳入的變數不同,兩個程序也可以做不同的事 就相當於是轉殖了乙個自己。先來看...
程序建立函式fork
函式原型 pid t fork void 標頭檔案 include 函式功能 建立乙個子程序 返回值 1.1 建立失敗 2.0 返回的是子程序 3.0 返回的是父程序,返回值是子程序 id函式特性 1.呼叫一次,會有兩個返回值 2.先返回哪個值,不確定,一般先返回父程序 3.使用者可以通過延時函式,...
Linux中的程序建立函式fork
linux中的程序通過fork建立,並通過exec執行,分為兩步。在linux中所有的程序都是pid為1的init程序的子程序,核心在系統啟動的最後階段啟動init程序。系統中的所有程序都有乙個父程序,在程序描述符中有指向父程序的指標,具有同乙個父程序的程序稱為兄弟程序,同時每個程序描述符中還有乙個...