本章考核知識(shí)點(diǎn) :1.UNIX系統(tǒng)結(jié)構(gòu) 2.UNIX系統(tǒng)的進(jìn)程 3.UNIX系統(tǒng)的存儲(chǔ)管理 4.UNIX系統(tǒng)的文件系統(tǒng) 5.UNIX系統(tǒng)的I/O系統(tǒng)
自學(xué)要求 :在學(xué)習(xí)操作系統(tǒng)基本工作原理的基礎(chǔ)上,了解一個(gè)具體操作系統(tǒng)UNIX的實(shí)現(xiàn)方法。
本章不是重點(diǎn)章,學(xué)習(xí)時(shí)注意結(jié)合前面章節(jié)的內(nèi)容來(lái)領(lǐng)會(huì)。
一、UNIX系統(tǒng)結(jié)構(gòu)( 領(lǐng)會(huì) )
1、UNIX的層次結(jié)構(gòu)。
UNIX可以分為 內(nèi)核層 和 外殼層 兩部分。
內(nèi)核層 是UNIX操作系統(tǒng)的核心,它實(shí)現(xiàn)存儲(chǔ)管理、文件管理、設(shè)備管理、進(jìn)程管理等功能并為外殼層提供系統(tǒng)調(diào)用。
外殼層 為用戶(hù)提供各種操作命令(UNIX把它們稱(chēng)為shell命令)和程序設(shè)計(jì)環(huán)境。外殼層由shell解釋程序、支持程序設(shè)計(jì)的各種語(yǔ)言(如C、PASCAL和BASIC等)、編譯程序和解釋程序、實(shí)用程序和系統(tǒng)庫(kù)等組成。
2、UNIX系統(tǒng)的主要特點(diǎn)。
短小精悍
簡(jiǎn)潔有效
易移植
可擴(kuò)充
開(kāi)放性
3、UNIX的程序員接口和用戶(hù)接口。
UNIX的 程序員接口 就是其內(nèi)核提供的系統(tǒng)調(diào)用,它是內(nèi)核為外殼用戶(hù)程序提供的服務(wù)界面,也就是操作系統(tǒng)支持用戶(hù)程序正常工作的接口。
系統(tǒng)調(diào)用 是用戶(hù)程序請(qǐng)求操作系統(tǒng)為其服務(wù)的唯一形式,UNIX規(guī)定用戶(hù)程序用“trap”指令請(qǐng)求服務(wù)。
UNIX的中粗略地分為三類(lèi): 文件操作類(lèi) 、 進(jìn)程控制類(lèi) 和 信號(hào)與時(shí)間類(lèi)。
shell 命令是 終端用戶(hù)與UNIX的接口 .因?yàn)橛脩?hù)不能直接使用系統(tǒng)調(diào)用,而只能使用外殼層的用戶(hù)程序。一個(gè)在終端上登錄成功的用戶(hù)可以用UNIX提供的shell命令來(lái)得到用戶(hù)程序。
二、UNIX系統(tǒng)的進(jìn)程( 領(lǐng)會(huì) )
1、進(jìn)程的組成:在UNIX系統(tǒng)中進(jìn)程由三部分組成: 進(jìn)程控制塊 、 正文段 和 數(shù)據(jù)段。
2、進(jìn)程的狀態(tài)及狀態(tài)轉(zhuǎn)換:UNIX進(jìn)程在執(zhí)行過(guò)程中由于各種原因使其狀態(tài) 不斷發(fā)生變化,且當(dāng)內(nèi)存空間不夠時(shí)可把一些進(jìn)程換出到磁盤(pán)上,需要時(shí)又可把它換進(jìn)內(nèi)存。進(jìn)程的狀態(tài)有 運(yùn)行狀態(tài) 、 就緒狀態(tài) 、 睡眠狀態(tài) 、 創(chuàng)建狀態(tài) 、 僵死狀態(tài)。
3、Shell進(jìn)程:UNIX系統(tǒng)初始起動(dòng)時(shí)為每個(gè)用戶(hù)創(chuàng)建一個(gè) shell進(jìn)程 ,每個(gè)shell進(jìn)程等待用戶(hù)輸入命令。當(dāng)shell進(jìn)程接收了用戶(hù)命令后再創(chuàng)建子進(jìn)程去解釋執(zhí)行命令,子進(jìn)程在執(zhí)行過(guò)程中可以按需要再創(chuàng)建子進(jìn)程。形成一棵進(jìn)程樹(shù)。
4)進(jìn)程的創(chuàng)建: 一個(gè)進(jìn)程總是使用 系統(tǒng)調(diào)用fork 來(lái)創(chuàng)建新進(jìn)程,形成父子關(guān)系。 父進(jìn)程 與 子進(jìn)程 可以并發(fā)執(zhí)行,子進(jìn)程可以共享父進(jìn)程的正文段和已打開(kāi)的文件。
5、進(jìn)程調(diào)度算法及其實(shí)現(xiàn):在內(nèi)存 就緒 的進(jìn)程中,當(dāng)處理器空閑時(shí)可以競(jìng)爭(zhēng)處理器,UNIX系統(tǒng)對(duì)進(jìn)程的調(diào)度采用 動(dòng)態(tài)優(yōu)先數(shù)調(diào)度算法 ,優(yōu)先數(shù)大的進(jìn)程其優(yōu)先權(quán)低,進(jìn)程調(diào)度總是讓優(yōu)先數(shù)小(優(yōu)先權(quán)高)的進(jìn)程先占用處理器。
6、利用管道設(shè)施pipe實(shí)現(xiàn)進(jìn)程間的通信:UNIX的管道機(jī)制pipe是連接在進(jìn)程間的 共享文件 ,稱(chēng)為 pipe文件 .通過(guò)管道機(jī)制對(duì)進(jìn)程讀寫(xiě)pipe文件進(jìn)行操作,使得一個(gè)進(jìn)程可以把信息寫(xiě)入pipe文件,別的進(jìn)程可以從pipe文件中讀取信息,實(shí)現(xiàn)進(jìn)程間的通信。
相關(guān)推薦:2010年自考工學(xué)類(lèi)“操作系統(tǒng)原理”復(fù)習(xí)資料匯總