計算機操作系統(tǒng)課后習題答案_第1頁
計算機操作系統(tǒng)課后習題答案_第2頁
計算機操作系統(tǒng)課后習題答案_第3頁
計算機操作系統(tǒng)課后習題答案_第4頁
計算機操作系統(tǒng)課后習題答案_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1.設(shè)計現(xiàn)代OS的主要目標是什么

方便性,有效性,可擴充性和開放性.

2.OS的作用可表現(xiàn)為哪兒個方面

a.OS作為用戶與計算機硬件系統(tǒng)之間的接口;

b.OS作為計算機系統(tǒng)資源的管理者;

c.OS作為擴充機器.

3.試說明推動多道批處理系統(tǒng)形成和發(fā)展的主要動力是什么

不斷提高計算機資源利用率和系統(tǒng)吞吐量的需要;

4.何謂脫機I/O和聯(lián)機I/O

a.脫機輸入輸出方式(Off-LineI/O)是為了解決人機矛盾及CPU和I/O設(shè)備之間速

度不匹配而提出的.它

減少了CPU的空閑等待時間,提高了I/O速度.具體內(nèi)容是將用戶程序和數(shù)據(jù)在一臺外

圍機的控制下,預(yù)

先從低速輸入設(shè)備輸入到磁帶上,當CPU需要這些程序和數(shù)據(jù)時,在直接從磁帶機高速

輸入到內(nèi)存,從而

大大加快了程序的輸入過程,減少了CPU等待輸入的時間,這就是脫機輸入技術(shù);當程序

運行完畢或告--

段落,CPU需要輸出時,無需直接把計算結(jié)果送至低速輸出設(shè)備,而是高速把結(jié)果輸出到

磁帶上,然后在

外圍機的控制下,把磁帶上的計算結(jié)果由相應(yīng)的輸出設(shè)備輸出,這就是脫機輸出技術(shù).

b.若這種輸入輸出操作在主機控制下進行則稱之為聯(lián)機輸入輸出方式.

5.試說明推動分時系統(tǒng)形成和發(fā)展的主要動力是什么

用戶的需要.即對用戶來說,更好的滿足了人-機交互,共享主機以及便于用戶上機的需求.

6.試說明實時任務(wù)的類型和實時系統(tǒng)的類型.

a.實時任務(wù)的類型按任務(wù)執(zhí)行時是否呈現(xiàn)周期性來劃分,分為周期性實時任務(wù)和非周

期性實時任務(wù);--

根據(jù)對截止時間的要求來劃分,分為硬實時任務(wù)和軟實時任務(wù);

b.通常把要求進行實時控制的系統(tǒng)統(tǒng)稱為實時控制系統(tǒng),把要求對信息進行實時處理

的系統(tǒng)成為實時信

息處理系統(tǒng).

7.實現(xiàn)多道程序應(yīng)解決哪些問題

a.處理機管理問題;

b,內(nèi)存管理問題;

c.I/O設(shè)備管理問題;

d.文件管理問題;

e.作業(yè)管理問題.

8.試比較單道與多道批處理系統(tǒng)的特點及優(yōu)缺點.

a.單道批處理系統(tǒng)是最早出現(xiàn)的一種OS,它具有自動性,順序性和單道性的特點;---

多道批處理系統(tǒng)則

具有調(diào)度性,無序性和多道性的特點;

b.單道批處理系統(tǒng)是在解決人機矛盾及CPU和I/O設(shè)備之間速度不匹配的矛盾中形

成的,旨在提高系統(tǒng)

資源利用率和系統(tǒng)吞吐量,但是仍然不能很好的利用系統(tǒng)資源;---多道批處理系統(tǒng)是對

單道批處理系統(tǒng)

的改進,其主要優(yōu)點是資源利用率高,系統(tǒng)吞吐量大;缺點是平均周轉(zhuǎn)時間長,無交互能力.

9.實現(xiàn)分時系統(tǒng)的關(guān)鍵問題是什么應(yīng)如何解決

a.關(guān)鍵問題:及時接收,及時處理;

b.對于及時接收,只需在系統(tǒng)中設(shè)置一多路卡,多路卡作用是使主機能同時接收用戶從

各個終端上輸入

的數(shù)據(jù);---對于及時處理,應(yīng)使所有的用戶作業(yè)都直接進入內(nèi)存,在不長的時間內(nèi),能使

每個作業(yè)都運

行一次.

10為什么要引入實時操作系統(tǒng)

更好地滿足實時控制領(lǐng)域和實時信息處理領(lǐng)域的需要.

11OS具有哪幾大特征它的最基本特征是什么

a.并發(fā)(Concurrence),共享(Sharing),虛擬(Virtual),異步性(Asynchronism).

b.其中最基本特征是并發(fā)和共享.

12內(nèi)存管理有哪些主要功能它們的主要任務(wù)是什么

a.主要功能:內(nèi)存分配,內(nèi)存保護,地址映射和內(nèi)存擴充等.

b.內(nèi)存分配的主要任務(wù)是為每道程序分配內(nèi)存空間,提高存儲器利用率,以減少不可用

的內(nèi)存空間,允

許正在運行的程序申請附加的內(nèi)存空間,以適應(yīng)程序和數(shù)據(jù)動態(tài)增長的需要內(nèi)存保

護的主要任務(wù)是確

保每道用戶程序都在自己的內(nèi)存空間中運行,互不干擾.

--地址映射的主要任務(wù)是將地址空間中的邏輯地址轉(zhuǎn)換為內(nèi)存空間中與之對應(yīng)的物理

地址.

--內(nèi)存擴充的主要任務(wù)是借助虛擬存儲技術(shù),從邏輯上去擴充內(nèi)存容量.

13處理機管理具有哪些功能它們的主要任務(wù)是什么

a.進程控制,進程同步,進程通信和調(diào)度.

b.進程控制的主要任務(wù)是為作業(yè)創(chuàng)建進程,撤銷已結(jié)束的進程,以及控制進程在運行過

程中的狀態(tài)轉(zhuǎn)換.

--進程同步的主要任務(wù)是對諸進程的運行進行調(diào)節(jié).

--進程通信的任務(wù)是實現(xiàn)在相互合作進程之間的信息交換.

---調(diào)度分為作業(yè)調(diào)度和進程調(diào)度.作業(yè)調(diào)度的基本任務(wù)是從后備隊列中按照一定的算

法,選擇出若干個

作業(yè),為它們分配必要的資源;而進程調(diào)度的任務(wù)是從進程的就緒隊列中,按照一定的算

法選出一新進程,

把處理機分配給它,并為它設(shè)置運行現(xiàn)場,是進程投入運行.

14設(shè)備管理有哪些主要功能其主要任務(wù)是什么

a.主要功能:緩沖管理,設(shè)備分配和設(shè)備處理,以及虛擬設(shè)備等.

b.主要任務(wù):完成用戶提出的I/O請求,為用戶分配I/O設(shè)備;提高CPU和I/O設(shè)備

