Unix 基礎知識

2021-05-21 18:35:34 字數 1548 閱讀 9637

一、引言

所有作業系統都向它們執行的程式提供服務。典型的服務有執行新程式、開啟檔案、讀檔案、分配儲存區、獲取當前時間等

二、登入

登入名、shell

三、檔案和目錄

四、輸入和輸出

1、檔案描述符

檔案描述符是乙個小的非負整數,核心用以標識乙個特定程序正在存訪的檔案。當核心開啟乙個現存盤案或建立乙個新的檔案

時,它就返回乙個檔案描述符。當讀、寫檔案時,就可使用它。

2、標準輸入、標準輸出、標準出錯

按慣例,每當執行乙個新程式時,所有的shell都為其開啟三個描述符:標準輸入、標準輸出、標準出錯。

3、不用緩衝的io

4、標準io

五、程式和程序

1、程式

程式是存放在磁碟檔案中的可執行檔案。使用6個exec函式中的乙個由核心將程式讀入儲存器,並使其執行。

2、程序

程式的執行例項被稱為程序。某些作業系統用任務表示正在執行的程式。

每個unix程序都有乙個唯一的數字標示符,稱為程序id。

3、程序控制

有三個用於程序控制的主要函式:fork、exec、waitpid。

六、ansi c

1、函式原型

2、類屬指標

3、原始系統資料型別

七、出錯處理

八、使用者標識

九、訊號

1、訊號時通知程序已發生某種條件的一種技術。

2、程序如何處理訊號有三種選擇:

忽略該訊號

按系統預設方式處理

提供乙個函式,訊號發生時呼叫該函式

3、signal函式可以指定當產生訊號時要呼叫的函式名

十、unix時間值

1、unix系統一直使用兩種不同的時間值

最近一次的修改時間等

取50、60或100個滴答。系統基本資料型別clock_t儲存這種時間值。

sysconf函式可得到每秒時鐘滴答數。

2、當度量乙個程序的執行時間時,unix系統使用三個程序時間值:

時鐘時間

使用者cpu時間

系統cpu時間

3、時鐘時間又稱為牆上時鐘時間。它是程序執行的時間總量,其值與系統中同時執行的程序數有關。在我們報告時鐘時間時,

都是在系統中沒有其他活動時進行度量的。

4、使用者cpu時間時執行使用者指令所用的時間量。

5、系統cpu時間是為該程序執行核心所經歷的時間。

6、使用者cpu時間和系統cpu時間的和常被稱為cpu時間。

十一、系統呼叫和庫函式

1、所有的作業系統都提供多種服務的入口點,由此程式向核心請求服務。

2、各種版本的unix都提供經良好定義的有限數目的入口點,經過這些入口點進入核心,這些入口點被稱為系統呼叫。

3、unix所使用的技術是為每個系統呼叫在標準c庫中設定乙個具有同樣名字的函式。使用者程序用標準c呼叫序列來呼叫

這些函式,然後,函式又用系統所要求的技術呼叫相應的核心服務。

4、應用程式可以呼叫系統呼叫或庫函式,而很多庫函式則會呼叫系統呼叫。

5、系統呼叫通常提供一種最小介面,而庫函式通常提供比較複雜的功能。

Unix基礎知識

gnu是gnu s not unix的縮寫,gnu nu nju 角馬的意思,模樣見下圖 gnu通用公共許可gpl general public license gpl是自由軟體 會發行的用於計算機軟體的協議證書,使用該證書的軟體被稱為自由軟體 free software 後來改名為開發源 軟體 o...

unix基礎知識

一 所有作業系統都未他們所執行的程式提供服務 執行新程式 開啟檔案 讀檔案 分配儲存區以及獲取當前的時間 二 可將作業系統定義為一種軟體,控制著計算機硬體資源,提供程式執行環境,也就是核心 kernel 核心的介面稱之為系統呼叫 system call 公用函式庫構建在系統呼叫介面之上,應用程式既可...

《UNIX環境高階程式設計》 UNIX基礎知識

一 unix體系結構 1 unix系統的體系結構 p1 圖1 1 2 核心的介面被稱為系統呼叫。公用函式構建在系統呼叫介面之上,應用程式即可食用公用函式庫,也可使用系統呼叫。二 登入 1 口令檔案 etc paaswd由7個冒號分隔的字段組成,依次是 登入名 加密口令 數字使用者id 數字組id 注...