總共分為12部分分別是:程序、執行緒、訊息佇列、訊號量集、共享記憶體、pgsql程式設計、mysql程式設計、網路程式設計、檔案訪問、標準i/o、系統資料檔案和資訊、訊號
(一) 程序
1. 程序id為0的程序通常是排程程序,常常被稱為交換程序
程序id為1的程序通常是init程序,在自舉過程結束時由核心呼叫
程序id為2的程序頁守護程序,負責支援虛擬儲存系統的分頁操作
2. pid_t getpid( void ); 返回值:呼叫程序的程序id #include
3. pid_t getppid( void ); 返回值:呼叫程序的父程序id
4. uid_t getuid( void ); 返回值:呼叫程序的實際使用者id
5. uid_t geteuid( void ); 返回值:呼叫程序的有效使用者id
6. gid_t getgid( void ); 返回值:呼叫程序的實際組id
7. gid_t getegid( void ); 返回值:呼叫程序的有效組id
8. pid_t fork( void );建立子程序,返回值:子程序返回0,父程序返回子程序id,出錯-1
9. #includepid_t wait(int *statloc);//statloc 儲存程序終止狀態的指標
10. #includepid_t waitpid(pid_t pid,int *statloc,int options);
pid ==-1 等待任一子程序
pid >0 等待其子程序id與pid相等的子程序
pid == 0 等待其組id等於呼叫程序組id的任一子程序
pid <-1 等待其組id等於pid絕對值的任一子程序
options:
wcontinued 若實現支援作業控制,那麼由pid指定的任一子程序在暫停後已經繼續,但其狀態尚未報告,則返回其狀態
wnohang 若由pid指定的子程序並不是立即可用的,則waitpid阻塞,此時其返回0
wuntraced 若實現支援作業控制,而由pid指定的任一子程序已處於暫停狀態,並且其狀態自暫停以來還未報告過,則返回其狀態
11.#includeint setuid(uid_t uid); 設定實際實際使用者id和有效使用者id;
int setgid(gid_t gid); 設定實際組id和有效組id;成功返回0,錯誤-1
12.#includeint system(const char *cmdstring)
system返回值如下
-1出現錯誤
0呼叫成功但是沒有出現子程序
>0 成功退出的子程序的id
併發程式設計總結一,程序
補充 full q.empty q.get nowait 都不適用於多程序的情況下 案列 from multiprocessing import process,queue def scz q 要把佇列的物件傳進來 q.put hello def xfz q print q.get if name ...
linux系統程式設計之程序(一) 程序與程式
mickole 出處 本節目標 一,什麼是程式?程式是完成特定任務的一系列指令集合 二,什麼是程序?三,程序資料結構 程序的靜態描述 由三部分組成 pcb 有關程式段和該程式段對其進行操作的資料結構集。程序控制塊 pcb 用於描述程序情況及控制程序執行所需的全部資訊,是作業系統用來感知進存在的乙個重...
linux系統程式設計之程序(一) 程序與程式
本節目標 一,什麼是程式?程式是完成特定任務的一系列指令集合 二,什麼是程序?三,程序資料結構 程序的靜態描述 由三部分組成 pcb 有關程式段和該程式段對其進行操作的資料結構集。程序控制塊 pcb 用於描述程序情況及控制程序執行所需的全部資訊,是作業系統用來感知進存在的乙個重要資料結構。段 是程序...