的利用率;提高I/O

速度;以及方便用戶使用I/O設(shè)備.

15文件管理有哪些主要功能其主要任務(wù)是什么

a.主要功能:對文件存儲空間的管理,目錄管理,文件的讀,寫管理以及文件的共享和保

護.

b.主要任務(wù):對用戶文件和系統(tǒng)文件進行管理,以方便用戶使用,并保證文件的安全性.

16試在交互性,及時性和可靠性方面,將分時系統(tǒng)與實時系統(tǒng)進行比較.

a.分時系統(tǒng)是一種通用系統(tǒng),主要用于運行終端用戶程序,因而它具有較強的交互能力;

而實時系統(tǒng)雖

然也有交互能力,但其交互能力不及前者.

b.實時信息系統(tǒng)對實用性的要求與分時系統(tǒng)類似,都是以人所能接收的等待時間來確

定;而實時控制系

統(tǒng)的及時性則是以控制對象所要求的開始截止時間和完成截止時間來確定的.

c.實時系統(tǒng)對系統(tǒng)的可靠性要求要比分時系統(tǒng)對系統(tǒng)的可靠性要求高.

17是什么原因使操作系統(tǒng)具有異步性特征

a.程序執(zhí)行結(jié)果是不確定的,即程序是不可再現(xiàn)的.

b.每個程序在何時執(zhí)行,多個程序間的執(zhí)行順序以及完成每道程序所需的時間都是不確定

的,即不可預(yù)知

性.

18試說明在MS-DOS3.X以前的版本中,其局限性表現(xiàn)在哪兒個方面

a.在尋址范圍上,DOS只有1MB,遠遠不能滿足用戶需要.

b.DOS試單用戶單任務(wù)操作系統(tǒng),不支持多任務(wù)并發(fā)執(zhí)行,與實際應(yīng)用相矛盾.

19MS-DOS由哪幾部分組成每部分的主要功能是什么

略.

20為什么Microsoft在開發(fā)OS/2時,選中了80286芯片

設(shè)計OS/2的主要目標之一是既能充分發(fā)揮80286處理器的能力,又能運行在8086

處理器環(huán)境下開發(fā)的程

序.因為在80286內(nèi)部提供了兩種工作方式:實方式和保護方式,使得Intel80286處

理器不僅提供了多

任務(wù)并發(fā)執(zhí)行的硬件支持,而且還能運行所有在8086卜編寫的程序.

21OS/2的主要功能是什么

a.多任務(wù).

b.進程管理.

c.存儲器管理.

d.文件管理.

e.應(yīng)用程序接口API.

f.表示管理.

22多處理機OS有哪幾種模式各有何優(yōu)缺點

a.2種模式:非對稱多處理模式(AsymmetricMultiprocessingModel)和對稱多處

理模式(Symmetric

MultiprocesingModel).

b.前者易于實現(xiàn),但資源利用率低.

-后者優(yōu)點是允許多個進程同時運行,缺點是必須小心控制I/O,以保證能將數(shù)據(jù)送至適

當?shù)奶幚砥鳎瑫r

還必須注意使各CPU的負載平衡.

23試說明網(wǎng)絡(luò)OS的主要功能.

a.網(wǎng)絡(luò)通信;

b.資源管理;

c.網(wǎng)絡(luò)服務(wù);

d.網(wǎng)絡(luò)管理;

e.互操作能力.

24試比較網(wǎng)絡(luò)OS和分布式OS.

a.網(wǎng)絡(luò)OS是基于由一些互聯(lián)的自主計算機系統(tǒng)組成的計算機網(wǎng)絡(luò),以計算機技術(shù)和通

信技術(shù)高度發(fā)展為

基礎(chǔ),能實現(xiàn)相互通信和相互合作功能的系統(tǒng).分布式OS是指多個分散的處理單元,經(jīng)

互聯(lián)網(wǎng)絡(luò)連接而形

成的系統(tǒng).

b.在分布性上,兩者都具有分布處理功能,但網(wǎng)絡(luò)OS的控制功能大多集中在某個(些)

主機或網(wǎng)絡(luò)服務(wù)器

中,即集中式,而分布式OS則是較均勻地分布在系統(tǒng)的各個站點上,是完全分布式的.

--在并行性上,分布式OS的任務(wù)分配程序可將多個任務(wù)分配到多個處理單元上而實現(xiàn)

并行,網(wǎng)絡(luò)OS中

通常無任務(wù)分配功能,每個用戶的任務(wù)通常在自己(本地)的計算機上處理.

---在透明性匕兩者都具透明性,但網(wǎng)絡(luò)OS指在操作實現(xiàn)上的透明性,而分布式OS則

在系統(tǒng)內(nèi)部的細

節(jié)上實現(xiàn)了很好的隱藏,即具有物理上的透明性.

---在共享性上,分布式OS是比較完全的實現(xiàn)共享,而網(wǎng)絡(luò)OS共享的資源大多是在主機

或網(wǎng)絡(luò)服務(wù)器中.

--在健壯性上,分布式系統(tǒng)由于處理和控制功能是分布的,還擁有容錯技術(shù)實現(xiàn)系統(tǒng)重

構(gòu),因而具有很

強的健壯性;而網(wǎng)絡(luò)OS的控制功能大多集中在主機或服務(wù)器中,是系統(tǒng)具有潛在的不可

靠性,健壯性差.

1.試畫出下面條語句的前趨圖:

S1:a=5-x;S2:b=a*x;S3:c=4*x;S4:d=b+c;S5:e=d+3.

S1->S2->S4->S5

......S3

2.試利用Bernstein條件證明上題中的S2和S3語句是可以并發(fā)執(zhí)行的,而S3和S4

語句是不能并發(fā)執(zhí)

行的

證明:

R(S2)={x,a},W(S2)=,R(S3)={x},W(S3)={c};

可見,S2與S3的讀集與寫集兩兩不相交,S2與S3的讀集之間也不相交,因而,他們滿

足Bernstein條

件,S2與S3語句是可以并發(fā)執(zhí)行的.

同理可證S3和S4不能滿足Bernstein條件,是不能并發(fā)執(zhí)行的.

3.程序并發(fā)執(zhí)行為什么會產(chǎn)生間斷性

因為程序在并發(fā)執(zhí)行過程中存在相互制約性.

4.程序并發(fā)執(zhí)行為何會失去封閉性和可再現(xiàn)性

因為程序并發(fā)執(zhí)行時,多個程序共享系統(tǒng)中的各種資源,資源狀態(tài)需要多個程序來改變,

即存在資源共享

性使程序失去封閉性;而失去了封閉性導致程序失去可再現(xiàn)性.

5.在操作系統(tǒng)中為什么要引入進程概念它會產(chǎn)生什么樣的影響

為了使程序在多道程序環(huán)境下能并發(fā)執(zhí)行,并能對并發(fā)執(zhí)行的程序加以控制和描述,而

引入了進程概念.

影響:使程序的并發(fā)執(zhí)行得以實行.

