Linux程式設計常用的函式(一) 程序

2021-04-14 22:21:44 字數 1377 閱讀 3114

總共分為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 用於描述程序情況及控制程序執行所需的全部資訊,是作業系統用來感知進存在的乙個重要資料結構。段 是程序...