unix 環境高階程式設計 1 6 程式和程序

2021-08-26 07:07:41 字數 771 閱讀 2305

1.6、程式和程序

程式:存放在磁碟上,處於某個目錄中的可執行檔案。使用6個exec函式中的乙個由核心將程式讀入儲存器,並使之執行。

程序和程序id:程式的執行被稱為程序(process)。unix確保每個程序都有乙個唯一的數字識別符號。稱為程序id。程序id總是非負數。

看如下例子:pro_1-4.c

#include "apue.h" int main(void)

編譯:gcc -o pro_1-4 pro_1-4.c

執行:./pro_1-4

結果:

3.程序控制:有三個用於程序控制的主要函式:fork,exec,和waitpid。(exec有六種變體);

示例:程式pro_1-5.c

#include "apue.h" #include int main(void) else if(pid=0) if((pid=waitpid(pid,&status,0))<0) err_sys("waitpid error"); printf("%%"); } exit(0); }

執行結果:

程式解釋:

4.執行緒和執行緒id

通常,乙個程序只有乙個控制線程。同一時刻只執行一組機器指令。對於某些問題,如果不同部分,個使用乙個控制線程。那麼整個問題解決起來就容易多了。

unix環境高階程式設計

unix 日曆時間 自1970 年1 月1 日00 00 00 以來的國際標準時間 utc 程序時間 cpu 時間 時鐘時間 程序執行時間的總量。使用者cpu 時間 執行使用者指令時間量。系統cpu 時間 執行核心所經歷時間。命令 time 第三章至第七章 原子操作 任何乙個要求多於1 個函式呼叫的...

unix環境高階程式設計

檔案描述符file descriptor通常是乙個小的非負整數,核心用以標識乙個特定程序正在訪問的檔案。當核心開啟乙個現有檔案或建立乙個新檔案時,它都返回乙個檔案描述符。在讀寫檔案時,可以私用這個檔案描述符。按管理,每當執行乙個新程式時,所有的shell都為其開啟了3個標準檔案描述符 標準輸入,標準...

UNIX環境高階程式設計

本書是被譽為unix程式設計 聖經 的advanced programming in the unix environment一書的更新版。在本書第1版出版後的十幾年中,unix行業已經有了巨大的變化,特別是影響unix程式設計介面的有關標準變化很大。本書在保持了前一版風格的基礎上,根據最新的標準對...