1.1 什么是計(jì)算機(jī)的操作系統(tǒng)?
1.2 操作系統(tǒng)管理計(jì)算機(jī)系統(tǒng)的哪些資源?
1.3 為什么要引進(jìn)分時(shí)系統(tǒng)?分時(shí)系統(tǒng)的主要特點(diǎn)是什么?
1.4 說明分時(shí)系統(tǒng)和多終端實(shí)時(shí)系統(tǒng)的差別叭莫。
1.5 什么是系統(tǒng)功能調(diào)用黄绩。
1.6 網(wǎng)絡(luò)操作系統(tǒng)與分布式操作系統(tǒng)的區(qū)別是什么?
1.7 微型計(jì)算機(jī)與大型計(jì)算機(jī)的硬件組織有何不同特點(diǎn)?
1.8 試述虛擬處理機(jī)的概念。
1.9 操作系統(tǒng)與系統(tǒng)中的其它軟件以及與硬件是什么關(guān)系?
1.10什么是網(wǎng)絡(luò)操作系統(tǒng)蚜退,它與通常的操作系統(tǒng)有何不同?
1.11定義幔睬、比較下列名詞,并寫出其反義詞岛宦。
(1)聯(lián)機(jī);(2)分時(shí);
(3)實(shí)時(shí);(4)交互式計(jì)算
1.12操作系統(tǒng)的主要作用和功能是什么?
1.13什么是多道程序設(shè)計(jì)技術(shù)绿满,引入多道程序設(shè)計(jì)技術(shù)的起因和目的是什么?
1.14試畫出三道作業(yè)的運(yùn)行情況特咆。列舉多道程序系統(tǒng)中存在哪些并行運(yùn)行情況。
1.15多道程序系統(tǒng)具有哪些特性,并設(shè)想一下這些特性對(duì)操作系統(tǒng)設(shè)計(jì)將帶來什么
影響?
1.16比較批處理系統(tǒng)、分時(shí)系統(tǒng)和實(shí)時(shí)系統(tǒng)的特點(diǎn)。
2-1 操作系統(tǒng)的運(yùn)行環(huán)境指什么?
2-2 現(xiàn)代計(jì)算機(jī)為什么設(shè)置目態(tài)/管態(tài)這兩種不同的機(jī)器狀態(tài)?現(xiàn)在的 Intel 80386 設(shè)置了
四級(jí)不同的機(jī)器狀態(tài)(把管態(tài)又分為三個(gè)特權(quán)級(jí))汰蜘,你能說出自己的理解嗎?
2-3 什么叫特權(quán)指令?為什么要把指令分為特權(quán)指令和非特權(quán)指令?
2-4 說明以下各條指令是特權(quán)指令還是非特權(quán)指令,并說明理由:
(1)啟動(dòng)磁帶機(jī); (2)求?的 n 次冪; (3)停止 CPU; (4)讀時(shí)鐘; (5)清主存; (6)屏蔽一切中斷; (7)修改指令地址寄存器內(nèi)容之宿。
2-5 CPU 如何判斷可否執(zhí)行當(dāng)前的特權(quán)指令?
2-6 什么是程序狀態(tài)字?主要包括什么內(nèi)容?
2-7 存儲(chǔ)保護(hù)的目的是什么?常用的存儲(chǔ)保護(hù)機(jī)構(gòu)有哪兩種?指出它們的要點(diǎn)族操。
2-8針對(duì)圖 2-3 所示的主存各存儲(chǔ)塊的情況,請(qǐng)回答以下兩種情況對(duì) A比被,B色难,C 各塊訪問合
法? (1)存儲(chǔ)保護(hù)鍵的鑰為“0000”; (2)存儲(chǔ)保護(hù)鍵的鑰為“0100”。
2-9 存儲(chǔ)保護(hù)鍵的取“保護(hù)位”是做什么用的?如何起作用?
2-10 什么是雙緩沖?詳述什么是三緩沖模式的操作等缀。在什么環(huán)境下枷莉,三緩沖是有效益的?
2-11 CPU 如何發(fā)現(xiàn)中斷事件?發(fā)現(xiàn)中斷事件后應(yīng)做什么工作?
2-12 說明中斷屏蔽的作用。
2-13 何謂中斷優(yōu)先級(jí)?為什么要對(duì)中斷事件分級(jí)?
2-14 CPU 響應(yīng)中斷時(shí)尺迂,為什么要交換程序狀態(tài)字?怎樣進(jìn)行?
2-15 什么是軟時(shí)鐘(虛擬時(shí)鐘)?有何作用?
2-16 有四個(gè)作業(yè) A笤妙,B,C噪裕,D蹲盘,要求定時(shí)喚醒運(yùn)行,其要求如下:
A 20 秒后運(yùn)行膳音,經(jīng)過 40 秒后再次運(yùn)行召衔。
B 30 秒后運(yùn)行。
C 30 秒后運(yùn)行祭陷,經(jīng)過 25 秒后再次運(yùn)行苍凛。
D 65 秒后運(yùn)行。
請(qǐng)建立相應(yīng)的時(shí)鐘隊(duì)列兵志。
2-17 列舉出提出基地址加位移編址的原因醇蝴。
2-18 什么叫重定位?有哪幾種重定位技術(shù)?有何區(qū)別?
2-19 本書第 7 章的圖 7-10 中,圖(a)表示了一個(gè)作業(yè)的地址空間想罕,該作業(yè)被連接裝入程
序裝入主存中哑蔫,起始地址為 10000(絕對(duì)地址),請(qǐng)表示出該作業(yè)裝入主存后的
情況(存儲(chǔ)空間足夠作業(yè)裝入)。
2-20 對(duì)比絕對(duì)地址裝入程序與連接裝入程序闸迷。
2-21 說明硬件、軟件與固件的區(qū)別俘枫,固件對(duì)操作系統(tǒng)的意義何在?
2-22 硬件必須具備哪些條件后腥沽,操作系統(tǒng)才可能提供多道程序設(shè)計(jì)的功能?
8.1 什么是臨界區(qū)?試舉一個(gè)臨界區(qū)的例子。臨界區(qū)設(shè)計(jì)原則是什么?
8.2 并發(fā)進(jìn)程之間的制約關(guān)系有哪兩種?引起制約的原因是什么?
8.3 信號(hào)量的物理意義是什么?應(yīng)如何設(shè)置其初值?并說明信號(hào)量的數(shù)據(jù)結(jié)構(gòu)鸠蚪。
8.4 現(xiàn)有 P今阳、Q、R 三個(gè)進(jìn)程茅信。P 負(fù)責(zé)把數(shù)據(jù)讀入緩沖區(qū)盾舌,Q 負(fù)責(zé)從緩沖區(qū)中取出數(shù)據(jù),進(jìn)行
加工計(jì)算蘸鲸,結(jié)果仍然寫入緩沖區(qū)中妖谴,R 負(fù)責(zé)把進(jìn)程 Q 得到的結(jié)果輸出。分別考慮有一
個(gè)容量為 K 的緩沖區(qū)和兩個(gè)容量分別 K 的緩沖區(qū)的情況酌摇。
8.5 考慮一個(gè)公共汽車的運(yùn)營(yíng)情況膝舅。司機(jī)負(fù)責(zé)開車、到站停車窑多、當(dāng)售票員關(guān)門后才能再次啟
動(dòng)車;售票員負(fù)責(zé)售票仍稀、當(dāng)車停穩(wěn)后開車門、乘客下完車后關(guān)好車門埂息。試用 P技潘、V 原語
實(shí)現(xiàn)司機(jī)和售票員的同步過程。
8.6 何謂死鎖?產(chǎn)生死鎖的原因和必要條件是什么?
8.7 在解決死鎖問題的幾個(gè)方法中千康,哪種方法最容易實(shí)現(xiàn)?哪種方法使資源的利用率最高? 8.8 請(qǐng)?jiān)敿?xì)說明可通過哪些途徑預(yù)防死鎖?
8.9 在銀行家算法的例子中享幽,如果 P0 發(fā)出的請(qǐng)求向量由 Request0(0,2,0)改為 Request0( 0,1,0),
問系統(tǒng)可否將資源分配給它?
8.10 順序程序設(shè)計(jì)和共行程序設(shè)計(jì)的特點(diǎn)有何不同?
8.11 什么叫與時(shí)間有關(guān)的錯(cuò)誤?表現(xiàn)在哪些方面?舉例說明之吧秕。
8.12 若進(jìn)程 A 和 B 在臨界段上互斥琉闪,那么當(dāng) A 處于臨界段內(nèi)時(shí)不能打斷它的執(zhí)行,這說法
對(duì)嗎?為什么?
8.13 同步與互斥這兩個(gè)概念有何區(qū)別?
8.14 信號(hào)量是一個(gè)初值為非負(fù)的整形變量砸彬,可在其上做加“1”和減“1”的操作颠毙。這說法對(duì)
嗎?如何改正之?
8.15 使用 cobegin/coend 改寫下面的表達(dá)式以獲得最大程度的并行性。
(3ab+4)/(c+d)(e-f)
8.16 把下列并行計(jì)算改寫成順序計(jì)算序列砂碉。
a:=b+c; cobegln
d:==bc-x;
e:=(a/b)+n2 coend
8.17 為什么下面的并行計(jì)算程序是不正確的? cobegin
a:=b+c; d:=bc-x; e:=(a/b)+n**2
coend
8.18 說明下面的說法是不正確的理由:當(dāng)幾個(gè)進(jìn)程訪問主存中的共享數(shù)據(jù)時(shí)蛀蜜,必須實(shí)行互斥
以防止產(chǎn)生不確定的結(jié)果。
8.19 下面是兩個(gè)并發(fā)執(zhí)行的進(jìn)程增蹭,它們能正確執(zhí)行嗎?若不能正確執(zhí)行滴某,請(qǐng)舉例說明,并改
正之(X 是公共變量)。 cobegin
var x:integer; procecc P1(進(jìn)程 P1)
var y霎奢, z: integer; begin
x:=1;
y:=0;
If x>=l then y:=y+1;
z:=y end
Procecc P2(進(jìn)程 P2) var t户誓,u:integer;
begin x:=0;
t:=0;
if x<1 then t:=t+z;
u:=t end
coend
8.20 因修路使 A 地到 B 地的多路并行車道變?yōu)閱诬嚨溃?qǐng)問在此問題中幕侠,什么是臨界資源?
8.21 沒有幾個(gè)進(jìn)程共享一互斥段帝美,對(duì)于如下兩種情況:
(1)每次只允許一個(gè)進(jìn)程進(jìn)入互斥段;
(2)最多允許 m 個(gè)進(jìn)程(m<n=同時(shí)進(jìn)入互斥段;所采用的信號(hào)量是否相同?信號(hào) 量值的變化范圍如何?
8.22 課中講到的生產(chǎn)者和消費(fèi)者問題的同步算法中,如果用一個(gè)互斥信號(hào)量 M 來代替算法 中的兩個(gè)互斥信號(hào)量 Me 和 Mf(即算法的所有 Me 和 Mf 處都用 M 來代替晤硕,請(qǐng)問: (1)改變后的算法與原算法各有何優(yōu)缺點(diǎn)? (2)在改變后的算法中將生產(chǎn)者和消費(fèi)者進(jìn)程的兩個(gè)相鄰 P 操作交換一下順序悼潭,則將 有可能產(chǎn)生死鎖,請(qǐng)舉例說明為什么?
(3)在(2)中若交換 V 操作順序有影響嗎?
8.23 用銀行家算法判斷下述每個(gè)狀態(tài)是否安全舞箍。如果一個(gè)狀態(tài)是安全的舰褪,說明所有進(jìn)程是如
何能夠運(yùn)行完畢的。如果一個(gè)狀態(tài)是不安全的疏橄,說明為什么可能出現(xiàn)死鎖占拍。 狀態(tài)A 狀態(tài)B
占有臺(tái)數(shù) 最大需求 占有臺(tái)數(shù) 最大需求 用戶1 2 6 用戶1 4 8 用戶2 4 7 用戶2 3 9 用戶3 5 6 用戶3 5 8 用戶4 0 2 可供分配的臺(tái)數(shù)2 可供分配的臺(tái)數(shù) 1
8.24 給出一個(gè)涉及三個(gè)進(jìn)程和三個(gè)不同資源的死鎖例子,并畫出相應(yīng)的資源分配圖软族。
8.25 沒有兩個(gè)進(jìn)程 A 和 B 各自按以下順序使用 P刷喜,V 操作并行運(yùn)行(S;和 S。代表系統(tǒng)中
一臺(tái)打印機(jī)和一臺(tái)掃瞄儀資源信號(hào)量):
A進(jìn)程 B進(jìn)程
P(Sl) P(S立砸。) ......
P(S2) P(Sl) ......
V(S2) V(Sl) ......
V(S1) V(S2) ......
(1)分析各種推進(jìn)速度可能引起的情況掖疮,并畫出死鎖的圖形表示,
(2)用死鎖的必要條件說明產(chǎn)生死鎖和不產(chǎn)生死鎖的原因颗祝。
8.26 某系統(tǒng)有同類資源 m 個(gè)浊闪,被 n 個(gè)進(jìn)程共享,請(qǐng)分別討論當(dāng) m>n 和 m<=n 時(shí)每個(gè)進(jìn)程最多可以請(qǐng)求多少個(gè)這類資源螺戳,才能使系統(tǒng)一定不會(huì)發(fā)生死鎖?
8.27 某系統(tǒng)中有六臺(tái)打印機(jī)搁宾,N 個(gè)進(jìn)程共享打印機(jī)資源,每個(gè)進(jìn)程要求兩臺(tái)倔幼,試問 N 取哪
些值時(shí)盖腿,系統(tǒng)才不會(huì)發(fā)生死鎖?