![操作系統(tǒng)(1~8章的課后習題答案)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/16/f594ec66-315c-4ec6-90b6-63d53b4c231a/f594ec66-315c-4ec6-90b6-63d53b4c231a1.gif)
![操作系統(tǒng)(1~8章的課后習題答案)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/16/f594ec66-315c-4ec6-90b6-63d53b4c231a/f594ec66-315c-4ec6-90b6-63d53b4c231a2.gif)
![操作系統(tǒng)(1~8章的課后習題答案)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/16/f594ec66-315c-4ec6-90b6-63d53b4c231a/f594ec66-315c-4ec6-90b6-63d53b4c231a3.gif)
![操作系統(tǒng)(1~8章的課后習題答案)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/16/f594ec66-315c-4ec6-90b6-63d53b4c231a/f594ec66-315c-4ec6-90b6-63d53b4c231a4.gif)
![操作系統(tǒng)(1~8章的課后習題答案)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/16/f594ec66-315c-4ec6-90b6-63d53b4c231a/f594ec66-315c-4ec6-90b6-63d53b4c231a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1.1:存儲程序式計算機的主要特點是:集中順序過程控制(1)過程性:模擬人們手工操作 (2)集中控制:由CPU集中管理 (3)順序性:程序計數(shù)器1.2:a:批處理系統(tǒng)的特點:早期批處理有個監(jiān)督程序,作業(yè)自動過渡直到全部處理完,而脫機批處理的特點:主機與衛(wèi)星機并行操作。b:分時系統(tǒng)的特點:(1):并行性。共享一臺計算機的眾多聯(lián)機用戶可以在各自的終端上同時處理自己的程序。(2):獨占性。分時操作系統(tǒng)采用時間片輪轉(zhuǎn)的方法使一臺計算機同時為許多終端上同時為許多終端用戶服務,每個用戶的感覺是自己獨占計算機。操作系統(tǒng)通過分時技術(shù)將一臺計算機改造為多臺虛擬計算機。(3):交互性。用戶與計算機之間可
2、以進行“交互會話”,用戶從終端輸入命令,系統(tǒng) 通過屏幕(或打印機)將信息反饋給用戶,用戶與系統(tǒng)這樣一問一答,直到全部工作完成。c:分時系統(tǒng)的響應比較快的原因: 因為批量操作系統(tǒng)的作業(yè)周轉(zhuǎn)時間較長,而分時操作系統(tǒng)一般采用時間片輪轉(zhuǎn)的方法,一臺計算機與許多終端設(shè)備連接,使一臺計算機同時為多個終端用戶服務,該系統(tǒng)對每個用戶都能保證足夠快的響應時間,并提供交互會話功能。1.3:實時信息處理系統(tǒng)和分時系統(tǒng)的本質(zhì)區(qū)別:實時操作系統(tǒng)要追求的目標是:對外部請求在嚴格時間范圍內(nèi)做出反應,有高可靠性和完整性。其主要特點是資源的分配和調(diào)度首先要考慮實時性然后才是效率。此外,實時操作系統(tǒng)應有較強的容錯能力,分時操作系
3、統(tǒng)的工作方式是:一臺主機連接了若干個終端,每個終端有一個用戶在使用。用戶交互式地向系統(tǒng)提出命令請求,系統(tǒng)接受每個用戶的命令,采用時間片輪轉(zhuǎn)方式處理服務請求,并通過交互方式在終端上向用戶顯示結(jié)果。用戶根據(jù)上步結(jié)果發(fā)出下道命。分時操作系統(tǒng)將CPU的時間劃分成若干個片段,稱為時間片。操作系統(tǒng)以時間片為單位,輪流為每個終端用戶服務。每個用戶輪流使用一個時間片而使每個用戶并不感到有別的用戶存在。分時系統(tǒng)具有多路性、交互性、“獨占”性和及時性的特征。1-4:(1):嵌入式系統(tǒng)是指計算機作為某個專用系統(tǒng)中的一個部件而存在,嵌入到更大的,專用的系統(tǒng)中的計算機系統(tǒng),是一種以應用為中心,以計算機技術(shù)為基礎(chǔ),軟件硬
4、件課裁剪,功能,可靠性,成本,體積,功耗有嚴格要求的專用計算機系統(tǒng)。(2):嵌入式操作系統(tǒng)是一種用途廣泛的系統(tǒng)軟件,過去它主要用于工業(yè)控制和國防系統(tǒng)領(lǐng)域。1.5:多道程序設(shè)計技術(shù)是在計算機主存中同時存放幾道相互獨立的程序,他們在操作系統(tǒng)控制之下,相互穿插地運行。當某道程序因某種原因不能繼續(xù)運行下去時(如等待外部設(shè)備傳輸)操作系統(tǒng)便將另一道程序投入運行,這樣可以是CPU和各外部設(shè)備盡可能地并行操作,從而提高計算機的使用效率。(2)多道程序運行的特征:a:多道:計算機主存中同時存放幾道相互獨立的程序 b:宏觀上并行:同時進入系統(tǒng)的幾道程序都處于運行過程中,即它們都開始運行,但都未運行完
5、畢。c:微觀上串行:從微觀上看,主存中的多道程序輪流或分時的占有處理機,交替執(zhí)行。 1.6:分時技術(shù)是把處理機時間劃分成很短的時間片(如幾百毫秒)輪地分配給各個應用程序使用,如果某個程序在分配的時間片用完之前計算還未完成,該程序就暫停執(zhí)行,等待下一輪繼續(xù)計算。此時處理機讓給另一個用戶程序使用。1.7:a:操作系統(tǒng)是計算機系統(tǒng)中所有軟件與硬件想連接的第一層軟件,它在裸機上運行。同時是系統(tǒng)軟件和應用軟件運行的基礎(chǔ)。操作系統(tǒng)是計算機中管理所有硬件和軟件的軟件。操作系統(tǒng)是一個大型的程序系統(tǒng),它負責計算機系統(tǒng)軟,硬件資源的分配;控制和協(xié)調(diào)并發(fā)活動;提供用戶接口,使用戶獲得良好的工作環(huán)境。
6、60;b:操作系統(tǒng)的特性是(1):并發(fā) 能處理多個同時性活動的能力。在單機上,可以在CPU和I/O設(shè)備上同時操作。(2):共享 多個計算機任務對系統(tǒng)資源的共同享用。(3):不確定性 操作系統(tǒng)能處理大量的,隨機的事件序列,使各用戶的計算任務正確地完成。1.8:操作系統(tǒng)的資源管理功能包括處理機管理,存儲管理,輸入/輸出管理和文件系統(tǒng)管理這四大功能。其中處理機管理 和輸入輸出管理這兩個功能與計算機系統(tǒng)的硬部件有關(guān) 。1-10:Windows系統(tǒng)是嵌入式操作系統(tǒng)。1-11:UNIX系統(tǒng)是一個多用戶分時操作系統(tǒng),Lin
7、ux是類似于UNIX操作系統(tǒng)的個人計算機操作系統(tǒng)。1-12:操作系統(tǒng)應該解決的基本問題有:a:資源分配的策略和方法 b:協(xié)調(diào)并發(fā)活動的關(guān)系 c:保證數(shù)據(jù)的一致性 d:實現(xiàn)數(shù)據(jù)的存取控制1-13:操作系統(tǒng)的類型主要有:批量操作系統(tǒng),分時操作系統(tǒng),實時操作系統(tǒng),個人計算機操作系統(tǒng),網(wǎng)絡操作系統(tǒng)和分布式操作系統(tǒng)這幾種。1-14:在多用戶多任務操作系統(tǒng)中,所采用的關(guān)鍵技術(shù)有并行處理技術(shù)和虛擬技術(shù)。第二章2-1:操作系統(tǒng)虛擬機是就是一個操作系統(tǒng)上,通過虛擬機軟件的方式,虛擬出另外一臺機器出來,操作系統(tǒng)虛擬機提供了協(xié)助用戶解決問題的環(huán)境,其功能是通過它提供的命令來體現(xiàn)的
8、,用戶也是通過這一組命令和操作系統(tǒng)虛擬機打交道。2-2:在設(shè)計操作系統(tǒng)時,可以考慮的結(jié)構(gòu)組織有模塊結(jié)構(gòu),接口和運行時的組織結(jié)構(gòu)三個方面。2-3:處理機的態(tài)又稱為處理機的特權(quán)級,就是處理機當前處于何種狀態(tài),正在執(zhí)行哪類程序。要區(qū)分處理機的態(tài)是因為操作系統(tǒng)的管理程序和用戶程序在處理機上執(zhí)行時,二者的職責不同,權(quán)限也不同,為此,根據(jù)對資源和機器指令的使用權(quán)限,將處理執(zhí)行時的工作狀態(tài)區(qū)分為不同的態(tài)。2-4:管態(tài)又稱為系統(tǒng)態(tài),是操作系統(tǒng)的管理程序執(zhí)行時機器所處的狀態(tài)。用戶態(tài)又稱為目態(tài),是用戶 程序執(zhí)行時機器所處的狀態(tài),在此狀態(tài)下禁止使用特權(quán)指令。 這兩者的區(qū)別是管態(tài)可以在它對應的
9、狀態(tài)下中央處理機可以使用全部的指令,包括一組特權(quán)指令,而用戶態(tài)在它對應的狀態(tài)下禁止使用特權(quán)指令,管態(tài)可以使用所有的資源,允許訪問整個存儲區(qū),用戶態(tài)卻不能直接取用資源與改變機器狀態(tài),并且只允許用戶程序訪問自己的存儲區(qū)域。2-5:中斷是是指某個事件(例如電源掉電,定點加法溢出或I/O傳輸結(jié)束等)發(fā)生時,系統(tǒng)中止現(xiàn)行程序的運行,引出處理該事件的程序進行處理,處理完畢后返回斷點,繼續(xù)執(zhí)行。 在計算機系統(tǒng)中要引進中斷的原因是為了實現(xiàn)并發(fā)活動,為了實現(xiàn)計算機系統(tǒng)的自動化工作,系統(tǒng)必須具備處理中斷的能力。2-6:按中斷的功能來分,中斷的類型有輸入輸出中斷,外中斷,機器故障中斷,程序性中斷,訪管中斷
10、。2-7:強迫性中斷,這類中斷事件不是正在運行的程序所期待的,而是由某種事故或外部請求信號所引起的。 自愿中斷是運行程序所期待的事件,這種事件是由于運行程序請求操作系統(tǒng)服務而引起的。 例如在按功能所分的五大類中斷中,輸入輸出中斷,外中斷,機器故障中斷,程序性中斷屬于強迫性中斷,訪管中斷屬于自愿中斷類型。2-8:中斷與俘獲的不同在于:中斷由處理機外部事件引起的中斷,在x86中稱之為異步中斷,它是隨著CPU的時鐘隨機產(chǎn)生的,可能發(fā)生在一條指令執(zhí)行過程中,也可能發(fā)生在一條指令執(zhí)行后,包括I/O中
11、斷,外中斷。 俘獲由處理機內(nèi)部事件引起的中斷,在x86中稱為異常,也稱為同步中斷,包括訪管中斷,程序性中斷,機器故障中斷。同步中斷指的是由CPU控制單元產(chǎn)生,是在一條指令執(zhí)行完畢后才會發(fā)出中斷,如執(zhí)行了一條INT指令。2-9:中斷響應是當中央處理機發(fā)現(xiàn)已有中斷請求時,中止現(xiàn)行程序執(zhí)行,并自動引出中斷處理程序的過程。,其實質(zhì)是交換用戶程序和處理該中斷事件的中斷處理程序的指令執(zhí)行地址和處理器狀態(tài),以達到如下目的:(1)保留程序斷點及有關(guān)信息 (2)自動轉(zhuǎn)入相應的中斷處理程序執(zhí)行。2-12:當中斷發(fā)生時,由中斷源自己引導處理機進入中斷服務程序的中斷過程稱為向量中斷。
12、; 提高中斷的處理速度,在向量中斷中,對于每一個中斷類型都設(shè)置一個中斷向量,中斷向量就是該類型中斷的中斷服務例行程序的入口地址和處理器狀態(tài)字。2-13:軟件的中斷處理過程主要分為三個階段過程:(1)保護現(xiàn)場和傳遞參數(shù)(2)執(zhí)行相應的中斷(或自陷)服務例程(3)恢復和退出中斷圖如下: 第3章 3-1:系統(tǒng)生成是指為了滿足物理設(shè)備的約束和需要的系統(tǒng)功能,通過組裝一批模塊來產(chǎn)生一個清晰的,使用方便的操作系統(tǒng)的過程。3-2:系統(tǒng)引導的主要任務是將操作系統(tǒng)的必要部分裝入主存并使系統(tǒng)運行,最終處于命令接受狀態(tài)。3-3:處理應用程序分為的步驟有:(1)編輯(修
13、改):建立一個新文件,或?qū)σ延械奈募械腻e誤進行修改。 (2)編譯:將源程序翻譯成浮動的目標代碼,完成這一步工作需要有相應語言編譯器,如源程序是C 語言寫的,那么必須要有C編譯器 (3)連接:將主程序和其他所需要的子程序和例行程序連接裝配在一起,使之成為一個可執(zhí)行的,完整的主存映像文件 。(4)運行:將主存映像文件調(diào)入主存,并啟動運行,最后得出計算結(jié)果。這些步驟之間的聯(lián)系,具體表現(xiàn)為:a:每個步驟處理的結(jié)果產(chǎn)生下一個步驟所需要的文件。b:一個步驟能否正確執(zhí)行,依賴于前一個步驟是否成功的完成。3-4: 靜態(tài)連接與動態(tài)連接的區(qū)別在于:靜態(tài)連接,當有多個應用程序都需要
14、調(diào)用同一個庫函數(shù)時,這多個應用程序的目標文件中都將包含這個外部函數(shù)對應的代碼;動態(tài)連接不需要將應用程序所需要的外部函數(shù)代碼從庫中提取出來并連接到目標文件中,而是在應用程序需要調(diào)用外部函數(shù)的地方做記錄,并說明要使用的外部函數(shù)名和引用入口號,形成調(diào)用鏈表。3-5:用戶與操作系統(tǒng)的接口是:程序接口,命令接口,圖形接口。一個分時系統(tǒng)提供的接口有操作接口和程序接口。一個批處理系統(tǒng)提供的接口是:系統(tǒng)功能調(diào)用和作業(yè)控制語言3-6:Windows系統(tǒng)提供的用戶接口是圖形化用戶界面。 3-8 什么是系統(tǒng)調(diào)用?對操作系統(tǒng)的服務請求與一般的子程序調(diào)用有什
15、么區(qū)別?答:系統(tǒng)調(diào)用是用戶在程序一級請求操作系統(tǒng)服務的一種手段,它不是一條簡單的指令,而是帶有一定功能號的訪管指令。 區(qū)別:操作系統(tǒng)服務的功能都是與操作系統(tǒng)本身有關(guān)的,對它的調(diào)用是通過一條訪管指令來實現(xiàn)的。3-10 簡述系統(tǒng)調(diào)用的執(zhí)行過程?答:執(zhí)行過程:在用戶程序中,需要請求操作系統(tǒng)服務的地方安排一條系統(tǒng)調(diào)用,這樣當程序執(zhí)行到這一條指令時就會發(fā)生中斷,系統(tǒng)由用戶態(tài)轉(zhuǎn)為管態(tài),操作系統(tǒng)的訪管中斷處理程序得到控制權(quán),它將按系統(tǒng)調(diào)用的功能號,借助例行子程序入口地址表轉(zhuǎn)到相應的例行程序去執(zhí)行在完成用戶需要的服務功能后,退出中斷,返回到用戶程序的斷點繼續(xù)執(zhí)行。第四章4-1
16、試解釋下列名詞,程序的順序執(zhí)行,程序的并行執(zhí)行答:一個計算機由若干操作組成,若這些操作必須按照某種先后次序來執(zhí)行,以保證操作結(jié)果的正確性,就是程序順序執(zhí)行。程序的并行執(zhí)行時指:若干程序同時在系統(tǒng)中運行,這些程序的執(zhí)行在時間上是重疊的,一個程序的執(zhí)行尚未結(jié)束,另一個程序的執(zhí)行已經(jīng)開始。4-2.什么是時間有關(guān)的錯誤?試舉例說明。答:程序并行執(zhí)行時共享了公共變量,其執(zhí)行結(jié)果將與并行執(zhí)行的相對速度有關(guān),即,給定相同的初始條件,也可能得到不同的結(jié)果,此為與時間的有關(guān)錯誤,例如:在程序A和程序B中,共享了變量N=3,程序A進行N+,程序B進行printf和N=0操作,由于程序A和程序B共享N,所以A和B的
17、執(zhí)行順序不同會得到不同的結(jié)果,就產(chǎn)生了時間有關(guān)錯誤的問題。4-3:進程是:(1):進程是這樣的計算部分,它是可以和其他計算并行的一個計算。 (2):進程(有時稱為任務)是一個程序與其數(shù)據(jù)一道通過處理機執(zhí)行所發(fā)生的活動。 (3):任務(或稱為進程)是由一個程序以及與它相關(guān)的狀態(tài)信息(包括寄存器內(nèi)容,存儲區(qū)域和鏈接表)所組成的。(4):所謂進程,就是一個程序在給定活動空間和初始環(huán)境下,在一個處理機上的執(zhí)行過程。 (5)根據(jù)1978年在廬山召開的全國操作系統(tǒng)會議上關(guān)于進程的討論,結(jié)合國外的各種觀點,國內(nèi)對進程這一概念做了如下描述:進程是指一個具有一定獨立功能的程序關(guān)于
18、某個數(shù)據(jù)集合的一次運行活動。 進程與程序的主要區(qū)別:a:程序是指令的有序集合,是一個靜態(tài)概念,其本身沒有任何運行的含義。而進程是程序在處理機上的一次執(zhí)行過程,是一個動態(tài)概念。程序可以作為一種軟件資料長期保存,而進程則是有一定生命期的,它能夠動態(tài)地產(chǎn)生和消亡。即進程可由”創(chuàng)建“而產(chǎn)生,由調(diào)度而執(zhí)行,因得不到資源而暫停,以致最后由”撤銷“而消亡。 b:進程是一個能獨立運行的單位,能與其他進程并行地活動。 c:進程是競爭計算機系統(tǒng)有限資源的基本單位,也是進行處理機調(diào)度的基本單位。4-4:(1) 順序程序的操作是有先后次序的,原因是:以保證操作結(jié)果的正確性。
19、 并發(fā)程序的操作是可以并發(fā)執(zhí)行的,原因:系統(tǒng)中存在大量的操作,就可以進行并發(fā)執(zhí)行處理,提高系統(tǒng)的處理能力和計算機的利用率。4-6:進程的基本狀態(tài):運行狀態(tài),就緒狀態(tài),等待狀態(tài)。在一個系統(tǒng)中必須區(qū)分這幾種狀態(tài)的原因是 : 1)系統(tǒng)中處理機的數(shù)目總是少于進程數(shù),只有少數(shù)進程能夠獲得處理機控制權(quán)。 2)有些進程已經(jīng)獲得處理機控制權(quán)(運行狀態(tài));
20、; 3)有些進程希望獲得處理控制權(quán)但因處理機太少而暫時得不到(就緒); 4)有些處理機因某種原因暫時不能運行(等待)。 4-9:(1) 變遷2發(fā)生的原因是:時間片到;變遷3發(fā)生的原因是:服務請求(如請求I/O等);變遷4發(fā)生的原因是:服務完成、事件來到。 (2):在運行的狀態(tài)下,進程因請求某種服務而變成等待狀態(tài),當請求的事件完
21、成后,處于等待狀態(tài)的進程并不能恢復到運行狀態(tài),而是轉(zhuǎn)變?yōu)榫途w狀態(tài),通過重新調(diào)度程序才能轉(zhuǎn)變?yōu)檫\行狀態(tài)。 (3):a:2->1,c:4>1與b:3->2的因果關(guān)系可能發(fā)生,在阻塞的情況下或者運行因請求某種服務,運行可變成等待狀況;在喚醒的情況下或者當請求的事件完成后,處于等待狀態(tài)的進程并不能恢復到運行狀態(tài),等待可變成就緒;通過重新調(diào)度程序才能轉(zhuǎn)變?yōu)檫\行狀態(tài)。4-10:原因:線程在活動期間,其狀態(tài)時不斷變化的,這些變化是有系統(tǒng)運行的狀況,同時存在其他線程和線程本身的算法等因素共同決定的。4-11:進程控制塊是一個數(shù)
22、據(jù)結(jié)構(gòu),是標識進程存在的實體。 作用是:當系統(tǒng)創(chuàng)建一個進程時,必須為他設(shè)置一個進程控制塊(PCB),然后根據(jù)PCB的信息對進程實施控制和管理,進程任務完成時,系統(tǒng)撤銷它的PCB,進程也隨之消亡。總之進程控制塊具有控制和管理的作用。4-12: n個并發(fā)進程共用一個共用一個公共變量Q,寫出用信號燈實現(xiàn)n個進程互斥時的程序描述,給出信號燈值的取值范圍,并說明每個取值的物理意義。main() int mutex=1; cobegin
23、; P1(); P2(); Pn(); coendP1() P2() Pn()
24、; . . . P(mutex); P(mutex); P(mutex); cs1; cs2; csn; v(mutex);
25、 v(mutex); v(mutex); 對于兩個并發(fā)進程,互斥信號燈的值僅取1、0、-1三個值。若mutex=1,表示沒有進程進入臨界區(qū);若mutex=0,表示有一個進程進入臨界區(qū);若mutex=-1,表示一個進程進入臨界區(qū),另一個進程等待進入。4-13 :圖4.30(a)、(b)分別給出了兩個進程流圖。試用信號燈的P、V操作分別實現(xiàn)圖4.30(a)、(b)所
26、示的兩組進程之間的同步,并寫出程序描述。a: P1 P2 P3 M P(S2); P(S3) v(S1); M M v(S2); M
27、 M v(S3);4-15 :main()int sa=1,sb=0;/ sa 表示緩沖區(qū)s 是否為空,sb 表示是否有數(shù)據(jù)可被處理。int ta=1,tb=0;/ ta 表示緩沖區(qū)t 是否為空,tb 表示是否有數(shù)據(jù)可被處理。cobeginget;copy;put;coend Get() Copy()
28、; Put() while(1) while(1) while(1)
29、160; P(sa); P(sb); P(tb); input data to buffer s
30、0; copy data from buffer s; output data to buffer s; V(sb); V(sa);
31、 V(ta); P(ta);
32、160; input copy-data to buffer t;
33、160; V(tb);
34、60; 4-16:a:進程的互斥是當某一進程正在訪問某一存儲區(qū)域時,就不允許其他進程來讀出或者修改該存儲區(qū)的內(nèi)容,否則,就會發(fā)生后果無法估計的錯誤。進程之間的這種制約關(guān)系稱為互斥。 b: 進程的同步是:就是并發(fā)進程在一些關(guān)鍵點上可能需要互相等待與互通消息,這種相互制約的等待與互通信息稱為進程同步。 c: 同步與互斥這兩個概念的區(qū)別與聯(lián)系:相交進程之間的關(guān)系主要有兩種
35、,同步與互斥。所謂互斥,是指散步在不同進程之間的若干程序片斷,當某個進程運行其中一個程序片段時,其它進程就不能運行它 們之中的任一程序片段,只能等到該進程運行完這個程序片段后才可以運行。所謂同步,是指散步在不同進程之間的若干程序片斷,它們的運行必須嚴格按照規(guī)定的 某種先后次序來運行,這種先后次序依賴于要完成的特定的任務。 顯然,同步是一種更為復雜的互斥,而互斥是一種特殊的同步。 也就是說互斥是兩個線程之間不可以同時運行,他們會相互排斥,必須等待一個線程運行完畢,另一個才能運行,而同步也是不能同時運行,但他是必須要安照某種次序來運行相應的線程(也是一種互斥
36、), 互斥:是指某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。 同步:是指在互斥的基礎(chǔ)上(大多數(shù)情況),通過其它機制實現(xiàn)訪問者對資源的有序訪問。在大多數(shù)情況下,同步已經(jīng)實現(xiàn)了互斥,特別是所有寫入資源的情況必定是互斥的。少數(shù)情況是指可以允許多個訪問者同時訪問資源。4-20:進程創(chuàng)建的主要功能是:(1)為新建進程申請一個PCB。(2)將創(chuàng)建者(即父進程)提供的新建進程的信息填入PCB中。
37、(3)將新建進程設(shè)置為就緒狀態(tài),并按照所采用的調(diào)度算法,把PCB排入就緒隊列中4.17 : Mian() int full=0;int empty=n;int mutex=1; cobegin p1();p2();pm();c1();c2();ck(); coend producer() while生產(chǎn)一個產(chǎn)品;p(empty);p(mutex);送一個產(chǎn)品到有界緩沖區(qū);v(metex);v(full);consumer() while p(full);
38、 p(mutex);從有界緩沖區(qū)中取產(chǎn)品;v(mutex);v(empty)消 費一個產(chǎn)品;4-21:用于進程控制的原語主要有:創(chuàng)建原語,撤銷原語,阻塞原語,喚醒原語等。 每個原語的執(zhí)行將使進程的狀態(tài)發(fā)生的變化有:a:創(chuàng)建原語:系統(tǒng)初始化時,每個PCB結(jié)構(gòu)中進程標識符單元內(nèi)都存放“-1”,表示該PCB結(jié)構(gòu)為空,當創(chuàng)建原語執(zhí)行成功后,該項內(nèi)容為新創(chuàng)建進程的標示符。 b:撤銷原語:使用進程撤銷原語,將當前運行的進程的PCB結(jié)構(gòu)歸還到PCB資源池,所占用的資源歸還給父進程,然后轉(zhuǎn)進程調(diào)度程序。 c:阻塞原語:阻塞命令的功能是停止調(diào)用進程的執(zhí)行,
39、將CPU現(xiàn)場保留到該進程的PCB現(xiàn)場保護區(qū);然后,改變其狀態(tài)為“等待”,并插入到等待chan的等待隊列;最后使控制轉(zhuǎn)向進程調(diào)度。 d:進程喚醒:當進程等待事件發(fā)生時,喚醒等待該事件的進程。當發(fā)現(xiàn)者進程喚醒了一個等待某事件的進程后,控制仍應返回原進程。4-22 : 答:線程是比進程更小的活動單位,它是進程中的一個執(zhí)行路 徑。線程與進程的區(qū)別歸納:a.地址空間和其它資源:進程間相互獨立,同一進程的各線程間共享。某進程內(nèi)的線程在其它進程不可見。b.通信:進程間通信IPC,線程間可以直接讀寫進程數(shù)據(jù)段(如全局變量)來進行通信需要進程同步和互斥
40、手段的輔助,以保證數(shù)據(jù)的一致性。c.調(diào)度和切換:線程上下文切換比進程上下文切換要快得多。d.在多線程OS中,進程不是一個可執(zhí)行的實體。4-24:(1):說明一個進程發(fā)生變遷3的原因是:由圖可知變遷3是由運行到因I/O而阻塞的一個進程;這個 變遷發(fā)生的原因是要請求I/O,使程序運行受I/O限制,而變遷2是運行到低優(yōu)先就緒,變遷4是因I/O而阻塞到高優(yōu)先就緒。一個進程如果在運行中超過了它的時間片就進入低優(yōu)先就緒隊列,若一個進程從阻塞狀態(tài)變?yōu)榫途w狀態(tài)時則進入高優(yōu)先就緒隊列。(2):有可能發(fā)生,2->5是指低優(yōu)先變?yōu)楦邇?yōu)先,這情況是,當高優(yōu)先級就緒隊列為空,則從低優(yōu)先級就緒隊列中選中一個進程運行
41、;低優(yōu)先級其次選擇是可轉(zhuǎn)向運行狀態(tài);I/O完成時,高優(yōu)先就緒,然后可進行運行程序;當運行超時間片時,又轉(zhuǎn)向低優(yōu)先就緒狀態(tài);因I/O而阻塞的狀態(tài),當I/O完成,可進入高優(yōu)先就緒狀態(tài),自然的下一步就進入運行狀態(tài)。4-24:(1):說明一個進程發(fā)生變遷3的原因是:由圖可知變遷3是由運行到因I/O而阻塞的一個進程;這個 變遷發(fā)生的原因是要請求I/O,使程序運行受I/O限制,而變遷2是運行到低優(yōu)先就緒,變遷4是因I/O而阻塞到高優(yōu)先就緒。一個進程如果在運行中超過了它的時間片就進入低優(yōu)先就緒隊列,若一個進程從阻塞狀態(tài)變?yōu)榫途w狀態(tài)時則進入高優(yōu)先就緒隊列。(2):有可能發(fā)生,2->5是指低優(yōu)先變?yōu)楦邇?yōu)先
42、,這情況是,當高優(yōu)先級就緒隊列為空,則從低優(yōu)先級就緒隊列中選中一個進程運行;低優(yōu)先級其次選擇是可轉(zhuǎn)向運行狀態(tài);I/O完成時,高優(yōu)先就緒,然后可進行運行程序;當運行超時間片時,又轉(zhuǎn)向低優(yōu)先就緒狀態(tài);因I/O而阻塞的狀態(tài),當I/O完成,可進入高優(yōu)先就緒狀態(tài),自然的下一步就進入運行狀態(tài)。(3):該系統(tǒng)的電鍍策略是優(yōu)先級調(diào)度與時間片調(diào)度相結(jié)合的調(diào)度方法,具體如下: a:當CPU空閑時,首先從高優(yōu)先級隊列中選擇一個進程來運行,給定時間片為100ms; b:如果高優(yōu)先級就緒隊列為空,則從低優(yōu)先級就緒隊列中選擇一個進程運行,給定時間片為500ms;調(diào)度效果是優(yōu)先照顧了I/O量大的進程
43、,適當照顧了計算量大的進程,同時,對提高計算機系統(tǒng)的資源利用率也是十分有利的。4-26:進程調(diào)度的任務是:(1)記錄進程的有關(guān)情況 (2):決定分配策略 (3):實施處理機的分配和回收4-28:線程調(diào)度的 主要任務是:線程來執(zhí)行某個短期的后臺操作,兩個調(diào)度程序,分為初始調(diào)度程序和時間片調(diào)度程序,它們以線程為調(diào)度單位,初始調(diào)度程序負責計算線程優(yōu)先級,時間片調(diào)度程序負責確定時間,并分配給線程。第五章: 5-1:虛擬資源是用戶使用的邏輯資源,是操作系統(tǒng)將物理資源改造后,呈現(xiàn)給用戶的可供使用的資源,對主存儲器而言,用戶使用的虛擬資源是虛擬存儲器。提供給用戶使用虛擬存儲器的手段是邏輯地址空間,
44、用戶在編輯時使用的是邏輯地址,空間大小不受限制。5-2:常用的資源分配策略有先來先服務策略和優(yōu)先調(diào)度策略。在先來服務策略中資源請求隊列的排序原則是按照提出請求的先后次序排序:在優(yōu)先調(diào)度策略中資源請求隊列的排序原則是按照提出請求的緊迫程度(即優(yōu)先級)從高到低排序。5-3:移臂調(diào)度是指在滿足一個磁盤請求時,總是選取與當前移臂前進方向上最近的那個請求,使移臂距離最短,旋轉(zhuǎn)調(diào)度是指在滿足一個磁盤請求時,總是選取與當前讀寫磁盤旋轉(zhuǎn)方向上最近的那個請求,使周旋圈數(shù)最少。5-4:兩種移臂調(diào)度算法有:答:(1)最短尋道時間優(yōu)先算法(SSTF)定義:最短尋找時間優(yōu)先調(diào)度算法總是從等待訪問者中挑選時間最短的那個請
45、求先執(zhí)行 (2)掃描算法(SCAN)定義:掃描算法又稱電梯調(diào)度算法。SCAN算法是磁頭前進方向上的最短查找時間優(yōu)先算法,它排除了磁頭在盤面局部位置上的往復移動。5-6:死鎖是:在兩個或多個并發(fā)進程中,如果每個進程持有某種資源而又都等待著別的進程釋放它或它們現(xiàn)在保持著資源,在未改變這種狀態(tài)之前都不能向前推進,稱這一組進程產(chǎn)生了死鎖。例子:設(shè)一個具有3個磁帶驅(qū)動器的系統(tǒng),現(xiàn)有3個進程,某時刻,每個進程都占用了一個磁帶驅(qū)動器。如果每個進程都不釋放已占用的磁帶驅(qū)動器,當還需要另一個磁帶驅(qū)動器時,這3個進程就會處于互相死等的狀態(tài),這種狀態(tài)成為死鎖。5-7:競爭與死鎖的區(qū)別:兩個進程讀取文件的操
46、作可以理解為競爭,因為競爭不當,因此陷入了死循環(huán),這個死循環(huán)實際上就是死鎖。 但是,死鎖不一定是由競爭引起的,譬如,一個進程C的設(shè)定是,它要等待消息C來到才能發(fā)送消息D,而消息C由進程D發(fā)出,而進程D發(fā)出消息C的條件是收到消息D于是,這也形成了死鎖??傊偁幙隙ㄊ且驗樗梨i,而死鎖不一定因為競爭。第七章7-1:“設(shè)備獨立性”是指用戶在編制程序時所使用的設(shè)備與實際使用的設(shè)備無關(guān),也就是在用戶程序中僅使用邏輯設(shè)備名。引入這一概念的好處是為了方便用戶使用各類設(shè)備,系統(tǒng)能屏蔽設(shè)備的物理特性,為用戶建立虛環(huán)境,提高設(shè)備的利用率。7-3:設(shè)備控制快是記錄設(shè)備的硬件特性,連接和使用情況等信息的數(shù)據(jù)
47、結(jié)構(gòu)。它主要包括的內(nèi)容:設(shè)備名,設(shè)備屬性,指向命令轉(zhuǎn)換表的指針,在I/O總線上的設(shè)備地址,設(shè)備狀態(tài),當前用戶進程指針,I/O請求隊列指針。7-4:緩沖是在兩種不同速度的設(shè)備之間傳輸信息時平滑傳輸過程的常用手段,引入緩沖的原因是用來臨時存放I/O傳輸信息,以緩解信息的源設(shè)備和目標設(shè)備之間速度不匹配的問題。7-5:常用的幾種緩沖技術(shù)有:雙緩沖(對于一個具有低頻度活動的I/O系統(tǒng)是比較有效的);緩沖池(緩沖池中的緩沖區(qū)即可用于輸出,也可用于輸入)。7-6:在雙緩沖方案下,為輸入輸出分配兩個緩沖區(qū)。這兩個緩沖區(qū)可以用于輸入數(shù)據(jù),也可以用于輸出數(shù)據(jù);還可既用于輸入,又用于輸出數(shù)據(jù)。(1):雙緩沖用于數(shù)據(jù)
48、輸入: 雙緩沖用于數(shù)據(jù)輸入時,可提高設(shè)備并行操作的能力,讀入數(shù)據(jù)的示意圖如下:a:用雙緩沖讀入數(shù)據(jù)時,輸入設(shè)備首先填滿buf1;b:進程從buf1提取數(shù)據(jù)的同時,輸入設(shè)備填充buf1;c:當buf1空,buf2滿時,進程又可以從buf2提取數(shù)據(jù),與此同時,輸入設(shè)備又可填充buf1這兩個緩沖區(qū)如此交替使用,使CPU和輸入設(shè)備并行操作程度進一步提高。只有當兩個緩沖區(qū)都空,進程還要提取數(shù)據(jù)時,該進程才被迫等待。7-8:獨占設(shè)備是讓一個 應用程序在整個運行期間獨占使用的設(shè)備。獨占設(shè)備的分配是:獨占設(shè)備采用獨享分配的方式或稱為靜態(tài)分配方式,即在一個應用程序執(zhí)行之前,分配它所要使用的這類設(shè)備;
49、當該應用程序處理完畢撤離時,收回分配給它的這類設(shè)備。靜態(tài)分配方式實現(xiàn)簡單,且不會發(fā)生死鎖,但采用這種分配方式時外部設(shè)備利用率不高。7-9:共享設(shè)備是:外部設(shè)備中如磁盤等直接存取設(shè)備都能進行快速的直接存取。它們往往不是讓一個應用程序獨占而是被多進程共同使用,或者說,這類設(shè)備就是共享設(shè)備。共享設(shè)備分配,采用共享分配方式,即進行動態(tài)分配,當進程提出資源申請時,由設(shè)備管理模塊進行分配,進程使用完畢后,立即歸還。7-10:虛擬設(shè)備技術(shù) :由于一臺設(shè)備可以和輔存中的若干個存儲區(qū)域相對應,所以在形式上就好像把一臺輸入(或輸出)設(shè)備變成了許多虛擬的輸入(或輸出)設(shè)備,也就是說,把一臺不能共享的輸入(或輸出)設(shè)
50、備轉(zhuǎn)換成了一臺可共享的緩沖輸入(或輸出)設(shè)備。虛擬設(shè)備是通常把用來代替獨占型設(shè)備的那部分外存空間,虛擬設(shè)備也是指在一類設(shè)備上模擬另一類設(shè)備,被模擬的設(shè)備。虛擬分配,當某個進程需要與獨占型設(shè)備交換信息時,系統(tǒng)就將與該獨占設(shè)備所對應的那部分磁盤,磁鼓的一部分存儲空間分配給它,這種分配方法就稱為設(shè)備的虛擬分配技術(shù)。7-11:現(xiàn)代操作系統(tǒng)大多實現(xiàn)了虛擬設(shè)備技術(shù),有的操作系統(tǒng)提供外部設(shè)備聯(lián)機同時操作的功能稱為Spool系統(tǒng),又稱為假脫機系統(tǒng)。對于輸入而言,預輸入是指作業(yè)在執(zhí)行前,預先把用戶提交的若干個作業(yè)的信息(程序,數(shù)據(jù))從低速設(shè)備(紙帶機,讀卡機)輸入到高速外設(shè)(磁帶,磁盤)上。當用戶程序被作業(yè)調(diào)度
51、程序選中運行時,并發(fā)進程試圖從低速輸入設(shè)備上讀數(shù)據(jù)時,SPOOLing程序截獲此請求,把它轉(zhuǎn)換為從磁盤上讀。對輸出而言,緩輸出是指為了將獨享的打印機改造成為用戶概念上的共享設(shè)備,當任何運行的互用進程要向打印機輸出信息時,系統(tǒng)截獲此請求,首先將輸出的信息編制成打印文件,并將它們存放在可共享的快速設(shè)備上。7-13:I/O控制的主要功能是:(1):解釋用戶的I/O系統(tǒng)調(diào)用 (2):設(shè)備驅(qū)動 (3):中斷處理7-14:使設(shè)備I/O的核心模塊工作,有下列兩種工作方式:(1)通過形式的系統(tǒng)調(diào)用 (2):設(shè)備處理進程第八章8-2:文件系統(tǒng)是操作系統(tǒng)中負責管理和存取文件信息的軟件機構(gòu),它由負責操作和管理的進程
52、序嗎,模塊,所需的數(shù)據(jù)結(jié)構(gòu)(如目錄表,文件控制快,存儲分配表)以及訪問文件的一組操作所組成。 文件系統(tǒng)的主要功能是負責文件的存儲并對存入的文件進行保護,檢索,負責對文件存儲空間和分配等,具體包括:構(gòu)造文件結(jié)構(gòu),提供存取文件的方法,輔存空間管理,提供文件共享功能,文件保護,提供一組文件操作命令。8-3:文件的邏輯結(jié)構(gòu)有(1)流式文件 (2):記錄式文件8-4:對文件的存取有基本方式是:順序存取和直接存取兩種。順序存取的特點是:順序存取是指一次存取總是在前一次存取的基礎(chǔ)上進行,所以不必給出具體的存取位置。隨機存取則是用戶以任意次序請求某個記錄。8-7:索引文件是為了克服串聯(lián)文件不適應隨機
53、訪問的缺點,構(gòu)造了不僅能充分利用輔存空間,又能隨機的訪問文件的任何一部分的索引文件,索引文件將邏輯文件順序的劃分成長度與物理存儲塊長度相同的邏輯快,然后為每個文件分別建立邏輯快號的對照表,這張表就稱為該文件的索引表,用這種方法構(gòu)造的文件就叫做索引文件。8-10:一級文件的索引結(jié)構(gòu)的構(gòu)造是:在一級索引文件的構(gòu)造中,利用磁盤塊作為一級間接索引表塊,若磁盤塊的大小為512B,用于登記磁盤塊號的表占用2B,這樣會,一個磁盤塊可以登記256個表項;一級間接索引。文件目錄項中有一組表項,其內(nèi)容登記的是第一級索引表塊的塊號,第一級索引表塊中的索引表項登記的是文件邏輯記錄所在的磁盤塊號。二級文件索引結(jié)構(gòu)是,文
54、件目錄項中有一組表項,其內(nèi)容登記的是第二級索引表塊的塊號,第二級索引表塊中的索引表項登記的第一級索引表塊的塊號。8-11:文件目錄是記錄系統(tǒng)中所有文件的名字及其存放地址的目錄表,表中還包括關(guān)于文件的說明信息和控制信息。文件目錄項的主要內(nèi)容:(1):文件名。文件名分為文件的符號名和內(nèi)部標識符。 (2):文件的邏輯結(jié)構(gòu)。說明該文件的記錄是否定長,記錄長度及記錄個數(shù)等。(3):文件的物理結(jié)構(gòu),即文件信息在輔存中的位置及排布。 (4):存取控制信息 (5)管理信息 (6)文件類型。指明文件的類型,例如可分為數(shù)據(jù)文件,目錄文件,塊存儲設(shè)備文件,字符設(shè)備文件。 8-12:一級文件目錄是系統(tǒng)為所有存入系統(tǒng)的文件建立一張表,用以標識和描述用戶與系統(tǒng)進程可以存取的全部文件,其
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑泥工工程勞務合同
- 董事長助理聘用合同范本
- 共同出資投資攝影館合伙協(xié)議書范本
- 2025年貨運資格證安檢考試題模擬考試
- 小區(qū)地下車位出租合同范本
- 2025年聊城駕??荚嚳拓涍\從業(yè)資格證考試題庫
- 醫(yī)療器械合作協(xié)議書范本
- 企業(yè)之間保密協(xié)議書范本
- 教室租借協(xié)議書范本
- 教育行業(yè)的在線教學與輔導作業(yè)指導書
- 2023外貿(mào)業(yè)務協(xié)調(diào)期中試卷
- GB/T 16475-1996變形鋁及鋁合金狀態(tài)代號
- GB 4706.20-2004家用和類似用途電器的安全滾筒式干衣機的特殊要求
- 無紙化會議系統(tǒng)解決方案
- 佛教空性與緣起課件
- 上海鐵路局勞動安全“八防”考試題庫(含答案)
- 《愿望的實現(xiàn)》教學設(shè)計
- 效率提升和品質(zhì)改善方案
- 中山大學抬頭信紙中山大學橫式便箋紙推薦信模板a
- 義務教育學科作業(yè)設(shè)計與管理指南
- 《汽車發(fā)展史》PPT課件(PPT 75頁)
評論
0/150
提交評論