《UNIX環境高階程式設計》知識點整理(第一章)

2021-08-02 14:39:14 字數 938 閱讀 2772

**1.4檔案和目錄**

unix檔案系統是目錄和檔案的一種層次結構,所有東西的起點是根的目錄

**1.6程式和程序**

程式的執行例項被稱為程序,每個程序都有乙個唯一的非負數id,稱為程序id。

呼叫fork建立乙個新程序,被建立的程序稱為子程序。fork對父程序返回新的子程序的程序id(乙個非負整數),對子程序返回0。因為fork建立乙個新的程序,所以說它被呼叫一次(由父程序呼叫),但返回兩次(分別在父程序和子程序中返回)。

執行緒與程序的關係是 乙個程序可以有有乙個執行緒,但也可以有多個執行緒

**1.7出錯處理**

當unix系統函式出錯時,通常會返回乙個負值,而且整形變數errno通常被設定為具有特定資訊的值。

在中錯誤可以分成兩類:致命性錯誤和非致命性錯誤。對於致命性錯誤,無法執行恢復動作。最多能做的事在使用者的螢幕上列印出一條出錯訊息或者將一條出錯訊息寫入到日誌檔案中,然後退出。對於非致命性錯誤,有時可以較妥善的進行處理。大多數非致命性錯誤是暫時的(如資源短缺),當系統中活動較少時,這種出錯可能不會發生。

**1.9訊號**

訊號用於通知程序發生了某種情況

有三種處理訊號的方式(1)忽略訊號(2)按系統的預設方式處理。如除數0,系統預設當時是終止程序。(3)提供乙個函式,訊號發生時呼叫該函式,這種稱為捕捉該訊號。交給自編函式處理,這樣我們就知道產生了什麼訊號,並按期望的方式處理它

**1.10時間值**

(1)日曆時間。就是普通的我們用的時間

(2)程序時間。也被稱為cpu時間,用以度量程序使用的**處理器資源。

當度量乙個程序時間的執行時間時,unix系統為乙個程序維護了3個程序時間值。(1)時鐘時間(2)使用者cpu時間(3)系統cpu時間。始終時間又稱為牆上時鐘時間,他是程序執行的時間總量,其值與系統中同時執行的程序數有關。使用者cpu時間是執行使用者指令所用的時間量。系統cpu時間是以該程序執行核心程式所經歷的時間。

知識點整理

一 標準庫容器和演算法 1.順序容器 與前面類似 2.關聯容器 map和multimap 元素包含key 鍵 和值 value 兩部分 按照鍵對元素排序 map不允許重複元素出現,但multimap可以 set和multliset 是包含已排序物件的關聯容器 只是單純的鍵的集合 set不允許重複鍵出...

知識點整理

一 標準庫容器和演算法 1.順序容器 與前面類似 2.關聯容器 map和multimap 元素包含key 鍵 和值 value 兩部分 按照鍵對元素排序 map不允許重複元素出現,但multimap可以 set和multliset 是包含已排序物件的關聯容器 只是單純的鍵的集合 set不允許重複鍵出...

知識點整理

一 狀態控制碼 code,control flag 標誌位欄位 u a p r s f 佔6位元。各 位元的含義如下 ack 確認位元 acknowledge 只有當ack 1時確認號字段才有效,代表這個封包為確認封包。當ack 0時,確認號無效。psh push function 若為1時,代表要...