6.試從動態(tài)性,并發(fā)性和獨立性上比較進程和程序

a.動態(tài)性是進程最基本的特性,可表現(xiàn)為由創(chuàng)建而產(chǎn)生,由調(diào)度而執(zhí)行,因得不到資源

而暫停執(zhí)行,以

及由撤銷而消亡,因而進程由一定的生命期;而程序只是一組有序指令的集合,是靜態(tài)實

體.

b.并發(fā)性是進程的重要特征,同時也是OS的重要特征.引入進程的目的正是為了使其

程序能和其它進程

的程序并發(fā)執(zhí)行,而程序是不能并發(fā)執(zhí)行的.

c.獨立性是指進程實體是一個能獨立運行的基本單位,同時也是系統(tǒng)中獨立獲得資源

和獨立調(diào)度的基本

單位.而對于未建立任何進程的程序,都不能作為一個獨立的單位參加運行.

7.試說明PCB的作用為什么說PCB是進程存在的唯一標志

a.PCB是進程實體的一部分,是操作系統(tǒng)中最重要的記錄型數(shù)據(jù)結(jié)構(gòu).PCB中記錄了操

作系統(tǒng)所需的用于

描述進程情況及控制進程運行所需的全部信息.因而它的作用是使一個在多道程序環(huán)境

下不能獨立運行的

程序(含數(shù)據(jù)),成為一個能獨立運行的基本單位,一個能和其它進程并發(fā)執(zhí)行的進程.

計算機操作系統(tǒng)(湯子瀛)習題答案

b.在進程的整個生命周期中,系統(tǒng)總是通過其PCB對進程進行控制,系統(tǒng)是根據(jù)進程的

PCB而不是任何。

別的什么而感知到該進程的存在的,所以說,PCB是進程存在的唯一標志.

8.試說明進程在三個基本狀態(tài)之間轉(zhuǎn)換的典型原因.

a.處于就緒狀態(tài)的進程,當進程調(diào)度程序為之分配了處理機后,該進程便由就緒狀態(tài)變

為執(zhí)行狀態(tài).

b.當前進程因發(fā)生某事件而無法執(zhí)行,如訪問已被占用的臨界資源,就會使進程由執(zhí)行

狀態(tài)轉(zhuǎn)變?yōu)樽枞?/p>

狀態(tài).

c.當前進程因時間片用完而被暫停執(zhí)行,該進程便由執(zhí)行狀態(tài)轉(zhuǎn)變?yōu)榫途w狀態(tài).

9.為什么要引入掛起狀態(tài)該狀態(tài)具有哪些性質(zhì)

a.引入掛起狀態(tài)處于5中需要:終端用戶的需要,父進程的需要,操作系統(tǒng)的需要,對換

的需要和負荷

調(diào)節(jié)的需要.

b.處于掛起狀態(tài)的進程不能接收處理機調(diào)度.

10在進行進程切換時,所要保存的處理機狀態(tài)信息主要有哪些

a.進程當前暫存信息;

b.下一條指令地址信息;

c.進程狀態(tài)信息;

d.過程和系統(tǒng)調(diào)用參數(shù)及調(diào)用地址信息.

11試說明引起進程創(chuàng)建的主要事件.

a.用戶登陸;

b.作業(yè)調(diào)度;

c.提供服務(wù);

d.應(yīng)用請求.

12試說明引起進程撤消的主要事件.

a.正常結(jié)束;

b.異常結(jié)束;

c.外界干預(yù);

13在創(chuàng)建?個進程時,需完成的主要工作是什么

a.操作系統(tǒng)發(fā)現(xiàn)請求創(chuàng)建新進程事件后,調(diào)用進程創(chuàng)建原語Creat();

b.申請空白PCB;

c.為新進程分配資源;

d.初始化進程控制塊;

e.將新進程插入就緒隊列.

14在撤消?個進程時,需完成的主要工作是什么

a.OS調(diào)用進程終止原語;

b.根據(jù)被終止進程的標志符,從PCB集合中檢索出該進程的PCB,從中讀出該進程的狀

態(tài);

c.若被終止進程正處于執(zhí)行狀態(tài),應(yīng)立即中止該進程的執(zhí)行,并設(shè)置調(diào)度標志為真;

d.若該進程還有子孫進程,還應(yīng)將其所有子孫進程予以終止;e.將該進程所擁有的全

部資源,或者歸還

給其父進程,或者歸還給系統(tǒng);

f.將被終止進程(它的PCB)從所在隊列(或鏈表)中移出,等待其它程序來搜集信息.

15試說明引起進程阻塞或被喚醒的主要事件是什么

a.請求系統(tǒng)服務(wù);

b.啟動某種操作;

c.新數(shù)據(jù)尚未到達;

d.無新工作可做.

16試從調(diào)度性,并發(fā)性,擁有資源及系統(tǒng)開銷幾個方面,對進程和線程進行比較.

a.在引入線程的OS中,把線程作為調(diào)度和分派的基本單位,而把進程作為資源擁有的

基本單位;

b.在引入線程的OS中,不僅進程之間可以并發(fā)執(zhí)行,而且在一個進程中的多個線程之

間,亦可并發(fā)執(zhí)行,

因而使OS具有更好的并發(fā)性;

c.進程始終是擁有資源的一個獨立單位,線程自己不擁有系統(tǒng)資源,但它可以訪問其隸

屬進程的資源;

d.在創(chuàng)建,撤消和切換進程方面,進程的開銷遠遠大于線程的開銷.

17什么是用戶級線程和內(nèi)核級線程并對它們進行比較.

a.內(nèi)核級線程是依賴于內(nèi)核的,它存在于用戶進程和系統(tǒng)進程中,它們的創(chuàng)建,撤消和

切換都由內(nèi)核實

現(xiàn);

--用戶級線程僅存在于用戶級中,它們的創(chuàng)建,撤消和切換不利用系統(tǒng)調(diào)用來實現(xiàn),因而

與內(nèi)核無關(guān),

內(nèi)核并不知道用戶級線程的存在.

b.內(nèi)核級線程的調(diào)度和切換與進程十分相似,調(diào)度方式采用搶占式和非搶占式,調(diào)度算

法采用時間輪轉(zhuǎn)

法和優(yōu)先權(quán)算法等,當由線程調(diào)度選中?個線程后,再將處理器分配給它;而用戶級線程

通常發(fā)生在一個

應(yīng)用程序的諸線程之間,無需終端進入OS內(nèi)核,切換規(guī)則也較簡單,因而,用戶級線程的

切換速度較快.

--用戶級線程調(diào)用系統(tǒng)調(diào)用和調(diào)度另一個進程執(zhí)行時,內(nèi)核把它們看作是整個進程的

行為,內(nèi)核級線程

調(diào)用是以線程為單位,內(nèi)核把系統(tǒng)調(diào)用看作是該線程的行為.

--對于用戶級線程調(diào)用,進程的執(zhí)行速度隨著所含線程數(shù)目的增加而降低,對于內(nèi)核級

