我們可以將作業系統定義為一種軟體,它控制計算機的硬體資源,提供程式的執行環境,通常將這種軟體叫做核心
核心的介面被稱為系統呼叫
作業系統包括核心和一些其他軟體(系統實用程式,應用程式,shell,及公共函式庫等)
檔案描述符: 通常是乙個小的非負整數,核心用以標識乙個程序正在訪問的檔案。
標準輸入,標準輸出,標準錯誤(standard input, standard output, standard error)
不帶緩衝的i/o(open, read, write, lseek,close)
不帶緩衝即為 每個read或write都呼叫核心中的乙個系統呼叫
程式: 是乙個儲存在磁碟上某個目錄的可執行檔案,核心實用exec函式將程式讀入記憶體,並執行程式
程序和程序id:程式的執行例項被稱為程序,每乙個程序都有乙個唯一的數字識別符號,稱為程序id(總是乙個非負數)
程序控制(fork, exec,waitpid)
執行緒和執行緒id:乙個程序內的所有執行緒共享同一位址空間,檔案描述符,棧以及與程序相關的屬性,因為它們能訪問同一儲存區,所以各執行緒在訪問共享資料時需要採取同步措施以避免不一致性。
執行緒id只在它所屬的程序內起作用
訊號:用於通知程序發生了某種情況,包括三種處理方式
(1)忽略訊號
(2)按系統預設方式處理(終止該程序)
(3)提供乙個函式,在訊號發生時呼叫
第一章 Unix基礎
1.5輸入輸出 1檔案描述符 通常是乙個非負整數。核心用它標示乙個特定程序正在訪問的檔案。當核心開啟或建立乙個新檔案時,它返回乙個檔案描述符,在讀寫檔案時,就可使用它。2標準輸入 標準輸出 標準出錯 三個檔案描述符 當執行乙個新程式時,shell為其開啟三個檔案描述符 標準輸入輸出出錯。如果沒什麼特...
UNIX網路程式設計 UNP 卷2 第一章
今天開始拜讀unp這部神作了 第一章主要是簡介內容,包括對經典ipc和同步機制的描述。雖然卷2主要是講解ipc的,但這個ipc包括了平常所說的程序間通訊和同步。pipe fifo message queue mutex locks semaphores shared memory rpc socke...
《Unix環境高階程式設計》Note 第一章基礎知識
1.引言 作業系統為應用軟體提供服務,包括排程程序,管理記憶體,檔案系統,網路協議棧,裝置驅動等等。2.unix體系結構 核心 系統呼叫 shell 公用函式庫 e.g.glibc 應用程式 核心 系統呼叫 應用程式 補充 執行應用程式時處於使用者態,進行系統呼叫後進入核心態 3.登入 1.登入檔案...