第1章 操作系統(tǒng)簡(jiǎn)介
1、現(xiàn)代操作系統(tǒng)的四個(gè)特征是什么?(4分)
并發(fā)、共享、虛擬、異步
并發(fā) :兩個(gè)或多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生。
共享 :內(nèi)存中多個(gè)并發(fā)執(zhí)行的進(jìn)程共同使用系統(tǒng)中的資源。
2、操作系統(tǒng)內(nèi)核的四個(gè)主要功能是什么?(4分)
內(nèi)存管理、進(jìn)程管理、設(shè)備管理、文件管理
3、為什么多道程序系統(tǒng)的平均周轉(zhuǎn)時(shí)間比單道程序系統(tǒng)的平均周轉(zhuǎn)時(shí)間長(zhǎng)?(1分)
存在CPU等待的時(shí)間
4、分時(shí)系統(tǒng)與人機(jī)交互相關(guān)的一個(gè)重要性能指標(biāo)是什么?(1分)
響應(yīng)時(shí)間
5、衡量實(shí)時(shí)系統(tǒng)是否滿足時(shí)間性能要求的兩個(gè)主要指標(biāo)是什么?(2分)
開(kāi)始時(shí)間、截止時(shí)間
6、將文件的邏輯地址轉(zhuǎn)換為文件在外存中的物理地址的功能由哪部分程序完成?(1分)
磁盤(pán)驅(qū)動(dòng)程序
7、指令執(zhí)行的操作主要包括哪幾類(lèi)?(3分)
1、處理器與存儲(chǔ)器之間的指令或數(shù)據(jù)傳送操作
2、處理器與I/O設(shè)備之間的指令或數(shù)據(jù)傳送操作
3、算術(shù)運(yùn)算操作與邏輯運(yùn)算操作
4、控制操作,即修改指令執(zhí)行順序操作
第2章 進(jìn)程的描述與控制
1.進(jìn)程由哪三個(gè)部分構(gòu)成?執(zhí)行態(tài)進(jìn)程在什么情況下變?yōu)榫途w態(tài)?阻塞進(jìn)程的操作最后一步要調(diào)用什么程序進(jìn)行CPU的重新分配?
程序、用戶數(shù)據(jù)、進(jìn)程控制塊
CPU時(shí)間片用完
進(jìn)程調(diào)度程序
2.若兩個(gè)進(jìn)程并發(fā)執(zhí)行下列程序,x初值為3,當(dāng)兩個(gè)進(jìn)程各執(zhí)行完一次下列代碼后,x的可能值是什么?
load R1, x // 取x的值到寄存器R1中
dec R1 //將R1的值減1
store x, R1 // 將R1的內(nèi)容存入x
1 或 2
3.簡(jiǎn)述操作系統(tǒng)引導(dǎo)的過(guò)程。
只讀存儲(chǔ)器ROM中的BIOS程序執(zhí)行后,將Boot程序加載至內(nèi)存,然后Boot程序執(zhí)行,到外存中找到loader程序并加載到內(nèi)存,接著loader程序執(zhí)行,將內(nèi)核程序從外存加載到內(nèi)存,最后內(nèi)核開(kāi)始執(zhí)行。
4.外部中斷信號(hào)的產(chǎn)生部件是什么?中斷向量由哪個(gè)部件產(chǎn)生?中斷響應(yīng)開(kāi)始后哪些操作由硬件完成?中斷響應(yīng)開(kāi)始后哪些操作由操作系統(tǒng)內(nèi)核完成?中斷向量表表項(xiàng)中存放什么內(nèi)容?若中斷向量表的起始地址為addr,表項(xiàng)長(zhǎng)度為8字節(jié),中斷向量表的n號(hào)表項(xiàng)的起始地址是什么?
CPU外的硬件電路
中斷控制器
硬件:關(guān)中斷、保存程序斷點(diǎn)、中斷處理程序地址—》pc
內(nèi)核:保護(hù)現(xiàn)場(chǎng)、執(zhí)行中斷服務(wù)程序、恢復(fù)現(xiàn)場(chǎng)、開(kāi)中斷、中斷返回
中斷或異常處理服務(wù)程序入口地址相關(guān)的信息
addr+8n
5.可編程間隔定時(shí)器的功能是什么?例舉幾種時(shí)鐘中斷處理程序需要完成的功能。如何保證RTC時(shí)間與OS時(shí)間的同步?
功能:按指定時(shí)間間隔產(chǎn)生時(shí)鐘中斷,測(cè)量逝去的時(shí)間,并觸發(fā)與時(shí)間有關(guān)的操作。
舉例:
1、維護(hù)時(shí)間日期;
2、對(duì)CPU使用情況記賬;
3、遞減報(bào)警計(jì)時(shí)器;
4、遞減當(dāng)前進(jìn)程在一個(gè)時(shí)間片內(nèi)的剩余時(shí)間,并檢查是否為0,防止進(jìn)程運(yùn)行超時(shí)。
第3章 進(jìn)程同步與進(jìn)程通信
1.同步機(jī)制由操作系統(tǒng)還是應(yīng)用程序?qū)崿F(xiàn)?操作系統(tǒng)還是應(yīng)用程序需要調(diào)用實(shí)現(xiàn)同步操作的函數(shù)?
操作系統(tǒng)或應(yīng)用程序;
操作系統(tǒng)或應(yīng)用程序;
2.請(qǐng)寫(xiě)出記錄型信號(hào)量機(jī)制中 wait(s)和signal(s)操作的偽代碼,并說(shuō)明信號(hào)量的類(lèi)型。
Type semaphore=record
value:integer;
L:list of process;
end
3.若使用記錄型信號(hào)量機(jī)制解決生產(chǎn)者-消費(fèi)者的同步問(wèn)題,生產(chǎn)者進(jìn)程會(huì)在什么情況下被阻塞?阻塞的生產(chǎn)者進(jìn)程會(huì)被插入哪個(gè)阻塞隊(duì)列?
緩沖區(qū)已滿
生產(chǎn)者進(jìn)程阻塞隊(duì)列
4. 請(qǐng)寫(xiě)出讀者-寫(xiě)者問(wèn)題中讀進(jìn)程在進(jìn)入共享數(shù)據(jù)區(qū)執(zhí)行讀操作之前的代碼片段。
wait(rmutex);
if readcount = 0 then wait(wmutex);
readcount++;
signal(rmutex);
5.同步機(jī)制應(yīng)遵循的四條準(zhǔn)則中的“讓權(quán)等待”是什么含義?實(shí)現(xiàn)讓權(quán)等待有什么好處?
含義:當(dāng)進(jìn)程申請(qǐng)不到共享資源的訪問(wèn)權(quán)時(shí),應(yīng)立即釋放處理器
好處:以免進(jìn)程陷入“忙等”狀態(tài),浪費(fèi)CPU資源
6.信號(hào)量是全局變量還是局部變量?
全局變量
第4章 進(jìn)程調(diào)度
1.支持多任務(wù)的操作系統(tǒng)為什么需要實(shí)現(xiàn)進(jìn)程調(diào)度(CPU調(diào)度)的功能?
因?yàn)镃PU是共享資源
2.在發(fā)生哪些事件時(shí)操作系統(tǒng)會(huì)執(zhí)行進(jìn)程調(diào)度程序?
1、進(jìn)程運(yùn)行結(jié)束(包括正常結(jié)束和異常結(jié)束)
2、進(jìn)程阻塞
3、中斷返回
4、支持搶占式調(diào)度的系統(tǒng)中有比當(dāng)前運(yùn)行進(jìn)程優(yōu)先級(jí)更高的進(jìn)程到來(lái)
5、當(dāng)前運(yùn)行進(jìn)程的時(shí)間片用完
3.關(guān)于時(shí)間片輪轉(zhuǎn)調(diào)度算法,回答問(wèn)題。時(shí)間片輪轉(zhuǎn)調(diào)度算法與其他調(diào)度算法相比,需要哪些特殊硬件的支持?進(jìn)程在CPU上執(zhí)行的剩余時(shí)間在什么時(shí)候進(jìn)行初始化?進(jìn)程切換需要完成哪些主要操作?采用較短的時(shí)間片有什么缺點(diǎn)?
硬件:可編程間隔定時(shí)器、可編程中斷控制器
進(jìn)程在進(jìn)程調(diào)度的時(shí)候初始化
主要操作: 棧幀切換和CPU上下文切換
缺點(diǎn):增大系統(tǒng)開(kāi)銷(xiāo)和加長(zhǎng)平均周轉(zhuǎn)時(shí)間
4.若有三個(gè)進(jìn)程p1、p2、p3 ,進(jìn)入系統(tǒng)的時(shí)間分別為30ms、40ms、50ms,需要的CPU服務(wù)時(shí)間分別為5ms、10ms、4ms,優(yōu)先級(jí)數(shù)分別為3、20、1(優(yōu)先級(jí)數(shù)越小優(yōu)先權(quán)越高)。若系統(tǒng)從35ms開(kāi)始進(jìn)行進(jìn)程調(diào)度,采用非搶占式的優(yōu)先權(quán)調(diào)度算法,請(qǐng)說(shuō)明三個(gè)進(jìn)程的調(diào)度順序并計(jì)算三個(gè)進(jìn)程的平均周轉(zhuǎn)時(shí)間。
第5章 死鎖
第6章 內(nèi)存管理
(首先題目有問(wèn)題,題目說(shuō)給該進(jìn)程分配了 3個(gè)頁(yè)框,但是表格中只給了2個(gè)該進(jìn)程的頁(yè)框,在訪問(wèn)邏輯單元0x1F0A時(shí),需要獲得頁(yè)號(hào)為1的頁(yè)的頁(yè)框號(hào),按照題目要求的LRU置換算法,將最近最久未使用的頁(yè)換出,這里進(jìn)程所占的頁(yè)為0號(hào)、2號(hào)以及沒(méi)有給出的x號(hào),2號(hào)剛剛訪問(wèn)過(guò),但是不知道該換0號(hào)還是換x號(hào)。在課本P172頁(yè)中非常相似的題目中有條件為“進(jìn)程的駐留集大小固定為2”,該條件就能很好地表明需要換出哪一個(gè)。只能說(shuō)這里的“為該進(jìn)程分配3個(gè)頁(yè)框”的條件有問(wèn)題,而且沒(méi)有其他引導(dǎo)的話語(yǔ)表示要換出0號(hào)頁(yè),只能靠猜)
(1)0x2356:頁(yè)號(hào)為2,頁(yè)內(nèi)偏移為0x356,根據(jù)頁(yè)表讀出頁(yè)號(hào)2的頁(yè)框號(hào)為0x102,計(jì)算物理地址如下:
0x1020x1000+0x356=0x102356
0x1F0A:頁(yè)號(hào)為1,頁(yè)內(nèi)偏移為0xF0A,根據(jù)頁(yè)表發(fā)現(xiàn)1號(hào)頁(yè)缺頁(yè)(有效位為0),根據(jù)LRU置換算法將0號(hào)頁(yè)換出,1號(hào)頁(yè)裝入0號(hào)頁(yè)原來(lái)的頁(yè)框中,故物理地址計(jì)算如下:0x6E0x1000+0xF0A=0x6EF0A
(2)第一問(wèn):若TLB命中,則訪問(wèn)頁(yè)框所需時(shí)間等于10ns,訪問(wèn)內(nèi)存獲取數(shù)據(jù)為100ns,共花費(fèi)時(shí)間為110ns
第二問(wèn):訪問(wèn)邏輯單元0x1F0A時(shí),首先CPU檢索快表(耗時(shí)10ns),頁(yè)表不在快表中,訪問(wèn)頁(yè)表(耗時(shí)100ns),頁(yè)不在內(nèi)存中,即發(fā)生缺頁(yè)異常,進(jìn)行缺頁(yè)異常處理(耗時(shí)20ms),將頁(yè)裝入頁(yè)框后,重新請(qǐng)求訪問(wèn)0x1F0A,首先CPU檢索快表(耗時(shí)10ns),頁(yè)表不在快表中,再訪問(wèn)頁(yè)表(耗時(shí)100ns),頁(yè)在內(nèi)存中,根據(jù)頁(yè)框號(hào)和頁(yè)內(nèi)偏移計(jì)算得到物理地址,訪問(wèn)數(shù)據(jù)(耗時(shí)100ns),總共耗時(shí)(10ns+100ns+20ms+10ns+100ns+100ns=20.32ms)
第7章 文件系統(tǒng)
某文件系統(tǒng),目錄項(xiàng)結(jié)構(gòu)如右圖所示。
i節(jié)點(diǎn)中有2個(gè)直接地址項(xiàng)和1個(gè)一次間接地址項(xiàng),1個(gè)二次間接地址項(xiàng),1個(gè)三次間接地址項(xiàng)。若目錄樹(shù)如下圖所示,各文件占用的 i節(jié)點(diǎn)號(hào)、簇號(hào)及順序如下表所示。其中dir、dir1是目錄,file1、file2是用戶文件,目錄項(xiàng)長(zhǎng)度為32字節(jié),磁盤(pán)塊大小為4KB。請(qǐng)回答以下問(wèn)題。
1.寫(xiě)出目錄文件dir1的內(nèi)容。
目錄文件dir1的內(nèi)容為
(2分)
2.目錄文件dir、dir1和用戶文件file1共占用至少多少字節(jié)的磁盤(pán)空間?
文件系統(tǒng)以磁盤(pán)塊為單位為文件分配空間,目錄文件dir、dir1各需分配一個(gè)磁盤(pán)塊,文件file1占用了6、8、10三個(gè)磁盤(pán)塊,因此dir、dir1和用戶文件file1共占用5個(gè)磁盤(pán)塊,5*4KB=20KB大小的空間。(2分)
3.刪除文件file2 之后哪些數(shù)據(jù)結(jié)構(gòu)發(fā)生了變化?說(shuō)明變化后的具體內(nèi)容。
刪除文件file2 之后 ,目錄文件dir1的內(nèi)容變?yōu)?br>
文件file2占用的i節(jié)點(diǎn)被釋放。
文件file2占用的12、13、16、23四個(gè)磁盤(pán)塊的狀態(tài)變?yōu)榭臻e狀態(tài)。(3分)
4.簡(jiǎn)述按名訪問(wèn)文件file1的過(guò)程。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-695459.html
根據(jù)文件名dir1在dir目錄文件中找到dir1所在的i節(jié)點(diǎn)號(hào)為2,在2號(hào)i節(jié)點(diǎn)中獲取目錄文件dir1的磁盤(pán)塊號(hào),從中讀出dir1的內(nèi)容。以文件名file1為索引檢索目錄文件dir1,從中可以得到file1的i節(jié)點(diǎn)號(hào)3,從3號(hào)i節(jié)點(diǎn)中可以獲得文件file1所在的磁盤(pán)塊號(hào)6、8、10,從中可以獲得file1的內(nèi)容。(3分)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-695459.html
第8章 I/O設(shè)備管理
到了這里,關(guān)于計(jì)算機(jī)操作系統(tǒng)原理期末總復(fù)習(xí)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!