線程則相反.

18在SolarisOS中,設(shè)置了哪幾種線程輕型線程的作用是什么

a.用戶級線程,內(nèi)核級線程和輕型線程;

b.作用:由LWP實現(xiàn)了在內(nèi)核與用戶級線程之間的隔離,從而使用戶級線程與內(nèi)核無

關(guān).

19在SolarisOS中,用戶級線程是通過什么方式來訪問內(nèi)核的

通過LWP來訪問內(nèi)核.LWP可為內(nèi)核所識別,但不能識別用戶級線程,通過建立用戶級

線程與LWP之間的

連接,可以實現(xiàn)用戶級線程與內(nèi)核的通信.

1.什么是臨界資源和臨界區(qū)

a.一次僅允許一個進程使用的資源成為臨界資源.

b.在每個進程中,訪問臨界資源的那段程序稱為臨界區(qū).

2.為什么進程在進入臨界區(qū)之前,應(yīng)先執(zhí)行“進入?yún)^(qū)”代碼,在退出臨界區(qū)后又執(zhí)行“退

出區(qū)"代碼

為了實現(xiàn)多個進程對臨界資源的互斥訪問,必須在臨界區(qū)前面增加?段用于檢查欲訪問

的臨界資源是否正

被訪問的代碼,如果未被訪問,該進程便可進入臨界區(qū)對資源進行訪問,并設(shè)置正被訪問

標志,如果正被

訪問,則本進程不能進入臨界區(qū),實現(xiàn)這一功能的代碼成為“進入?yún)^(qū)"代碼;在退出臨界區(qū)

后,必須執(zhí)行"

退出區(qū)"代碼,用于恢復(fù)未被訪問標志.

計算機操作系統(tǒng)(湯子瀛)習題答案

3.同步機構(gòu)應(yīng)遵循哪些基本準則為什么

a.空閑讓進.

b.忙則等待.

c.有限等待.

d.讓權(quán)等待.

4.試從物理概念上來說明記錄型信號量和wait和signal操作(有待討論).

5.你認為整型信號量機制和記錄型信號量機制,是否完全遵循了同步機構(gòu)的四條準則

a.在整型信號量機制中,未遵循"讓權(quán)等待”的準則.

b.記錄型信號量機制完全遵循了同步機構(gòu)的“空閑讓進,忙則等待,有限等待,讓權(quán)等待"

四條準則.

6.在生產(chǎn)者-消費者問題中,如果缺少了signal(full)或signal(empty),對執(zhí)行結(jié)果會

有何影響

生產(chǎn)者.消費者問題可描述如下:

varmutex,empty,full:semaphores1,n,0;

buffer:array[0,...,n-1]ofitem;

in,out:integers0,0;

begin

parbegin

producer:begin

repeat

produceaniteminnextp;

wait(empty);

wait(mutex);

buffer(in):=nextp;

in:=(in+1)modn;

signal(mutex);

I****************I

signal(full);

I****************/

untilfalse;

end

consumer:begin

repeat

wait(full);

wait(mutex);

nextc:=buffer(out);

out:=(out+1)modn;

signal(mutex);

I****************I

signal(empty);

consumetheiteminnextc;

untilfalse;

end

parend

end

可見,生產(chǎn)者可以不斷地往緩沖池送消息,如果緩沖池滿,就會覆蓋原有數(shù)據(jù),造成數(shù)據(jù)混

亂.而消費者

始終因wait(full)操作將消費進程直接送入進程鏈表進行等待,無法訪問緩沖池,造成無

限等待.

7.在生產(chǎn)者?消費者問題中,如果將兩個wait操作即wait(full)和wait(mutex)互換

位置;或者是將

signal(mutex)與signal(full)互換位置結(jié)果會如何

varmutex,empty.full:semaphores1,n,0;

buffer:array[0,...,n-1]ofitem;

in,out:integers0,0;

begin

parbegin

producer:begin

repeat

produceaniteminnextp;

wait(empty);

wait(mutex);

buffer(in):=nextp;

in:=(in+1)modn;

/*******************/

signal(full);

signal(mutex);

I*******************I

untilfalse;

end

consumer:begin

repeat

I******************/

wait(mutex);

wait(full);

I******************I

nextc:=buffer(out);

out:=(out+1)modn;

signal(mutex);

signal(empty);

consumetheiteminnextc;

untilfalse;

end

parend

end

a.wait(full)和wait(mutex)互換位置后,因為mutex在這兒是全局變量,執(zhí)行完

wait(mutex),則mutex

賦值為0,倘若full也為0,則該生產(chǎn)者進程就會轉(zhuǎn)入進程鏈表進行等待,而生產(chǎn)者進程會

因全局變量mutex

為0而進行等待,使full始終為0,這樣就形成了死鎖.

b.而signal(mutex)與signal(full)互換位置后,從邏輯上來說應(yīng)該是一樣的.

8.我們?yōu)槟撑R界區(qū)設(shè)置一把鎖W,當W=1時,表示關(guān)鎖;W=0時,表示鎖已打開.試寫

出開鎖原語和關(guān)鎖

原語,并利用它們?nèi)崿F(xiàn)互斥.

開鎖原語:

unlock(W):

W=0;

關(guān)鎖原語:

lock(W);

if(W==1)dono_op;

W=1;

利用開關(guān)鎖原語實現(xiàn)互斥:

varW:semaphores0;

begin

parbegin

process:

begin

repeat

lock(W);

criticalsection

unlock(W);

remaindersection

untilfalse;

end

parend

9.試修改下面生產(chǎn)者-消費者問題解法中的錯誤:

producer:

begin

repeat

produceraniteminnextp;

wait(mutex);

wait(full);/*應(yīng)為wait(empty),而且還應(yīng)該在wait(mutex)的前面*/

buffer(in):=nextp;

/*緩沖池數(shù)組游標應(yīng)前移:in:=(in+1)modn;*/

signal(mutex);

/*signal(full);*/

untilfalse;

end

consumer:

begin

repeat

wait(mutex);

wait(empty);/*應(yīng)為wait(full),而且還應(yīng)該在wait(mutex)的前面*/

nextc:=buffer(out);

out:=out+1;/*考慮循環(huán),應(yīng)改為:out:=(out+1)modn;*/

signal(mutex);

/*signal(empty);*/

consumeriteminnextc;

untilfalse;

end

10試利用記錄型信號量寫出?個不會出現(xiàn)死鎖的哲學家進餐問題的算法.

設(shè)初始值為1的信號量c[l]表示I號筷子被拿(1=1,2,3,4,…,2n),其中n為自然數(shù).

send(l):

Begin

ifImod2==1then

(

P(c[l]);

P(c[l-1mod5]);

Eat;

V(c[l-1mod5]);

V(c[l]);

)

else

(

P(c[l-1mod5]);

P(c[l]);

Eat;

V(c[l]);

V(c[l-1mod5]);

)

End

