




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
本文格式為Word版,下載可任意編輯——操作系統(tǒng)教材答案陳向群楊芙清
《操作系統(tǒng)教程》課后習(xí)題答案
第一章操作系統(tǒng)概論
1.什么是計(jì)算機(jī)系統(tǒng)?計(jì)算機(jī)系統(tǒng)是怎么構(gòu)成的?了解PC的組成狀況,說明:1)硬件組織的基本結(jié)構(gòu),畫出硬件配置圖;2)主要系統(tǒng)軟件和應(yīng)用軟件(若有的話)他們的作用。
答:計(jì)算機(jī)系統(tǒng)就是依照人的要求接收和存儲信息,自動進(jìn)行數(shù)據(jù)處理和計(jì)算,并輸出結(jié)果信息的系統(tǒng)。
計(jì)算機(jī)系統(tǒng)由硬件子系統(tǒng)和軟件子系統(tǒng)組成。計(jì)算機(jī)系統(tǒng)的構(gòu)成包括:如圖1.2計(jì)算機(jī)硬件系統(tǒng)的構(gòu)成:如圖1.4
2.從功能以及程序涉設(shè)計(jì)的角度說明計(jì)算機(jī)系統(tǒng)中軟件系統(tǒng)是如何構(gòu)成的?答:分為系統(tǒng)軟件,支撐軟件和應(yīng)用軟件三層。
3.什么是操作系統(tǒng)?請舉例說明操作系統(tǒng)在計(jì)算機(jī)系統(tǒng)中的重要地位。答:操作系統(tǒng)是計(jì)算機(jī)系統(tǒng)中的一個系統(tǒng)軟件,是一些程序模塊的集合。
它們能以盡量有效、合理的方式組織和管理計(jì)算機(jī)的軟硬件資源,合理的組織計(jì)算機(jī)的工作流程,控制程序的執(zhí)行并向用戶提供各種服務(wù)功能,使得用戶能夠靈活、便利、有效的使用計(jì)算機(jī),使整個計(jì)算機(jī)系統(tǒng)能安全高效地運(yùn)行4.請舉一個實(shí)際的例子來說明操作系統(tǒng)的功能。答:你能用用操作系統(tǒng)管理好多資源
5.為什么說“操作系統(tǒng)是控制硬件的軟件〞的說法不確鑿?答:操作系統(tǒng)不僅能夠控制硬件,也可以控制各種軟件資源。6.操作系統(tǒng)的基本特征是什么?說明他們之間的關(guān)系。答:1.并發(fā)性2.共享性3.隨機(jī)性
7.試從獨(dú)立性,并發(fā)性和交互性和實(shí)時性四個方面來比較批處理系統(tǒng),分時系統(tǒng)以及實(shí)時系統(tǒng)。答:
分時系統(tǒng):并發(fā)性是指同時有多個用戶共同使用一個計(jì)算機(jī),宏觀上看是多個人同時使用一個CPU,微觀上是多個人在不同時刻輪番使用CPU.
獨(dú)占性,是指用戶感覺不到計(jì)算機(jī)為他們服務(wù),就好像整個系統(tǒng)為他所獨(dú)占。交互性:是指用戶根據(jù)系統(tǒng)響應(yīng)結(jié)果進(jìn)一步提出新要求,用戶直接干預(yù)每一步。實(shí)時性:是指系統(tǒng)對用戶提出的請求及時響應(yīng)。
8.引入多道程序設(shè)計(jì)技術(shù)的起因和目的是什么?多道程序系統(tǒng)的特征是什么?
答:多道程序設(shè)計(jì)的基本思想在內(nèi)存中保持多個作業(yè),主機(jī)可以交替的方式同時處理多個作業(yè),一般來說任何一道作業(yè)的運(yùn)行總是要交替的使用處理器和外設(shè)子案
9.多道程序設(shè)計(jì)的度是指在任一給定時刻,單個CPU所能支持的進(jìn)程數(shù)目最大值。探討要確定一個特定系統(tǒng)的多道程序設(shè)計(jì)的度必需考慮的因素。可以假定批處理系統(tǒng)中進(jìn)程數(shù)量與作業(yè)數(shù)量一致。答:
10.描述批處理系統(tǒng)響應(yīng)一個執(zhí)行請求需要的時間(稱為響應(yīng)時間),描述分時系統(tǒng)下的響應(yīng)時間,什么樣的系統(tǒng)可能有較短的響應(yīng)時間?為什么?
答:1)就是將用戶的作業(yè)組成一批作業(yè),之后輸入到計(jì)算機(jī)中,計(jì)算機(jī)依次執(zhí)行每個作業(yè)
,然后輸出,即為響應(yīng)時間。
2)定義這個響應(yīng)時間就是:系統(tǒng)對一個輸入的反應(yīng)時間實(shí)時系統(tǒng)的反應(yīng)時間
11.什么狀況下批處理是比較好的策略?什么狀況下分時是比較好的策略?現(xiàn)代的操作系統(tǒng)往往要把兩者結(jié)合,請舉出這樣的例子,并說明它們是怎樣被結(jié)合起來的,并通過這樣的結(jié)合獲得了什么好處。
答:常見的通用操作系統(tǒng)是分時系統(tǒng)與批處理系統(tǒng)結(jié)合,其原則是:分時優(yōu)先,批處理再后,\前臺\響應(yīng)需要頻繁交互的作業(yè),如終端的要求。“后臺〞處理時間性要求不強(qiáng)的作業(yè)。
12.操作系統(tǒng)的技術(shù)發(fā)展是怎樣的?從這一技術(shù)演化過程可以得到什么啟發(fā)?答:操作系統(tǒng)的發(fā)展是根據(jù)計(jì)算機(jī)硬件發(fā)展,計(jì)算機(jī)應(yīng)用軟件的發(fā)展而發(fā)展的,我們發(fā)展操作系統(tǒng)的目標(biāo)就是:充分利用硬件,提供更好的服務(wù)。
13.請作一個調(diào)查,看看各種計(jì)算機(jī)的應(yīng)用領(lǐng)域都在使用什么樣的操作系統(tǒng),他們分別是什么類型的操作系統(tǒng),調(diào)查的內(nèi)容應(yīng)當(dāng)涵概現(xiàn)代操作系統(tǒng)的主要類別.
14.現(xiàn)有一下應(yīng)用計(jì)算機(jī)的場合,請為其選擇適當(dāng)?shù)牟僮飨到y(tǒng)。1)航天航空,核變研究;2)國家統(tǒng)計(jì)局?jǐn)?shù)據(jù)處理中心;3)學(xué)校學(xué)生上機(jī)學(xué)習(xí)編程4)高爐爐溫控制;5)民航定票系統(tǒng),6)發(fā)送電子郵件(在兩個地區(qū)之間)答:1)航天航空,核變研究:嵌入式操作系統(tǒng)2)分布式操作系統(tǒng)3)個人計(jì)算機(jī)操作系統(tǒng)4)實(shí)時操作系統(tǒng)5)批處理操作系統(tǒng)6)網(wǎng)絡(luò)操作系統(tǒng)。
15.什么是Spooling技術(shù)?他有什么用?你認(rèn)為未來先進(jìn)的個人計(jì)算機(jī)遇把假脫機(jī)作為一個關(guān)鍵特性嗎?
答:假脫機(jī)(SPOOLing.)技術(shù)的全稱是同時得外部設(shè)備聯(lián)機(jī)操作,這種技術(shù)的基本思想是用磁盤設(shè)備作為主機(jī)的直接輸入輸出設(shè)備,,主機(jī)直接從磁盤上選取作業(yè)運(yùn)行,作業(yè)的執(zhí)行結(jié)果
16.外殼程序(shell)是不是操作系統(tǒng)的一部分,為什么?
答:不是,它不屬于操作系統(tǒng)內(nèi)核的一部分,它是一個應(yīng)用程序。
17.假使你有一個可用得類UNIX系統(tǒng),例如Linux,Minix或者BSD等,而且你有足夠的權(quán)限
重起或者使得系統(tǒng)崩潰,請編寫一個shell程序作下面的試驗(yàn),用該shell程序不停的產(chǎn)生新進(jìn)程,觀測發(fā)生的事情,在運(yùn)行你的shell之前,請用sync命令同步硬盤和內(nèi)存中的磁盤緩存,以免在程序運(yùn)行過程中訪問文件系統(tǒng),注意,請不要在任何共享的系統(tǒng)中做這件事情?
答:進(jìn)程數(shù)不斷增多,最終導(dǎo)致系統(tǒng)崩潰了!重要:
18.現(xiàn)代操作系統(tǒng)的設(shè)計(jì)很講求機(jī)制與策略的分開,已經(jīng)使操作系統(tǒng)的結(jié)構(gòu)和實(shí)現(xiàn)能夠在一定范圍內(nèi)適應(yīng)不同的需要。例如Solaris的調(diào)度器實(shí)現(xiàn)了進(jìn)程調(diào)度的基本機(jī)制,同時它允許通過動態(tài)調(diào)整核心參數(shù)實(shí)現(xiàn)不同負(fù)載下的系統(tǒng)性能平衡,這就是一種機(jī)制和策略的分
離,請給出一個例子,說明怎樣根據(jù)調(diào)度將機(jī)制和策略分開。請構(gòu)造一種機(jī)制,允許父進(jìn)程控制子進(jìn)程的調(diào)度策略。
19.有興趣,可以去寫一篇,記得寫完了,發(fā)給我,我把你的文章貼上來!硬件環(huán)境
其次章操作系統(tǒng)的硬件環(huán)境
1.請簡述處理器的組成和工作原理。你認(rèn)為那些部分和操作系統(tǒng)的密切關(guān)系,為什么?答:一般的處理器由運(yùn)算器,控制器,一系列的寄放器以及高速緩存構(gòu)成。運(yùn)算器實(shí)現(xiàn)任何指令中的算術(shù)和規(guī)律運(yùn)算,是計(jì)算機(jī)計(jì)算的核心;控制器負(fù)責(zé)控制程序運(yùn)行的流程,包括取指令,維護(hù)CPU狀態(tài),CPU與內(nèi)存之間的交互等等。寄放器是指令在CPU內(nèi)部做處理
的過程中占存數(shù)據(jù),地址一級指令信息的存儲設(shè)備,在計(jì)算機(jī)的存儲系統(tǒng)中它具有最快的訪問速度。加上高速緩存以及內(nèi)存管理單元(MMU)
2.為了支持操作系統(tǒng),現(xiàn)代處理器一般都提供哪兩種工作狀態(tài),用來隔離操作系統(tǒng)和普通程序?兩種狀態(tài)各有什么特點(diǎn)?答;
多數(shù)系統(tǒng)將處理器工作狀態(tài)劃分為管態(tài)和目態(tài)
管態(tài):操作系統(tǒng)管理程序運(yùn)行的狀態(tài),較高的特權(quán)級別,又稱為特權(quán)態(tài)(特態(tài))、系統(tǒng)態(tài)目態(tài):用戶程序運(yùn)行時的狀態(tài),較低的特權(quán)級別,又稱為普通態(tài)(普態(tài))、用戶態(tài)3.什么是分級的存儲體系結(jié)構(gòu)?它主要解決什么問題?答:
容量、速度和成本
三個目標(biāo)不可能同時達(dá)到最優(yōu),要作權(quán)衡存取速度快,每比特價(jià)格高
容量大,每比特價(jià)格越低,同時存取速度也越慢解決方案:采用層次化的存儲體系結(jié)構(gòu)當(dāng)沿著層次下降時
每比特的價(jià)格將下降,容量將增大
速度將變慢,處理器的訪問頻率也將下降
4.主存儲器尋常有哪兩種類型?它們各自的特點(diǎn)是什么?用在哪里?答:硬盤存儲器,和內(nèi)存存儲器.
硬盤存儲器:容量大,存儲速率慢,斷電后,數(shù)據(jù)信息不丟失內(nèi)存存儲器:容量小,存儲速率快,斷電后,數(shù)據(jù)信息丟失。
5.請簡述程序局部性原理。這個原理在分級的存儲體系結(jié)構(gòu)中是怎么樣起作用的?答:時間局部性,空間局部性。起的作用是:提高存儲系統(tǒng)效能這個目的。6.什么是存儲保護(hù)?有哪些方法實(shí)現(xiàn)存儲保護(hù)?
答:對主存中的信息加以嚴(yán)格的保護(hù),使操作系統(tǒng)及其它程序不被破壞,是其正確運(yùn)行的基本條件之一
多用戶,多任務(wù)操作系統(tǒng):OS給每個運(yùn)行進(jìn)程分派一個存儲區(qū)域操作系統(tǒng)提供了:1.界限地址寄放器,存儲健兩個存儲保護(hù)機(jī)構(gòu)!7。呵呵,大家去翻資料把!??!
8.緩沖技術(shù)在計(jì)算機(jī)系統(tǒng)中起著什么樣的作用?它是如何工作的?
答:緩沖技術(shù)一般有三個用途,一種是用在處理器和主存儲器之間的;另一種是用在處理
器和其他外部設(shè)備之間的;還有一種是用在設(shè)備與設(shè)備之間的通信上。9.什么是中斷?為什么說中斷對現(xiàn)代計(jì)算機(jī)很重要?答:
中斷概念:指CPU對系統(tǒng)中或系統(tǒng)外發(fā)生異步事件的響應(yīng)異步事件是指無一定時序關(guān)系的隨機(jī)發(fā)生事件如外部設(shè)備完成數(shù)據(jù)傳輸,實(shí)時設(shè)備出現(xiàn)異常等中斷機(jī)制是操作系統(tǒng)得以正常工作的最重要的手段它使得OS可以捕獲普通程序發(fā)出的系統(tǒng)功能調(diào)用及時處理設(shè)備的中斷請求
防止用戶程序中破壞性的活動等等
10.中斷的一般處理過程是怎么樣的?多個中斷同時發(fā)生呢?答:1)如書圖2.9(簡單的中斷處理過程)
2)如書圖2.12(一個多優(yōu)先級中斷系統(tǒng)中多個中斷的處理例如)
11.請簡述中斷和操作體統(tǒng)的關(guān)系,操作系統(tǒng)是如何利用中斷機(jī)制的?答:
中斷機(jī)制是操作系統(tǒng)得以正常工作的最重要的手段它使得OS可以捕獲普通程序發(fā)出的系統(tǒng)功能調(diào)用及時處理設(shè)備的中斷請求
防止用戶程序中破壞性的活動等等
12.常用的I/O控制技術(shù)有那些?各有什么特點(diǎn)?
答:常用的I/O控制技術(shù)有以下幾種:程序控制,中斷驅(qū)動以及直接存儲器存?。―MA)以及通道。
程序控制I/O技術(shù):由處理器提供I/O相關(guān)指令來實(shí)現(xiàn)I/O處理單元處理請求并設(shè)置I/O狀態(tài)寄放器相關(guān)位不中斷處理器,也不給處理器警告信息
處理器定期輪詢I/O單元的狀態(tài),直四處理完畢I/O軟件包含直接操縱I/O的指令
控制指令:用于激活外設(shè),并告訴它做什么
狀態(tài)指令:用于測試I/O控制中的各種狀態(tài)和條件數(shù)據(jù)傳送指令:用于在設(shè)備和主存之間來回傳送數(shù)據(jù)
主要缺陷:處理器必需關(guān)注I/O處理單元的狀態(tài),因而花費(fèi)大量時間輪詢信息,嚴(yán)重地降低了系統(tǒng)性能
中斷驅(qū)動I/O技術(shù):為了解決程序控制I/O方法的主要問題應(yīng)當(dāng)讓處理器從輪詢?nèi)蝿?wù)中解放出來使I/O操作和指令執(zhí)行并行起來具體作法:
當(dāng)I/O處理單元準(zhǔn)備好與設(shè)備交互的時候通過物理信號通知處理器,即中斷處理器
DMA技術(shù):中斷的引入大大地提高了處理器處理I/O的效率當(dāng)處理器和I/O間傳送數(shù)據(jù)時,效率仍舊不高解決方法:
直接存儲器訪問(DMA:DirectMemoryAccess)通過系統(tǒng)總線中一獨(dú)立控制單元——DMA控制器自動控制成塊數(shù)據(jù)在內(nèi)存和I/O單元間的傳送
大大提高處理I/O的效能
通道:獨(dú)立于中央處理器,專門負(fù)責(zé)數(shù)據(jù)I/O傳輸?shù)奶幚頇C(jī)它對外設(shè)實(shí)現(xiàn)統(tǒng)一管理
代替CPU對I/O操作進(jìn)行控制使CPU和外設(shè)可以并行工作通道又稱為I/O處理機(jī)引入通道的目的:
為了使CPU從I/O事務(wù)中解脫出來
同時為了提高CPU與設(shè)備、設(shè)備與設(shè)備之間的并行度13.時鐘對操作系統(tǒng)有什么重要作用?時鐘為計(jì)算機(jī)完成以下必不可少的工作:
在多道程序運(yùn)行環(huán)境中,為系統(tǒng)發(fā)現(xiàn)陷入死循環(huán)(編程錯誤)的作業(yè),防止機(jī)時的浪費(fèi)在分時系統(tǒng)中,間隔時鐘實(shí)現(xiàn)作業(yè)間按時間片輪轉(zhuǎn)
在實(shí)時系統(tǒng)中,按要求的間隔輸出正確時間信號給實(shí)時的控制設(shè)備(如A/D、D/A轉(zhuǎn)換設(shè)備)
定時喚醒要求延遲執(zhí)行的各外部事件(如定時為各進(jìn)程計(jì)算優(yōu)先數(shù),銀行中定時運(yùn)行某類結(jié)賬程序等)
記錄用戶使用設(shè)備時間和記錄某外部事件發(fā)生時間記錄用戶和系統(tǒng)所需要的絕對時間,即年、月、日
第三章用戶接口與作業(yè)管理
1.闡述程序,作業(yè),作業(yè)步和進(jìn)程之間的聯(lián)系和區(qū)別。答:(1)作業(yè)
用戶在一次計(jì)算過程中,或者一次事務(wù)處理過程中,要求計(jì)算機(jī)系統(tǒng)所做工作的總稱(2)作業(yè)步
一個作業(yè)可劃分成若干部分,稱為一個作業(yè)步典型的作業(yè)控制過程:“編譯〞、“連接裝配〞、“運(yùn)行〞
2.一個具有分時兼批處理功能的操作系統(tǒng)應(yīng)當(dāng)怎樣調(diào)度和管理作業(yè)?為什么?品
3.在一個批處理系統(tǒng)中,一個作業(yè)從提交到運(yùn)行終止并退出系統(tǒng),尋常要經(jīng)歷哪幾個階段和狀態(tài)?你能說出這些狀態(tài)轉(zhuǎn)變的原因嗎?哪些程序負(fù)責(zé)這些狀態(tài)的轉(zhuǎn)變?4.假設(shè)有三個作業(yè),他們進(jìn)入時間和估計(jì)運(yùn)行的時間如下:作業(yè)號進(jìn)入時刻估計(jì)運(yùn)行時間110:0060分鐘210:1060分鐘310:2515分鐘
在單道批處理方式下,采用先來先服務(wù)算法和最短作業(yè)優(yōu)先算法進(jìn)行作業(yè)調(diào)度。請給出
他們的調(diào)度程序,并分別計(jì)算出作業(yè)平均周轉(zhuǎn)時間和帶權(quán)平均周轉(zhuǎn)時間,請對計(jì)算結(jié)果進(jìn)行解釋。
答:先來先服務(wù):
作業(yè)號進(jìn)入時間估計(jì)運(yùn)行時間開始時間終止時間周轉(zhuǎn)時間帶權(quán)周轉(zhuǎn)時間110:006010:0011:00601210:106011:0012:0011011/6310:251512:0012:1511022/3
平均周轉(zhuǎn)時間:280/3帶權(quán):55/6+6/6=61/6最短作業(yè)服務(wù):
作業(yè)號進(jìn)入時間估計(jì)運(yùn)行時間開始時間終止時間周轉(zhuǎn)時間帶權(quán)周轉(zhuǎn)時間110:006010:0011:00601
210:106011:1512:1512525/12310:251511:0011:155010/3
平均周轉(zhuǎn)時間:235/3帶權(quán):1+25/12+10/3=77/12
5.有一個兩道的批處理操作系統(tǒng),作業(yè)調(diào)度采用最短作業(yè)優(yōu)先的調(diào)度算法,進(jìn)程調(diào)度采用基于優(yōu)先數(shù)的搶占式調(diào)度算法,有如下的作業(yè)序列:作業(yè)進(jìn)入時間估計(jì)運(yùn)行時間優(yōu)先數(shù)110:0040分鐘5210:2030分鐘3310:3050分鐘4410:5020分鐘6
其中優(yōu)先數(shù)數(shù)值越小,優(yōu)先級越高。
1)列出所有作業(yè)進(jìn)入內(nèi)存時間及運(yùn)行終止時間2)計(jì)算作業(yè)平均周轉(zhuǎn)時間和帶權(quán)平均周轉(zhuǎn)時間。答:
作業(yè)號進(jìn)入時間估計(jì)運(yùn)行時間開始時間終止時間周轉(zhuǎn)時間帶權(quán)周轉(zhuǎn)時間110:004010:0011:00603/2210:203010:2010:50301310:305010:3011:20501410:502011:0011:20303/2平均周轉(zhuǎn)時間:2.5帶權(quán):5
第四章進(jìn)程管理
1..一個單CPU的操作系統(tǒng)共有n個進(jìn)程,不考慮進(jìn)程狀態(tài)過渡時的狀況,也不考慮空轉(zhuǎn)進(jìn)
程(1)給出運(yùn)行進(jìn)程的個數(shù);(2)給出就緒進(jìn)程的個數(shù);(3)給出等待進(jìn)程的個數(shù)。解:1.運(yùn)行進(jìn)程的個數(shù)可能是0,也可能是1;2,就緒的進(jìn)程的個數(shù)可能是0,也可能是n-13.等待進(jìn)程的個數(shù)可能是0,也可能是n
2.多道程序在單CPU上并發(fā)運(yùn)行和多道程序在多CPU上并行執(zhí)行,這兩者在本質(zhì)是否一致
為什么?請給出以上兩者在實(shí)現(xiàn)時應(yīng)考慮什么問題?答:
1)本質(zhì)上不同,前者是宏觀上并發(fā)同時運(yùn)行,微觀上是交替順序執(zhí)行,后者則是宏觀上并行,微觀上也并行。
2)在實(shí)現(xiàn)多道程序設(shè)計(jì)時,必需協(xié)調(diào)好資源使用者和被使用者之間的關(guān)系,即對處理機(jī)資源
加以管理,以實(shí)現(xiàn)處理機(jī)在各個可運(yùn)行程序之間的分派與調(diào)度,對內(nèi)存資源加以管理,將內(nèi)存分派給各個運(yùn)行程序,還要解決程序在內(nèi)存中的定位問題,并防止內(nèi)存中各個程序之間相互干擾或?qū)Σ僮飨到y(tǒng)的干擾,對設(shè)備資源進(jìn)行管理,使各個程序在使用設(shè)備時,不發(fā)
生沖突。
3.用進(jìn)程概念說明操作系統(tǒng)的并發(fā)性和不確定性是怎樣表達(dá)出來的?答:進(jìn)程的并發(fā)特性和異步特性表達(dá)了操作系統(tǒng)的并發(fā)性和不確定性。
進(jìn)程的并發(fā)特性:可以同其他進(jìn)程一道向前推進(jìn),即一個進(jìn)程的第一個動作可以在另一個進(jìn)程的最終一個動作終止之前開始
進(jìn)程的異步性:每個進(jìn)程依照各自獨(dú)立的,不可預(yù)知的速度向前推進(jìn)。
4.PCB的作用是什么?他是怎么樣描述進(jìn)程的動態(tài)本質(zhì)的?
答:PCB稱為進(jìn)程控制塊(ProcessControlBlock),為了便于系統(tǒng)控制和描述進(jìn)程的活動過程,在操作系統(tǒng)核心中為進(jìn)程定義一個專門的數(shù)據(jù)結(jié)構(gòu),就是PCB。
系統(tǒng)利用PCB來描述進(jìn)程的基本狀況以及進(jìn)程的運(yùn)行變化過程。PCB是進(jìn)程存在的唯一標(biāo)
志。當(dāng)系統(tǒng)創(chuàng)立一個進(jìn)程時,為進(jìn)程設(shè)置一個PCB,再利用PCB對進(jìn)程進(jìn)行控制和管理;撤
銷進(jìn)程時,-系統(tǒng)收回它的PCB,進(jìn)程也隨之消亡。5.進(jìn)程的三個基本狀態(tài)轉(zhuǎn)換如圖(見書),圖中1,2,3,4表示某種類型的狀態(tài)變遷,請分別回復(fù)以下問題:
1)什么“事件〞引起某一種類型的狀態(tài)變遷
答:運(yùn)行中的進(jìn)程由于中斷的發(fā)生,或者需要等待某種事件的發(fā)生,變遷到等待狀態(tài)等待狀態(tài)的進(jìn)程,應(yīng)為所等待的事件發(fā)生了,變遷到就緒態(tài)CPU為空的時候,就緒態(tài)的進(jìn)程就變遷到運(yùn)行狀態(tài)運(yùn)行的進(jìn)程由于調(diào)度程序,變遷到就緒狀態(tài)
2)系統(tǒng)中往往由于某一進(jìn)程的狀態(tài)變遷引起另一進(jìn)程也產(chǎn)生狀態(tài)變遷,試判斷在下述情況下,假使有的話,將發(fā)生什么因果變遷?3->12.->14->13->4
假使有處于就緒態(tài)的進(jìn)程(3->1)假使有處于就緒態(tài)的進(jìn)程(2->1)CPU為空(4->1)等待事件發(fā)生(3->4)
3)在什么狀況下,下述變遷中哪些將不馬上引起其他變遷?1234
當(dāng)1發(fā)生,并不引起其他變遷
當(dāng)2發(fā)生,假使有進(jìn)程處于就緒態(tài),引起1發(fā)生當(dāng)3發(fā)生,假使有進(jìn)程處于就緒態(tài),引起1發(fā)生當(dāng)4發(fā)生,假使CPU為空,那么引起1發(fā)生4)引起進(jìn)程狀態(tài)變遷的根本原因是什么?
答:原因:自身的進(jìn)展?fàn)顩r和外界環(huán)境條件的變化。自身的規(guī)律,中斷和進(jìn)程調(diào)度程序等!
根據(jù)進(jìn)程的動態(tài)性,進(jìn)程在其生命周期內(nèi),需要經(jīng)歷一系列離散狀態(tài)。6.內(nèi)核尋常完成哪些功能?經(jīng)過內(nèi)核擴(kuò)展后形成的虛擬機(jī)有哪些屬性?答:內(nèi)核一般提供如下功能
1)中斷處理2)進(jìn)程調(diào)度3)進(jìn)程控制4)進(jìn)程同步與互斥;5)進(jìn)程通信;6)存儲管理的基本操作7)設(shè)備管理的基本操作8)文件信息管理的基本操作9)時鐘管理
虛擬機(jī)的屬性有:1)沒有中斷2)為每個進(jìn)程提供了一臺虛擬處理機(jī),每個進(jìn)程好像在各自的處理機(jī)上順序的運(yùn)行3)為進(jìn)程提供了強(qiáng)大的指令系統(tǒng),即非特權(quán)的指令和原語一起組成的指令系統(tǒng)
7.并發(fā)進(jìn)程執(zhí)行時一定會產(chǎn)生與時間有關(guān)的錯誤嗎?為什么?
答:不一定,假使并發(fā)進(jìn)程都占有一些受到保護(hù)的私有資源(包括內(nèi)存,設(shè)備等資源),那么執(zhí)行的結(jié)果和進(jìn)程調(diào)度的算法以及中斷等外界環(huán)境沒有關(guān)系,所以不一定會產(chǎn)生與時間有關(guān)的錯誤.
8.試舉出進(jìn)程狀態(tài)轉(zhuǎn)換的典型原因和引起進(jìn)程調(diào)度的因素。
答:進(jìn)程狀態(tài)轉(zhuǎn)換的典型原因:1中斷或者等待某事件發(fā)生,2.所等待事件發(fā)生了3,CPU為
空
引起進(jìn)程調(diào)度的因素為:1)正在執(zhí)行的進(jìn)程運(yùn)行完畢
2)正在執(zhí)行的進(jìn)程調(diào)用阻塞原語將自己阻塞起來并進(jìn)入等待狀態(tài)
3)正在執(zhí)行的進(jìn)程調(diào)用了P原語操作,從而由于資源不足而被阻塞,或調(diào)用了V原語操作
激活了等待資源的進(jìn)程隊(duì)列
4)執(zhí)行中的進(jìn)程提出了I/O請求后被阻塞5)在分時系統(tǒng)中時間片已經(jīng)用完
以上都是CPU為不可搶占方式下引起進(jìn)程調(diào)用的原因,當(dāng)CPU為可搶占時,就緒隊(duì)列中的進(jìn)
程比當(dāng)前運(yùn)行的進(jìn)程的優(yōu)先級高,也引起進(jìn)程調(diào)度9.說明以下活動是屬于哪些制約關(guān)系?1)若干同學(xué)去圖書館借書進(jìn)程互斥2)兩隊(duì)進(jìn)行籃球比賽進(jìn)程互斥
3)流水線生產(chǎn)中的各道工序進(jìn)程同步4)商品生產(chǎn)和社會消費(fèi)進(jìn)程同步
10,是否所有的共享資源都是臨界資源,為什么?
答:不是,根據(jù)定義,一次只允許一個進(jìn)程使用得進(jìn)程才叫臨界資源,能同時被多個進(jìn)程使用得資源不是臨界資源
11.設(shè)一臺計(jì)算機(jī),有兩條I/O通道,分別接一臺卡片輸入機(jī)和一臺打印機(jī)??ㄆ瑱C(jī)把一疊卡片逐一輸入到緩沖區(qū)B1中,加工處理后再搬到緩沖區(qū)B2中,并在打印機(jī)上印出,問:
1)系統(tǒng)要設(shè)幾個進(jìn)程來完成這個任務(wù)?各自的工作是什么?2)這些進(jìn)程間有什么樣的相互制約關(guān)系3)用P,V操作寫出這些進(jìn)程的同步算法
4)設(shè)系統(tǒng)中只有上述幾個進(jìn)程,用圖表示出各自狀態(tài)變遷狀況及原因?答:這是一個典型的生產(chǎn)者,消費(fèi)者問題
1)系統(tǒng)要設(shè)三個進(jìn)程完成任務(wù),第一個進(jìn)程P1,從卡片輸入機(jī)中讀入數(shù)據(jù),并且把數(shù)據(jù)放入緩沖區(qū)B1中,其次個進(jìn)程從B1緩沖區(qū)中取數(shù)據(jù),加工處理后放入緩沖區(qū)B2中。第三個進(jìn)
程將緩沖區(qū)的內(nèi)容輸入到打印機(jī)中打印出來2)這三個進(jìn)程之間是同步和互斥的關(guān)系3)三個進(jìn)程之間必需協(xié)調(diào)工作,需設(shè)置四個信號量,S1,S2,S3,S4并令S1的初值為1,S2的處置為0,S4的初值為1,則程序?yàn)椋哼M(jìn)程p1進(jìn)程p2進(jìn)程p3P(S1)P(S2)P(S3)
從卡片機(jī)中讀入數(shù)據(jù)P(S4)將緩沖區(qū)B2內(nèi)容V(S2)將BufferB1中的數(shù)據(jù)在打印機(jī)中輸出拷貝道BufferB2中V(S4)V(S1)V(S3)
4)當(dāng)緩沖區(qū)B1為空時,當(dāng)有輸入時,進(jìn)程p1進(jìn)入就緒態(tài),假使CPU為空,則為運(yùn)行態(tài),
輸
入完成后,進(jìn)入等待態(tài)
假使存在進(jìn)程p2,則為等待態(tài),當(dāng)S2+1后,處于等待態(tài)進(jìn)程進(jìn)入就緒態(tài),假使CPU為空
進(jìn)入運(yùn)行態(tài),拷貝完成后,進(jìn)入等待態(tài)
假使存在進(jìn)程p3,則為等待態(tài),當(dāng)S3+1后,處于等待態(tài)進(jìn)程進(jìn)入就緒態(tài),假使CPU為空
進(jìn)入運(yùn)行態(tài),輸出完成后,進(jìn)入等待態(tài)
12.設(shè)有無窮多個信息,輸入進(jìn)程把信息逐個寫入緩沖區(qū),輸入進(jìn)程逐個地從緩沖區(qū)中取出信息。在下述狀況下:1)緩沖區(qū)是環(huán)形的,最多可以容納n個信息;2)緩沖區(qū)是無窮大的。
試分別回復(fù)以下問題?
1)輸入,輸出兩進(jìn)程讀,寫緩沖區(qū)需要什么條件?
2)用P,V操作寫出輸入,輸出兩進(jìn)程的同步算法,并給出信號量含義以及初值3)指出信號量的值的變化范圍和其值的含義答:
一:當(dāng)緩沖區(qū)的大小為n時
1)當(dāng)緩沖區(qū)信息為空的時候,輸出進(jìn)程無法讀,處于等待狀態(tài),當(dāng)緩沖區(qū)信息為滿的時候無法寫,都某個緩沖區(qū)單位進(jìn)行讀寫的時候,要互斥2)
1.空的信號量empty初值為n,滿的信號量為full初值為0,對緩沖區(qū)單元的互斥信號量為mutex,j,k為緩沖區(qū)單位地址,初值為0寫進(jìn)程讀進(jìn)程P(empty)P(full)P(mutex)P(mutex)
向Buffer[i]寫入信息從Buffer[k]中讀信息V(mutex)V(mutex)V(full)V(empty)
j:=(j+1)modnk:=(k+1)modn
4)empty表示還有多少緩沖區(qū)單元為空,假使empty=0,表示緩沖區(qū)滿,系統(tǒng)調(diào)用寫進(jìn)程時,寫進(jìn)程處于等待態(tài)
full表示緩沖區(qū)都多少有信心的單元,假使full=0,表示緩沖區(qū)空,系統(tǒng)調(diào)用寫進(jìn)程時,讀進(jìn)程處于等待態(tài)
mutex表示對于緩沖區(qū)單元的互斥信號量,當(dāng)mutex=1時,開鎖,mutex=0時,閉鎖二.當(dāng)緩沖區(qū)大小為無窮大時1)同上2)
1.空的信號量empty不用設(shè),滿的信號量為full初值為0,對緩沖區(qū)單元的互斥信號量為mutex,j,k為緩沖區(qū)單位地址,初值為0寫進(jìn)程讀進(jìn)程P(full)
P(mutex)P(mutex)
向Buffer[i]寫入信息從Buffer[k]中讀信息V(mutex)V(mutex)
V(full)
j:=(j+1)modnk:=(k+1)modn
4)full表示緩沖區(qū)都多少有信心的單元,假使full=0,表示緩沖區(qū)空,系統(tǒng)調(diào)用寫進(jìn)程時,讀進(jìn)程處于等待態(tài)
mutex表示對于緩沖區(qū)單元的互斥信號量,當(dāng)mutex=1時,開鎖,mutex=0時,閉鎖
13.假定一個閱覽室最多可以容納100人,讀者進(jìn)入和離開閱覽室都必需在閱覽室門口的一個登記表上標(biāo)志(進(jìn)入時登記,離開時去掉登記項(xiàng))而且每次只允許一人登記或者去掉登
記,問:
1)應(yīng)編寫幾個進(jìn)程完成這項(xiàng)工作,程序的主要動作是些什么?應(yīng)當(dāng)設(shè)置幾個進(jìn)程?進(jìn)程和程序間的關(guān)系如何?
2)用P,V操作寫出這些進(jìn)程的同步通信關(guān)系
答:編寫兩個進(jìn)程,一個處理讀者進(jìn)入,一個處理讀者離開,進(jìn)程是程序的動態(tài)執(zhí)行設(shè)置信號量full為初值為0,空的信號量empty初值為100,互斥信號量mutex初值為1
進(jìn)入離開
P(empty)P(full)P(mutex)P(mutex)登記取消登記V(mutex)V(mutex)V(full)V(empty)進(jìn)入離開
14.在生產(chǎn)者和消費(fèi)者問題中,假使對調(diào)生產(chǎn)者(或消費(fèi)者)進(jìn)程中的兩個P操作和兩個V操作的次序,會發(fā)生什么狀況?請說明!
答:對調(diào)P操作,會發(fā)生死鎖由于P(empty)在p(mutex)和v(mutex)內(nèi)部,也就是臨界區(qū)中,當(dāng)empty≤0,時,P(empty)在臨界區(qū)中進(jìn)入到了休眠狀態(tài)。那么就別的進(jìn)程都進(jìn)入不到臨界區(qū)中,進(jìn)入死鎖狀態(tài)。而兩個V操作無關(guān)緊要
15.為什么引入高級通信機(jī)構(gòu)?他有什么優(yōu)點(diǎn)?說明消息緩沖通信機(jī)構(gòu)的基本工作過程?答:
1)為了解決大量的消息交換,
2)優(yōu)點(diǎn):不僅能夠保證相互制約的進(jìn)程之間的相互關(guān)系,還同時實(shí)現(xiàn)了進(jìn)程之間的信息交換
3)消息緩沖通信技術(shù)的工作過程:
其基本思想是:根據(jù)“生產(chǎn)者-消費(fèi)者〞原理,利用內(nèi)存中公用消息緩沖區(qū)實(shí)現(xiàn)進(jìn)程之間的信息交換。
內(nèi)存中開拓了若干消息緩存區(qū),用以存放消息,每當(dāng)一個進(jìn)程(發(fā)送進(jìn)程)向另一個進(jìn)程(接收進(jìn)程)發(fā)送消息時,便申請一個消息緩沖區(qū),并把已準(zhǔn)備好的消息發(fā)送到緩沖區(qū)中,然后把該消息緩沖區(qū)插入到接受進(jìn)程的消息隊(duì)列中,最終通知接受進(jìn)程,接收進(jìn)程收到發(fā)送進(jìn)程發(fā)送到的通知后,從本進(jìn)程的消息隊(duì)列中摘下一消息緩沖區(qū),取出所需的消息,然后把消息緩沖區(qū)還給系統(tǒng)。
16.進(jìn)程間為什么要進(jìn)行通信?在編寫自己的程序時,是否考慮到要和別的用戶程序進(jìn)行通信?各個用戶進(jìn)程間是否存在制約關(guān)系?
答;1)各個進(jìn)程在運(yùn)行的時候,共享內(nèi)存,或者共同完成一個特定的功能,都需要進(jìn)行通信,
2)需要,
3)促在同步和互斥的關(guān)系,譬如閑聊程序
17.假定一個系統(tǒng)的磁盤塊大小為2KB,一個塊的平均訪問時間是20毫秒。一個有40KB進(jìn)程
由于資源請求從運(yùn)行態(tài)變?yōu)樽枞麘B(tài),它必需保持阻塞多長時間?答:40/2*20=400毫秒
保持阻塞態(tài)400毫秒
18.假設(shè)A,B兩個火車站之間是單軌線,大量列車同時到達(dá)A站,然后經(jīng)過A站到達(dá)B站;又
列車從A到B的行駛時間是t,列車在B戰(zhàn)后的停留時間是t/2,試問在該問題模型中,什么是
臨界資源,什么是臨界區(qū)?
答:臨界資源:A到B之間的單軌線,以及B站是臨界資源臨界區(qū):在A到B之間行駛,以及在B上停留是臨界區(qū)19.同步機(jī)制應(yīng)當(dāng)遵循哪些原則?為什么?
答:1.它的描述能力應(yīng)當(dāng)足夠強(qiáng),既能解決各種進(jìn)程間的同步互斥問題;2.其次,應(yīng)當(dāng)簡單實(shí)現(xiàn)并效率高3.第三,使用便利
20.我們?yōu)槟撑R界資源設(shè)置一把鎖W。當(dāng)W=1時,表示關(guān)鎖,W=0時,表示開鎖,試寫出開鎖
和關(guān)鎖原語,并利用它去實(shí)現(xiàn)互斥。答:while(1==w);enter臨界區(qū)
21.進(jìn)程A1,A2,?,An通過m個緩沖區(qū)向進(jìn)程B1,B2,?,Bn不斷發(fā)送消息,發(fā)送和接收工作遵
循如下規(guī)則:
1)每個發(fā)送進(jìn)程每次發(fā)送一個消息,寫入一個緩沖區(qū),緩沖區(qū)大小與消息長度一樣2)對每一個消息,B1,B2,..Bn都需要各接收一次,讀到各自的數(shù)據(jù)區(qū)中;3)m個緩沖區(qū)都滿時,發(fā)送進(jìn)程等待,沒有可讀消息時,接受進(jìn)程等待試用P,V操作組織正確的發(fā)送和接收操作。答:VAR
mutex:Semaphore:{初值為1,實(shí)現(xiàn)對緩沖區(qū)的互斥}empty:Semaphore:{初值為n,有多少緩沖}
Full:Array[1..n]OFSemaphore:{初值為0,每個接收進(jìn)程當(dāng)前可接收的緩沖區(qū)}
Count:Array[1..n]OFINTEGER;{初值為0,n個緩沖區(qū)被訪問的次數(shù)}
ReceivePointer:Array[1?n]OFINTEGER{初值為0,該接收進(jìn)程要取哪個}SendPointer:INTEGER;{初值為0,發(fā)送進(jìn)程下次要放到哪個緩沖區(qū)}發(fā)送進(jìn)程(num:INTEGER){num為進(jìn)程號}RepeatP(empty)P(mutex)
向buff[sendPointer]放消息
sendPointer:=(sendPointer+1)modkcount[sendPointer]:=0V(mutex)
Fori:=1TonDoV(Full[i])UntilFALSE
接收進(jìn)程(num:INTEGER):{num為接收進(jìn)程號}Repeat
P(Full[num])P(mutex)
從buff[ReceivePoiner[num]]中取消息V(mutex)
Count[ReceivePoiner[num]]:=Count[ReceivePoiner[num]]+1IF(Count[ReceivePoiner[num]]==n)THENV(empty)
Count[ReceivePoiner[num]]==0
ReceivePoiner[num]]:=(ReceivePoiner[num])+1)modnUntilFALSE
22.有K個進(jìn)程共享一個臨界區(qū),對于下述狀況,請說明信號量值的初值,含義,并用P,V
操作寫出相關(guān)的互斥算法。
1)一次只允許一個進(jìn)程進(jìn)入臨界區(qū)2)一次只允許m個進(jìn)程進(jìn)入臨界區(qū)答:1)設(shè)置互斥信號量mutex,初值為1P(mutex)Enter_regionV(mutex)
2)設(shè)置同步信號量mutex,初值為m;P(mutex)Enter_regionV(mutex)
23.愛睡覺的理發(fā)師問題,一個理發(fā)店有兩間相連的屋子,一間是私室,里面有一把理發(fā)椅,另一個是等候室,有一個滑動門和N把椅子。理發(fā)師忙的時候,通向私室的門被關(guān)閉,新來的顧客找一把空椅子坐下,假使椅子都被占用了,則顧客只好離去,假使沒有顧客,則理發(fā)師在理發(fā)椅上睡覺。并開啟通向私室的門。理發(fā)師睡覺時,顧客可以叫醒他理發(fā),請編寫
理發(fā)師和顧客的程序,正確實(shí)現(xiàn)同步和互斥問題!答:
解:VAR:
S1,S2:Semaphore;{初值為0,實(shí)現(xiàn)理發(fā)師與顧客的同步}Mutex:Semaphore:{初值為1,實(shí)現(xiàn)對waiting的互斥}waiting:INTEGER:{初值為0,等待的顧客數(shù)}理發(fā)師進(jìn)程REPEAT
P(S1){若無顧客,則睡覺}P(mutex)
Waiting:=waiting-1
V(S2);(喚醒一個等待的客戶)V(mutex)理發(fā)
UntilFALSE顧客進(jìn)程P(mutex)
IF(waitingT,3)ST時,CPU的利用率=T/(T+S)*100%(當(dāng)進(jìn)程運(yùn)行完后,就切換,也就相當(dāng)于時間片=T
)
3)當(dāng)S
P(mutex)
if(count2[k]==0)P(S[k])count[k]++
過第k+1個船閘P(mutex)count[k]--
if(count[k]==0)V(S[k])V(mutex)}
35.某銀行有人民幣儲蓄業(yè)務(wù),由n個柜員負(fù)責(zé),每個顧客進(jìn)入銀行后,先取一個號,并且等著叫號,當(dāng)一個柜員人員空閑下來,就叫上一個號,使用P,V操作正確編寫柜臺人員和顧客進(jìn)程的程序!
解;取號的互斥信號量mutex,叫號的互斥信號量mutex1柜臺人員和顧客進(jìn)程的同步信號量為S1,S2,初值分別為n,0柜臺人員進(jìn)程:
P(S2)(無顧客則等待)P(mutex1)叫號
V(mutex1)服務(wù)V(S1)顧客進(jìn)程P(mutex)取號V(mutex)P(S1)享受服務(wù)V(S2)
36,設(shè)A,B,C三個進(jìn)程共享一個存儲資源F,A對F只讀不寫,B對F只寫不讀,C對F先讀后寫。
(當(dāng)一個進(jìn)程寫F時,其他進(jìn)程既不能讀F,也不能寫F,但多個進(jìn)程同時讀F是允許的)試
利用管程的方法或者P,V操作,寫出A,B,C三個進(jìn)程的框架,要求:(1)執(zhí)行正確(2)正常運(yùn)行時不產(chǎn)生死鎖;(3)使用F的并發(fā)度高37,某系統(tǒng)如此定義P,V操作P(S)S=S-1
若S
2)40,65,203)20,50,604)130,60k,205)140,70,70
14.頁式存儲管理系統(tǒng)中作業(yè)的地址空間是一維的還是二維的?請說明理由答:二維的,有一維是:頁號,和其次維是:頁內(nèi)地址!
15.頁式存儲管理需要哪些硬件支持?如何實(shí)現(xiàn)規(guī)律地址到物理地址的映射?答:系統(tǒng)提供了一對寄放器:頁表始址寄放器和頁表長度寄放器。1)具體步驟說明如下
1)地址映射機(jī)制把CPU給出的規(guī)律地址分為兩部分:頁號P和頁內(nèi)地址
2)將規(guī)律頁號P與頁表長度寄放器內(nèi)容比較,假使P大于等于頁表長度L,則為越屆,發(fā)生
地址越界中斷
3)根據(jù)頁表始址寄放器的內(nèi)容D得到頁表在內(nèi)存的首地址,并根據(jù)規(guī)律頁號P在頁表中找到對應(yīng)的內(nèi)存塊號P'
4)把物理頁號與規(guī)律地址中的頁內(nèi)地址D拼在一起,形成訪問內(nèi)存的物理地址
16.假定一個存儲管理程序已經(jīng)把它的頁面淘汰決定縮小到兩頁之一,假定其中一頁由幾個進(jìn)程共享,另一頁僅由一個進(jìn)程使用,最終應(yīng)當(dāng)淘汰哪一頁?請解釋!答:當(dāng)然是后一頁,這樣就能避免頻繁的調(diào)度頁面!
17.在多道程序系統(tǒng)中,程序和數(shù)據(jù)共享可以大大的節(jié)省內(nèi)存空間,分別說明頁式,段式和段頁式存儲管理系統(tǒng)中是如何實(shí)現(xiàn)共享的?答:
頁式:頁式存儲管理使每個程序能利用內(nèi)存空間中一些不連續(xù)的存儲塊,這種靈活性就允許兩個或多個程序共享程序中的代碼或公共數(shù)據(jù)段。
段式:假使多個用戶進(jìn)程或作業(yè)需要共享某段程序或數(shù)據(jù),可以使用不同的段名,在各自的段表中填入已在內(nèi)存中的共享段的起始地址,并設(shè)置適當(dāng)?shù)淖x寫控制權(quán),就可以做到共享一個內(nèi)存段的信息。段頁式:?
18.在頁式存儲管理系統(tǒng)中,對數(shù)據(jù),過程的共享有什么限制,為什么?
答:對于數(shù)據(jù)頁面的共享,實(shí)現(xiàn)起來比較簡單,由于這個共享的數(shù)據(jù)頁面,可以安排在程序
地址空間的任何一個頁面上,而代碼的共享則不然,它必需把共享的代碼安排到所有共享它
的程序地址空間中一致頁號的頁面中,即共享代碼所在地址空間必需重疊。19.為什么期望大多數(shù)程序具有局部性?
答:利用虛擬存儲技術(shù),可以為程序提供較少的物理頁面,就可以完成執(zhí)行程序的任務(wù)。20.設(shè)計(jì)一個頁表應(yīng)考慮哪些因素?
答:系統(tǒng)為每個用戶程序建立一張頁表,用于記錄用戶程序的規(guī)律頁面與內(nèi)存物理頁面之間
的對應(yīng)關(guān)系,包括兩項(xiàng)內(nèi)容:規(guī)律頁面號,該規(guī)律頁面在內(nèi)存中分派的物理頁面號(內(nèi)存塊號),用戶程序的地址空間有多少頁,該頁表里登記多少行,且按規(guī)律頁的順序排列。頁表存放在內(nèi)存系統(tǒng)區(qū)。
21.操作系統(tǒng)的存儲管理目標(biāo)是什么?段頁式管理是如何實(shí)現(xiàn)這些目標(biāo)的?答:
1)充分利用內(nèi)存,對多道程序并發(fā)執(zhí)行。
22.為什么說段頁式管理時的虛擬地址依舊是二維的?答:段號,段內(nèi)地址。
23.假定磁盤空閑空間表說明有以下存儲塊空閑塊:13,11,18,9和20塊。有一個要求為某文件分派10個連續(xù)的磁盤塊。
1)假使采用首次適應(yīng)分派策略,那么將分派哪個塊?
31.有一臺計(jì)算機(jī)含有四個頁面,每一頁的裝入時間,最終一次修改時間以及R與M位的值
如下(時間為時間周期):
頁裝入時間最終訪問時間RM012627900123026010212027211316028011
1)NRU應(yīng)當(dāng)淘汰哪一頁?2)FIFO應(yīng)當(dāng)淘汰哪一頁?3)LRU應(yīng)當(dāng)淘汰哪一頁?
4)其次次機(jī)遇應(yīng)當(dāng)淘汰哪一頁?答:?
32.請求頁式存儲管理中,頁面置換算法所花的時間屬于系統(tǒng)開銷,這種說法對嗎?答:額外開銷。
33.何謂系統(tǒng)的“抖動〞現(xiàn)象?當(dāng)系統(tǒng)發(fā)生“抖動〞時,你認(rèn)為應(yīng)當(dāng)采取什么措施加以克服?
答:在虛存中,頁面在內(nèi)存和外存之間頻繁的調(diào)度,以至于調(diào)度頁面所需時間比進(jìn)程實(shí)際運(yùn)行的時間還多,此時系統(tǒng)效率急劇下降,甚至導(dǎo)致系統(tǒng)崩潰,這種現(xiàn)象稱為顛簸(抖動)
產(chǎn)生的原因:頁面置換算法不合理,分派給進(jìn)程的物理頁面數(shù)太少。解決方法:調(diào)整算法,多分派物理頁面數(shù)。
34.在虛擬頁式存儲管理中,進(jìn)程在內(nèi)外存中的存放有以下兩種方法:1)一部分頁面放在內(nèi)存,其余頁面放在外存2)一部分頁面放在內(nèi)存,全部頁面放在外存
試從系統(tǒng)開銷的角度分析兩種方法各自的優(yōu)缺點(diǎn),并說明頁表的區(qū)別。答:?
35,36,37其次次復(fù)習(xí)的時候做!!
第六章文件管理
1.舉一個文件訪問的例子,所舉的領(lǐng)域在某些狀況下,信息必需隨機(jī)訪問,而在其他時間必需順序訪問.
答:進(jìn)行視頻文件播放時。
2.為什么支持索引文件的文件系統(tǒng)無法獲得順序訪問文件系統(tǒng)一致的效率?
答:由于:索引結(jié)構(gòu)的缺點(diǎn)就是:較多的尋道次數(shù)和尋道時間,以及索引表本身增加了存儲空間的開銷。
連續(xù)結(jié)構(gòu)的優(yōu)點(diǎn)就是:文件存取十分簡單迅速。
3.假設(shè)一個活動頭磁盤有200道,編號1-199,當(dāng)前磁頭正在143道上服務(wù),并且剛剛完成了
125道的請求,現(xiàn)有如下訪盤請求序列(磁道號)86,147,91,177,94,150,102,175,130
試給出采用以下算法后磁頭移動的順序和移動總量(總磁道數(shù))1)最短尋道時間優(yōu)先(SSTF)磁盤調(diào)度算法
2)掃描法(SCAN)磁盤調(diào)度算法(假設(shè)沿磁頭移動方向不再有訪問請求,磁頭沿相反方向移動)
答:1)1431471501301029491861751772)143130102949186147150175177
4.假定一個文件系統(tǒng)用索引文件結(jié)構(gòu)管理存儲塊。每個文件都有一個目錄項(xiàng),存放文件名,第一個索引塊,以及文件長度。第一個索引塊指向248各文件塊和下一個索引塊。假使一個文件當(dāng)前放在第2023各規(guī)律塊,而下一個操作是訪問第306個規(guī)律塊,那么必需從磁盤上讀多少個物理塊?答:
5.假定一個UNIX的磁盤塊能夠存放1048個磁盤地址。用直接盤塊指針的文件的最大尺寸是
多少?一重間接塊指針呢?二重間接塊指針呢?三重呢?
6.早期MS-DOS版本的文件系統(tǒng)最大能夠管理32M的磁盤空間,根據(jù)本章所講的有關(guān)目錄和
文件的知識,推測由于該限制可能導(dǎo)致的一些后果。
7.假定一個文件系統(tǒng)的組織方式與MS-DOS文件系統(tǒng)類似,在FAT中有64K個指針,請說明該
文件系統(tǒng)是否能夠用這64K個指針來引用一個512M磁盤上一個512字節(jié)塊。
8.文件系統(tǒng)檢測程序經(jīng)常利用位圖?;镜南敕ň褪前言搱D拷貝到檢測程序的地址空間去,把圖中每一個項(xiàng)放大,使它能夠包含更多的狀態(tài)信息(例如已分派,未分派,已檢測,壞塊),請?jiān)O(shè)計(jì)一個算法,用增加內(nèi)容位示圖來檢測一個磁盤的上述狀態(tài)信息,并作出具體統(tǒng)計(jì)。
答:1)為位圖增加一個內(nèi)容位示圖,已分派,未分派,已檢測,壞塊分別用0,1,2,3來代替
2)檢測磁盤,遇到0,:count0++,遇到1:count1++,遇到2,count2++,遇到3,count3++,(初值都為0)
3)得出相應(yīng)的塊的個數(shù)。
9.假定需要一種機(jī)制,是的一個文件能被任何用戶讀,但只能被一個用戶寫。譬如全國高考成績,可被高考學(xué)生讀,但只能被有關(guān)辦公室修改成績,請?jiān)O(shè)計(jì)該文件的存取控制機(jī)制。
答:1)審定用戶權(quán)限
2)比較用戶權(quán)限的本次存取要求是否和用戶的存取權(quán)限一致
3)將用戶的存取要求和被訪問文件的存取控制表進(jìn)行比較,看是否沖突,假使沒有
沖突,允許用戶對有關(guān)文件進(jìn)行訪問,假使有沖突,處理沖突。
10.請描述一種機(jī)制,硬件的或軟件的,它根據(jù)用戶的指紋進(jìn)行身份識別。
答:第一步要對用戶的身份進(jìn)行驗(yàn)證,其次步,采用一組稱為存取控制模塊的程序,對用戶
的存取權(quán)限進(jìn)行控制。
11.文件目錄的作用是什么?一個目錄表目應(yīng)包含哪些信息?
答:文件目錄就是文件控制塊的有序集合,即把所有文件控制塊有機(jī)地組織起來,就構(gòu)成了文件目錄。
文件控制塊應(yīng)當(dāng)包括以下內(nèi)容:文件名,文件號,用戶名,文件地址,文件長度,文件類型,文件屬性,共享計(jì)數(shù),文件的建立日期,保存期限,最終修改日期等!12.多級目錄結(jié)構(gòu)的特點(diǎn)有哪些?有什么好處?答:優(yōu)點(diǎn):
層次結(jié)構(gòu)明了,便于管理和保護(hù);有利于文件分類;解決重名問題;提高文件檢索速度;能進(jìn)行存取權(quán)限的控制缺點(diǎn):
查找一個文件按路徑名逐層檢查,由于每個文件都放在外存,屢屢訪盤影響速度13.可通過什么方法來實(shí)現(xiàn)用戶之間共享某個文件?答:1)繞道法2)I節(jié)點(diǎn)法3)符號鏈接法
14.在設(shè)計(jì)文件系統(tǒng)時,對文件的數(shù)據(jù)結(jié)構(gòu)應(yīng)做何考慮?答:順序結(jié)構(gòu),鏈接結(jié)構(gòu),索引結(jié)構(gòu)以及I節(jié)點(diǎn).
15.請?jiān)O(shè)計(jì)一個文件系統(tǒng)的FCB,并說明為何要安排FCB的每一項(xiàng)內(nèi)容。
答:文件控制塊PCB為系統(tǒng)管理文件而設(shè)置的一個數(shù)據(jù)結(jié)構(gòu)。FCB是文件存在的標(biāo)志,它記
錄了系統(tǒng)管理文件所需要的全部信息。見圖6.2文件控制塊16.在文件系統(tǒng)中,使用Create和Open命令的目的是什么?他們的具體功能是什么?能不能只用一個命令,完成文件的建立和開啟操作?
答:create和open命令是建立一個和開啟一個文件。
create建立一個文件,open開啟一個已存在的文件,或者先創(chuàng)立然后開啟一個文件能用一個命令open來完成文件的建立和開啟操作.
17.對以下每個問題,試說明它由文件系統(tǒng)中哪一個
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 東莞美容院加盟合同范本
- 個人房產(chǎn)與中介合同范本
- 先拿貨后付款合同范例
- 2024年吳忠市人民醫(yī)院自主招聘事業(yè)單位工作人員考試真題
- 加盟授權(quán)合同范例范例
- 農(nóng)村空地出售合同范本
- 2024年曲靖六十九醫(yī)院人才招聘考試真題
- 以資抵債合同范本
- 2024年廣州市天河區(qū)體育西路小學(xué)聘用制專任教師招聘考試真題
- 創(chuàng)意園廠房合同范例
- 2025年企業(yè)法務(wù)顧問聘用協(xié)議范本
- 無菌手術(shù)臺鋪置的細(xì)節(jié)管理
- 《康復(fù)評定技術(shù)》課件-第五章 運(yùn)動控制
- 議論文8(試題+審題+范文+點(diǎn)評+素材)-2025年高考語文寫作復(fù)習(xí)
- 【理特咨詢】2024生成式人工智能GenAI在生物醫(yī)藥大健康行業(yè)應(yīng)用進(jìn)展報(bào)告
- 2025新人教版英語七年級下單詞默寫表(小學(xué)部分)
- 2025年春新外研版(三起)英語三年級下冊課件 Unit6第1課時Startup
- 2025江蘇蘇州高新區(qū)獅山商務(wù)創(chuàng)新區(qū)下屬國企業(yè)招聘9人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 《蒙牛集團(tuán)實(shí)施財(cái)務(wù)共享過程中存在的問題及優(yōu)化建議探析》8800字(論文)
- 平拋運(yùn)動的經(jīng)典例題
- 錄井作業(yè)現(xiàn)場風(fēng)險(xiǎn)評估及控制措施
評論
0/150
提交評論