Linux程序控制

2021-07-02 15:57:50 字數 777 閱讀 5319

linux程序控制

獲取pid

#include

#include

pid_t getpdi(void) // 獲取本程序id

pdi_t getppid(vodi) //獲取父程序id, 及獲取建立子程序的程序id

程序建立

#include

pid_t fork(void) // 建立子程序

// 呼叫一次返回兩次值

// 1. 父程序中,返回新建立的子程序的id

// 2. 在子程序中, 返回0

// 3. 如果出現錯誤,返回乙個負值

#include

#include

pid_t vfork(void);  // 建立子程序

區別:1. fork: 子程序拷貝父程序的資料段

vfork: 子程序與父程序共享資料段

2. fork: 父,子程序的執行順序不確定

vfork: 子程序先執行, 父程序後執行

#include#includeint main()

程序等待

#include

#include

pid_t wait(int *status); //  阻塞該程序,直到某個子程序退出

exec函式族

exec用被執行的程式替換呼叫它的程式

區別: fork 建立乙個新的程序,產生乙個新的pid

exec啟動乙個新程式,替換原有的程序,因此程序的id不會改變

linux 程序控制

什麼是程序 每乙個程序在系統中都有唯一的id標示它,此id為程序標示符 程序標示符的型別 pit t,其實是乙個無符號整形 乙個程序標示符對應唯一的乙個程序,多個程序標示符可以對應同乙個程式 程序和程式的區別 程式 可執行的二進位制 檔案,這種檔案載入到記憶體中執行就得到了乙個程序 程序 同乙個程式...

linux程序控制

linux程序控制 編寫命令直譯器 一 背景 之前在 計算機作業系統 這本書中已經多次接觸了程序這一概念,而程序在作業系統中具體是做什麼的呢?卻沒有實際的與程序發生過互動,因此也就沒有實際的感受。對於我來說程序僅僅停留在概念的層面上 程序是程式執行時的記憶體空間和設定或者說程序就是程式的進行時。沒有...

Linux 程序控制

1.linux程序 1.1程式和程序 程序控制塊pcb 時間片程序標識 標識號 父程序 init程序 id 為1 1.2程序的執行身份 真實使用者 id 和真實組 id 可以通過函式getuid 和 getgid 獲得 有效使用者 id 和有效組 id 通過函式geteuid 和 getegid 獲...