




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
操作系統(tǒng)期末復習重點知識點總結操作系統(tǒng)期末復習重點知識點總結操作系統(tǒng)期末復習重點知識點總結資料僅供參考文件編號:2022年4月操作系統(tǒng)期末復習重點知識點總結版本號:A修改號:1頁次:1.0審核:批準:發(fā)布日期:填空緒論:批處理系統(tǒng)、分時系統(tǒng)、實時系統(tǒng)的概念與特點,原語與原子操作。1.批處理操作(1)單道批處理系統(tǒng)概念單道批處理系統(tǒng)是指系統(tǒng)通過作業(yè)控制語言將作業(yè)組織成批,使其能自動連續(xù)運行,但是,在內存中任何時候只有一道作業(yè)的系統(tǒng)。單道批處理系統(tǒng)特征順序性單道性自動性(2)多道批處理系統(tǒng)概念系統(tǒng)對作業(yè)的處理是成批進行的,并且在主存中能同時保留多道作業(yè)的系統(tǒng)。多道批處理系統(tǒng)的主要目標是提高系統(tǒng)吞吐率和各種資源的利用率。多道批處理系統(tǒng)特征無序性多道性調度性2.分時系統(tǒng)(1)概念分時操作系統(tǒng)是指在一臺主機上連接了多個聯(lián)機終端,并允許多個用戶通過終端以交互的方式使用主計算機,共享主機資源的系統(tǒng)。(2)分時系統(tǒng)的主要目標是實現人與系統(tǒng)的交互性。分時系統(tǒng)設計的目標是保證用戶響應時間的及時性。(3)分時系統(tǒng)的特征多路性獨立性及時性:滿足用戶對響應時間的要求交互性3.實時操作系統(tǒng)(1)概念實時操作系統(tǒng)是指系統(tǒng)能夠及時響應外部(隨機)事件的請求,并能在規(guī)定的時間內完成對該事件的處理,控制系統(tǒng)中所有的實時任務協(xié)調一致地工作。(2)實時操作系統(tǒng)的特征多路性獨立性及時性:滿足實時任務截止時間的要求交互性可靠性4.原語:操作系統(tǒng)內核或微核提供核外調用的過程或函數稱為原語,是由若干條指令構成,用于完成特定功能的一段程序。原語在執(zhí)行過程不允許被中斷。5.原子操作:執(zhí)行中不能被其它進程(線程)打斷的操作就叫原子操作。當該次操作不能完成的時候,必須回到操作之前的狀態(tài),原子操作不可拆分。進程管理:什么是進程進程與程序的區(qū)別與聯(lián)系進程的特征有哪些進程之間的關系有哪些什么是信號量信號量的物理含義1.進程定義可并發(fā)執(zhí)行的程序在一個數據集合上的運行過程,是系統(tǒng)進行資源分配和調度的基本單位。2.進程特征(1)動態(tài)性(2)并發(fā)性(3)獨立性(4)異步性(5)結構特征:3.進程與程序的關系(1)程序是一組指令的集合,是靜態(tài)的概念;進程是程序的執(zhí)行,是動態(tài)的概念。(本質區(qū)別)(2)進程有生命周期,它的存在是暫時的;程序的存在是永久的。(3)進程包括程序代碼、數據和“進程控制塊”三部分。(4)進程是一個獨立的運行單位,是系統(tǒng)進行資源分配和調度的獨立單位。(5)一個程序在執(zhí)行中可對應多個進程,一個進程也可能包含多個程序段。4,進程的基本狀態(tài)(1)運行狀態(tài)(Running):已得到CPU,正在執(zhí)行的狀態(tài)。(2)就緒狀態(tài)(Ready):得到了除CPU以外的所有資源,正在等待CPU的狀態(tài)。(3)等待狀態(tài)(Blocked,也稱阻塞狀態(tài)):進程等待某一事件的發(fā)生而暫時停止運行的狀態(tài)。5.進程之間的關系有哪些同步互斥6.什么是信號量?信號量是實現進程同步的一種變量。是一種有效的進程同步工具,可分為:整型信號量、結構型信號量、信號量集等。7.信號量的物理含義S>0表示有S個資源可用S=0表示無資源可用S<0則|S|表示S等待隊列中的進程個數P(S):表示申請一個資源V(S)表示釋放一個資源。信號量的初值應該大于等于0設備管理:設備的分類按數據傳輸單位,設備可分成:字符設備(輸入輸出設備):字符設備中存儲和傳送的是不定長的數據,是以字符為單位發(fā)送或和接收一個字符流,傳輸速度低、不可尋址(源地址或目標地址)。如打印機、鍵盤、網卡和顯示器等。塊設備(存儲設備):塊設備中存儲是定長的、且可隨機訪問的數據塊,每個塊都有自己的地址,信息處理的基本單位是數據塊,傳輸速度高、可尋址。如磁盤,CD-ROM。按傳輸速率,設備可分成:低速——鍵盤、鼠標器、語音的輸入和輸出設備中速——行式打印機、激光打印機高速——磁帶機、磁盤器、光盤機按共享屬性,設備可分成:獨占設備:一次只允許一個進程訪問的設備。共享設備:一段間內允許多個進程同時訪問的設備。虛擬設備:虛擬技術將一臺獨占設備轉換為若干臺邏輯設備,共多個進程同時使用。按使用屬性,設備可分成:存儲設備:相同中存儲信息的主要設備,外存及后備存儲器。人機交互設備(輸入/輸出設備):輸入、輸出和集成輸入和輸出的設備。文件管理:什么是文件的邏輯結構和文件的物理結構文件的邏輯結構有哪些文件的物理結構有哪些1.文件的邏輯結構(1)概念是指用戶可以直接處理的文件組織形式,也稱文件組織。文件邏輯結構選取的主要考慮因素:存取速度、維護方便和可靠性等。(2)分類從邏輯結構上,文件分為:有結構文件(記錄式文件)和無結構文件(字符流文件,是一種順序文件。)有結構文件(記錄式文件)①根據文件中記錄特性分:定長記錄文件變長記錄文件②文件的組織方式(邏輯結構):順序文件索引文件索引順序文件2.文件物理結構(1)概念是指文件在外存上的存儲結構,也稱文件存儲結構。文件的物理結構決定了文件信息在存儲設備上的存放位置。(2)物理結構的類型連續(xù)文件串聯(lián)文件(鏈接文件)索引文件hash文件簡答1.進程的概念與特點、進程的同步與互斥。進程概念關于進程的定義有多種,其中最具代表性的定義有以下幾個:(1)進程是程序的一次執(zhí)行(2)進程是可以與別的計算并發(fā)執(zhí)行的計算(3)進程是一數據結構及能在其上進行操作的一個程序(4)進程是一個程序及其數據在處理機上順序執(zhí)行時所發(fā)生的活動(5)進程是程序在一個數據集合上的運行過程,是系統(tǒng)進行資源分配和調度的一個獨立單位進程特征(1)動態(tài)性:動態(tài)性是進程的基本特性。進程具有生命周期,它由創(chuàng)建而產生,經調度而執(zhí)行,由撤消而消亡。(2)并發(fā)性:在內存中的多個進程實體能在一段時間內同時運行。(3)獨立性:進程是系統(tǒng)進行資源分配和調度的一個基本單位,是一個能夠進行獨立運行的基本單位。(4)異步性:每個進程在運行時都在以不可預知的速度向前推進。(5)結構特征:進程實體實際上是由三部分所組成:程序段、數據段和進程控制塊PCB。在UNIX系統(tǒng)中,也把這三部分稱為“進程映像”。進程同步與互基本概念(1)并發(fā)進程之間的協(xié)作控制通常稱為進程同步。——直接制約關系(協(xié)作)(2)并發(fā)進程之間的競爭控制通常稱為進程互斥。——間接制約關系(競爭)進程同步與互斥的主要任務就是保證多個并發(fā)進程能有效地合作并共享系統(tǒng)資源,使并發(fā)進程的執(zhí)行結果具有可再現性。2.死鎖的概念、死鎖產生的原因、死鎖的預防和避免方法、資源分配圖的簡化、死鎖定理。(1)死瑣概念死鎖是指多個并發(fā)執(zhí)行的進程因資源爭奪而出現的一種彼此都不能繼續(xù)向前推進的僵持局面。(2)產生死瑣的原因①競爭資源——競爭非剝奪性資源(如,打印機)和競爭臨時資源(如,某進程生產的數據、消息)②進程推進的順序非法(3)死瑣的預防①避開“請求和保持”條件:一次性請求,一次性分配。在進程運行期間不再提出資源請求。這種方法也稱“預先靜態(tài)分配法”。②避開“不剝奪”條件:進程逐個提出資源請求,當前請求不能滿足時,必須釋放它所擁有的全部資源。③避開“環(huán)路等待”條件:將所有資源按類型進行線性排隊,并賦予不同序號,要求進程申請資源時按序號遞增的次序提出。這種方法也稱“有序資源分配法”。(4)死鎖的避免——銀行家算法,死鎖的預防——資源有序分配法。(5)資源分配圖的簡化從圖找一個進程結點pi,若它對資源Rj(1≤j≤m)的請求滿足(既非阻塞也非孤立):abs(Pi,Rj)+其中:Wj表示j類資源的總數,(Pi,Rj)表示進程Pi申請j類資源的數量,(Rj,pk)表示分配給進程Pk的j類資源數。簡化操作:①釋放pi所占有的資源,即去掉它所有的請求邊和分配邊使其成為一個孤立結點。②重復執(zhí)行前兩步,直到找不到滿足條件的進程結點為止。(6)死鎖定理系統(tǒng)狀態(tài)S為死鎖狀態(tài)的充分條件,當且僅當S狀態(tài)的系統(tǒng)資源分配圖是不可完全簡化的。(至少有一個進程結點不能簡化為孤立結點。)該充分條件被稱為死鎖定理。3.文件的多級目錄結構(文件的物理結構、文件控制塊、索引節(jié)點等)文件物理結構(1)概念是指文件在外存上的存儲結構,也稱文件存儲結構。文件的物理結構決定了文件信息在存儲設備上的存放位置。(2)物理結構的類型連續(xù)文件串聯(lián)文件(鏈接文件)索引文件hash文件文件控制塊(1)概念是文件存在的標志,為提高查找速度,通常把FCB集中起來組織成文件目錄(目錄文件)。目錄項分兩種:子目錄和文件的FCB。一個文件由FCB和文件體(文件內容)兩部分組成。FCB是操文件系統(tǒng)為每個文件建立的唯一管理數據結構,FCB主要包括下列信息:文件標識符和控制信息:文件名、用戶名、存取權限、文件類型和文件口令等邏輯結構信息:記錄類型、記錄個數和記錄長度等物理結構信息:設備號、文件物理結構類型、文件索引位置等使用信息:共享進程數、文件最大長度、當前大小和修改情況等管理信息:文件的建立日期、訪問日期和保留期限等(2)文件目錄一個文件系統(tǒng)中所有FCB的有序集合稱為文件目錄。一個FCB就是一個文件目錄項。一個文件目錄也被看作是一個文件,稱為目錄文件。(3)索引結點(i結點)是由除文件名外的其他文件描述信息所構成的一種數據結構。為什么要引入索引結點?①文件目錄占用大量的盤塊,檢索時間長②在檢索目錄文件過程中只用到文件名種類①磁盤索引結點存放在外存上的索引結點?;拘畔ǎ何募鳂俗R符、文件類型、文件存取權限、文件物理地址(磁盤上的地址)、文件長度、和文件存取時間等信息。②內存索引結點存放在內存上的索引結點。內存索引結點包含磁盤索引接點的全部信息,并增加內存索引結點編號、狀態(tài)、訪問計數、文件所屬的邏輯設備號和鏈接指針等信息。(4)文件的目錄結構①單級目錄結構整個文件系統(tǒng)只建立一張目錄表,每個文件在目錄表中占有一目錄項。缺點:查找速度慢不允許重名不方便實現文件共享②兩級目錄結構在系統(tǒng)中建立一個主文件目錄MFD,同時還為每個用戶建立一用戶文件目錄UFD。優(yōu)點:解決了文件的重名問題和文件共享問題----用戶名|文件名提高了目錄檢索的速度,降低查找時間缺點:增加了系統(tǒng)開銷③樹型目錄結構(多級)在兩極目錄的基礎上,允許用戶創(chuàng)建自己的子目錄,子目錄創(chuàng)建自己的子目錄,依次類推。優(yōu)點:層次結構清晰,便于管理和保護;有利于文件分類;解決了文件的重名問題;提高了文件的檢索速度;能進行存取權限的控制缺點:查找一個文件按路徑名逐層檢查,由于每個文件都放在外存,多次訪盤影響存取速度。4.磁盤調度(磁盤調度方法:FCFS、SSTF,SCAN)(1)先來先服務FCFS根據進程請求訪問磁盤的先后次序進行調度。缺點:平均尋道時間長(2)最短尋道時間優(yōu)先SSTF選擇與當前磁頭所在的磁道距離最近的磁盤訪問請求服務。缺點:出現“饑餓”現象。(3)掃描(SCAN)算法(電梯調度算法)首先考慮磁盤請求的磁頭移動方向,在方向一致的情況下選擇與當前磁頭最近的磁盤請求服務。若同方向沒有請求,磁頭轉向反方向移動。尋道時間Ts(啟動磁臂時間s+磁頭移動時間)Ts=m×n+s(移動n條磁道)旋轉延遲時間Tr=1\2r傳輸時間Tt=b\Rn其中,b為傳輸的字節(jié)數,N為一條磁道上的字節(jié)數,r為磁盤每秒的轉數。5.虛擬設備、緩沖技術、SPOOLING系統(tǒng)虛擬設備操作系統(tǒng)使用共享設備來模擬獨占設備的操作,經過操作系統(tǒng)虛擬技術處理后的設備稱為虛擬設備。在虛擬設備環(huán)境中,一個獨占設備可以允許兩個或兩個以上的進程并行使用,并且每個進程都感覺在獨占使用該設備。緩沖技術(1)為什么要引入緩沖技術緩和CPU和I/O設備之間速度不匹配的矛盾減少對CPU的中斷次數。提高CPU和I/O設備之間的并行性(2)緩沖的種類單緩沖雙緩沖循環(huán)緩沖緩沖池SPOOLing系統(tǒng)SPOOLing技術是實現虛擬設備以提高獨占設備利用率的技術,也是一種以空間換時間的技術。SPOOLing技術是在批處理操作系統(tǒng)時代引入的,即假脫機輸入輸出技術。把這種技術實質就是對輸入/輸出數據成批處理。(1)概念SPOOLing技術是指在聯(lián)機情況實現的同時外圍操作,也稱假脫機操作。它通過共享設備來模擬獨占設備的動作,使獨占設備成為共享設備,也稱為虛擬設備技術。(2)SPOOLing技術實現原理SPOOLing輸入————作業(yè)預輸入(輸入機輸入井)SPOOLing輸出————作業(yè)緩輸出(輸出井輸出機)由SPOOLing程序控制通道完成(3)SPOOLing系統(tǒng)的組成①輸入井和輸出井(外存:暫存I/O設備傳送的數據)②輸入緩沖區(qū)和輸出緩沖區(qū)(內存:匹配CPU與磁盤之間速度不匹配的矛盾)③輸入進程和輸出進程(假脫機進程)(4)SPOOLing系統(tǒng)的優(yōu)點與缺點優(yōu)點:①提高了I/O速度。用戶程序對慢速獨占設備的獨占時間大大縮短了,提高了慢速獨占設備的利用率;②用戶程序本身的執(zhí)行時間大大縮短了,提高了系統(tǒng)吞吐量和資源的利用率。③使獨占設備成為共享設備,實現了虛擬設備的功能。缺點:必須有高速、大容量和可隨機存取的外存的支持。綜合應用題多道系統(tǒng)、作業(yè)調度、進程調度、搶占式調度、非搶占式調度、周轉時間、帶權周轉時間(1)概念作業(yè)調度:是指按一定的作業(yè)調度算法,從外存的后備作業(yè)隊列中選擇若干個作業(yè)調入主存的過程。進程調度:按一定的進程調度算法,從已在內存的進程中選擇一個進程并把CPU分配給它的過程。作業(yè)周轉時間:從作業(yè)提交進入系統(tǒng)到結束退出系統(tǒng)所經歷的一段時間。平均周轉時間:多道作業(yè)周轉時間的平均值。系統(tǒng)吞吐量(吞吐率):單位時間系統(tǒng)所完成的總工作量(一般用作業(yè)數表示)。(2)調度可分為三個層次:作業(yè)調度:也稱高級調度或長期調度,決定每次接收多少個作業(yè)和接納哪些作業(yè)的問題。交換調度:主要負責內外存上的進程交換。一般通過“掛起”和“解掛”的方法來實現,也稱“中期調度”。進程/線程調度:將處理器分配給一個或多個進程/線程的調度方法,也稱“低級調度”和“短期調度”和“處理器調度”。帶權周轉時間=周轉時間/運行時間例1:先來先服務調度(非搶占)執(zhí)行次序提交時刻運行時間等待時間開始時刻完成時刻執(zhí)行次序提交時刻運行時間等待時間開始時刻完成時刻周轉時間帶權周轉時間18.01.0028.50.50.539.00.20.549.10.10.6作業(yè)平均周轉時間作業(yè)平均帶權周轉時間作業(yè)提交時刻運行時間18.01.028.50.539.00.249.10.1例2:若采用搶占的高優(yōu)先級調度算法,進程的調度次序是什么(
假定優(yōu)先數越小的作業(yè),優(yōu)先權越高。)
作業(yè)提交時刻運行時間時間:8.0 8.5 9.0 9.1 9.2 9.3 9.8時間:8.0 8.5 9.0 9.1 9.2 9.3 9.8作業(yè):1 2 3(2) 4 3(4) 1(3)(1)18.01.0328.50.5139.00.2249.10.11例3:短作業(yè)優(yōu)先調度(短作業(yè)優(yōu)先調度算法產生的平均周轉時間短,系統(tǒng)吞吐量大。非搶占)作業(yè)提交時刻執(zhí)行次序提交執(zhí)行次序提交時刻運行時間開始時刻完成時刻周轉時間帶權周轉時間18.01.039.00.249.10.128.50.5作業(yè)平均周轉時間作業(yè)平均帶權周轉時間18.01.028.50.539.00.249.10.1例4:最短剩余時間優(yōu)先調度(最短作業(yè)優(yōu)先調度算法產生的平均周轉時間最短,系統(tǒng)吞吐量最大。搶占式)作業(yè)提交時刻執(zhí)行次序提交執(zhí)行次序提交時刻運行時間開始時刻完成時刻周轉時間帶權周轉時間18.01.039.00.249.10.128.50.3作業(yè)平均周轉時間作業(yè)平均帶權周轉時間18.01.028.50.339.00.249.10.1例5:時間片輪轉調度算法(是一種基于時間片的搶占式調度算法。)假定系統(tǒng)規(guī)定的時間片大小為0.3,不考慮切換開銷。作業(yè)提交情況如下表所示:作業(yè)提交時刻執(zhí)行次序提交時刻執(zhí)行次序提交時刻運行時間運行及完成時刻周轉時間帶權周轉時間18.01.028.00.538.00.248.00.1作業(yè)平均周轉時間作業(yè)平均帶權周轉時間18.01.028.10.538.20.248.30.1例6:高響應比調度(非搶占)響應比Rp=等待時間+要求服務時間=響應時間要求服務時間要求服務時間作業(yè)提交時刻執(zhí)行次序提交時刻執(zhí)行次序提交時刻運行時間等待時間開始時刻完成時刻周轉時間帶權周轉時間18.01.028.50.539.00.249.10.1作業(yè)平均周轉時間作業(yè)平均帶權周轉時間18.01.028.50.539.00.249.10.1eg1:執(zhí)行次序提交時刻執(zhí)行次序提交時刻運行時間優(yōu)先數運行及完成時刻周轉時間帶權周轉時間A10:0040分鐘5B10:2030分鐘3C10:3050分鐘4D10:5020分鐘6作業(yè)平均周轉時間作業(yè)平均帶權周轉時間作業(yè)名到達時間運行時間優(yōu)先數A10:0040分鐘5B10:2030分鐘3C10:3050分鐘4D10:5020分鐘6eg2:在某多道程序系統(tǒng)中,用戶當前可使用的系統(tǒng)資源:內存空間100K,磁帶機2臺,打印機1臺。系統(tǒng)采用可變式分區(qū)分配方式管理內存,對磁帶機和打印機采用靜態(tài)分配方式,并假設輸入輸出操作的時間忽略不計。假設作業(yè)調度采用先來先服務算法,內存分配采用首次適應算法且不準移動已在內存中的作業(yè),進程調度采用短作業(yè)優(yōu)先的調度算法。作業(yè)序列情況如下表。作業(yè)號提交時間運行時間內存需求申請磁帶機打印機18:0030分鐘15K1128:2010分鐘30K0138:2020分鐘60K1048:3020分鐘20K1058:3515分鐘10K11問題:(1)求作業(yè)調度的次序,并給出每道作業(yè)進駐內存的時刻(5分)。(2)計算每道作業(yè)的周轉時間(5分)。解:(1)(5分)作業(yè)調度的順序:1→3→4→2→5進駐內存的時刻分別為:8:00,8:20,8:30,8:50,9:00……(5分)(2)(5分)作業(yè)的周轉時間=作業(yè)的完成時間-作業(yè)到達系統(tǒng)的時間。每道作業(yè)的周轉時間如下:1號作業(yè):30(分鐘)2號作業(yè):40(分鐘)3號作業(yè):30(分鐘)4號作業(yè):65(分鐘)5號作業(yè):40(分鐘)2.虛擬頁式存儲器管理系統(tǒng)(頁表、快表、虛地址、物理地址、快表命中、頁表命中、頁面淘汰算法(LRU、CLOCK),駐留集、置換策略、抖動、缺頁中斷)(1)頁表:放在系統(tǒng)空間的頁表區(qū),存儲邏輯頁與物理頁幀之間的對應關系。每個進程的PCB表中有一個指向頁表的指針,即每一進程擁有一張頁表。有效地址結構:邏輯地址=p(頁號)*頁面大小+d(頁內位移)物理地址=f(頁幀號))*頁面大小+d(同上)p=線性邏輯地址/頁面大小;d=線性邏輯地址-p*頁面大小。例如:頁面的大小為1KB,求邏輯地址4101的頁號和頁內位移。15141312111098665432100001000000000101得到頁號p=4,頁內位移d=5進程被調度占用CPU時,進程頁表始址被裝入頁表地址寄存器。例如:有一個32位的分頁存儲器管理系統(tǒng),頁面的大小規(guī)定為1KB,每個頁表項占4個字節(jié),求頁表所占的最大內存空間?
32位計算機系統(tǒng)的邏輯地址空間應是232,頁表長度(頁表項的個數)為:232/210=222頁表所占的內存空間:222×22=224個字節(jié),即16MB。訪問權限進程號物理塊號頁號(2)快表:由一組高速緩沖寄存器組成,用來存放當前訪問過的頁表項,以減少地址轉換過程中的時間花費。訪問權限進程號物理塊號頁號快表的表目結構:(3)命中率:選用8-12項組成的聯(lián)想存儲器,并采用適當的替換策略,在聯(lián)想存儲器中匹配成功的可能性可達80-90%。(4)等效訪問時間:設訪問主存時間為750ns,搜索聯(lián)想存儲器的時間為50ns,若聯(lián)想存儲器的命中率為80%,則一次訪問主存的平均時間為(假設先查聯(lián)想存儲器再查頁表):80%*(750+50)+20%*(750+50+750)=950ns(5)虛擬地址:在虛存管理系統(tǒng)中,通常把運行進程訪問的指令和數據的邏輯地址(目標程序中的相對地址)稱為虛擬地址。虛擬地址的集合稱為虛擬地址空間或邏輯空間。(6)實地址:主存儲器單元的實際地址。主存也稱為實地址空間或物理空間。(7)最近最久未使用(LRU)算法原理根據頁面在內存中的使用情況,選擇最近最久未使用的頁面予以淘汰。即以“最近的過去”預測“最近的將來”,即淘汰上次使用距當前最遠的頁。棧實現的LRU法——存放當前使用的各頁面的頁號。實現原理:當進程訪問某頁時,就將該頁的頁號從棧底移出壓入棧頂,或將新訪問的頁號壓入棧頂。處于棧底的就是最近最久未使用的頁面號。(7)時鐘(Clock)頁面置換算法將二次機會置換算法中的FIFO鏈組織成一個環(huán)狀隊列,設一指針指向當前最老的頁面。當產生缺頁中斷時,如果指針所指向的頁面的訪問位為“0”,則淘汰,將新調入的頁面插入到指針指向的位置,指針前移;如果訪問位為“1”,則將其清“0”,指針前移,直到找到一個訪問位為“0”的頁面。(8)頁面分配的有關策略①最小物理塊數的確定最小物理塊數是指能保證進程正常運行所需要的最少物理塊數。相關因素:機器指令的格式、功能和尋址方式。②頁面分配和置換策略固定分配局部置換可變分配全局置換:系統(tǒng)維護一個空閑物理塊隊列可變分配局部置換:根據缺頁率來動態(tài)增加或減少分配給每個進程的物理塊數。頁面置換算法實現目標:不發(fā)生抖動現象,缺頁率正常。(9)駐留集:進程的合法頁集合。(10)抖動:如果分配給進程的存儲塊數量小于進程所需要的最小值,進程的運行將很頻繁地產生缺頁中斷,這種頻率非常高的頁面置換現象稱為抖動。(11)缺頁中斷——當前訪問的頁面不再主存時產生缺頁中斷。缺頁中斷與一般中斷的區(qū)別:①在指令執(zhí)行期間產生和處理中斷信號②一條指令執(zhí)行期間可能產生多次缺頁中斷編程信號量P、V操作的編程生產者——消費者問題讀—寫問題步驟:(1)抽象為幾類進程(2)分析進程之間的直接和間接制約關系(3)設置信號量及其初值(4)為各類進程編寫代碼補充1.為什么引入進程?進程控制塊。
(1)為使程序能并發(fā)執(zhí)行,且為了對并發(fā)執(zhí)行的程序加以描述和控制,人們引入了進程的概念。(2)進程控制塊PCB是進程實體的一部分,是操作系統(tǒng)中作重要的記錄型數據結構。PCB中記錄了操作系統(tǒng)所需的。用于描述進程的當前情況以及控制進程運行的全部信息。進程控制塊的作用是使一個在多道程序環(huán)境下不能獨立運行的程序,成為一個能獨立運行的基本單位,一個能與其他進程發(fā)生并發(fā)執(zhí)行的進程。PCB是進程存在的唯一標識。2.特權指令和非特權指令特權指令:只能由操作系統(tǒng)使用的指令。特權指令的執(zhí)行一般會引起處理器的狀態(tài)切換。處理器的狀態(tài):根據運行程序對資源和機器指令的使用權限將處理器設置為不同狀態(tài):多數系統(tǒng)將處理器工作狀態(tài)劃分為管態(tài)和目態(tài):管態(tài):操作系統(tǒng)管理程序運行的狀態(tài),又稱為特權態(tài)、系統(tǒng)態(tài)、管理態(tài)或核心態(tài)目態(tài):用戶程序運行時的狀態(tài),又稱為普通態(tài)或、用戶態(tài)有些系統(tǒng)將處理器狀態(tài)劃分核心狀態(tài),管理狀態(tài)和用戶程序狀態(tài)(目標狀態(tài))三種管態(tài)和目態(tài)的比較:處理器處于管態(tài)時可以執(zhí)行全部指令(包括特權指令)可使用所有資源具有改變處理器狀態(tài)的能力處理器處于目態(tài)時:只能執(zhí)行非特權指令特權級別不同,可運行指令集合也不同特權級別越高,可以運行指令集合越大高特權級別對應的可運行指令集合包含低特權級的3.進程的阻塞與喚醒,進程的掛起與激活(1)引起進程阻塞與喚醒的事件進程請求系統(tǒng)為之服務啟動某種操作需要的數據不能及時到達本進程無工作可做(如發(fā)送進程)(2)進程的阻塞過程進程的阻塞通過阻塞原語來實現,阻塞是進程的一種主動行為,過程:將進程狀態(tài)由運行變?yōu)樽枞麑⒆枞M程插入對應的阻塞隊列設調度標志為“真”,進程調度程序調度新的就緒進程運行。(3)進程的喚醒過程進程的喚醒通過喚醒原語實現,喚醒是一種被動行為,過程:將要喚醒的進程從阻塞隊列中移出將該進程的狀態(tài)由阻塞變?yōu)榫途w將該進程插入就緒隊列等待CPU調度(4)進程的掛起(一個進程只能解掛自己的子孫進程,而不能解掛其他族系的進程。)進程的掛起通過掛起原語來實現,主要過程:檢查將要被掛起的進程的狀態(tài)若狀態(tài)為:執(zhí)行停止,設置CPU調度標志為“真”活動就緒靜止就緒活動阻塞靜止阻塞(5)進程的激活進程的激活過程通過激活原語實現,過程:檢查將要被掛起的進程的狀態(tài):靜止就緒活動就緒靜止阻塞活動阻塞檢查是否要進行重新調度例如:請判斷下列說法哪些的正確的?答案:(2)、(3)(1)進程可以由自己創(chuàng)建(2)進程可以由自己阻塞(3)進程可以由自己掛起(4)進程可以由自己激活(5)進程可以由自己喚醒(6)進程可以由自己撤消4.進程通信進程通信通過發(fā)送原語和接受原語方式。5.線程——什么是內核級線程什么是用戶級線程
(1)級線程ULT:由用戶應用程序建立的線程。并且由用戶程序負責對他們的調度和管理工作。(2)內核級線程KLT:這類進程依賴OS內核,所有線程的創(chuàng)建、調度和管理全部由操作系統(tǒng)內核負責。即所有線程的創(chuàng)建、切換和撤消等操作都需要進行系統(tǒng)調用,由OS內核來實現。用戶線程:運行在用戶地址空間的線程。內核線程:運行在內核空間的線程。所有的用戶級線程都是用戶線程,內核級線程可以是用戶線程,也可以是內核線程。6.什么是環(huán)境調用單位是進程什么是環(huán)境調用單位是線程
(1)僅設置用戶級線程的系統(tǒng)是以進程作為調度的基本單位。(2)設置內核級線程的系統(tǒng)以線程作為調度的基本單位。7.產生死瑣的必要條件(1)互斥條件:在一段時間內某資源只允許一進程使用。(2)請求和保持條件:既占有又同時請求資源。(3)不剝奪條件:資源在使用完前不能被搶奪。(4)環(huán)路條件:發(fā)生死鎖時必然存在一個進程-資源的環(huán)形鏈。7.死瑣的解除方法剝奪資源撤銷進程8.什么是靜態(tài)重定位?靜態(tài)重定位:在裝入一個作業(yè)時,由鏈接程序在程序執(zhí)行前進行的重定位,即把作業(yè)中的指令地址和數據地址全部轉換成絕對地址。靜態(tài)重定位是由重定位裝配程序完成,不支持程序浮動。9.什么是主存的連續(xù)分配?動態(tài)分區(qū)分配。根據進程實際需要,動態(tài)的分配內存空間。在實現可變分區(qū)分配時,將涉及到分區(qū)分配中所用的數據結構、分區(qū)分配算法和分區(qū)的分配與回收操作這樣三個問題。10.可重定位分區(qū)通過移動的方法,把主存中分散的各個小的存儲分區(qū)拼湊成大存儲區(qū)的過程,這種方法叫做緊湊。動態(tài)重定位的特點:動態(tài)重定位由硬件機構完成,硬件機構包括重定位寄存器和加法器。在程序執(zhí)行的過程中進行邏輯地址到物理地址的轉換。目標程序可以在內存中移動且可以不連續(xù)。11.分頁與分段的比較(1)頁是信息的物理單位;而段是信息的邏輯單位。(2)頁的大小固定;而段的大小是由它邏輯信息的長度的決定,不同段的長度通常不同。(3)分頁管理的地址空間是一維的,而分段管理的地址空間是二維的(4)段式存儲管理能夠實現基于完整功能邏輯段的信息共享,便于實現動態(tài)鏈接。12.信息共享段的共享:對于那些被多個程序共享的段,在內存中只保留一個副本。副本采用可重入代碼。13.虛擬存儲器的實現方法(1)請求分頁的存儲器管理系統(tǒng)(2)請求分段的存儲器管理系統(tǒng)(3)段頁式虛存管理系統(tǒng)14.請求分頁存儲器管理方式可能遇到哪些問題?(1)最小物理塊數的確定(2)物理塊的分配策略(3)物理塊的分配算法15.分段保護越界檢查:每個進程只能運行在自己的地址空間。存取控制檢查:只讀、只執(zhí)行、讀/寫環(huán)保護機構:不同的環(huán)具有不同的訪問權限。原則是:一個程序可以訪問駐留在相同環(huán)或較低環(huán)中的數據一個程序可以調用駐留在相同環(huán)或較高環(huán)中的服務16.分頁保護越界保護:設置頁表長度寄存器,查頁表前,先檢查頁號是否越界。操作訪問保護:在每個頁表項中增設一存儲保護域,用于說明對該頁的訪問權限,每一個對該頁存儲的訪問都首先要比照是否滿足該頁訪問權限的說明,滿足則訪問,否則報錯。17.設備管理的任務和功能設備管理的主要任務是完成用戶提出的I/O請求,為用戶分配I/O設備,以提高CPU和I/O設備的利用率和系統(tǒng)的吞吐量。主要包括:緩沖管理:管理好各種類型的緩沖區(qū)。設備分配:根據用戶的請求,分配相應的設備。設備處理:通過設備處理程序(設備驅動程序)來實現CPU和設備控制器之間的通信。設備獨立性和虛擬設備:通過設備獨立性程序可使應用程序獨立于具體的物理設備;通過虛擬技術,可把一次只允許一個進程訪問的物理設備改造成可同時供多個進程共享的設備。18.設備分配的分配順序分配設備————分配控制器————分配通道19.I/O系統(tǒng)的層次兩層:設備相關層(驅動層)設備無關層(獨立層)四層:用戶進程——進行I/O調用;格式化I/O;spooling設備無關I/O軟件(設備獨立性軟件)——設備命名;保護;阻塞;緩沖;分配與釋放設備驅動程序——設置設備寄存器;檢查狀態(tài)中斷處理程序——當I/O結束時喚醒驅動(硬件——執(zhí)行I/O操作)中斷層具體功能中斷層是I/O子系統(tǒng)的最低層。主要工作是執(zhí)行與中斷有關的操作,并在I/O結束時喚醒驅動程序。驅動層的具體工作:(1)確定是否向設備發(fā)命令(2)確定向設備發(fā)什么命令(3)向設備發(fā)命令(設置寄存器)(4)監(jiān)督設備命令的正確執(zhí)行和等待物理操作的完成(5)執(zhí)行后處理:中斷時被調用的驅動層物理操作的后續(xù)處理獨立層(邏輯I/O層)功能(1)向用戶層軟件提供一個統(tǒng)一的接口(2)設備命名(3)設備保護:防止無權存取設備的用戶存取設備。(4)緩沖管理(5)提供與設備無關的塊尺寸:向更高一層隱藏不同設備的物理塊大小的差別。(6)塊設備的存儲分配(7)分配和釋放獨占設備(8)錯誤報告(與設備無關的錯誤報告)用戶空間層I/O軟件——運行于用戶空間的I/O軟件(1)與用戶程序連接在一起的庫過程。(輸入輸出的格式是由庫過程完成的)(2)在核心外運行的I/O程序。(如假脫機進程)例如:請說明下列的各個工作是在設備管理的哪個層次完成的?1.向設備寄存器寫命令。2.檢查用戶是否有權使用設備。3.將二進制整數轉換成ASCII碼打印。4.為一個讀操作計算磁道和扇區(qū)。解:1.驅動層;2.設備無關I/O軟件層;3.用戶空間層I/O軟件;4.驅動層.20.I/O軟件設總體設計目標:是高效率和通用性。前者要確保I/O設備與CPU的并發(fā)性,以提高資源利用率;后者則是指盡可能地提供簡單抽象、清晰而統(tǒng)一的接口。重要原則:設法消除或屏蔽設備硬件內部的地基處理過程,為用戶提供一個簡便、易用、抽象的邏輯設備接口,保證用戶安全、方便的實用各類設備。21.文件屬性結構文件屬性主要有:文件類型、文件長度、文件的物理位置、文件的建立時間等。22.文件的打開和關閉是干什么的?所謂“打開”(open),是指系統(tǒng)將指名文件的屬性(FCB——包括該文件在外存上的物理位置)從外存拷貝到內存打開文件表的一個表目中,并將該文件返回給用戶。所謂“關閉”(close),系統(tǒng)調用來關閉系文件,OS將會把該文件從打開文件表中的表目上刪除掉。打開文件——任何一個文件使用前都要先打開,即把文件的FCB送到內存。關閉文件:把文件在主存中的FCB寫入磁盤,并修改系統(tǒng)打開文件表和用戶打開文件表。23.文件的讀、寫、刪除是干什么的?讀文件:在讀一個文件時,須在相應系統(tǒng)調用中給出文件名和應讀入的內存目標地址。此時,系統(tǒng)同樣要查找目錄,找到指定的目錄項,從中得到被讀文件在外存中的位置。在目錄項中,還有一個指針用于對文件的讀、寫。寫文件:在寫一個文件時,須在相應系統(tǒng)調用中給出該文件名及該文件在內存中的地址。為此,也同樣須查找目錄,找到指定文件的目錄項,再利用目錄中的寫指針進行寫操作。刪除文件:當已不再需要某文件時,可將它從文件系統(tǒng)中刪除。在刪除時,系統(tǒng)應先從目錄中找到要刪除的文件找到要刪除文件的目錄項,使之成為空項,然后回收該文件所占用的存儲空間。24.文件邏輯結構的類型和特點(1)有結構文件順序文件:其中記錄通常是定長記錄,因而能用較快的速度查找文件中的記錄。(順序文件的優(yōu)點適合順序存取,批量存取的效率高。順序文件的缺點變長記錄文件隨機直接存取效率低。)索引文件:記錄為可變長度時,為每個文件建立一張主索引表,每個邏輯記錄在索引表中建立一個表項,以加快對記錄的檢索速度,每一個表項設一指針指向對應的邏輯記錄。(索引文件很容易實現對邏輯文件的隨機訪問。)順序索引文件:將順序文件的所有記錄分成若干個組,并為順序文件建立一張索引表,索引表的表項為每組第一個記錄的鍵值和指向該記錄的指針。(索引順序文件一般按關鍵字順序組織文件。)(2)無結構文件25.目錄查詢技術當用戶要訪問一個已存在文件時,系統(tǒng)首先要利用用戶提供的文件名對目錄進行查詢,找出該文件的文件控制塊對應索引結點;然后,根據FCB或索引結點中所記錄的文件物理地址,換算出文件在磁盤上的物理位置;最后,再通過磁盤驅動程序,將所需文件讀入內存。目前對目錄進行查詢的方式有兩種:線性檢索法和Hash方法。26.文件的共享(1)基于索引結點的共享方式(硬鏈接)(2)基于符號鏈的文件共享(軟鏈接)考研題進程的描述與控制D單處理機系統(tǒng)中,可并行的是()
I進程與進程
II處理機與設備III處理機與通道
IV設備與設備
A.I、II和III
B.I、II和IV
C.I、III和IV
D.II、III和IVA下列選項中,操作系統(tǒng)提供的給應用程序的接口是()A:系統(tǒng)調用B:中斷C:庫函數D:原語C下列選項中,導致創(chuàng)進新進程的操作是() I用戶成功登陸II設備分配III啟動程序執(zhí)行A:僅I和IIB:僅II和IIIC:僅I和IIID:I,II,IIIA下列選項中,降低進程優(yōu)先權級的合理時機是()A:進程的時間片用完B:進程剛完成I/O,進入就緒隊列C:進程長期處于就緒隊列中D:就緒從就緒狀態(tài)轉為運行態(tài)A下列選項中,在用戶態(tài)執(zhí)行的是()A.命令解釋程序B.缺頁處理程序C.進程調度程序D.時鐘中斷處理程序D在支持多線程的系統(tǒng)中,進程P創(chuàng)建的若干個線程不能共享的是()A.進程P的代碼段B.進程P中打開的文件C.進程P的全局變量D.進程P中某線程的棧指針互斥與同步三個進程p1,p2,p3互斥使用一個包含N(N>0)個單元的緩沖區(qū),p1每次用produce()生成一個正整數并用put()送入緩沖區(qū)一個空單元中;p2每次用getodd從緩沖區(qū)中取一個奇數,并用countodd()統(tǒng)計奇數個數;p3每次用geteven從緩沖區(qū)中取一個偶數,并用counteven()統(tǒng)計偶數個數;請用信號量機制實現這三個進程之間的同步與互斥活動,并說明所定義的信號量的含義。要求用偽代碼描述。設四個信號量:semaphoreodd=0,even=0;empty=N;mutex=1;P2:{P(odd);P2:{P(odd);P(mutex);geteven();countodd=countodd+1V(mutex);V(empty);}ParendP3:{P(even);P(mutex);geteven();counteven=counteven+1V(mutex);V(empty);}P1:{X=prodeuce();P(empty);P(mutex);put();V(mutex);if(X%2==0)V(even);elseV(odd);}調度與死鎖D下列進程調度算法中,綜合考慮進程等待時間和執(zhí)行時間的是():A.時間片輪轉調度算法B.短進程優(yōu)先調度算法C.先來先服務調度算法 D.高響應比優(yōu)先調度算法C某計算機系統(tǒng)有8臺打印機,有K個進程競爭使用,每個進程最多需要3臺打印機。該系統(tǒng)可能發(fā)生死鎖的K的最小值是():A.2 B.3 C.4 D.5B設與某資源相關聯(lián)的信號量初值為3,當前值為1,若M表示該資源的可用個數,N表示等待資源的進程數,則M,N分別是() A.0,1 B.1,0C.1,2 D.2,0A下列選項中,降低進程優(yōu)先權級的合理時機是()A:進程的時間片用完B:進程剛完成I/O,進入就緒隊列C:進程長期處于就緒隊列中D:進程從就緒狀態(tài)轉為運行態(tài)B下列選項中,滿足短任務優(yōu)先且不會發(fā)生饑餓現象的調度算法是A.先來先服務B.高響應比優(yōu)先C.時間片輪轉D.非搶占式短任務優(yōu)先A下列選項中,在用戶態(tài)執(zhí)行的是A.命令解釋程序B.缺頁處理程序C.進程調度程序D.時鐘中斷處理程序C有兩個并發(fā)執(zhí)行的進程P1和P2,共享初值為1的變量x。P1對x加1,P2對x減1。加1和減1操作的指令序列分別如下所示。//加1操作//減1操作loadR1,xloadR2,x//取x到寄存器R1中incR1decR2storex,R1storex,R2//將R1的內容存入x兩個操作完成后,x的值A.可能為-1或3B.只能為1C.可能為0、1或2D.可能為-1、0、1或2某銀行提供1個服務窗口和10個供顧客等待的座位。顧客到達銀行時,若有空座位,則到取號機上領取一個號,等待叫號。取號機每次僅允許一位顧客使用。當營業(yè)員空閑時,通過叫號選取一位顧客,并為其服務。顧客和營業(yè)員的活動過程描述如下:cobegin{process顧客i{從取號機獲取一個號碼;等待叫號;獲取服務;}}coend請?zhí)砑颖匾男盘柫亢蚉、V(或wait()、signal())操作,實現上述過程中的互斥與同步。要求寫出完整的過程,說明信號量的含義并賦初值。semaphoreseets=10;//有10個坐位的資源信號量mutex=1;//取號機互斥信號量haveCustom=0;//顧客與營業(yè)員同步,無顧客時營業(yè)員休息process營業(yè)員{while(True){process營業(yè)員{while(True){P(haveCustom);//沒有顧客則休息叫號;為顧客服務;}}P(seets);//等空位P(mutex);//申請使用取號機從取號機上取號;V(mutex);//取號完畢V(haveCustom);//通知營業(yè)員有新顧客到來等待營業(yè)員叫號;V(seets);//離開坐位接受服務;}主存管理A分區(qū)分配內存管理方式的主要保護措施是:A:界限地址保護B:程序代碼保護C:數據保護 D:棧保護C一個分段存儲管理系統(tǒng)中,地址長度為32位,其中段號占8位,則最大的段長是:A:28字節(jié) B:216字節(jié)C:224字節(jié) D:232字節(jié)D某基于動態(tài)分區(qū)存儲管理的計算機,其主存容量為55mb(初始空間),采用最佳適配(Bestfit)算法,分配和釋放的順序為:分配15mb,分配30mb,釋放15mb,分配8mb,此時主存中最大空閑分區(qū)的大小是A:7mb B:9mbC:10mb D:15mb虛擬存儲器A29.當系統(tǒng)發(fā)生抖動(thrashing)時,可用采取的有效措施是Ⅰ.撤銷部分進程Ⅱ.增加磁盤交換區(qū)的容量Ⅲ.提高用戶進程的優(yōu)先級A.僅ⅠB.僅ⅡC.僅ⅢD.僅Ⅰ、ⅡB30.在虛擬內存管理中,地址變換機構將邏輯地址變換為物理地址,形成該邏輯地址的階段是A.編輯B.編譯C.鏈接D.裝載設備管理B某文件占10個磁盤塊,現要把該文件磁盤塊逐個讀入主存緩沖區(qū),并送用戶區(qū)進行分析,假設一個緩沖區(qū)與一個磁盤塊大小相同,把一個磁盤塊讀入緩沖區(qū)的時間為100us,將緩沖區(qū)的數據傳送到用戶區(qū)的時間是50us,CPU對一塊數據進行分析的時間為50us。在單緩沖區(qū)和雙緩沖區(qū)結構下,讀入并分析完該文件的時間分別是A.1500us、1000usB.1550us、1100usC.1550us、1550usD.2000us、2000usA假設磁頭當前位于第105道,正在向磁道序號增加的方向移動。現有一個磁道訪問請求序列為35,45,12,68,110,180,170,195,采用SCAN調度算法得到的磁道訪問序列是()
A.110,170,180,195,68,45,35,12B.110,68,45,35,12,170,180,195
C.110,170,180,195,12,35,45,68D.12,35,45,68,110,170,180,195A程序員利用系統(tǒng)調用打開I/O設備時,通常使用的設備標識是()A.邏輯設備名
B.物理設備名
C.主設備號
D.從設備號文件管理B下列文件物理結構中,適合隨機訪問且易于文件擴展的是()A.連續(xù)結構B.索引結構C.鏈式結構且磁盤塊定長D.鏈式結構且磁盤塊變長C設文件索引節(jié)點中有7個地址項,其中4個地址項為直接地址索引,2個地址項是一級間接地址索引,1個地址項是二級間接地址索引,每個地址項大小為4字節(jié),若磁盤索引塊和磁盤數據塊大小均為256字節(jié),則可表示的單個文件的最大長度是()A:33kbB:519kbC:1057kbD:16513kbC設置當前工作目錄的主要目的是()A:節(jié)省外存空間B:節(jié)省內容空間C:加快文件的檢索速度D:加快文件的讀寫速度B本地用戶通過鍵盤登錄系統(tǒng)時,首先獲得鍵盤輸入信息的程序是()A:命令解釋程序B:中斷處理程序C:系統(tǒng)調用程序D:用戶登錄程序B下列文件物理結構中既適合隨機訪問,又易于文件擴展的是()A.連續(xù)文件B.索引文件C.鏈式結構且磁盤塊定長D.鏈式結構且磁盤塊變長A文件系統(tǒng)中,文件訪問控制信息存儲的合理位置是()A.文件控制塊 B.文件分配表C.用戶口令表 D.系統(tǒng)注冊表B設文件F1的當前引用計數值為1,先建立F1的符號鏈接(軟鏈接)文件F2,然后再建立F1的硬鏈接文件F3,然后刪除F1,此時F2和F3的引用計數值分別是()A.0,1 B.1,1C.1,2 D.2,1A程序員通過系統(tǒng)調用打開I/O設備時,通常使用的設備標識符是()A.邏輯設備名 B.物理設備名C.主設備號 D.從設備號選擇題例題在批處理系統(tǒng)中,用戶作業(yè)由()組成。A.程序B.程序+數據C.程序+作業(yè)說明書D.程序+數據+作業(yè)說明書下列選擇中,()不是操作系統(tǒng)關心的主要問題。A.管理計算機裸機B.提供用戶與計算機硬件系統(tǒng)的接口C.管理計算機系統(tǒng)資源D.高級程序設計語言的編譯器()不是設計實時操作系統(tǒng)主要追求的目標。A.安全可靠B.資源利用率C.及時響應D.快速處理在虛擬頁式存儲管理中,下列說明哪個是正確的()A.頁面長度固定,并且是軟件的設計特性B.頁面長度固定,并且是硬件的設計特性C.頁面長度可變,并且是硬件的設計特性D.頁面長度可變,并且是軟件的設計特性若系統(tǒng)中有同類資源10個,被3個進程所共享,每個進程最多可申請()個該類資源時,系統(tǒng)不會發(fā)生死鎖。A.2B.3C.4D.5文件系統(tǒng)中,設立打開文件(open)系統(tǒng)功能調用的基本操作是()。A.把文件信息從輔存讀入主存B.把文件的FCB從輔存讀入主存C.把文件的FAT表信息從輔存讀入主存D.把磁盤的超級塊從輔存讀入主存工作集是進程運行時被頻繁訪問的頁面集合。進程在運行時,如果它的工作集頁面都在()就能夠使該進程有效地運行,否則系統(tǒng)就可能會發(fā)生抖動現象。A.外部存儲器B.虛擬存儲器C.輔助存儲器D.主存儲器已知某段式虛擬存儲器管理系統(tǒng)中,段的邏輯地址結構為:段號為5位,段內地址為13位。主存容量為5K,輔存容量為200K,那么該虛擬存儲器系統(tǒng)的實際容量為。A.160K B.200KC.205K D.256K例題進程同步1:設公共汽車上,司機和售票員的活動分別為:司機的活動為啟動車輛,正常行車,到站停車;售票員的活動為關車門,售票,開門。給出在汽車不斷地到站、停車、行駛過程中,司機和售票員的活動的同步關系。用信號量和wait,signal操作實現他們間的協(xié)調操作。答:根據一般的常識,有售票員應滿足的同步關系為:當司機停車后,才將車門打開讓顧客上下車。司機的同步關系為:當售票員關門后,才能開車.設互斥信號量binary_semaphorebus_closed,bus_stopped;初始值為bus_closed.flag=0;bus_stopped.flag=0;//表達初始情況第一次用到信號量時情形為車門沒有關,車是開著的進程為:driver{busserver{do{do{wait(bus_closed);closingthedoor;busstartingup;signal(bus_closed);busisdriving;ticketselling;busisparking;wait(bus_stopped);signal(bus_stopped);openingthedoor;}while(1)gettingonoffthebus;}}while(1)}進程同步2:某車站售票廳,任何時刻最多可容納20名購票者進入,當售票廳中少于20名購票者時,廳外的購票者可立即進入,否則需在外面等待。若把一個購票者看作一個進程,請回答下列問題:(1)用PV操作管理這些并發(fā)進程時,應怎樣定義信號量,寫出信號量的初值以及信號量各種取值的含義。(2)根據所定義的信號量,把應執(zhí)行的P、V操作填入下面橫線上,以保證進程能夠正確地并發(fā)執(zhí)行。(3)若欲購票者最多為n個人,寫出信號量可能的變化范圍(最大值和最小值)。答:(1)定義一信號量S,初始值為20,其意義如下:S>0S的值表示可繼續(xù)進入售票廳的人數S=0表示售票廳中已有20名顧客(購票者)S<0|S|的值為等待進入售票廳的人數(2)根據所定義的信號量,把應執(zhí)行的P、V操作填入下面橫線上,以保證進程能夠正確地并發(fā)執(zhí)行。COBEGINPROCESSPi(i=1,2,……)begin;P(S)進入售票廳;購票;退出;V(S)end;COEND(3)S的最大值為20;S的最小值為20-n進程同步3:理發(fā)店里有一位理發(fā)師,一把理發(fā)椅和N把供等候理發(fā)的顧客坐的椅子.如果沒有顧客,則理發(fā)師便在理發(fā)椅上睡覺.當一個顧客到來時,他必須先喚醒理發(fā)師.如果顧客到來時理發(fā)師正在理發(fā),則如果有空椅子,可坐下來等;否則離開。答:定義信號量如下:Var Sn: semaphore;{位子數目,初值為n} S: semaphore;{理發(fā)師睡覺,初值為1}mutex: semaphore;{初值為1}用P、V操作實現如下:理發(fā)師進程理發(fā)師進程:RepeatP(S);P(mutex);叫人理發(fā);V(mutex);理發(fā);Untilfalse;顧客進程i:P(Sn);{門外觀望}P(mutex);進門;V(mutex);V(S);{if(sn==n-1)v(s);}等候;理發(fā);V(Sn)P(mutex);出門;V(mutex);進程同步4:桌子上有一只盤子,每次只能放入一只水果。爸爸專向盤中放蘋果,媽媽專向盤中放桔子,一個兒子專等吃盤中的桔子,一個女兒專等吃盤中的蘋果。請利用P、V操作實現他們之間的同步。答:在本題中,應設置三個信號量s、so、sa,信號量s表示盤子是否為空,其初值為1;信號量so表示盤中是否有桔子,其初值為0;信號量sa表示盤中是否有蘋果,其初值為0。同步描述如下:ints=1;intsa=0;intso=0;father(){father(){p(s);將水果放入盤中;if(放入的是桔子)v(so);elsev(sa);}{cobeginfather();son();daughter();coenddaughter(){daughter(){p(sa);從盤中取出蘋果;v(s);吃蘋果;}son(){p(so);從盤中取出桔子;v(s);吃桔子;}進程同步5:桌子上有一只盤子,最多可容納兩個水果,每次只能放人或取出一個水果。爸爸專向盤子中放蘋果(apple),媽媽專向盤子中放桔子(orange),兩個兒子專等吃盤子中的桔子,兩個女兒專等吃盤子中的蘋果。請用Pv操作來實現爸爸、媽媽、兒子、女兒之間的同步與互斥關系。Mother:beginL2:P(empty);P(mutex);放桔子;V(mutex);V(orange);GotoL2;End;答:盤子為互斥資源,因可以放兩個水果,empty初值為2;再設信號量mutexMother:beginL2:P(empty);P(mutex);放桔子;V(mutex);V(orange);GotoL2;End;parbeginFather:beginL1:p(empty);P(mutex);放蘋果;V(mutex);V(apple);GotoL1;End;Son:beginSon:beginL4:P(orange);P(mutex);取桔子;V(mutex);V(empty);GotoL4;End;ParendDaughter:beginL3:p(apple);P(mutex);取蘋果;V(mutex);V(empty);GotoL3;End;進程同步6:圖書館有100個座位,每位進入圖書館的讀者要在登記表上登記,退出時要在登記表上注銷。要幾個程序有多少個進程(答:一個程序;為每個讀者設一個進程)
(1)當圖書館中沒有座位時,后到的讀者在圖書館為等待(阻塞)(2)當圖書館中沒有座位時,后到的讀者不等待,立即回家。解(2)解(2)設整型變量COUNT=100;信號量:MUTEX=1;P(MUTEX);IF(COUNT==0){V(MUTEX);RETURN;}COUNT=COUNT-1;登記V(MUTEX);閱讀P(MUTEX);COUNT=COUNT+1;V(MUTEX);RETURN;解(1)設信號量:S=100;MUTEX=1P(S)P(MUTEX)登記V(MUTEX)閱讀P(MUTEX)注銷V(MUTEX)V(S)進程同步7:有一座東西方向的獨木橋;用P,V操作實現:(1)每次只允許一個人過橋;(2)當獨木橋上有行人時,同方向的行人可以同時過橋,相反方向的人必須等待。(2)解設信號量:MUTEX=1(東西方互斥)(2)解設信號量:MUTEX=1(東西方互斥)MD=1(東向西使用計數變量互斥)MX=1(西向東使用計數變量互斥)設整型變量:CD=0(東向西的已上橋人數)CX=0(西向東的已上橋人數)(1)解設信號量MUTEX=1P(MUTEX)過橋V(MUTEX)從西向東:從西向東:P(MX)IF(CX=0){P(MUTEX)}CX=CX+1V(MX)過橋P(MX)CX=CX-1IF(CX=0){V(MUTEX)}V(MX)從東向西:P(MD)IF(CD=0){P(MUTEX)}CD=CD+1V(MD)過橋P(MD)CD=CD-1IF(CD=0){V(MUTEX)}V(MD)(3)解:從東向西的,和(2)相同;從西向東的和(1)相同。進程同步8:有一個俱樂部,有甲乙兩個服務員,當顧客有請求時,甲負責送煙,乙負責送火,無顧客請求時,服務員睡眠。顧客自己不能帶煙和火,當顧客要抽煙時,可請求服務員送煙和火,煙和火還未送到時,顧客必須等待。設信號量:SY,SH,CY,CH:初值都為0乙服務員REPEATP(SH)乙服務員REPEATP(SH)送火V(CH)UNTILFALSE顧客V(SY)/*(請求送煙)*/V(SH)/*(請求送火)*/P(CY)/*(等煙)*/P(CH)/*(等火)*/抽煙REPEATP(SY)送煙V(CY)UNTILFALSE進程同步9:有一個超市,最多可容納N個人進入購物,當N個顧客滿員時,后到的顧客在超市外等待;超市中只有一個收銀員??梢园杨櫩秃褪浙y員看作兩類進程,兩類進程間存在同步關系。寫出用P;V操作實現的兩類進程的算法(2003年系統(tǒng)設計員考試的題目)解:設信號量:S=0,C=0(顧客與收銀員的同步信號量),M=N顧客顧客P(M)進入店內購物V(S)P(C)V(M)收銀員P(S)收銀V(C)進程同步10:一個盒子,內有黑白兩種棋子(數量相等),甲每次從盒子中取出一顆黑子,乙每次從盒子中取出一顆白子,一人取了棋子后,必須等另一方取過棋子方可再取,(可假設甲先取)。解:設信號量:SJ=1,SY=0乙乙REPEATP(SY)取一顆白子V(SJ)UNTIL盒子中無白子甲REPEATP(SJ)取一顆黑子V(SY)UNTIL盒子中無黑子內存管理1:在分頁存儲管理系統(tǒng)中,存取一次內存的時間是8us,查詢一次快表的時間是1us,缺頁中斷的時間是20us,假設頁表的查詢與快表的查詢同時進行。當查詢頁表時,如果該頁在內存但快表中沒有頁表項,系統(tǒng)將自動把該頁頁表項送入快表。求對某一數據進行一次次存取可能需要的時間?現連續(xù)對同一頁面上的數據進行4次連續(xù)讀取,求每次讀取數據可能需要的時間?答:當系統(tǒng)對數據進行存取時,有3種可能性。所存取的數據的頁面在內存,其頁表項已經存儲到快表,此時存取數據的時間是:查詢快表的時間+存取內存數據的時間=1us+8us=9us所存取的數據的頁面在內存,但是其頁表項沒有存儲到快表,沒有命中快表,此時存取數據的時是:查詢頁表的時間+存取內存數據的時間=8us+8us=16us所存取的數據的頁面不在內存,發(fā)生缺頁中斷,此時存取數據的時間是:查詢頁表的時間+缺頁中斷的時間+查詢頁表的時間+存取內存數據的時間=8us+20us+8us+8us=44us當對某一數據進行4次連續(xù)讀取時:第1次可能的時間為:1us+8us=9us;8us+8us=16us;8us+20us+8us+8us。第2次時,對應頁面的頁表項已經交換到快表中。因為存取是連續(xù)的,不存在頁面被淘汰的可能性,所以第2次、第3次、第4次的存取時間是一樣的,消耗的時間為1us+8us=9us。內存管理2:若在一分頁存儲管理系統(tǒng)中,某作業(yè)的頁表如下所示。已知頁幀大小為1024字節(jié),試將邏輯地址1011,2148,3000,5012轉化為相應的物理地址(注:此處塊號即為頁幀號)。頁號塊號01232316答:本題中,為了描述方便,設頁號為P,頁內位移為W,邏輯地址為A,內存地址為M,頁幀大小為L,則P=int(A/L)W=AmodL對于邏輯地址1011P=int(1011/1024)=0W=1011mod1024=1011A=1101=(0,1101)查頁表第0頁在第2塊,所以物理地址為M=1024*2+1101=3059。對于邏輯地址為2148P=2148/1024=2W=2148mod1024=100A=2148=(2,100)查頁表第2頁在第1塊,所以物理地址為M=1024*1+100=1124。對于邏輯地址為3000P=3000/1024=2W=3000mod1024=952A=3000=(2,952)查頁表第2頁在第1塊,所以物理地址為M=1024*1+952=1976對于邏輯地址5012P=5012/1024=4W=5012mod1024=916因頁號超過頁表長度,該邏輯地址非法。內存管理5:有一計算機系統(tǒng),內存容量為512K,輔存容量為2G,邏輯地址形式如下:段號段內地址2920190求其虛擬存儲器的實際容量?答:虛擬內存的實際大小由系統(tǒng)的邏輯地址結構、主存輔存容量共同決定。虛擬內存容量的理論值是210*220=1G;最大段內地址為220=1M,遠大于內存容量,其段長超過512K的內存容量
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省南通市如皋市2025屆高三第一次適應性考試(1.5模)數學試題(解析版)
- 智慧環(huán)衛(wèi)大數據一體化管理平臺設計方案智慧環(huán)衛(wèi)信息化管控平臺解決方案
- (二模)晉中市2025年3月高考適應性訓練考試 生物試卷(含A+B卷答案詳解)
- 5.3 凸透鏡成像的規(guī)律 說課稿 2025年初中人教版物理八年級上冊
- 暑期師德心得體會
- 四川省攀枝花市鹽邊縣2024-2025學年九年級上學期1月期末數學試題(原卷版+解析版)
- 西站框構中橋施工方案 投標方案(技術方案)
- 交通行業(yè)智能交通信號燈智能運維與數據分析方案
- 移動支付技術與其應用模擬試題及答案
- 項目延期原因說明書
- 2025年海南保亭縣事業(yè)單位招聘綜合歷年高頻重點模擬試卷提升(共500題附帶答案詳解)
- 污水處理設施運維服務投標方案(技術標)
- 2024年蘇州高博軟件技術職業(yè)學院高職單招職業(yè)適應性測試歷年參考題庫含答案解析
- 2025年上半年江蘇省無錫瀚瀾水利科技限公司招聘7人易考易錯模擬試題(共500題)試卷后附參考答案
- 我的家鄉(xiāng)衢州
- 空調安裝及維修的注意事項
- 廣電和通信設備調試工(高級)理論考試復習題庫(含答案)
- DB44∕T 876-2011 物業(yè)服務 會務服務規(guī)范
- 橫河氧量變送器標定及檢修
- ArcGIS應用基礎培訓(共98張)
- 南京鼓樓區(qū)部編版五年級語文下冊第二單元教材分析
評論
0/150
提交評論