11在測量控制系統(tǒng)中的數(shù)據(jù)采集任務(wù),把所采集的數(shù)據(jù)送一單緩沖區(qū);計算任務(wù)從該

單緩沖中取出數(shù)據(jù)

進行計算.試寫出利用信號量機制實現(xiàn)兩者共享單緩沖的同步算法.

intmutex=1;

intempty=n;

intfull=O;

intin=0;

intout=0;

main()

(

cobegin

send();

coend

)

send()

(

while(1)

{?.

collectdatainnextp;

wait(empty);

wait(mutex);

buffer(in)=nextp;

in=(in+1)modn;

signal(mutex);

signal(full);

)

}//send

obtain()

(

while(1)

(

wait(full);

wait(mutex);

nextc:=buffer(out);

out:=(out+1)modn;

signal(mutex);

signal(empty);

calculatethedatainnextc;

}//while

}//obtain

12畫圖說明管程由哪幾部分組成為什么要引入條件變量

管程由三部分組成:局部于管程的共享變量說明;對該數(shù)據(jù)結(jié)構(gòu)進行操作的一組過程;對

局部于管程的數(shù)

據(jù)設(shè)置初始值的語句.(圖見P80)

因為調(diào)用wait原語后,使進程等待的原因有多種,為了區(qū)別它們,引入了條件變量.

13如何利用管程來解決生產(chǎn)者?消費者問題(見P82)

14什么是AND信號量試利用AND信號量寫出生產(chǎn)者?消費者問題的解法.

為解決并行所帶來的死鎖問題,在wait操作中引入AND條件,其基本思想是將進程在整

個運行過程中所

需要的所有臨界資源,一次性地全部分配給進程,用完后一次性釋放.解決生產(chǎn)者-消費者

問題可描述如

下:

varmutex,empty,full:semaphores1,n,0;

buffer:array[0,...,n-1]ofitem;

in,out:integer:=0,0;

begin

parbegin

producer:begin

repeat

produceaniteminnextp;

wait(empty);

wait(s1,s2,s3,...,sn);//s1,s2,…,sn為執(zhí)行生產(chǎn)者進程除empty外其余的條件

wait(mutex);

buffer(in):=nextp;

in:=(in+1)modn;

signal(mutex);

signal(full);

signal(s1,s2,s3,...,sn);

untilfalse;

end

consumer:begin

repeat

wait(full);

wait(k1,k2,k3,...,kn);//k1,k2,...,kn為執(zhí)行消費者進程除full外其余的條件

wait(mutex);

nextc:=buffer(out);

out:=(out+1)modn;

signal(mutex);

signal(empty);

signal(k1,k2,k3,...,kn);

consumetheiteminnextc;

untilfalse;

end

parend

end

15在單處理機環(huán)境下,進程間有哪幾種通信方式

a.共享存儲器系統(tǒng)通信方式;

b.消息傳遞系統(tǒng)通信方式;

c.管道通信方式.

16試比較進程間的低級通信工具與高級通信工具.

用戶用低級通信工具實現(xiàn)進程通信很不方便,因為其效率低,通信對用戶不透明,所有的

操作都必須由程

序員來實現(xiàn).而高級通信工具則可彌補這些缺陷,用戶可直接利用操作系統(tǒng)所提供的?

組通信命令,高效

地傳送大量的數(shù)據(jù).

17消息隊列通信機制應(yīng)有哪兒方面功能略

18試比較消息隊列與管道通信機制.

a.所謂管道,是指用于連接一個讀進程和一個寫進程,以實現(xiàn)它們之間通信的共享文件,

又稱pipe文件.

管道通信是屬于共享存儲器系統(tǒng)的.

b.消息隊列通信機制屬于消息傳遞系統(tǒng)通信機制,存在通信鏈路,有消息的格式,有若

干緩沖隊列,采

用獨特的發(fā)送原語和接收原語.(詳見P89-90)

1.高級調(diào)度與低級調(diào)度的主要任務(wù)是什么為什么要引入中級調(diào)度

a.作業(yè)調(diào)度又稱宏觀調(diào)度或高級調(diào)度,其主要任務(wù)是按一定的原則對外存上處于后備

狀態(tài)的作業(yè)進行選

擇,給選中的作業(yè)分配內(nèi)存,輸入輸出設(shè)備等必要的資源,并建立相應(yīng)的進程,以使該作業(yè)

的進程獲得競

爭處理機的權(quán)利.

b.進程調(diào)度又稱微觀調(diào)度或低級調(diào)度,其主要任務(wù)是按照某種策略和方法選取一個處

于就緒狀態(tài)的進程,

將處理機分配給它.

c.為了提高內(nèi)存利用率和系統(tǒng)吞吐量,引入了中級調(diào)度.

2.在作業(yè)調(diào)度中需做出哪兩個決定

a.接納多少個作業(yè);

b.接納哪些作業(yè).

3.在剝奪調(diào)度方式中,有哪些剝奪原則

a.時間片原則;

b.優(yōu)先權(quán)原則;

c.短作業(yè)(進程)優(yōu)先原則.

4.在OS中引起進程調(diào)度的主要因素有哪些(有待討論)

5.選擇調(diào)度方式和調(diào)度算法時,應(yīng)遵循的準則是什么

a.面向用戶的準則有周轉(zhuǎn)時間短,響應(yīng)時間快,截止時間的保證,以及優(yōu)先權(quán)準則.

b.面向系統(tǒng)的準則有系統(tǒng)吞吐量高,處理機利用率好,各類資源的平衡利用.

6.在批處理系統(tǒng),分時系統(tǒng)和實時系統(tǒng)中,各采用哪幾種進程(作業(yè))調(diào)度算法(有待討

論)

7.為什么說多級反饋隊列能較好地滿足各種用戶的需要

a.對于終端型作業(yè)用戶,由于終端型作業(yè)用戶所提交的作業(yè),大都屬于交互型作業(yè),系

統(tǒng)只要能使這些

作業(yè)(進程)在第一隊列所規(guī)定的時間片內(nèi)完成,便可使終端型作業(yè)用戶都感到滿意.

b.對于短批處理作業(yè)用戶,很短的批處理型作業(yè)如果僅在第一隊列中執(zhí)行一個時間片

即可完成,便可獲

得與終端型作業(yè)?樣的相應(yīng)時間.對于稍長的作業(yè),通常也只需在第二隊列和第三隊列

中各執(zhí)行個時間片

即可完成,其周轉(zhuǎn)時間仍然很短.

c.對于長批處理作業(yè)用戶,用戶也不必擔心其作業(yè)長期得不到處理.

8.在按時間片輪轉(zhuǎn)調(diào)度算法中,在確定時間片的大小時,應(yīng)考慮哪些因素

a.系統(tǒng)對相應(yīng)時間的要求;

b.就緒隊列中進程的數(shù)目;

c.系統(tǒng)的處理能力.

9.為實現(xiàn)實時調(diào)度,對實時系統(tǒng)提出了哪些要求

a.要提供必要的調(diào)度信息;

