1.2 UNIX結構
嚴格的來說,操作系統被定義為操控計算機硬件和為程序提供運行環境的軟件。一般來說,我們稱改軟件為內核(kernel),因為其相對較小并居于運行環境的核心。圖1.1展示了UNIX系統的架構。

圖 1.1 UNIX操作系統的結構
內核的接口是一個軟件層,被稱為系統調用【system calls】(圖1.1中陰影部分)。常用的函數庫就被構建在系統調用接口之上,但是應用程序可以任意地調用他們二者。(我們將在1.11節更多的介紹系統調用和常用函數庫。)解釋器(shell)是一個特殊的應用程序,其用來為其它程序的運行提供接口。
更一般來說,一個操作系統就是內核和所有其它使得計算機易用并有個性的軟件的組合。這些其它的軟件包括系統工具,應用程序,解釋器(shell),常用函數庫,等等。
舉例來說,Linux就是被GNU操作系統使用的內核。一些人稱此為GNU/Linux操作系統,然而其通常的被簡稱為Linux。盡管這種稱法嚴格來說并不正確,然而這種稱法卻更容易理解,賦予了詞組操作系統雙重含義。(另一個優點是這樣更簡潔。)