版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1.2 操作系統(tǒng)以什么方式組織用戶使用計(jì)算機(jī)? 答:操作系統(tǒng)以 進(jìn)程的方式 組織用戶使用計(jì)算機(jī) .用戶所需 完成的各種任務(wù)必須由相應(yīng)的程序來(lái)表達(dá)出來(lái)。 為了實(shí)現(xiàn)用戶的 任務(wù),必須讓相應(yīng)功能的程序執(zhí)行。而進(jìn)程就是指程序的運(yùn)行, 操作系統(tǒng)的進(jìn)程調(diào)度程序決定 CPU 在各進(jìn)程間的切換。操作系 統(tǒng)為用戶提供進(jìn)程創(chuàng)建和結(jié)束等的系統(tǒng)調(diào)用功能, 使用戶能夠創(chuàng) 建新進(jìn)程。 操作系統(tǒng)在初始化后, 會(huì)為每個(gè)可能的系統(tǒng)用戶創(chuàng)建 第一個(gè)用戶進(jìn)程,用戶的其他進(jìn)程則可以由母進(jìn)程通過(guò) “進(jìn)程創(chuàng) 建”系統(tǒng)調(diào)用進(jìn)行創(chuàng)建。1.4 早期監(jiān)督程序( Monitor )的功能是什么? 答:早期監(jiān)督程序的功能是 代替系統(tǒng)操作員的部分工作
2、 ,自 動(dòng)控制作業(yè)的運(yùn)行 。監(jiān)督程序首先把第一道作業(yè)調(diào)入主存, 并啟 動(dòng)該作業(yè)。運(yùn)行結(jié)束后,再把下一道作業(yè)調(diào)入主存啟動(dòng)運(yùn)行。它 如同一個(gè)系統(tǒng)操作員,負(fù)責(zé)批作業(yè)的 I/O ,并自動(dòng)根據(jù)作業(yè)控制 說(shuō)明書以單道串行的方式控制作業(yè)運(yùn)行, 同時(shí)在程序運(yùn)行過(guò)程中 通過(guò)提供各種系統(tǒng)調(diào)用,控制使用計(jì)算機(jī)資源。1.7 試述多道程序設(shè)計(jì)技術(shù)的基本思想。 為什么采用多道程序設(shè) 計(jì)技術(shù)可以提高資源利用率?答:多道程序設(shè)計(jì)技術(shù)的基本思想是, 在主存同時(shí)保持多道 程序,主機(jī)以交替的方式同時(shí)處理多道程序 。從宏觀上看, 主機(jī) 內(nèi)同時(shí)保持和處理若干道已開始運(yùn)行但尚未結(jié)束的程序。 從微觀 上看,某一時(shí)刻處理機(jī)只運(yùn)行某道程序???/p>
3、以提高資源利用率的原因:由于任何一道作業(yè)的運(yùn)行總 是交替地串行使用 CPU、外設(shè)等資源,即使用一段時(shí)間的 CPU, 然后使用一段時(shí)間的 I/O 設(shè)備,由于采用多道程序設(shè)計(jì)技術(shù),加 之對(duì)多道程序?qū)嵤┖侠淼倪\(yùn)行調(diào)度,則可以實(shí)現(xiàn) CPU 和 I/O 設(shè) 備的高度并行,可以大大提高 CPU 與外設(shè)的利用率。1.8 什么是分時(shí)系統(tǒng)?其主要特征是什么?適用于哪些應(yīng)用? 答:分時(shí)系統(tǒng)是以多道程序設(shè)計(jì)技術(shù)為基礎(chǔ)的交互式系統(tǒng), 在此系統(tǒng)中, 一臺(tái)計(jì)算機(jī)與多臺(tái)終端相連接, 用戶通過(guò)各自的終 端和終端命令以交互的方式使用計(jì)算機(jī)系統(tǒng)。 每個(gè)用戶都感覺到 好像是自己在獨(dú)占計(jì)算機(jī)系統(tǒng), 而在系統(tǒng)內(nèi)部則由操作系統(tǒng)以時(shí) 間片
4、輪轉(zhuǎn)的方式負(fù)責(zé)協(xié)調(diào)多個(gè)用戶分享 CPU。主要特征是: 并行性:系統(tǒng)能協(xié)調(diào)多個(gè)終端用戶同時(shí)使用計(jì)算機(jī)系統(tǒng), 能控制多道程序同時(shí)運(yùn)行。共享性:對(duì)資源而言,系統(tǒng)在宏觀上使各終端用戶共享計(jì) 算機(jī)系統(tǒng)中的各種資源,而在微觀上它們則分時(shí)使用這些資源。交互性:人與計(jì)算機(jī)以交互的方式進(jìn)行工作。 獨(dú)占性:使用戶感覺到他在獨(dú)占使用計(jì)算機(jī)。 現(xiàn)在的系統(tǒng)大部分都是分時(shí)系統(tǒng),主要應(yīng)用于人機(jī)交互的 方面。2.1 什么是中斷?什么是異常?它們有何區(qū)別? 答:中斷是指來(lái)自 CPU 執(zhí)行指令以外的事件發(fā)生后,處理 機(jī)暫停正在運(yùn)行的程序,轉(zhuǎn)去執(zhí)行處理該事件的程序的過(guò)程。異常是指源自 CPU 執(zhí)行指令內(nèi)部的事件發(fā)生后,處理機(jī)暫 停
5、正在執(zhí)行的程序,轉(zhuǎn)去處理該事件的過(guò)程。區(qū)別:廣義的中斷包括中斷和異常,統(tǒng)一稱為中斷。狹義的 中斷和異常的區(qū)別在于是否與正在執(zhí)行的指令有關(guān), 中斷可以屏 蔽,而異常不可屏蔽。2.2 什么是多級(jí)中斷?為什么要把中斷分級(jí)?試述多級(jí)中斷的處 理原則。答:中斷分級(jí)是根據(jù)中斷的輕重緩急來(lái)排序,把緊迫程度 大致相當(dāng)?shù)闹袛嘣礆w并在同一級(jí), 而把緊迫程度差別較大的中斷 源放在不同的級(jí)別。一般來(lái)說(shuō),高速設(shè)備的中斷優(yōu)先級(jí)高,慢速 設(shè)備的中斷優(yōu)先級(jí)低。 這就是多級(jí)中斷。 這所以引入多級(jí)中斷是 因?yàn)椋簽槭瓜到y(tǒng)能及時(shí)的響應(yīng)和處理所發(fā)生的緊迫中斷, 同時(shí)又 不至于發(fā)生中斷信號(hào)丟失, 計(jì)算機(jī)發(fā)展早起在設(shè)計(jì)中斷系統(tǒng)硬件 時(shí)根據(jù)
6、各種中斷的輕重在線路上作出安排, 從而使中斷響應(yīng)能有 一個(gè)優(yōu)先次序。多級(jí)中斷的處理原則:當(dāng)多級(jí)中斷同時(shí)發(fā)生時(shí), CPU 按照由 高到低的順序響應(yīng)。高級(jí)中斷可以打斷低級(jí)中斷處理程序的運(yùn) 行,轉(zhuǎn)而執(zhí)行高級(jí)中斷處理程序。當(dāng)同級(jí)中斷同時(shí)到時(shí),則按位 響應(yīng)。2.6 什么是中斷向量?其內(nèi)容是什么?試述中斷的處理過(guò)程。 答:中斷向量:為處理方便,一般為系統(tǒng)中每個(gè)中斷信號(hào)編 制一個(gè)相應(yīng)的中斷處理程序, 并把這些程序的入口地址放在特定 的主存單元中。 通常將這一片存放中斷處理程序入口地址的主存 單元稱為中斷向量。中斷向量的內(nèi)容: 對(duì)不同的系統(tǒng), 中斷向量中的內(nèi)容也不盡 相同。一般每一個(gè)中斷信號(hào)占用連續(xù)的兩個(gè)單元
7、: 一個(gè)用來(lái)存放 中斷處理程序的入口地址,另一個(gè)用來(lái)保存在處理中斷時(shí) CPU 應(yīng)具有的狀態(tài)。中斷的處理過(guò)程:一般包括保存現(xiàn)場(chǎng),分析中斷原因,進(jìn)入 相應(yīng)的中斷處理程序, 最后重新選擇程序運(yùn)行, 恢復(fù)現(xiàn)場(chǎng)等過(guò)程。2.7 中斷 /異常處理為什么要保存現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)?現(xiàn)場(chǎng)應(yīng)包括 哪幾方面的內(nèi)容?答:因?yàn)橹袛嗵幚硎且豁?xiàng)短暫性的工作, 邏輯上處理完后還 要回到被中斷的程序, 從其恢復(fù)點(diǎn)繼續(xù)運(yùn)行。 為了能實(shí)現(xiàn)正確的 返回, 并繼續(xù)運(yùn)行下去, 在中斷處理前后必須保存和恢復(fù)被中斷 的程序現(xiàn)場(chǎng)?,F(xiàn)場(chǎng)應(yīng)包括: PC 寄存器的內(nèi)容,通用寄存器以及一些與程 序運(yùn)行相關(guān)的特殊寄存器中的內(nèi)容。2.8 操作系統(tǒng)內(nèi)核的主要功能
8、模塊有哪些?如果采用微內(nèi)核模 型,原來(lái)在內(nèi)核的功能中, 哪些功能在微內(nèi)核中實(shí)現(xiàn)?哪些由用 戶態(tài)運(yùn)行的進(jìn)程實(shí)現(xiàn)?答:操作系統(tǒng)內(nèi)核的主要功能模塊有: 1、系統(tǒng)初始化模塊 2、 進(jìn)程管理模塊 3、存儲(chǔ)管理模塊 4、 I/O 設(shè)備管理模塊 5、文件 管理模塊采用微內(nèi)核模型, 原來(lái)在內(nèi)核的功能中, 少量的進(jìn)程調(diào)度切 換代碼和中斷處理程序在微內(nèi)核中實(shí)現(xiàn), 原來(lái)由內(nèi)核態(tài)實(shí)現(xiàn)的大 部分操作系統(tǒng)系統(tǒng)調(diào)用處理等功能轉(zhuǎn)由用戶態(tài)運(yùn)行的進(jìn)程實(shí)現(xiàn)。2.9 從控制軌跡上看, 系統(tǒng)調(diào)用和程序級(jí)的過(guò)程調(diào)用都相當(dāng)于在 斷點(diǎn)處插入一段程序執(zhí)行, 但它們卻有質(zhì)的區(qū)別, 試述這種差別。答:這種差別主要在于處理機(jī)運(yùn)行狀態(tài)的變化。 發(fā)生系
9、統(tǒng)調(diào) 用時(shí),處理機(jī)由用戶態(tài)進(jìn)入核心態(tài);而程序調(diào)用時(shí),運(yùn)行狀態(tài)不 發(fā)生變化,其狀態(tài)仍然保持在用戶態(tài)。2.11 試述終端命令解釋程序的處理過(guò)程。答:終端命令解釋程序的處理過(guò)程如下: 判斷命令的合法性 識(shí)別命令, 如果是簡(jiǎn)單命令則處理命令, 然后繼續(xù)讀取下 一條命令 如果是不認(rèn)識(shí)的命令關(guān)鍵字, 則在約定目錄下查找與命令 關(guān)鍵字同名的執(zhí)行文件,創(chuàng)建子進(jìn)程去執(zhí)行 “執(zhí)行文件 ”程序,等 待子進(jìn)程結(jié)束后轉(zhuǎn)繼續(xù)讀取下一條命令。3.1 什么是進(jìn)程?為什么要引入此概念?試述進(jìn)程的特點(diǎn)及它 與程序的區(qū)別。答:進(jìn)程是支持程序執(zhí)行的機(jī)制, 是程序針對(duì)某一數(shù)據(jù)集合 的執(zhí)行過(guò)程。引入此概念的原因:隨著操作系統(tǒng)的發(fā)展而產(chǎn)生
10、。 在監(jiān)督程序時(shí)代以作業(yè)形式表示程序運(yùn)行, 那時(shí), 作業(yè)以同步方 式串行地運(yùn)行每個(gè)作業(yè)步, 當(dāng)操作系統(tǒng)發(fā)展到分時(shí)系統(tǒng)時(shí), 為了 開發(fā)同一作業(yè)中不同作業(yè)步之間的并發(fā), 作業(yè)機(jī)制已經(jīng)不能滿足 需要,因而引入了進(jìn)程機(jī)制。進(jìn)程的特點(diǎn):動(dòng)態(tài)性 :可動(dòng)態(tài)創(chuàng)建 ,結(jié)束,也可是被調(diào)度進(jìn)程并發(fā)性 :可以被獨(dú)立調(diào)度,占用處理機(jī)運(yùn)行獨(dú)立性 :盡量把并發(fā)事務(wù)安排到不同的進(jìn)程制約性 :因訪問共享數(shù)據(jù)或進(jìn)程間同步而產(chǎn)生制約 . 與程序的區(qū)別:進(jìn)程是程序的執(zhí)行過(guò)程,程序是靜態(tài)的,進(jìn) 程是動(dòng)態(tài)的。 一個(gè)進(jìn)程至少是一個(gè)可執(zhí)行程序, 同一個(gè)程序可以 由多個(gè)進(jìn)程分別執(zhí)行。3.2 進(jìn)程控制塊的作用是什么? PCB 中應(yīng)包括哪些信息?
11、 答:進(jìn)程控制塊的作用是: 進(jìn)程控制塊用于保存每個(gè)進(jìn)程和 資源的相關(guān)信息, 包括進(jìn)程標(biāo)識(shí)、 空間、運(yùn)行狀態(tài)、 資源等信息。 以便于操作系統(tǒng)管理和控制進(jìn)程和資源。PCB 中應(yīng)包括: 1、進(jìn)程標(biāo)識(shí)信息:本進(jìn)程的標(biāo)識(shí)、父進(jìn)程 的標(biāo)識(shí)、進(jìn)程所屬用戶的標(biāo)識(shí)。 2、處理機(jī)狀態(tài)信息。保存進(jìn)程 的運(yùn)行現(xiàn)場(chǎng)信息, 包括用戶可用寄存器的信息; 控制和狀態(tài)寄存 器的信息;棧指針。3.4 為什么進(jìn)程狀態(tài)會(huì)發(fā)生變化?何時(shí)變化?( P54) 答:進(jìn)程在它的生存周期中, 由于系統(tǒng)中各進(jìn)程并發(fā)運(yùn)行及 相互制約的結(jié)果,使得它的狀態(tài)不斷發(fā)生變化。狀態(tài)變化的時(shí)機(jī):空創(chuàng)建:當(dāng)一個(gè)新進(jìn)程被產(chǎn)生來(lái)執(zhí)行一個(gè)程序時(shí)。 創(chuàng)建就緒:當(dāng)進(jìn)程被創(chuàng)建
12、完成,初始化后,一切就緒準(zhǔn)備 運(yùn)行時(shí)。就緒運(yùn)行:當(dāng)處于就緒狀態(tài)的進(jìn)程被進(jìn)程調(diào)度程序選中后。運(yùn)行結(jié)束:當(dāng)進(jìn)程指示它已經(jīng)完成或者因錯(cuò)流產(chǎn)時(shí)。運(yùn)行就緒: 處于運(yùn)行狀態(tài)的進(jìn)程在其運(yùn)行過(guò)程中, 分給它 的處理機(jī)時(shí)間片用完而讓出處理機(jī);或者在可剝奪的操作系統(tǒng) 中,當(dāng)有更高優(yōu)先級(jí)的進(jìn)程就緒時(shí)。運(yùn)行阻塞:當(dāng)進(jìn)程請(qǐng)求某樣?xùn)|西且必須等待時(shí)。 阻塞就緒:當(dāng)進(jìn)程要等待事件到來(lái)時(shí)。3.5 進(jìn)程創(chuàng)建的主要工作是什么?( P54)答:進(jìn)程創(chuàng)建時(shí)的主要工作如下:1、接收進(jìn)程運(yùn)行現(xiàn)場(chǎng)初始值,初始優(yōu)先級(jí),初始執(zhí)行程序 描述,其它資源等參數(shù)。2、請(qǐng)求分配進(jìn)程描述塊 PCB 空間,得到一個(gè)內(nèi)部數(shù)字進(jìn)程 標(biāo)識(shí)。3、用從父進(jìn)程傳來(lái)的參數(shù)
13、初始化 PCB 表。4、產(chǎn)生描述進(jìn)程空間的數(shù)據(jù)結(jié)構(gòu),用初始執(zhí)行文件初始化 進(jìn)程空間,建立程序段,數(shù)據(jù)段、棧段等。5、用進(jìn)程運(yùn)行現(xiàn)場(chǎng)初始值設(shè)置處理機(jī)現(xiàn)場(chǎng)保護(hù)區(qū)。造一個(gè) 進(jìn)程運(yùn)行棧幀。6、置好父進(jìn)程等關(guān)系域。7、將進(jìn)程置成就緒狀態(tài)。8、將 PCB 表掛入就緒隊(duì)列,等待時(shí)機(jī)被調(diào)度運(yùn)行。3.7 詳細(xì)說(shuō)明幾個(gè)引起進(jìn)程調(diào)度的原因。 ( P62) 答: 1、進(jìn)程主動(dòng)放棄處理機(jī)時(shí):正在執(zhí)行的進(jìn)程執(zhí)行完畢。 操作系統(tǒng)在處理進(jìn)程結(jié)束系 統(tǒng)調(diào)用后應(yīng)請(qǐng)求重新調(diào)度。正在執(zhí)行的進(jìn)程發(fā)出 I/O 請(qǐng)求, 當(dāng)操作系統(tǒng)代其啟動(dòng)外 設(shè) I/O 后,在 I/O 請(qǐng)求沒有完成前要將進(jìn)程變成阻塞狀態(tài),應(yīng)該 請(qǐng)求重新調(diào)度。正在執(zhí)行的進(jìn)程
14、要等待其它進(jìn)程或系統(tǒng)發(fā)出的事件時(shí)。 如等待另一個(gè)進(jìn)程通訊數(shù)據(jù), 這時(shí)操作系統(tǒng)應(yīng)將現(xiàn)運(yùn)行進(jìn)程掛到 等待隊(duì)列,并且請(qǐng)求重新調(diào)度。正在執(zhí)行的進(jìn)程得不到所要的系統(tǒng)資源, 如要求進(jìn)入臨 界區(qū),但沒有得到鎖時(shí), 這時(shí)等鎖的進(jìn)程應(yīng)自動(dòng)放棄處理機(jī)或者 阻塞到等鎖隊(duì)列上,并且請(qǐng)求重新調(diào)度。2、為了支持可剝奪的進(jìn)程調(diào)度方式,在以下情況發(fā)生 時(shí),因?yàn)樾戮途w的進(jìn)程可能會(huì)按某種調(diào)度原則剝奪正運(yùn)行的進(jìn) 程,因此也應(yīng)該申請(qǐng)進(jìn)行進(jìn)程調(diào)度:當(dāng)中斷處理程序處理完中斷,如 I/O 中斷、通訊中斷, 引起某個(gè)阻塞進(jìn)程變成就緒狀態(tài)時(shí),應(yīng)該請(qǐng)求重新調(diào)度。當(dāng)進(jìn)程釋放資源, 走出臨界區(qū), 引起其他等待該資源進(jìn) 程從阻塞狀態(tài)進(jìn)入就緒狀態(tài)時(shí),應(yīng)
15、該請(qǐng)求重新調(diào)度。當(dāng)進(jìn)程發(fā)系統(tǒng)調(diào)用, 引起某個(gè)事件發(fā)生, 導(dǎo)致等待事件 的進(jìn)程就緒時(shí)。其它任何原因引起有進(jìn)程從其它狀態(tài)變成就緒狀態(tài), 如 進(jìn)程被中調(diào)選中時(shí)。3、為了支持可剝奪調(diào)度,即使沒有新就緒進(jìn)程 ,為了讓 所有就緒進(jìn)程輪流占用處理機(jī), 可在下述情況下申請(qǐng)進(jìn)行進(jìn)程調(diào) 度:當(dāng)時(shí)鐘中斷發(fā)生 ,時(shí)鐘中斷處理程序調(diào)用有關(guān)時(shí)間片的 處理程序,發(fā)現(xiàn)正運(yùn)行進(jìn)程時(shí)間片到,應(yīng)請(qǐng)求重新調(diào)度。以便讓 其他進(jìn)程占用處理機(jī)。在按進(jìn)程優(yōu)先級(jí)進(jìn)行進(jìn)程調(diào)度的操作系統(tǒng)中, 任何原因 引起進(jìn)程的優(yōu)先級(jí)發(fā)生變化時(shí), 應(yīng)請(qǐng)求重新調(diào)度。 如進(jìn)程通過(guò)系 統(tǒng)調(diào)用自愿改變優(yōu)先級(jí)時(shí)或者系統(tǒng)處理時(shí)鐘中斷時(shí), 根據(jù)各進(jìn)程 等待處理機(jī)的時(shí)間長(zhǎng)短而調(diào)
16、整進(jìn)程的優(yōu)先級(jí)。3.8 什么時(shí)候進(jìn)行進(jìn)程調(diào)度最為合適?請(qǐng)說(shuō)明理由。 ( P63) 答:進(jìn)程調(diào)度的時(shí)機(jī):當(dāng)發(fā)生引起調(diào)度條件, 且當(dāng)前進(jìn)程無(wú)法繼續(xù)運(yùn)行下去時(shí) (如 發(fā)生各種進(jìn)程放棄處理機(jī)的條件)可以馬上進(jìn)行調(diào)度與切換。當(dāng)中斷處理結(jié)束或自陷處理結(jié)束返回被中斷進(jìn)程的用戶態(tài) 程序執(zhí)行前, 若請(qǐng)求調(diào)度標(biāo)志置上, 即可馬上進(jìn)行進(jìn)程調(diào)度與切 換。如果操作系統(tǒng)支持這種情況下運(yùn)行調(diào)度程序, 即實(shí)現(xiàn)了剝奪 方式的調(diào)度。3.10 對(duì)于三類進(jìn)程( I/O 為主、 CPU 為主和 I/O 與CPU 均衡), 應(yīng)如何賦予它們的運(yùn)行優(yōu)先級(jí)并說(shuō)明理由。 (P67)答:對(duì)于這三類進(jìn)程,賦予的優(yōu)先級(jí)由高到低分別為: I/O 為主、
17、 I/O 與 CPU均衡、 CPU為主。理由:為了充分利用外部設(shè)備, 以及對(duì)終端交互用戶及時(shí)地 予以響應(yīng),通常將 I/O 型進(jìn)程列為最高優(yōu)先級(jí)隊(duì)列。3.11 假設(shè)在單處理機(jī)上有五個(gè)進(jìn)程( 1、2、3、4、5)爭(zhēng)奪運(yùn)行, 其運(yùn)行時(shí)間分別為 10,1, 2, 1,5 秒,其優(yōu)先級(jí)分別為 3,1, 3, 4, 2,這些進(jìn)程幾乎同時(shí)到達(dá),但在就緒隊(duì)列中的次序依次 為 1, 2,3,4,5,試回答: 給出這些進(jìn)程分別適用輪轉(zhuǎn)法、 SPF 和非剝奪優(yōu)先級(jí)調(diào)度 法調(diào)度時(shí)的運(yùn)行進(jìn)度表,其中,輪轉(zhuǎn)法中的時(shí)間片取值為2。 在上述各算法的調(diào)度下每個(gè)進(jìn)程的周轉(zhuǎn)時(shí)間和等待時(shí)間 為多少? 具有最短平均等待時(shí)間的算法是哪個(gè)
18、?答:輪轉(zhuǎn)法:時(shí)間片21212222122進(jìn)程12345151511進(jìn)程的周轉(zhuǎn)時(shí)間:進(jìn)程 1: 19,進(jìn)程 2: 3,進(jìn)程 3:5,進(jìn)程 4: 6,進(jìn)程 5: 15進(jìn)程的等待時(shí)間:進(jìn)程 1:9,進(jìn)程 2:2,進(jìn)程 3: 3,進(jìn)程 4: 5,進(jìn)程 5: 10平均等待時(shí)間( 9+2+3+5+10) /5=5.8 SPF算法:進(jìn)程提交時(shí)間結(jié)束時(shí)間等待時(shí)間周轉(zhuǎn)時(shí)間101012919919324244121254949平均等待時(shí)間: 16/5=3.2非剝奪優(yōu)先級(jí)算法進(jìn)程提交時(shí)間結(jié)束時(shí)間等待時(shí)間周轉(zhuǎn)時(shí)間111111121819181931113111340101513181318平均等待時(shí)間: 43/5=
19、8.6SPF算法具有最短平均等待時(shí)間3.19 什么是批處理作業(yè)和交互式作業(yè)?它們的特點(diǎn)是什么?系 統(tǒng)如何管理?答:批處理作業(yè)是指用戶將若干用戶任務(wù)合成一批, 一起提 交給系統(tǒng)進(jìn)行處理的任務(wù)集合。 交互式作業(yè)是指用戶的一次上機(jī) 交互過(guò)程,用戶通過(guò)命令語(yǔ)言逐條地與系統(tǒng)進(jìn)行應(yīng)答式的交互, 提交作業(yè)步。特點(diǎn):批處理作業(yè)的處理過(guò)程由計(jì)算機(jī)自動(dòng)運(yùn)行, 不需人為 干預(yù),用戶也看不到中間結(jié)果。 交互式作業(yè)需要系統(tǒng)提供終端供 用戶與系統(tǒng)交互, 作業(yè)的運(yùn)行由人控制, 便于作業(yè)的調(diào)試以及將 作業(yè)按人預(yù)想的方向進(jìn)行。4.1 并行任務(wù)如何在程序中表示?( P74)答:并行任 務(wù)在 程序中主要 通過(guò) 并發(fā)語(yǔ)句來(lái) 表示 。
20、如 Parbegin/Parend語(yǔ)句4.2 并行任務(wù)并行(并發(fā))運(yùn)行的操作系統(tǒng)支持基礎(chǔ)是什么? 答:支持基礎(chǔ)是進(jìn)程和線程的引入。 在多道程序設(shè)計(jì)系統(tǒng)中, 進(jìn)程之間可以并發(fā)執(zhí)行, 這就使多任務(wù)并行執(zhí)行成為可能。 同時(shí), 線程的引入, 同一進(jìn)程內(nèi)的多個(gè)線程也可以并行運(yùn)行, 這也提供 了任務(wù)內(nèi)部的并行。提高了效率。4.3 題略答:答:進(jìn)程 P0在flag0=false 后,進(jìn)程 P1跳出循環(huán),此 時(shí)剛好來(lái)了一個(gè)中斷。中斷使得進(jìn)程 P0 又再次執(zhí)行,此時(shí)由于 P1 并沒有給 turn 賦值,從而 P0 可以順利進(jìn)入臨界段,在 P0進(jìn)入臨界段時(shí)產(chǎn)生中斷, P1恢復(fù)執(zhí)行,將 turn 賦值為 1,從而
21、P1也可以進(jìn)入臨界段。從而產(chǎn)生錯(cuò)誤。4.4 何謂原語(yǔ)?它與系統(tǒng)調(diào)用有何區(qū)別?如何實(shí)現(xiàn)原語(yǔ)執(zhí)行的 不可分割性?答: 原語(yǔ)是指完成某種功能且不被分割、 不被中斷執(zhí)行的操 作序列。有時(shí)也稱為原子操作。它與系統(tǒng)調(diào)用的區(qū)別:原語(yǔ)和系統(tǒng)調(diào)用是兩個(gè)不同的概念, 原語(yǔ)主要強(qiáng)調(diào)操作的不可分割性, 可以認(rèn)為是一個(gè)不可中斷的子 程序調(diào)用, 但是系統(tǒng)調(diào)用是由用戶態(tài)進(jìn)入核心態(tài), 雖然系統(tǒng)調(diào)用 一般也不被中斷, 但是如果有更高更緊迫的系統(tǒng)調(diào)用的話, 還是 能夠打斷原來(lái)的系統(tǒng)調(diào)用的。實(shí)現(xiàn)原語(yǔ)執(zhí)行的不可分割性: 通常由硬件來(lái)實(shí)現(xiàn), 也可以由 軟件通過(guò)中斷屏蔽的方法來(lái)實(shí)現(xiàn)。4.6 如果 P,V 操作不作為原語(yǔ) (可分割執(zhí)行)
22、,那么是否還可用 于解決互斥問題?如果不能,則舉例說(shuō)明。答:如果 P,V 操作不作為原語(yǔ),那么不可用于解決互斥問 題。因?yàn)槿绻菢拥脑?,則:程序語(yǔ)言 s = s-1;翻譯成機(jī)器語(yǔ)言 為: load R1, s; load R2, 1; sub R1, R2; 此時(shí),他們之間的操作可 以分割執(zhí)行,假設(shè)有兩個(gè)進(jìn)程 P1、P2,s初值為 1,當(dāng) P1進(jìn)入 P 操作時(shí), s 大于 0,可以進(jìn)入,因此會(huì)執(zhí)行上面的機(jī)器語(yǔ)言,將 s 的值取出來(lái),放入 R1 寄存器中,而此時(shí),有可能 P2 進(jìn)程要進(jìn) 入臨界段,因此,它也比較 s 的值是否小于 0,因?yàn)榇藭r(shí) s的值 仍為 1,所以 P2 也進(jìn)入臨界段,出現(xiàn)錯(cuò)誤
23、。4.13 題 略 答:empty1=1; empty2=1; full1=0; full2=0;parbeginP: While(1)P(empty1);put to buffer1;V(full1);Q: While(1)P(full1);get from buffer1;V(empty1);P(empty2);put to buffer2;V(full2);R: While(1) P(full2);get from buffer2;V(empty2); parend;empty1=m; empty2=n; full1=0; full2=0;mutex1=1;mutex2=1; parbe
24、ginP: While(1) P(empty1);P(mutex1);put to buffer1;V(full1); V(mutex1); Q: While(1) P(full1);P(mutex1);get from buffer1;V(empty1);V(mutex1);P(empty2);P(mutex2);put to buffer2;V(full2);V(mutex2);R: While(1) P(full2);P(mutex2);get from buffer2;V(empty2);V(mutex2);parend;4.14 題略答:P1: Sa;V(ac);V(ae);Sb;P
25、(cd);Sd;P(fe);Sf;V(fh);Sg;P2: P(ac);Sc;V(cd);P3: P(ae);Se;V(fe);P(fh);Sh;4.23 題略 答:解題方法,找出可能死鎖的資源最多的情況。假設(shè) n 個(gè) 進(jìn)程需要的資源數(shù)分別為: a1,a2,. an,則占有資源數(shù)最多卻剛 好形成死鎖的情況是: 每個(gè)進(jìn)程都占有比所需資源數(shù)少一個(gè)的資 源數(shù)量,而此時(shí)剛好資源用光。所以是: (a1-1)+(a2-1)+ +(an-1)=m ,整理得 a1+a2+an=m+n,而要 想使得系統(tǒng)無(wú)死鎖,則必須有 a1+a2+ +an<m+n。命題得證。4.28 題略答: 1、 Need 的內(nèi)容為:
26、 0000,0750,1002,0020,0642 2、系統(tǒng)是處于安全狀態(tài)。3、進(jìn)程 2 請(qǐng)求 0420,不能立即得到滿足,因?yàn)槿绻o 進(jìn)程 2 分配了 0420 的話,系統(tǒng)將處于不安全狀態(tài)。所以不能立 即得到滿足。4.11 多元信號(hào)量機(jī)構(gòu)允許 P,V 操作同時(shí)對(duì)多個(gè)信號(hào)量進(jìn)行操 作。這種機(jī)構(gòu)對(duì)同時(shí)申請(qǐng)或釋放若干個(gè)資源是非常有用的。 假設(shè) 二元信號(hào)量機(jī)構(gòu)中的 P 原語(yǔ)定義為:P(S,R) : While(S0 or R0);S=S-1;R=R-1;試用一元信號(hào)量機(jī)構(gòu)加以實(shí)現(xiàn)。答: mutex: semaphoreP(mutex);P(S);P(R);V(mutex);4.15 “理發(fā)師睡覺 ”
27、問題 答:可以將此題看作 N 個(gè)生產(chǎn)者和一個(gè)消費(fèi)者問題。顧客作為 生產(chǎn)者,每到來(lái)一個(gè),就將自己放入計(jì)數(shù)器RC,以便讓理發(fā)師消費(fèi)至最后一個(gè)產(chǎn)品(顧客) ,因此顧客進(jìn)程執(zhí)行的第一個(gè)語(yǔ)句 便是 RC=RC+1 。而第一個(gè)到來(lái)的顧客應(yīng)該負(fù)責(zé)喚醒理發(fā)師,理 發(fā)師此時(shí)正在信號(hào)量 WAKEUP 上等待( P(WAKEUP); 該信號(hào)量 的初值為 0),由第一個(gè)顧客執(zhí)行 V(WAKEUP) 。若顧客不是第一 個(gè)到達(dá),則在信號(hào)量 WAIT 上等待( P(WAIT) 該信號(hào)量的初值為 0),等理發(fā)師理完一個(gè)顧客后, 執(zhí)行 V(WAIT) 操作便可叫出該顧 客理發(fā)。以上過(guò)程循環(huán)反復(fù),理發(fā)師沒每理完一個(gè)顧客,就令計(jì)
28、數(shù)器減 1, RC=0 時(shí)便知此時(shí)無(wú)顧客,理發(fā)師可以繼續(xù)睡覺,等 待下一批顧客到達(dá)。在設(shè)信號(hào)量 MUTEX( 初值為 1),保證對(duì)計(jì) 數(shù)器 RC 的互斥作用。parbegin顧客進(jìn)程:beginP(mutex);rc=rc+1;if rc=1 then V(wakeup); elseP(wait);V(mutex); 理發(fā); end;理發(fā)師進(jìn)程:beginP(wakeup);repeat理發(fā);P(mutex);rc=rc-1;if(rc!=0) then V(wait);V(mutex);until rc=0;end;parend;4.21 題略進(jìn)程數(shù)資源總數(shù)是否可能死鎖11不會(huì)12不會(huì)21不
29、會(huì)22可能會(huì)23可能會(huì)進(jìn)程數(shù)資源總數(shù)是否可能死鎖12不會(huì)22可能會(huì)23不會(huì)33可能會(huì)34不會(huì)5.5 答:需要的硬件支持可以選擇兩種: 1、上、下界寄存器和 地址檢查機(jī)制; 2、基地址寄存器、長(zhǎng)度寄存器和動(dòng)態(tài)地址轉(zhuǎn)換 機(jī)制。地址轉(zhuǎn)換的過(guò)程也即是地址重定位的過(guò)程,也有兩種方法實(shí)現(xiàn)地址重定位:1、靜態(tài)重定位,用戶代碼中使用相對(duì)地址,在將目標(biāo)代碼 加載到主存時(shí), 裝配鏈接程序通過(guò)如下的方法將其裝配成絕對(duì)地 址:原地址 +目標(biāo)代碼所在主存起始地址;2、動(dòng)態(tài)重定位, 它首先將程序在主存的起始地址及其總長(zhǎng) 度存放于基地址寄存器和長(zhǎng)度寄存器, 當(dāng)在執(zhí)行訪存指令時(shí), 首 先進(jìn)行越界檢查, 若不越界, 則將地址改
30、成 “原地址 +目標(biāo)代碼所 在主存起始地址 ”,然后進(jìn)行訪問。實(shí)現(xiàn)存儲(chǔ)保護(hù): 當(dāng)使用第一種硬件機(jī)制時(shí),每訪問一次主存,地址檢查機(jī) 制將 CPU 提供的訪存地址與上、下界寄存器的值進(jìn)行比較。若 介乎上下界之間, 則可用該地址訪問存儲(chǔ)器, 否則終止程序的運(yùn) 行。當(dāng)使用第二種硬件機(jī)制時(shí), ,每訪問一次主存,它將 CPU 提供的訪存地址與長(zhǎng)度寄存器的值進(jìn)行比較。 若越界, 則終止程 序,否則與基地址寄存器中的值相加成為訪問貯存的絕對(duì)物理地 址。5.6 為什么要引進(jìn)頁(yè)式存儲(chǔ)管理方法?在這種管理方法中硬件應(yīng) 提供哪些支持?答:原因在于連續(xù)分配存儲(chǔ)空間存在許多存儲(chǔ)碎片和空間管 理復(fù)雜的問題, 而連續(xù)分配要求
31、把作業(yè)放在主存的一片連續(xù)區(qū)域 中,這往往容易出現(xiàn)連續(xù)空間因不能容納作業(yè)或進(jìn)程而不可用。而頁(yè)式存儲(chǔ)管理方法可以避免這種情況的發(fā)生。硬件應(yīng)提供的支持: 動(dòng)態(tài)地址轉(zhuǎn)換機(jī)構(gòu), 頁(yè)表長(zhǎng)度寄存 器,聯(lián)想存儲(chǔ)器(頁(yè)表以及訪問權(quán)限域均在主存中) 。5.7 題略 答:(1)訪問一次頁(yè)面單元需要訪問兩次主存,因此訪問時(shí) 間為: 1.2*2=2.4us;( 2)等效存儲(chǔ)訪問時(shí)間為: 1.2*75%+2.4*25%=1.5us ;5.11 在頁(yè)式存儲(chǔ)管理系統(tǒng)中怎樣使多個(gè)作業(yè)共享一個(gè)程序或數(shù) 據(jù)?答:在每個(gè)作業(yè)的頁(yè)表中,將需要共享的程序映射到存放該 共享程序或數(shù)據(jù)的相同的物理頁(yè)幀上。5.17 題略答:系統(tǒng)得到物理地址的
32、過(guò)程:由題設(shè)可得,虛存地址的邏輯頁(yè)號(hào)為: 11123,頁(yè)內(nèi)偏移 為 456 ;從聯(lián)想存儲(chǔ)器中查找邏輯頁(yè)號(hào)為 11123 對(duì)應(yīng)的物理頁(yè)幀 號(hào),如果有, 則將物理頁(yè)幀號(hào)和頁(yè)內(nèi)偏移合成成物理地址進(jìn)行訪 問,否則從頁(yè)表中查找。在頁(yè)表中找到相應(yīng)項(xiàng), 查看該頁(yè)的合法位是否置上, 若為 1,則將該項(xiàng)指出的頁(yè)幀號(hào)和頁(yè)內(nèi)偏移合成成物理地址進(jìn)行訪問, 若合法位為 0,則產(chǎn)生頁(yè)故障,系統(tǒng)將頁(yè)表項(xiàng)所指的輔存塊號(hào)調(diào) 入主存,然后合成物理地址進(jìn)行訪問。硬件完成的工作:獲得頁(yè)幀號(hào),合成物理地址,以及合法位是否置上等。軟件完成的工作:接收缺頁(yè)異常,對(duì)缺頁(yè)故障進(jìn) 行處理,返回現(xiàn)場(chǎng)。5.18 題略答:訪問的相應(yīng)邏輯頁(yè)號(hào)為: 0,
33、0,1,1,0, 3,1, 2,2, 4,4,3。采用 FIFO :故障數(shù): 6;頁(yè)故障率: 6/12=50%采用 LRU ,淘汰上次使用距當(dāng)前最遠(yuǎn)的頁(yè) :故障數(shù): 7;頁(yè)故障率為: 7/12=58.3%采用 OPT,淘汰下次訪問距當(dāng)前最遠(yuǎn)的那些頁(yè)中序號(hào)最小的一頁(yè) :故障數(shù): 5;頁(yè)故障率: 5/12=41.7%5.19 題略答:棧結(jié)構(gòu)對(duì)數(shù)據(jù)的訪問一般在棧頂附近, 或者離棧頂不 遠(yuǎn),符合程序的局部性行態(tài); 雜湊技術(shù)取決于 Hash 值的大小,如果太大,則會(huì)頻 繁出現(xiàn)缺頁(yè),不利于程序的局部性行態(tài); 順序搜索是根據(jù)當(dāng)前項(xiàng)向前或向后逐個(gè)搜索,符合 程序的局部性行態(tài); goto 語(yǔ)句往往使程序從一個(gè)地
34、方跳到另一個(gè)地方, 空間跨度往往比較大,少用或不用 goto 語(yǔ)句使程序能夠在局部 范圍內(nèi)執(zhí)行,符合程序的局部性行態(tài)。5.24 題略答:駐留集大小為 2 個(gè)頁(yè)幀,但是程序要長(zhǎng)期駐留在主存中, 必須占用一頁(yè), 所以駐留集中只有一頁(yè)留給數(shù)據(jù)使用。 假設(shè)數(shù)組 中每一個(gè)元素占一個(gè)字的空間, 因?yàn)槊恳豁?yè)有 100 個(gè)字,而且數(shù) 組是 按行 主順序 存放 ,當(dāng) 采 用 1 策略 時(shí), 賦值順序 為 : A(1,1),A(2,1), A(100,1) ,每一次賦值都產(chǎn)生缺頁(yè)異常,因此 頁(yè)故障數(shù)為 100*100=10000 ,而采用 2 策略時(shí),只在第一維產(chǎn)生 變化時(shí)才產(chǎn)生缺頁(yè)故障,因此頁(yè)故障數(shù)為 100。
35、5.31 設(shè)有如下訪問串: 6, 9,2,1,0,3, 5,4,3, 2,1,0, 2,1。取 =4,給出用 WS 與 VMIN 兩種算法控制該訪問串駐 留集的變化情況。答:用 WS 方法,有個(gè)時(shí)間未被引用則將其淘汰;用 VMIN 方法,若某頁(yè)下次訪問的距離大于, 則將其淘 汰。5.33 如果主存中的某頁(yè)正在與外部設(shè)備交換信息,那么在頁(yè)故 障中斷時(shí)可以將這一頁(yè)淘汰嗎?對(duì)于這種情況應(yīng)如何解決? (P110-111)答:不能將這一頁(yè)淘汰, ,因?yàn)槿绻蕴鋈サ脑?,則新進(jìn) 入的頁(yè)將代替正在交換信息的頁(yè), 而 I/O 數(shù)據(jù)區(qū)將被新?lián)Q入的頁(yè) 所代替,從而導(dǎo)致錯(cuò)誤。因此,應(yīng)該等該、頁(yè)與外部設(shè)備交換信 息結(jié)
36、束之后,才能將該頁(yè)淘汰。5.34 題略答:訪問虛地址 (233)8 時(shí)不會(huì)發(fā)生缺頁(yè)故障,因?yàn)楦鶕?jù)虛地 址可得,它的頁(yè)號(hào)為 2,頁(yè)內(nèi)偏移為 (33)8,而在頁(yè)表中頁(yè)號(hào)為 2 的頁(yè)有效位為 1,說(shuō)明在主存中,相應(yīng)的頁(yè)幀號(hào)為 20,所以物理 地址為 (20)8*82+(33)8=(2033)8 ,而訪問 (345)8 時(shí)會(huì)發(fā)生缺頁(yè)中 斷,根據(jù)虛地址可得它的頁(yè)號(hào)為 3,頁(yè)內(nèi)偏移為 (45)8,查頁(yè)表可 得,該頁(yè)的有效位為 0,因此不在主存中,產(chǎn)生缺頁(yè)中斷,它首 先向主存申請(qǐng)一個(gè)可用的頁(yè)幀, 然后檢查該故障頁(yè)的頁(yè)類型, 為 零頁(yè),因此將剛申請(qǐng)到的頁(yè)幀清零,將頁(yè)幀號(hào)填入頁(yè)表項(xiàng)中,將 合法位置為 1,然后返
37、回。6.2 設(shè)備控制器與處理機(jī)如何通信?答:CPU 通過(guò)向控制器寄存器寫命令字來(lái)發(fā)出 I/O 命令, 控制器接到命令后,完成具體的 I/O 操作,CPU 則反復(fù)讀取控制器的狀態(tài),測(cè)試控制器是否完成操作。 或者轉(zhuǎn)向其他工作, 當(dāng)控制器完成相應(yīng)操作后向 CPU 發(fā)出中 斷信號(hào)。6.3 簡(jiǎn)述各種不同的 I/O 控制方式?答:主要有三種不同的 I/O 控制方式:1、程序直接控制方式。 當(dāng)遇到一條與 I/O 相關(guān)的指令時(shí), CPU 向相應(yīng)的設(shè)備控制器發(fā)命令, 設(shè)備控制器執(zhí)行相應(yīng)的操作, 將 I/O 狀態(tài)寄存器的相應(yīng)位置上,然后 CPU 周期性地檢查設(shè)備控制器 的狀態(tài)寄存器,直到發(fā)現(xiàn) I/O 操作完成為止
38、。 CPU 直接控制 I/O 操作過(guò)程,包括測(cè)試設(shè)備狀態(tài),發(fā)送讀 /寫命令與數(shù)據(jù)。2、中斷驅(qū)動(dòng)方式。 CPU 向設(shè)備控制器發(fā)出命令后,繼續(xù)做 其他工作。當(dāng)設(shè)備控制器準(zhǔn)備好 CPU 交換數(shù)據(jù)時(shí),設(shè)備控制器 中斷 CPU,要求服務(wù)。 CPU被中斷后,執(zhí)行 CPU 寄存器和設(shè)備 控制器之間的數(shù)據(jù)傳輸,然后恢復(fù)被中斷的工作。3、DMA 方式:當(dāng) CPU需要讀 /寫數(shù)據(jù)塊時(shí), 它給 DMA 部件 發(fā)命令,然后繼續(xù)執(zhí)行其他的工作。 DMA 負(fù)責(zé)此次 I/O 的完成, DMA 部件每次一個(gè)字地將整個(gè)數(shù)據(jù)塊直接讀取或?qū)懭胫鞔?,?不需經(jīng)過(guò) CPU 寄存器。當(dāng)傳送過(guò)程完成后, DMA 部件向 CPU 發(fā)中斷信號(hào)
39、。6.4 什么是獨(dú)占型設(shè)備和分時(shí)共享型設(shè)備?如何保證獨(dú)占型設(shè) 備的獨(dú)占使用?( P147)答:獨(dú)占型設(shè)備是指在申請(qǐng)?jiān)O(shè)備時(shí),如果設(shè)備空閑,就將其 獨(dú)占,不再允許其他進(jìn)程申請(qǐng)使用,一直等到該設(shè)備被釋放,才 允許被其他進(jìn)程申請(qǐng)使用。分時(shí)共享型設(shè)備:設(shè)備接受多個(gè) I/O 請(qǐng)求,并將其放在請(qǐng)求 隊(duì)列中,不同進(jìn)程的 I/O 操作請(qǐng)求以排隊(duì)的方式分時(shí)地占用設(shè)備 進(jìn)行 I/O 。如何保證獨(dú)占使用:對(duì)獨(dú)占型設(shè)備進(jìn)行獨(dú)占申請(qǐng),即在申請(qǐng) 時(shí),如果申請(qǐng)成功,就對(duì)該設(shè)備進(jìn)行加鎖操作,直到該 I/O 完成 后,才釋放鎖,從而釋放該設(shè)備。6.5 以 SPOOLing 方式使用設(shè)備是如何實(shí)現(xiàn)的?答: SPOOLing 技術(shù)是
40、在批處理操作系統(tǒng)時(shí)代引入的,即假脫機(jī) I/O 技術(shù),它主要針對(duì)獨(dú)占型設(shè)備的使用。以打印機(jī)為例,首先為每個(gè)打印機(jī)建立一個(gè)打印服務(wù)進(jìn)程,和一個(gè)打印隊(duì)列。 打印服務(wù)進(jìn)程循環(huán)地獲取打印隊(duì)列中的表項(xiàng),對(duì)每一個(gè)要輸出的文件副本, 服務(wù)進(jìn)程從文件副本中讀取數(shù)據(jù),再成批地調(diào)用寫打印機(jī)的系統(tǒng)調(diào)用將該文件的數(shù)據(jù)打印在紙上6.6 以下的工作各在 3個(gè)I/O 軟件層的哪一層完成? 答:涉及到具體的磁道、扇區(qū)、磁頭的計(jì)算,這屬于設(shè)備 驅(qū)動(dòng)與中斷處理層。 屬于緩沖 I/O 的功能,因此屬于與設(shè)備無(wú)關(guān)的 I/O 層。 中涉及到設(shè)備寄存器的操作, 而能操作設(shè)備寄存器的只有 設(shè)備驅(qū)動(dòng)與中斷處理層。 是對(duì)設(shè)備使用權(quán)限的內(nèi)容, 因
41、此屬于與設(shè)備無(wú)關(guān)的 I/O 層。 用戶請(qǐng)求, 他請(qǐng)求系統(tǒng)將二進(jìn)制整數(shù)轉(zhuǎn)換成 ASCII 碼再輸 出,屬于用戶層 I/O 。6.8 如何使用緩沖區(qū)實(shí)現(xiàn) “預(yù)先讀 ”和 “延遲寫 ”?這兩種讀 /寫方 式的優(yōu)缺點(diǎn)是什么?答:預(yù)先讀就是: 將從設(shè)備控制器來(lái)的數(shù)據(jù)先送入系統(tǒng)緩沖 區(qū),該數(shù)據(jù)塊送完后,用戶進(jìn)程將此數(shù)據(jù)塊移到用戶進(jìn)程空間。 并且立即請(qǐng)求下一個(gè)數(shù)據(jù)塊。延遲寫就是: 當(dāng)需要將數(shù)據(jù)寫出時(shí), 首先將數(shù)據(jù)塊從用戶進(jìn) 程空間拷貝到系統(tǒng)緩沖區(qū), 這時(shí)可繼續(xù)執(zhí)行用戶進(jìn)程, 并可在需 要時(shí)換出主存。 操作系統(tǒng)會(huì)安排最終將系統(tǒng)緩沖區(qū)的內(nèi)容輸出到設(shè)備上。優(yōu)點(diǎn)是: 減少 CPU 訪問目標(biāo)存儲(chǔ)部件的次數(shù)。 提高了慢
42、速I/O 設(shè)備和快速 CPU 交互的速度,提高輸入輸出速度。 缺點(diǎn):預(yù)先讀是基于 “下一數(shù)據(jù)塊最終將被使用 ”這一猜測(cè)。因此,當(dāng)這一猜測(cè)失敗時(shí),系統(tǒng)將耗費(fèi)更多的時(shí)間來(lái)處理,猜測(cè) 失敗的代價(jià)是很大的。同時(shí),增加了操作系統(tǒng)的復(fù)雜度。延遲寫也增加了操作系統(tǒng)的復(fù)雜度, 同時(shí)延遲寫還可能出現(xiàn) 數(shù)據(jù)丟失的情況。6.11 假設(shè)對(duì)磁盤的請(qǐng)求串為 95,180,35,120,10, 122,64, 68,磁頭初始位置為 30,試分別畫出 FCFS,SSTF,SCAN , C-SCAN 調(diào)度算法的磁頭移動(dòng)軌跡及磁頭移動(dòng)的磁道數(shù)(磁道 號(hào): 0199)。答: FCFS:First Come First Served
43、,SSTF: Shortest Seek Time First,SCAN:掃描C-SCAN :?jiǎn)蜗驋呙?.16 在磁盤管理程序中何時(shí)進(jìn)行磁盤調(diào)度? 答:當(dāng)有多個(gè)進(jìn)程請(qǐng)求讀取磁盤中的數(shù)據(jù), 而這些數(shù)據(jù)散布 在磁盤的不同位置的時(shí)候, 應(yīng)該進(jìn)行磁盤調(diào)度。 此時(shí)磁盤驅(qū)動(dòng)程 序應(yīng)維持一個(gè)磁盤 I/O 請(qǐng)求隊(duì)列, 對(duì)已有請(qǐng)求和新到來(lái)請(qǐng)求進(jìn)行 排隊(duì)優(yōu)化,確保相鄰請(qǐng)求其磁道相距最近。6.18 RAID 級(jí)別 0+1 有何特點(diǎn)?可用于什么應(yīng)用環(huán)境?答: RAID 級(jí)別 01是指 RAID 級(jí)別 0和 1的結(jié)合。 RAID 級(jí)別 0 提供性能, RAID 級(jí)別 1 提供可靠性。特點(diǎn)是性能高、可 靠性好、價(jià)格高(需
44、要 2 倍磁盤數(shù)目)應(yīng)用環(huán)境:通常用于性能和可靠性都很重要的環(huán)境中。7.2 一個(gè)可以支持隨機(jī)訪問的文件應(yīng)該用什么方式放在輔存 中?答:一個(gè)可以支持隨機(jī)訪問的文件應(yīng)該用索引結(jié)構(gòu)的方式將 其放在輔存中。7.4 試述文件控制塊的作用,請(qǐng)?jiān)O(shè)計(jì)在樹形文件目錄中快速查找 文件控制塊的方法。答:文件控制塊是一張用于存放文件的標(biāo)識(shí)、定位、說(shuō)明和 控制等信息的表格,用于管理和控制文件系統(tǒng)中的全部文件??焖俨檎椅募刂茐K的方法:引入 “當(dāng)前目錄 ”,用戶可指定 某級(jí)目錄作為用戶 “當(dāng)前目錄 ”,當(dāng)前目錄的文件控制塊事先已 讀入并保存在主存。當(dāng)用戶注冊(cè)時(shí),操作系統(tǒng)在記賬文件中 查找與該用戶所對(duì)應(yīng)的信息項(xiàng)。記賬文件中
45、保存了一個(gè)指向 用戶初始 “當(dāng)前目錄 ”的路徑名。 “當(dāng)前目錄 ”最初在用戶登錄時(shí) 自動(dòng)置為該用戶的初始 “當(dāng)前目錄 ”。操作系統(tǒng)提供專門的系統(tǒng) 調(diào)用供用戶隨時(shí)改變 “當(dāng)前目錄 ”。在查找時(shí), 操作系統(tǒng)從根目 錄或“當(dāng)前目錄 ”進(jìn)行查找,因?yàn)楫?dāng)前目錄的 FCB通常是放在 主存中的,所以查找速度會(huì)比較快。7.7 無(wú)環(huán)圖目錄結(jié)構(gòu)與樹形目錄結(jié)構(gòu)相比,優(yōu)勢(shì)在哪里?如何刪除一個(gè)節(jié)點(diǎn)?答:無(wú)環(huán)圖目錄結(jié)構(gòu)的優(yōu)勢(shì)是利于文件的共享, 因?yàn)楫?dāng)樹形 目錄結(jié)構(gòu)想共享某個(gè)文件時(shí),需要在不同的路徑保存多個(gè)副本, 這樣浪費(fèi)了存儲(chǔ)空間。 而無(wú)環(huán)圖目錄結(jié)構(gòu)只需增加一個(gè)稱為鏈的 新目錄項(xiàng),讓其指向需要共享的文件即可。節(jié)省了空間,
46、管理更 靈活。如何刪除節(jié)點(diǎn): 為每個(gè)節(jié)點(diǎn)設(shè)置一個(gè)共享計(jì)數(shù)器, 每當(dāng)增加 了一條共享鏈時(shí),就將其共享計(jì)數(shù)器加 1,每當(dāng)要?jiǎng)h除某個(gè)節(jié)點(diǎn) 時(shí),其共享計(jì)數(shù)器減 1,當(dāng)計(jì)數(shù)器為 0 時(shí),就真正刪除該節(jié)點(diǎn)。7.9 請(qǐng)比較輔存空間分配和主存空間分配的特點(diǎn)。答:輔存空間的特點(diǎn)是容量大,如何在大量的文件中快速查 找和定位你所需的文件是輔存空間分配需要考慮的主要問題。 在 邏輯空間,通常將文件組織成目錄結(jié)構(gòu),在物理存儲(chǔ)時(shí),將其組 織成鏈表結(jié)構(gòu)或索引結(jié)構(gòu)存放在輔存中, 文件系統(tǒng)對(duì)未分配空間 保持一個(gè) “自由空間表 ”的數(shù)據(jù)結(jié)構(gòu),通常組織成位向量的形式, 每一個(gè)柱面對(duì)應(yīng)一個(gè)位向量, 所有位向量組成一個(gè)位圖數(shù)組, 它 記錄了整個(gè)磁盤空間的使用情況。而主存空間容量小,訪問速度快,因此主存空間分配主要考 慮的是如何提高主存空間的訪問速度、利用率和命中率。因此, 在主存空間分配之前, 將所有的主存空間分頁(yè), 并將每一頁(yè)登記 在頁(yè)表中, 將用戶的邏輯頁(yè)對(duì)應(yīng)著主存的物理頁(yè)幀, 分配主存空 間時(shí)在頁(yè)表中登記, 當(dāng)需替換頁(yè)時(shí), 采用好的替換策略提高主存的命中率。7.10 試述 “打開文件 ”所做的工作。答:根據(jù)參數(shù)所指出的文件名和卷名找到相應(yīng)文件。 將該文件的文件控制塊存入主存的活躍文件目錄表。 建立該文件的讀 /寫狀態(tài)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度互聯(lián)網(wǎng)企業(yè)派遣員工網(wǎng)絡(luò)安全合同3篇
- 2025年全新公對(duì)公借款合同模板下載及服務(wù)支持10篇
- 二零二五年度體育館租賃合同附體育賽事推廣及贊助招商服務(wù)
- 2025版智能工廠生產(chǎn)線改造施工合同4篇
- 二零二五年度新能源產(chǎn)品銷售代理合作合同范本3篇
- Bobath技術(shù)閆秀麗講解
- 2025年度個(gè)人藝術(shù)品租賃借款合同范本及租賃期限約定
- 2025年室內(nèi)墻面批白工程售后服務(wù)合同
- 二零二五年度戶外廣告照明外接電源供應(yīng)合同
- 2025年度個(gè)人房屋抵押貸款擔(dān)保及養(yǎng)老保障服務(wù)合同
- 道路瀝青工程施工方案
- 2025年度正規(guī)離婚協(xié)議書電子版下載服務(wù)
- 《田口方法的導(dǎo)入》課件
- 內(nèi)陸?zhàn)B殖與水產(chǎn)品市場(chǎng)營(yíng)銷策略考核試卷
- 電力電纜工程施工組織設(shè)計(jì)
- 醫(yī)生給病人免責(zé)協(xié)議書(2篇)
- 票據(jù)業(yè)務(wù)居間合同模板
- 高中物理選擇性必修2教材習(xí)題答案
- 應(yīng)急預(yù)案評(píng)分標(biāo)準(zhǔn)表
- “網(wǎng)絡(luò)安全課件:高校教師網(wǎng)絡(luò)安全與信息化素養(yǎng)培訓(xùn)”
- 鋰離子電池健康評(píng)估及剩余使用壽命預(yù)測(cè)方法研究
評(píng)論
0/150
提交評(píng)論