b.在調(diào)度方式上要具體情況具體分析;

c.要具有快速響應(yīng)外部中斷的能力;

d.快速任務(wù)分派.

10目前常用的調(diào)度方式和算法,能否應(yīng)用到實時系統(tǒng)中

a.對于時間片輪轉(zhuǎn)調(diào)度算法,是一種常用于分時系統(tǒng)的調(diào)度算法;

b.對于非搶占式優(yōu)先權(quán)調(diào)度算法,可用于要求不太嚴格的實時控制系統(tǒng)中;

c.對于基于時鐘中斷搶占的優(yōu)先權(quán)調(diào)度算法,有很好的響應(yīng)效果,可用于大多數(shù)的實時

系統(tǒng)中;

d.對于立即搶占(ImmediatePreemption)的優(yōu)先權(quán)調(diào)度,要求操作系統(tǒng)具有快速響

應(yīng)外部時間的能力.

11在多處理機系統(tǒng)中,比較有代表性的線程調(diào)度方式有哪幾種

a.自調(diào)度方式;

b.成組調(diào)度;

c.專用處理機分配調(diào)度方式.

12試比較自調(diào)度和成組調(diào)度

a.自調(diào)度方式是系統(tǒng)中有一個公共的線程或進程的就緒隊列,所有的處理機在空閑時,

都可自己從該隊

列中取出一個進程或線程運行;

b.成組調(diào)度是由系統(tǒng)將一組相關(guān)的進程或線程,同時分配到一組處理機上運行,進程或

線程與處理機一

一對應(yīng);

c.在一般情況下,成組調(diào)度的性能優(yōu)于自調(diào)度,因為自調(diào)度存在瓶頸,低效,線程切換頻

繁等問題,而

成組調(diào)度可減少線程的切換和調(diào)度的開銷,因而目前得到了廣泛的認可.

13在OS/2中采用哪種調(diào)度方式和調(diào)度算法

在OS/2中采用的是搶占式調(diào)度方式,多優(yōu)先級的搶占式調(diào)度算法.

14何謂死鎖產(chǎn)生死鎖的原因和必要條件是什么

a.死鎖是指多個進程因競爭資源而造成的一種僵局,若無外力作用,這些進程都將永遠

不能再向前推進;

b.產(chǎn)生死鎖的原因有二,一是競爭資源,二是進程推進順序非法;

c.必要條件是:互斥條件,請求和保持條件,不剝奪條件和環(huán)路等待條件.

15在解決死鎖問題的幾個方法中,哪種方法最容易實現(xiàn)哪種方法使資源的利用率最

a.解決死鎖可歸納為四種方法:預(yù)防死鎖,避免死鎖,檢測死鎖和解除死鎖;

b.其中,預(yù)防死鎖是最容易實現(xiàn)的;c.避免死鎖使資源的利用率最高.

16請詳細說明可通過哪些途徑預(yù)防死鎖

a.損棄"請求和保持”條件,就是如果系統(tǒng)有足夠的資源,便一次性地把進程所需的所有

資源分配給它;

b.推棄"不剝奪"條件,就是已經(jīng)保持了資源的進程,當它提出新的資源請求而不能立即

得到滿足時,必

須釋放它己經(jīng)保持的所有資源,待以后需要時再重新申清;

c.推棄“環(huán)路等待"條件,就是將所有資源按類型排序標號,所有進程對資源的請求必須

嚴格按序號遞增的次序提出.

17在銀行家算法的例子中,如果P0發(fā)出的請求向量由Request。9,2,0)改為

RequestO(O,1,0),問系統(tǒng)可

否將資源分配給它

可以.

首先,Request0(0,1,0)<=Need。(7,4,3),RequestO(O,1,0)<=Available(2,3,0);

分配后可修改得一資源

數(shù)據(jù)表(表略),進行安全性檢查,可以找到一個安全序列{P1,P4,P3,P2,P0},或

{P1,P4,P3,P0,P2},因此,

系統(tǒng)是安全的,可以立即將資源分配給P0.

1.可采用哪幾種方式將程序裝入內(nèi)存它們分別適用于何種場合

a.首先由編譯程序?qū)⒂脩粼创a編譯成若干目標模塊,再由鏈接程序?qū)⒕幾g后形成的

目標模塊和所需的-

庫函數(shù)鏈接在一起,組成一個裝入模塊,再由裝入程序?qū)⒀b入模塊裝入內(nèi)存;

b.裝入模塊的方式有:絕對裝入方式,可重定位方式和動態(tài)運行時裝入方式;

c.絕對裝入方式適用于單道程序環(huán)境下;

d.可重定位方式適用于多道程序環(huán)境下;

e.動態(tài)運行時裝入方式也適用于多道程序環(huán)境下.

2.何謂靜態(tài)鏈接及裝入時動態(tài)鏈接和運行時的動態(tài)鏈接

a.靜態(tài)鏈接是指事先進行鏈接形成一個完整的裝入模塊,以后不再拆開的鏈接方-一式;

b.裝入時動態(tài)鏈接是指目標模塊在裝入內(nèi)存忖,邊裝入邊鏈接的鏈接方式;

c.運行時的動態(tài)鏈接是將某些目標模塊的鏈接推遲到執(zhí)行時才進行.

3.在進行程序鏈接時,應(yīng)完成哪些工作

a.對相對地址進行修改;

b.變換外部調(diào)用符號.

4.在動態(tài)分區(qū)分配方式中,可利用哪些分區(qū)分配算法

a.首次適應(yīng)算法;

b.循環(huán)首次適應(yīng)算法;

c.最佳適應(yīng)算法.

5.在動態(tài)分區(qū)分配方式中,應(yīng)如何將各空閑分區(qū)鏈接成空閑分區(qū)鏈

應(yīng)在每個分區(qū)的起始地址部分,設(shè)置一些用于控制分區(qū)分配的信息,以及用于鏈接各分

區(qū)的前向指針;在

分區(qū)尾部則設(shè)置一后向指針,通過前,后向指針將所有的分區(qū)鏈接成一個雙向鏈.

6.為什么要引入動態(tài)重定位如何實現(xiàn)

a.為了在程序執(zhí)行過程中,每當訪問指令或數(shù)據(jù)時,將要訪問的程序或數(shù)據(jù)的邏輯地址

轉(zhuǎn)換成物理地址,

引入了動態(tài)重定位.

b.可在系統(tǒng)中增加個重定位寄存器,用它來裝入(存放)程序在內(nèi)存中的起始地址,程

序在執(zhí)行時,真-

正訪問的內(nèi)存地址是相對地址與重定位寄存器中的地址相加而形成的,從而實現(xiàn)動態(tài)重:

定位.

7.試用類Pascal語言來描述首次適應(yīng)算法進行內(nèi)存分配的過程.

(略)

8.在采用首次適應(yīng)算法回收內(nèi)存時,可能出現(xiàn)哪幾種情況應(yīng)怎樣處理這些情況

a.回收區(qū)與插入點的前一個分區(qū)相鄰接,此時可將回收區(qū)與插入點的前一分區(qū)合并,不

再為回收分區(qū)分

配新表項,而只修改前鄰接分區(qū)的大??;

b.回收分區(qū)與插入點的后一分區(qū)相鄰接,此時合并兩區(qū),然后用回收區(qū)的首址作為新空

閑區(qū)的首址,大-

小為兩者之和;

c.回收區(qū)同時與插入點的前后兩個分區(qū)鄰接,此時將三個分區(qū)合并,使用前鄰接分區(qū)的

首址,大小為三

區(qū)之和,取消后鄰接分區(qū)的表項;

d.I口I收區(qū)沒有鄰接空閑分區(qū),則應(yīng)為回收區(qū)單獨建立一個新表項,填寫回收區(qū)的首址和

大小,并根據(jù)其

首址,插入到空閑鏈中的適當位置.

9.在系統(tǒng)中引入對換后帶有哪些好處

能將內(nèi)存中暫時不運行的進程或暫時不用的程序和數(shù)據(jù),換到外存上,以騰出足夠的內(nèi)

存空間,把已具備

運行條件的進程或進程所需的程序和數(shù)據(jù)換入內(nèi)存,從而大大地提高了內(nèi)存的利用率.

10為實現(xiàn)對換,系統(tǒng)應(yīng)具備哪兒方面功能

a.對對換空間的管理;

b.進程的換出;

c.進程的換入.

11在以進程為單位進行對換時,每次是否都將整個進程換出為什么

a.以進程為單位進行對換時,每次都將整個進程換出;

b.目的為了解決內(nèi)存緊張的問題,提高內(nèi)存的利用率.

12為實現(xiàn)分頁存儲管理,需要哪些硬件支持你認為以Intel8086,MC68000,

Intel80286為芯片的微機,是否適合于實現(xiàn)分頁管理(有待討論)

13請較詳細地說明,引入分頁存儲管理(估計印錯了,是分段存儲管理)是為了滿足用戶

哪幾方面的需要

a.方便了編程;

b.實現(xiàn)了分段共享;

c.實現(xiàn)了分段保護;

d.實現(xiàn)了動態(tài)鏈接;

e.實現(xiàn)了動態(tài)增長.

14在具有快表的段頁式存儲管理方式中,如何實現(xiàn)地址變換

首先,必須配置?段表寄存器,在其中存放段表始址和段長TL.進行地址變換時,先利用

段號S,與段長

TL進行比較,若S=TL,表示段號太大,訪問越界,產(chǎn)生越界中斷信號)于是利用

段表始址和段號來求出該段對應(yīng)的段表項在段表中的位置,從中求出該段的頁表始址,

并利用邏輯地址中

的段內(nèi)頁號P來獲得對應(yīng)頁的頁表項位置,從中讀出該頁所在的物理塊號b,再用塊號b

和頁內(nèi)地址構(gòu)成

物理地址.

15為什么說分段系統(tǒng)較之分頁系統(tǒng)更易于實現(xiàn)信息共享和保護

a.對于分頁系統(tǒng),每個頁面是分散存儲的,為了實現(xiàn)信息共享和保護,則頁面之間需要

一一對應(yīng)起來,

為此需要建立大量的頁表項;

b.而對于分段系統(tǒng),每個段都從。開始編址,并采用一段連續(xù)的地址空間,這樣在實現(xiàn)共

享和保護時,

只需為所要共享和保護的程序設(shè)置一個段表項,將其中的基址與內(nèi)存地址一一對應(yīng)起來

即可.

1.在請求分頁系統(tǒng)中,其頁表項中包含那些數(shù)據(jù)項它們的作用是什么

a.在請求分頁系統(tǒng)中,其頁表項中包含的數(shù)據(jù)項有頁號,物理塊號,狀態(tài)位R訪問字段

A,修改位M和

---外存地址;

b.其中狀態(tài)位P指示該頁是否調(diào)入內(nèi)存,供程序訪問時參考;

c.訪問字段A用于記錄本頁在一段時間內(nèi)被訪問的次數(shù),或最近已有多長時間未被訪

問,提供給置換算

法選擇換出頁血時參考;

d.修改位M表示該頁在調(diào)入內(nèi)存后是否被修改過;

e.外存地址用于指出該頁在外存上的地址,通常是物理塊號,供調(diào)入該頁時使用.

2.一個計算機系統(tǒng)的虛擬存儲器,其最大容量和實際容量分別由什么決定

a.最大容量由內(nèi)存和外存之和決定;

b.實際容量由內(nèi)存決定.

3.虛擬存貯器有那些特征其中最本質(zhì)的特征是什么

a.虛擬存儲器具有離散性,多次性,對換性和虛擬性的特征;

b.其中最本質(zhì)的特征是離散性,在此基礎(chǔ)上又形成了多次性和對換性,所表現(xiàn)出來的最

重要的特征是虛擬性.

4.實現(xiàn)虛擬存儲器要那些硬件支持

a.對于為實現(xiàn)請求分頁存儲管理方式的系統(tǒng),除了需要一臺具有一定容量的內(nèi)存及外

存的計算機外,還

需要有頁表機制,缺頁中斷機構(gòu)以及地址變換機構(gòu);

b.對于為實現(xiàn)請求分段存儲管理方式的系統(tǒng),除了需要一臺具有一定容量的內(nèi)存及外

存的計算機外,還

需要有段表機制,缺段中斷機構(gòu)以及地址變換機構(gòu);

5.在實現(xiàn)虛擬存儲器時的幾個關(guān)鍵技術(shù)是什么

(有待討論)

6.在請求分頁系統(tǒng)中,頁表應(yīng)包括那些數(shù)據(jù)項每項的作用是什么

(同第一題)

7.在請求分頁系統(tǒng)中,應(yīng)從何處將所需頁面調(diào)入內(nèi)存

a.在進行地址變換時,首先去檢索快表,試圖從中找出所要訪問的頁,若找到,便修改頁

表項中的訪問

位,對于寫指令,還須將修改位置1,然后利用頁表項中給出的物理塊號和頁內(nèi)地址,形成

物理地址;

b.如果在快表中未找到該頁的頁表項,則應(yīng)再到內(nèi)存中去查找頁表,再從找到的頁表項

中的狀態(tài)位來了

解該頁是否已調(diào)入內(nèi)存,如果該頁已調(diào)入內(nèi)存,應(yīng)將此頁的頁表項寫入快表,當快表已滿

時,應(yīng)先調(diào)出按

某種算法所確定的頁的頁表項,然后再寫入該頁的頁表項;

c.如果該頁尚未調(diào)入內(nèi)存,這時便應(yīng)產(chǎn)生缺頁中斷,請求OS從外存中把該頁調(diào)入內(nèi)存;

d.外存分為文件區(qū)和對換區(qū),若系統(tǒng)有足夠的對換區(qū)空間,可在進程運行前,將與該進

程有關(guān)的文件拷

貝到對換區(qū),需要時從對換區(qū)調(diào)入;

e.若系統(tǒng)缺少足夠的對換區(qū)空間,則凡是不會被修改的文件,可直接從文件區(qū)調(diào)入,需換

出時可不必寫

入外存,但對于可能被修改的部分,在將它們換出時,便須調(diào)到對換區(qū),以后需要時再從對

換區(qū)調(diào)入.

8.在請求分頁系統(tǒng)中,常采用哪幾種頁面置換算法

a.最佳置換算法;

b.先進先出算法;

c.最近最久未使用LRU置換算法;

d.Clock置換算法;

e.止匕外,還有最少使用置換算法和頁面緩沖算法.

9,某虛擬存儲器的用戶空間共有32個頁面,每頁1KB,主存16KB.假定某時刻為用戶

的第0,1,2,3

頁分別分配的物理塊號為5,10,4,7,試將虛擬地址0A5c和093c變換為物理地址.

a.將0A5c變換為2進制為:0000,1010,0101,1100,由于頁面大小為1KB約為2

的10次方,所以0A5c的

頁號為2,對應(yīng)的物理塊號為:4,所以虛擬地址0A5c的物理地址為125C;

b.將093c變換為2進制為:0000,1001,0011,1100,頁號也為2,對應(yīng)的物理塊號

也為4,此時虛擬地址

093c的物理地址為113c.

10在請求分頁系統(tǒng)中,通常采用那種頁面分配方式為什么

a.在請求分頁系統(tǒng)中,有固定和可變分配兩種分配方式;

b.采用固定分配方式是基于進程的類型(交互型)或根據(jù)程序員,系統(tǒng)管理員的建議,為

每個進程分配一

固定頁數(shù)的內(nèi)存空間,在整個運行期間不再改變;

c.采用可變分配方式有全局置換和局部置換兩種,前者易于實現(xiàn),后者效率高.

1.UNIX系統(tǒng)有哪些基本特征

a.開放性;

b.多用戶,多任務(wù)環(huán)境;

c.功能強大,實現(xiàn)高效;

d.提供了豐富的網(wǎng)絡(luò)功能.

2.UNIX系統(tǒng)核心分成哪兩大部分各包含哪些功能

a.UNIX系統(tǒng)核心分為進程控制子系統(tǒng)部分和文件子系統(tǒng)部分;

b.進程控制子系統(tǒng)包含進程控制,進程通信,存貯器管理和進程調(diào)度功能;文件子系統(tǒng)

包含文件管理,

高速緩沖機制和設(shè)備驅(qū)動程序的功能.

3.UNIX系統(tǒng)中的PCB含哪幾部分并用圖來說明它們之間的關(guān)系.

a.UNIX系統(tǒng)中的PCB含四部分:進程表項,U區(qū),進程區(qū)表和系統(tǒng)區(qū)表項;

b.圖見P396.

4.進程映象含哪幾部分其中系統(tǒng)級上下文的動態(tài)部分的作用是什么

a.進程映象(ProcessImage)包含三部分:用戶級上下文,寄存器上下文和系統(tǒng)級上下

文;

b.系統(tǒng)級上下文的動態(tài)部分包含核心棧和若干層寄存器上下文,它的作用是當因中斷

或系統(tǒng)調(diào)用而進入

核心態(tài)時,核心把一個寄存器上下文壓入核心棧,退出系統(tǒng)調(diào)用時,核心又將彈出一個寄

存器上下文,在

進行上下文切換時,核心將壓入老進程的上下文層,而彈出新進程的上下文層.

5.在UNIX系統(tǒng)中,用于進程控制的系統(tǒng)調(diào)用有哪些(主要的)它們的主要功能是什么

a.fork,用于創(chuàng)建,一個新進程;

b.exec,改變進程的原有代碼;

c.exit,實現(xiàn)進程的自我終止;

d.wait,將調(diào)用進程掛起,等待子進程終止;

e.getpid,獲取進程標志符;

f.nice,改變進程的優(yōu)先級.

6.為創(chuàng)建?個新進程,需做哪些工作

a.為新進程分配一進程表項和進程標志符;

b.檢查同時運行的進程數(shù)目;

c.拷貝進程表項中的數(shù)據(jù);

d.子進程繼承父進程的所有文件;

e.為子進程創(chuàng)建進程上下文;

f.子進程執(zhí)行.

7.為何要采取進程自我終止方式如何實現(xiàn)exit

a.為了及時回收進程所占用的資源,并減少父進程的干預(yù),UNIX系統(tǒng)利用exit來實現(xiàn)

進程的自我終止;

b.實現(xiàn)exit,核心應(yīng)該做的工作是:

關(guān)閉軟中斷;

回收資源;

寫記帳信息;

置進程為"僵死狀態(tài)

8.UNIX系統(tǒng)采用什么樣的進程調(diào)度算法其優(yōu)先級是如何計算的

a.UNIX系統(tǒng)采用的是多級反饋隊列輪轉(zhuǎn)調(diào)度算法;

b.每隔1秒,核心按如下公式重新計算用戶優(yōu)先數(shù):優(yōu)先數(shù)=(最近使用CPU的時間

/2)+基本用戶優(yōu)先數(shù).

9.試說明信號與中斷兩種機制間的異同處

a.相似處:

信號和中斷都采用了相同的異步通信方式;

當檢測出有信號或中斷請求時,都是暫停正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應(yīng)的處理程序;

兩者都是在處理完畢后返回到原來的斷點;

對信號或中斷都可進行屏蔽;

b.差異處:

中斷有優(yōu)先級,而信號沒有優(yōu)先級,即所有信號都是平等的;

信號處理程序是在用戶態(tài)卜運行的,而中斷處理程序則是在核心態(tài)下運行的;

中斷響應(yīng)是及時的,而信號響應(yīng)通常都有較大的時間延遲.

10扼要說明信號機制中信號的發(fā)送和對信號的處理功能

a.信號的發(fā)送是指由發(fā)送進程把信號送到指定進程的信號域的某?位上;

b.對于對信號的處理功能:

首先,

--利用系統(tǒng)調(diào)用signal(sig,func)預(yù)置對信號的處理方式,func=1時,該類信號被屏

蔽;

--func=0時,進程收到信號后終止自己;

—func為非0,非1類整數(shù)時,func的值即作為信號處理程序的指針.

然后,

--如果進程收到的軟中斷是一個已決定要忽略的信號(func=1),進程不作任何處理返

回;

--進程收到軟中斷后便退出(func=O);

--執(zhí)行用于設(shè)置的軟中斷處理程序.

11什么是管道無名管道和有名管道的主要差別是什么

a.管道是指能夠連接一個寫進程和一個讀進程的,并允許它們以生產(chǎn)者-消費者方式進

行通信的一個共享

文件,又稱為pipe文件;

b.無名管道是一個臨時文件,是利用系統(tǒng)調(diào)用pipe()建立起來的無名文件,沒有路徑名,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論