2023年上海電視大學考試復習指導整理_第1頁
2023年上海電視大學考試復習指導整理_第2頁
2023年上海電視大學考試復習指導整理_第3頁
2023年上海電視大學考試復習指導整理_第4頁
2023年上海電視大學考試復習指導整理_第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

操作系統期末考試復習指導(上海電大整理僅供參考)第一部分考核說明一、命題原則1、選擇題(選擇一個對的答案的代碼填入括號中,每小題2分,共30分)2、判斷題(對的的劃√,錯誤的劃×,每小題2分,共10分)3、簡答題(每小題5分,共40分)4、應用題(每小題10分,共20分)二、考試方式:采用一紙開卷考試,筆試。答題時限:筆試考試時間為90分鐘。第二部分復習重點操作系統概述一、復習要點:考核學生對操作系統的定義、重要功能、重要類型、操作系統的特性以及分時概念等內容的學習情況?!菊莆铡?.操作系統的概念操作系統是控制和管理計算機系統內各種硬件和軟件資源、有效地組織多道程序運營的系統軟件(或程序集合),是用戶與計算機之間的接口。記憶要點:操作系統是什么——是系統軟件;操作系統管什么——控制和管理計算機系統內各種資源;操作系統有何用——擴充硬件功能,方便用戶使用。2.操作系統的重要功能操作系統的五大重要功能:存儲管理、進程和解決機管理、文獻管理、設備管理、用戶接口管理?!纠斫狻坎僮飨到y的特性:并發(fā)、共享和異步性。并發(fā)性是指兩個或多個任務在同一給定的時間間隔中進行。資源共享是指多個任務共享計算機系統中的資源異步性體現了多道程序環(huán)境下,程序執(zhí)行時“走走停停”的性質,更反映出操作執(zhí)行現場的不可預知性。理解模擬:并發(fā)——“大家都前進了”;共享——“一件東西大家用”;異步性——“你走我?!保白咦咄M!?。操作系統的重要類型操作系統的重要類型有:多道批解決系統、分時系統、實時系統、網絡操作系統、個人機操作系統、分布式系統和嵌入式操作系統。批解決操作系統的重要特性可歸納為兩點:“多道”和“成批”?!岸嗟馈笔侵竷却嬷型瑫r存在有多個正在解決的作業(yè),并且外存上還存放有大量的尚待解決的后備作業(yè)。“成批”是指作業(yè)成批地進入系統,成批地解決,成批地離開系統;作業(yè)與作業(yè)之間的過渡由操作系統控制,不需用戶的干預。批解決系統的重要優(yōu)點是系統吞吐量大,資源運用率高;缺陷是用戶作業(yè)的等待時間長,用戶與系統沒有交互能力。(吞吐量:在一段給定的時間內,計算機所能完畢的總工作量。)UNIX系統是著名的分時系統。分時概念:重要是指若干并發(fā)程序對CPU時間的共享。【了解】操作系統的形成;分時和實時操作系統的特點,見教材16頁;分時系統與實時系統的重要區(qū)別如下:(1)關于交互性。分時系統中各個終端用戶與系統之間具有較強的交互性,而實時系統一般是專為某一領域使用的,對此規(guī)定不強。(2)關于可靠性。與分時系統相比,實時系統更加注重其穩(wěn)定性和可靠性。(3)關于響應時間。分時系統對響應時間的規(guī)定是以終端用戶能接受的時間為依據的;而實時系統對響應時間一般有嚴格的規(guī)定,即能對外部請求做出及時的響應和解決。操作系統在計算機系統中的地位:是裸機之上的第一層軟件,是建立其他所有軟件的基礎。操作系統結構設計:整體結構、層次結構、虛擬機結構和客戶機-服務器結構。操作系統為用戶提供的三種用戶接口:圖形用戶接口、命令行接口和程序接口。系統調用是操作系統內核與用戶程序、應用程序之間的接口。在UNIX/Linux系統,系統調用以C函數的形式出現。二、練習題:(一)輔導例題:(講解請參考教學輔導)【例1】什么是操作系統?答案操作系統是控制和管理計算機系統內各種硬件和軟件資源、有效地組織多道程序運營的系統軟件(或程序集合),是用戶與計算機之間的接口。【例2】在計算機系統中,操作系統是()。A.處在裸機之上的第一層軟件B.處在硬件之下的底層軟件C.處在應用軟件之上的系統軟件D.處在系統軟件之上的用戶軟件答案A【例3】現代操作系統的基本特性是()、資源共享和異步性。A.多道程序設計B.中斷解決C.實現分時與實時解決D.程序的并發(fā)執(zhí)行答案D【例4】以下不屬于操作系統具有的重要功能的是()。A.內存管理B.文檔編輯C.中斷解決D.CPU調度答案B【例5】操作系統是計算機系統的核心軟件。按功能特性的不同,可把操作系統分為([1])、([2])、([3])、網絡操作系統和分布式操作系統基本類型。其中[1]的重要目的是提高系統的吞吐率和效率,而[2]是一旦有解決請求和規(guī)定解決的數據時,CPU就應當立即解決該數據并將結果及時送回。A.單用戶系統B.批解決系統C.分時系統D.微機操作系統E.實時系統答案[1]B[2]E[3]C【例6】把下面左右兩列詞用線連起來,形成最恰當的搭配。(1)Linux(A)層次結構(2)UNIX(B)客戶機-服務器結構(3)IBMVM/370(C)整體結構(4)WindowsXP(D)虛擬機結構答案(1)-(C),(2)-(A),(3)-(D),(4)-(B)。(二)補充練習:選擇題(選擇一個對的答案的代碼填入括號中)1.一個完整的計算機系統是由()組成的。A.硬件B.軟件C.硬件和軟件D.用戶程序2.在計算機系統中,控制和管理各種資源、有效地組織多道程序運營的系統軟件稱作()。A.文獻系統B.操作系統C.網絡管理系統D.數據庫管理系統3.按照所起的作用和需要的運營環(huán)境,操作系統屬于()。A.用戶軟件B.應用軟件C.支撐軟件D.系統軟件4.操作系統的基本職能是()。A.提供功能強大的網絡管理工具B.提供用戶界面,方便用戶使用C.提供方便的可視化編輯程序D.控制和管理系統內各種資源,有效地組織多道程序的運營5.為用戶分派主存空間,保護主存中的程序和數據不被破壞,提高主存空間的運用率。這屬于()。A.解決器管理B.存儲管理C.文獻管理D.作業(yè)管理6.操作系統對緩沖區(qū)的管理屬于()的功能。A.解決機管理B.設備管理C.文獻管理D.存儲器管理7.操作系統內核與用戶程序、應用程序之間的接口是()。A.shell命令B.圖形界面C.系統調用D.C語言函數8.為了使系統中所有的用戶都能得到及時的響應,該操作系統應當是()。A.多道批解決系統B.分時系統C.實時系統D.網絡系統9.在實時系統中,一旦有解決請求和規(guī)定解決的數據時,CPU就應當立即解決該數據并將結果及時送回。下面屬于實時系統的是()。A.計算機激光照排系統B.辦公自動化系統C.計算機輔助設計系統D.航空訂票系統10.下面不屬于分時系統特性的是()。A.為多用戶設計B.需要中斷機構及時鐘系統的支持C.方便用戶與計算機的交互D.可靠性比實時系統規(guī)定高11.以下著名的操作系統中,屬于多用戶、分時系統的是()。A.DOS系統B.WindowsNT系統C.UNIX系統D.OS/2系統判斷題(對的的劃√,錯誤的劃×。)1.操作系統是用戶與計算機之間的接口。()2.操作系統是系統軟件中的一種,在進行系統安裝時可以先安裝其它軟件,然后再裝操作系統。()3.操作系統是整個計算機系統的控制管理中心,它對其它軟件具有支配權利。因而,操作系統建立在其它軟件之上。()4.在UNIX/Linux系統上,系統調用以C函數的形式出現。()5.雖然分時系統也規(guī)定系統可靠,但實時系統對可靠性的規(guī)定更高。()6.UNIX操作系統是采用微內核方法實現結構設計的。()三、簡答題請同學們解答參考教材26頁的課后習題。(三)簡答題:必須掌握:1.什么是操作系統?操作系統是控制和管理計算機系統內各種硬件和軟件資源、有效地組織多道程序運營的系統軟件(或程序集合),是用戶與計算機之間的接口。2.操作系統的重要功能是什么?操作系統的五大重要功能:存儲管理、進程和解決機管理、文獻管理、設備管理、用戶接口管理。3.使用虛擬機有什么優(yōu)勢和局限性?采用虛擬機的優(yōu)點重要有:①在一臺機器上可同時運營多個操作系統,方便用戶使用。②系統安全,有效地保護了系統資源。③為軟件的研制、開發(fā)和調試提供了良好的環(huán)境。④組建虛擬網絡,可以發(fā)明出多個抱負的工作環(huán)境。缺陷是:①對硬件的規(guī)定比較高,重要是CPU、硬盤和內存。②自身非常復雜,此外,執(zhí)行任務時的速度會受到一些影響。其他:1、操作系統一般為用戶提供了哪三種界面?各有什么特點?操作系統一般為用戶提供的三種界面是:圖形用戶接口、命令行接口和程序接口。圖形用戶接口:用戶運用鼠標、窗口、菜單、圖標等圖形界面工具,可以直觀、方便、有效地使用系統服務和各種應用程序及實用工具。命令行接口:在提醒符之后用戶從鍵盤上輸入命令,命令解釋程序接受并解釋這些命令,然后把它們傳遞給操作系統內部的程序,執(zhí)行相應的功能。程序接口:也稱系統調用接口。系統調用是操作系統內核與用戶程序、應用程序之間的接口。在UNIX/Linux系統中,系統調用以C函數的形式出現。2、操作系統重要有哪三種基本類型?各有什么特點?操作系統重要有以下三種基本類型:多道批解決系統、分時系統和實時系統。多道批解決系統的特點是多道和成批。分時系統的特點是同時性、交互性、獨立性和及時性。實時系統一般為具有特殊用途的專用系統,其特點是交互能力較弱、響應時間更嚴格、對可靠性規(guī)定更高。3、操作系統重要有哪些類型的體系結構?UNIX、Linux系統各采用哪種結構?一般說來,操作系統有如下四種結構:整體結構,層次結構,虛擬機結構和客戶機-服務器結構。UNIX系統采用的是層次結構,Linux系統采用的是整體結構。進程管理一、復習重點:考核學生對進程定義、進程的狀態(tài)及其轉換、進程的組成、競爭條件和臨界區(qū)、進程的同步與互斥、信號量和P、V操作及其一般應用、死鎖的概念和產生死鎖的必要條件等內容學習情況?!菊莆铡窟M程的定義:進程是程序在并發(fā)環(huán)境中的執(zhí)行過程。進程與程序的重要區(qū)別。進程最基本的屬性是動態(tài)性和并發(fā)性。進程的狀態(tài)及其轉換進程的3種基本狀態(tài)是:運營態(tài)、就緒態(tài)和阻塞態(tài)。掌握教材33頁的進程狀態(tài)及其轉換圖。進程的同步與互斥的概念??梢院啒憷斫鉃椋和绞菂f作,互斥是競爭。信號量和P、V操作及其一般應用。運用信號量機制和P、V操作,解決并發(fā)進程一般的互斥和同步問題。解決此類問題的一般方式:根據問題給出的條件,擬定進程有幾個或幾類;擬定進程間的制約關系——是互斥,還是同步;各相關進程間通過什么信號量實現彼此的制約,標明信號量的含義和初值;用P、V操作寫出相應的代碼段;驗證代碼的對的性:設以不同的順序運營各進程,是否能保證問題的圓滿解決。切忌按固定順序執(zhí)行各進程?!纠斫狻慷嗟莱绦蛟O計概念及其優(yōu)點。進程的一般組成,應進一步理解進程控制塊的作用。每個進程有惟一的進程控制塊。Linux進程管理的基本命令:ps、kill、sleep。理解進程臨界資源和臨界區(qū)的概念,進程進入臨界區(qū)的調度原則。信號量概念,P、V操作執(zhí)行的動作。死鎖的概念;死鎖的4個必要條件:互斥條件、不可搶占條件、占有且申請條件、循環(huán)等待條件?!玖私狻縇inux進程結構,見教材41頁圖。進程間的3種高級通信:共享內存、管道文獻和消息傳遞。二、練習題:(一)輔導例題:(講解請參考教學輔導)【例1】判斷題:并發(fā)是并行的不同表述,其原理相同。()答案×?!纠?】在操作系統中引入“進程”概念的重要目的是()。A.改善用戶編程環(huán)境B.提高程序的運營速度C.描述程序動態(tài)執(zhí)行過程的性質D.使程序與計算過程一一相應答案C【例3】下列進程狀態(tài)的轉換中,不對的的是()。A.就緒?阻塞B.運營?就緒C.就緒?運營D.阻塞?就緒答案A【例4】進程控制塊是描述進程狀態(tài)和特性的數據結構,一個進程()。A.可以有多個進程控制塊B.可以和其他進程共用一個進程控制塊C.可以沒有進程控制塊D.只能有唯一的進程控制塊答案D【例5】在執(zhí)行V操作時,當信號量的值(),應釋放一個等待該信號量的進程。A.小于0B.大于0C.小于等于0D.大于等于0答案C分析P,V操作可以實現對臨界區(qū)的管理規(guī)定。它由P操作原語和V操作原語組成(原語是不可中斷的過程),對信號量進行操作,具體定義如下:P(S):①將信號量S的值減1,即S=S1;②假如S0,則該進程繼續(xù)執(zhí)行;否則該進程置為阻塞狀態(tài),排入阻塞隊列。V(S):①將信號量S的值加1,即S=S+1;②假如S>0,則該進程繼續(xù)執(zhí)行;否則釋放隊列中第一個等待信號量的進程。信號量的數據結構為一個值和一個指針,指針指向等待該信號量的下一個進程。信號量的值與相應資源的使用情況有關。當它的值大于0時,表達當前可用資源的數量;當它的值小于0時,其絕對值表達等待使用該資源的進程個數。注意,信號量的值僅能由P,V操作來改變。一般來說,信號量S0時,S表達可用資源的數量。執(zhí)行一次P操作意味著請求分派一個單位資源,因此S的值減1;當S<0時,表達已經沒有可用資源,請求者必須等待別的進程釋放該類資源,它才干運營下去。而執(zhí)行一個V操作意味著釋放一個單位資源,因此S的值加1;若S0,表達有某些進程正在等待該資源,因此要喚醒一個等待狀態(tài)的進程,使之運營下去?!纠?】有9個生產者,6個消費者,共享容量為8的緩沖區(qū)。在這個生產者-消費者問題中,互斥使用緩沖區(qū)的信號量mutex的初值應當為()。A.1B.6C.8D.9答案A【例7】兩個進程合作完畢一個任務,在并發(fā)執(zhí)行中,一個進程要等待其合作伙伴發(fā)來信息,或者建立某個條件后再向前執(zhí)行,這種關系是進程間的()關系。A.同步 B.互斥 C.競爭 D.合作答案A【例8】設有一臺計算機,有兩條I/O通道,分別接一臺卡片輸入機和一臺打印機??ㄆ瑱C把一疊卡片逐個輸入到緩沖區(qū)B1中,加工解決后再搬到緩沖區(qū)B2中,并在打印機上打印結果。問:①系統要設幾個進程來完畢這個任務?各自的工作是什么?②這些進程間有什么樣的互相制約關系?③用P、V操作寫出這些進程的同步算法。答案①系統可設三個進程來完畢這個任務:R進程負責從卡片輸入機上讀入卡片信息,輸入到緩沖區(qū)B1中;C進程負責從緩沖區(qū)B1中取出信息,進行加工解決,之后將結果送到緩沖區(qū)B2中;P進程負責從緩沖區(qū)B2中取出信息,并在打印機上印出。②R進程受C進程影響,B1放滿信息后R進程要等待——等C進程將其中信息所有取走,才干繼續(xù)讀入信息;C進程受R進程和P進程的約束:B1中信息放滿后C進程才可從中取出它們,且B2被取空后,C進程才可將加工結果送入其中;P進程受C進程的約束:B2中信息放滿后P進程才可從中取出它們,進行打印。③信號量含義及初值:B1full——緩沖區(qū)B1滿,初值為0;B1empty——緩沖區(qū)B1空,初值為0;B2full——緩沖區(qū)B2滿,初值為0;B2empty——緩沖區(qū)B2空,初值為0; 【例9】死鎖的四個必要條件中,無法破壞的是()。A.互斥條件B.不可搶占條件C.占有且申請條件D.循環(huán)等待條件答案A(二)自測題:一、選擇題(選擇一個對的答案的代碼填入括號中)順序程序和并發(fā)程序的執(zhí)行相比,()。A.基本相同B.有點不同C.并發(fā)程序執(zhí)行總體上執(zhí)行時間快D.順序程序執(zhí)行總體上執(zhí)行時間快在單一解決機上,將執(zhí)行時間有重疊的幾個程序稱為()。A.順序程序B.多道程序C.并發(fā)程序D.并行程序在單CPU的系統中,若干程序的并發(fā)執(zhí)行是由()實現的。A.用戶B.程序自身C.進程D.編譯程序進程與程序之間有密切聯系,但又是不同的概念。兩者的一個本質區(qū)別是()。A.程序是靜態(tài)概念,進程是動態(tài)概念B.程序是動態(tài)概念,進程是靜態(tài)概念C.程序保存在文獻中,進程存放在內存中D.程序順序執(zhí)行,進程并發(fā)執(zhí)行在操作系統中,進程的最基本的特性是()。A.動態(tài)性和并發(fā)性B.順序性和可再現性C.與程序的相應性D.執(zhí)行過程的封閉性多個進程的實體能存在于同一內存中,在一段時間內都得到運營。這種性質稱作進程的()。A.動態(tài)性B.并發(fā)性C.調度性D.異步性進程是程序的執(zhí)行過程,可以處在不同的狀態(tài)。這種性質稱作進程的()。A.動態(tài)性B.并發(fā)性C.調度性D.異步性在下列特性中,不是進程的特性的是()。A.異步性B.調度性C.操作性D.動態(tài)性某進程由于需要從磁盤上讀入數據而處在阻塞狀態(tài)。當系統完畢了所需的讀盤操作后,此時該進程的狀態(tài)將()。從就緒變?yōu)檫\營B.從運營變?yōu)榫途wC.從運營變?yōu)樽枞鸇.從阻塞變?yōu)榫途w一個進程被喚醒意味著()。A.該進程重新占有了CPUB.進程狀態(tài)變?yōu)榫途wC.它的優(yōu)先權變?yōu)樽畲驞.其PCB移至就緒隊列的隊首在單解決機系統中,處在運營狀態(tài)的進程()。A.只有一個B.可以有多個C.不能被掛起D.必須在執(zhí)行完后才干被撤下已經獲得除()以外的所有運營所需資源的進程處在就緒狀態(tài)。A.存儲器B.打印機C.CPUD.磁盤空間進程從運營狀態(tài)變?yōu)樽枞麪顟B(tài)的因素是()。A.輸入或輸出事件發(fā)生B.時間片到C.輸入或輸出事件完畢D.某個進程被喚醒為了描述進程的動態(tài)變化過程,采用了一個與進程相聯系的(),根據它而感知進程的存在。A.進程狀態(tài)字B.進程優(yōu)先數C.進程控制塊D.進程起始地址進程在系統中存在的唯一標志是()。A.所運營的程序B.所運營的程序和數據C.進程隊列D.進程控制塊進程的動態(tài)、并發(fā)等特性是運用()表現出來的。A.程序B.數據C.程序和數據D.進程控制塊進程間的基本關系為()。A.互相獨立與互相制約B.同步與互斥C.并行執(zhí)行與資源共享D.信息傳遞與信息緩沖在一段時間內,只允許一個進程訪問的資源稱為()。A.共享資源B.臨界區(qū)C.臨界資源D.共享區(qū)操作系統中有一組常稱為特殊系統調用的程序,其操作具有不可分割性,在操作系統中稱為()。A.初始化程序B.原語C.子程序D.控制模塊操作系統中運用信號量和P、V操作,()。A.只能實現進程的互斥B.只能實現進程的同步C.可實現進程的互斥和同步D.可完畢進程調度假如進程Pa對信號量S執(zhí)行P操作,則信號量S的值應()。A.加1B.減1C假如信號量S的值是0,此時進程A執(zhí)行P(S)操作,那么,進程A會()。A.繼續(xù)運營B.進入阻塞態(tài),讓出CPUC.進入就緒態(tài),讓出CPUD.繼續(xù)運營,并喚醒S隊列頭上的等待進程在操作系統中,對信號量S的P操作原語的定義中,使進程進入相應阻塞隊列等待的條件是()。A.S>0B.S=0C.S<0D.S0信號量S的初值為8,在S上執(zhí)行了10次P操作,6次V操作后,S的值為()。A.10B.8C.6D.4若P、V操作的信號量S初值為2,當前值為1,則表達有()個等待進程。A.0 B.l C.2 D.3在進程通信中,使用信箱方式互換信息的是()。A.低檔進程通信B.高級進程通信C.共享內存方式D.管道文獻方式系統出現死鎖的因素是()。A.計算機系統發(fā)生了重大故障B.有多個封鎖的進程同時存在C.若干進程因競爭資源而無休止地循環(huán)等待著,并且都不釋放已占有的資源D.資源數大大少于進程數,或進程同時申請的資源數大大超過資源總數兩個進程爭奪同一個資源()。A.一定死鎖B.不一定死鎖C.不會死鎖D.以上說法都不對二、判斷題(對的的劃√,錯誤的劃×。)簡樸地說,進程是程序的執(zhí)行過程。因而,進程和程序是一一相應的。()進程和程序是兩個截然不同的概念。()程序在運營時需要很多系統資源,如內存、文獻、設備等,因此操作系統以程序為單位分派系統資源。()進程控制塊(PCB)是專為用戶進程設立的私有數據結構,每個進程僅有一個PCB。()進程執(zhí)行的相對速度不能由進程自己來控制。()進程之間的互斥,重要源于進程之間的資源競爭,從而實現多個相關進程在執(zhí)行順序上的協調。()信號量機制是一種有效的實現進程同步與互斥的工具。信號量只能由P、V操作來改變。()V操作是對信號量執(zhí)行加1操作,意味著釋放一個單位資源,假如加1后信號量的值小于等于零,則從等待隊列中喚醒一個進程,現進程變?yōu)樽枞麪顟B(tài),否則現進程繼續(xù)進行。()運用信號量的P,V操作,進程之間可以互換大量信息。()系統產生死鎖的主線因素是資源有限且操作不妥。因此,當系統提供的資源少于并發(fā)進程的需求時,系統就產生死鎖。()參考答案:參考答案:一、CCCAABDCDBACACDDBCBCBBCDBBCB二、2,5,7是對的的。1.(×)。進程和程序不是一一相應的。3.(×)。操作系統以進程為單位分派系統資源。4.(×)。進程控制塊(PCB)是為系統中各個進程設立的私有數據結構。6.(×)。這里把進程的同步和互斥混在一起說了。8.(×)。不管信號量的值如何,現進程都繼續(xù)執(zhí)行。9.(×)。P,V操作只能互換少量的信息,屬于低檔進程通信。10.(×)。僅有系統提供的資源少于并發(fā)進程的需求這一個條件時,系統不一定產生死鎖。三、簡答題:必須掌握:在操作系統中為什么要引入進程概念?它與程序的區(qū)別和聯系是什么?在操作系統中,由于多道程序并發(fā)執(zhí)行時共享系統資源,共同決定這些資源的狀態(tài),因此系統中各程序在執(zhí)行過程中就出現了互相制約的新關系,程序的執(zhí)行出現“走走停?!钡男聽顟B(tài)。這些都是在程序的動態(tài)過程中發(fā)生的。用程序這個靜態(tài)概念已不能如實反映程序并發(fā)執(zhí)行過程中的這些特性。為此,人們引入“進程”這一概念來描述程序動態(tài)執(zhí)行過程的性質。進程與程序的重要區(qū)別是:·進程是動態(tài)的;程序是靜態(tài)的。·進程有獨立性,能并發(fā)執(zhí)行;程序不能并發(fā)執(zhí)行。·兩者無一一相應關系?!みM程異步運營,會互相制約;程序不具有此特性。但進程與程序又有密切的聯系:進程不能脫離具體程序而虛設,程序規(guī)定了相應進程所要完畢的動作。進程的基本狀態(tài)有哪幾種?通常在操作系統中,進程至少要有三種基本狀態(tài)。這三種基本狀態(tài)是:運營態(tài)、就緒態(tài)和阻塞態(tài)(或等待態(tài))。進程進入臨界區(qū)的調度原則是什么?一個進程進入臨界區(qū)的調度原則是:①假如有若干進程規(guī)定進入空閑的臨界區(qū),一次僅允許一個進程進入。②任何時候,處在臨界區(qū)內的進程不可多于一個。如已有進程進入自己的臨界區(qū),則其它所有試圖進入臨界區(qū)的進程必須等待。③進入臨界區(qū)的進程要在有限時間內退出,以便其它進程能及時進入自己的臨界區(qū)。④假如進程不能進入自己的臨界區(qū),則應讓出CPU,避免進程出現“忙等”現象。4、簡述信號量的定義和作用。P、V操作原語是如何定義的?信號量一般是由兩個成員組成的數據結構,其中一個成員是整型變量,表達該信號量的值,它是與相應資源的使用情況有關的;另一個是指向PCB的指針。當多個進程都等待同一信號量時,它們就排成一個隊列,由信號量的指針項指出該隊列的頭。信號量通常可以簡樸反映出相應資源的使用情況,它與P、V操作原語一起使用可實現進程的同步和互斥。P、V操作原語的定義:P(S):順序執(zhí)行下述兩個動作:①信號量的值減1,即S=S-1;②假如S≥0,則該進程繼續(xù)執(zhí)行;假如S<0,則把該進程的狀態(tài)置為阻塞態(tài),把相應的PCB連入該信號量隊列的末尾,并放棄解決機,進行等待(直至其它進程在S上執(zhí)行V操作,把它釋放出來為止)。V(S):順序執(zhí)行下述兩個動作:①S值加1,即S=S+1;②假如S>0,則該進程繼續(xù)運營;假如S≤0,則釋放信號量隊列上的第一個PCB(即信號量指針項所指向的PCB)所相應的進程(把阻塞態(tài)改為就緒態(tài)),執(zhí)行V操作的進程繼續(xù)運營。5、是否所有的共享資源都是臨界資源?為什么?不是所有的共享資源都是臨界資源。由于臨界資源是一次僅允許一個進程使用的資源,而系統中有很多資源可以讓多個進程同時使用,例如硬盤、正文段等。6、發(fā)生死鎖的四個必要條件是什么?發(fā)生死鎖的四個必要條件是:互斥條件,不可搶占條件,占有且申請條件,循環(huán)等待條件。圖3-23進程狀態(tài)轉換圖7、用如圖3-23所示的進程狀態(tài)轉換圖可以說明有關解決機管理的大量內容。試回答:圖3-23進程狀態(tài)轉換圖①什么事件引起每次顯著的狀態(tài)變遷?②下述狀態(tài)變遷因果關系能否發(fā)生?為什么?(A)2→1(B)3→2(C)4→1就緒→運營:CPU空閑,就緒態(tài)進程被調度程序選中。運營→就緒:正在運營的進程用完了本次分派給它的CPU時間片。運營→阻塞:運營態(tài)進程因某種條件未滿足而放棄對CPU的占用,如等待讀文獻。阻塞→就緒:阻塞態(tài)進程所等待的事件發(fā)生了,例如讀數據的操作完畢。下述狀態(tài)變遷:(A)2→1:可以。運營進程用完了本次分派給它的時間片,讓出CPU,從就緒隊列中選一個進程投入運營。(B)3→2:不可以。任何時候一個進程只能處在一種狀態(tài),它既然由運營態(tài)變?yōu)樽枞麘B(tài),就不能再變?yōu)榫途w態(tài)。(C)4→1:可以。某一阻塞態(tài)進程等待的事件出現了,并且此時就緒隊列為空,該進程進入就緒隊列后立即又被調度運營。其他:1、PCB的作用是什么?它是如何描述進程的動態(tài)性質的?進程控制塊PCB是進程組成中最關鍵的部分。每個進程有唯一的進程控制塊;操作系統根據PCB對進程實行控制和管理,進程的動態(tài)、并發(fā)等特性是運用PCB表現出來的;PCB是進程存在的唯一標志。PCB中有表白進程狀態(tài)的信息:該進程的狀態(tài)是運營態(tài)、就緒態(tài)還是阻塞態(tài),運用狀態(tài)信息來描述進程的動態(tài)性質。2、PCB表的組織方式重要有哪幾種?分別簡要說明。PCB表的組織方式重要有:線性方式、鏈接方式和索引方式。線性方式是把所有進程的PCB都放在一個表中。鏈接方式按照進程的不同狀態(tài)把它們分別放在不同的隊列中。索引方式是運用索引表記載相應狀態(tài)進程的PCB地址。四、應用題:1、系統中只有一臺打印機,有三個用戶的程序在執(zhí)行過程中都要使用打印機輸出計算結果。設每個用戶程序相應一個進程。問:這三個進程間有什么樣的制約關系?試用P、V操作寫出這些進程使用打印機的算法。由于打印機是一種臨界資源,所以這三個進程只能互斥使用這臺打印機,即一個用戶的計算結果打印完之后,另一個用戶再打印。設三個進程分別為A、B和C。設一個互斥信號量mutex,其初值為1。進程A進程B進程C P(mutex)P(mutex)P(mutex)使用打印機使用打印機使用打印機V(mutex)V(mutex)V(mutex)2、判斷下列同步問題的算法是否對的?若有錯,請指犯錯誤因素并予以改正。①設A,B兩個進程共用一個緩沖區(qū)Q,A向Q寫入信息,B從Q讀出信息,算法框圖如圖3-24所示。②設A,B為兩個并發(fā)進程,它們共享一個臨界資源。其運營臨界區(qū)的算法框圖如圖3-25所示。圖3-24進程A,B的算法框圖圖3-25兩個并發(fā)進程臨界區(qū)的算法框圖這個算法不對。由于A、B兩個進程共用一個緩沖區(qū)Q,假如A先運營,且信息數量足夠多,那么緩沖區(qū)Q中的信息就會發(fā)生后面的沖掉前面的,導致信息丟失,B就不能從Q中讀出完整的信息。改正:A、B兩進程要同步使用緩沖區(qū)Q。為此,設立兩個信號量:empty表達緩沖區(qū)Q為空,初值為1;full表達緩沖區(qū)Q為滿,初值為0。算法框圖如圖1所示。這個算法不對。由于A、B兩個進程是并發(fā)的,它們共享一個臨界資源,所以兩者應互斥地使用該臨界資源,在進入臨界區(qū)時不存在先A后B的時序關系,而是哪個進程先到一步就先進入自己的臨界區(qū)。改正:A、B兩個進程應互斥地進入臨界區(qū)。為此,設立一個信號量:互斥信號量mutex,其初值為1。算法框圖如圖2所示。A進程B進程A進程B進程P(empty)P(full)P(mutex)P(mutex)向Q寫入信息從Q中讀出信息臨界區(qū)代碼CSa臨界區(qū)代碼CSbV(full)V(empty)V(mutex)V(mutex)圖1圖23、設有無窮多個信息,輸入進程把信息逐個寫入緩沖區(qū),輸出進程逐個從緩沖區(qū)中取出信息。針對下述兩種情況:①緩沖區(qū)是環(huán)形的,最多可容納n個信息;②緩沖區(qū)是無窮大的。試分別回答下列問題:①輸入、輸出兩組進程讀/寫緩沖區(qū)需要什么條件?②用P、V操作寫出輸入、輸出兩組進程的同步算法,并給出信號量含義及初值。針對容量為n的環(huán)形緩沖區(qū),輸入、輸出兩組進程讀/寫緩沖區(qū)需要的條件為:輸入進程和輸出進程需同步執(zhí)行,即輸入進程寫緩沖區(qū)后,輸出進程才可以讀;由于緩沖區(qū)容量有限,因此任一時刻所有輸入進程存放信息的單元數不能超過緩沖區(qū)的總容量(n);同理,所有輸出進程取出信息的總量不能超過所有輸入進程當前寫入信息的總數。設緩沖區(qū)的編號為0~n-1,in和out分別是輸入進程和輸出進程使用的指針,指向下面可用的緩沖區(qū),初值都是0。為使兩類進程實行同步操作,應設立三個信號量:兩個計數信號量full和empty,一個互斥信號量mutex。full:表達放有信息的緩沖區(qū)數,其初值為0。empty:表達可供使用的緩沖區(qū)數,其初值為n。mutex:互斥信號量,初值為1,表達各進程互斥進入臨界區(qū),保證任何時候只有一個進程使用緩沖區(qū)。下面是解決這個問題的算法描述。輸入進程Input:while(TRUE){P(empty); P(mutex); 信息送往buffer(in);in=(in+1)modN;/*以N為模*/V(mutex);V(full);} 輸出進程Output:while(TRUE){ P(full); P(mutex);從buffer(out)中取出信息;out=(out+1)modN;/*以N為模*/V(mutex);V(empty);}當緩沖區(qū)是無窮大時,輸入進程存放信息的單元數不再受緩沖區(qū)總容量的限制,因此,可以不設信號量empty。此外,算法中的in=(in+1)modN;和out=(out+1)modN;修改為in=in+1;和out=out+1;即可,其余的算法不變。輸入進程Input:while(TRUE){P(mutex); 信息送往buffer(in);in=in+1;V(mutex);V(full);} 輸出進程Output:while(TRUE){ P(full); P(mutex);從buffer(out)中取出信息;out=out+1;V(mutex);}解決機調度一、復習重點:考核學生對作業(yè)狀態(tài)、作業(yè)調度和進程調度的功能、性能評價標準、常用調度算法、Linux常用調度命令、中斷解決過程、shell命令執(zhí)行過程等內容的學習情況。【掌握】作業(yè)調度和進程調度的功能作業(yè)調度的功能見教材73頁,進程調度的功能見教材74頁。在一般操作系統中,進程調度是必須具有的。常用調度算法掌握三種基本調度算法(先來先服務法、時間片輪轉法、優(yōu)先級法)的實現思想,并能進行評價指標的計算。規(guī)定:能運用圖表形式列出各作業(yè)或進程的有關時間值,如到達時間、運營時間、開始時間、完畢時間等,運用評價公式計算出各指標的值,如周轉時間、帶權周轉時間、平均周轉時間、平均帶權周轉時間?!纠斫狻孔鳂I(yè)的四種狀態(tài):提交、后備、執(zhí)行和完畢。作業(yè)調度與進程調度的關系,見教材75頁。簡樸比方:作業(yè)調度是演員上場前的準備,進程調度是讓演員上場表演。調度性能評價標準評價調度算法的指標:吞吐量、周轉時間、帶權周轉時間、平均周轉時間和平均帶權周轉時間。Linux系統的進程調度方式、策略和常用調度命令:nohup,at,batch,jobs,fg,bg。中斷解決過程:保存現場、分析因素、解決中斷和中斷返回。shell命令的一般執(zhí)行過程?!玖私狻空{度的三個級別:高級調度、中級調度和低檔調度,其中高級調度又稱作業(yè)調度,低檔調度又稱進程調度。調度策略的選擇,見教材77頁。中斷概念中斷是指CPU對系統發(fā)生的某個事件做出的一種反映,它使CPU暫停正在執(zhí)行的程序,保存現場后自動執(zhí)行相應的解決程序,解決該事件后,如被中斷進程的優(yōu)先級最高,則返回斷點繼續(xù)執(zhí)行被“打斷”的程序。二、練習題:(一)輔導例題:(講解請參考教學輔導)【例1】為了使系統中各部分資源得到均衡使用,就必須選擇對資源需求不同的作業(yè)進行合理搭配,這項工作是由()完畢的。A.作業(yè)調度B.中級調度C.進程調度D.內存調度答案A【例2】作業(yè)調度程序從處在()狀態(tài)的隊列中選取適當的作業(yè)調入主存運營。A.執(zhí)行B.提交C.完畢D.后備答案D【例3】在批解決系統中,周轉時間是()。A.作業(yè)運營時間B.作業(yè)等待時間和運營時間之和C.作業(yè)的相對等待時間D.作業(yè)被調度進入主存到運營完畢的時間答案B【例4】在作業(yè)調度中,若采用優(yōu)先級調度算法,為了盡也許使CPU和外部設備并行工作,有如下三個作業(yè):J1以計算為主,J2以輸入輸出為主,J3計算和輸入輸出兼顧,則它們的優(yōu)先級從高到低的排列順序是()。A.J1,J2,J3B.J2,J3,J1C.J3,J2,J1D.J2,J1,J3答案C分析本試題將作業(yè)分為:I/O繁忙的作業(yè)、CPU繁忙的作業(yè)、I/O與CPU均衡的作業(yè)三種類型,由系統或操作員根據作業(yè)類型指定優(yōu)先級。因此,這三類作業(yè)優(yōu)先級從高到低的排列順序是:I/O與CPU均衡的作業(yè)、I/O繁忙的作業(yè)、CPU繁忙的作業(yè)?!纠?】下表給出作業(yè)l,2,3的提交時間和運營時間。采用先來先服務調度算法和短作業(yè)優(yōu)先調度算法,試問作業(yè)調度順序和平均周轉時間各為多少?(時間單位:小時,以十進制進行計算。)作業(yè)號提交時間運營時間1230.00.41.08.04.01.0分析解此題關鍵是要清楚系統中各道作業(yè)隨時間的推動情況。我們用一個作業(yè)執(zhí)行時間圖來表達作業(yè)的執(zhí)行情況,幫助我們理解此題。采用先來先服務調度策略,其作業(yè)執(zhí)行時間圖如下:作業(yè)作業(yè)作業(yè)3作業(yè)2作業(yè)100.41.08.012.013.0時間作業(yè)提交時間各作業(yè)陸續(xù)完畢時間采用短作業(yè)優(yōu)先調度策略,其作業(yè)執(zhí)行時間圖如下:作業(yè)作業(yè)作業(yè)3作業(yè)2作業(yè)100.41.08.09.013.0時間作業(yè)提交時間各作業(yè)陸續(xù)完畢時間此外,作業(yè)i的周轉時間Ti=作業(yè)完畢時間-作業(yè)提交時間系統中n個作業(yè)的平均周轉時間,其中Ti為作業(yè)i的周轉時間。解:采用先來先服務調度策略,則調度順序為l、2、3。作業(yè)號 提交時間 運營時間 開始時間 完畢時間 周轉時間1 0.0 8.0 0.0 8.0 8.02 0.4 4.0 8.0 12.0 11.63 1.0 1.0 12.0 13.0 12.0平均周轉時間T=(8+11.6+12)/3=10.53采用短作業(yè)優(yōu)先調度策略,則調度順序為l、3、2。作業(yè)號 提交時間 運營時間 開始時間 完畢時間 周轉時間1 0.0 8.0 0.0 8.0 8.03 1.0 1.0 8.0 9.0 8.02 0.4 4.0 9.0 13.0 12.6平均周轉時間T=(8+8+12.6)/3=9.53【例6】今有三個批解決作業(yè)。第一個作業(yè)10:00到達,需要執(zhí)行2小時;第二個作業(yè)在10:10到達,需要執(zhí)行1小時;第三個作業(yè)在10:25到達,需要執(zhí)行25分鐘。分別采用如下兩種作業(yè)調度算法:調度算法1:作業(yè)號到達時間開始執(zhí)行時間執(zhí)行結束時間12310:0010:1010:2510:0012:0013:0012:0013:0013:25調度算法2:作業(yè)號到達時間開始執(zhí)行時間執(zhí)行結束時間12310:0010:1010:2511:5010:5010:2513:5011:5010;50(1)計算各調度算法下的作業(yè)平均周轉時間。(2)調度算法1是什么作業(yè)調度算法?分析作業(yè)的周轉時間=作業(yè)完畢時間-作業(yè)提交時間。以調度算法1的作業(yè)2為例,其周轉時間=作業(yè)完畢時間13:00-作業(yè)提交時間10:10,得到結果為2小時50分鐘,轉換為小時為2.83小時。轉換的目的是為了方便計算平均周轉時間。解:(1)采用調度算法1時:作業(yè)1的周轉時間為2小時;作業(yè)2的周轉時間為2.83小時;作業(yè)3的周轉時間為3小時;平均周轉時間為:(2+2.83+3)/3=2.61小時。采用調度算法2時:作業(yè)1的周轉時間為3.83小時;作業(yè)2的周轉時間為1.67小時;作業(yè)3的周轉時間為0.42小時;平均周轉時間為:(3.83+l.67+0.42)/3=l.97小時。(2)調度算法1是按照作業(yè)到達的先后順序執(zhí)行的,所以它是先來先服務調度算法?!纠?】一個進程在執(zhí)行過程中可以被中斷事件打斷,當相應的中斷解決完畢后,就一定恢復該進程被中斷時的現場,使它繼續(xù)執(zhí)行。()答案(×)【例8】在UNIX/Linux系統中,執(zhí)行到trap指令時,CPU的狀態(tài)就從核心態(tài)變?yōu)橛脩魬B(tài)。()答案(×)【例9】UNIX/Linux系統中的shell是負責()的模塊。A.解釋并執(zhí)行來自終端的命令B.解釋并執(zhí)行來自終端的內部命令C.解釋并執(zhí)行來自終端的外部命令D.進行系統調用答案A(二)自測題:一、選擇題(選擇一個對的答案的代碼填入括號中)作業(yè)生存期共經歷4個狀態(tài),它們是提交、后備、()和完畢。A.等待B.就緒C.開始D.執(zhí)行作業(yè)調度是()。A.從輸入井中選取作業(yè)進入主存B.從讀卡機選取作業(yè)進入輸入井C.從主存中選取作業(yè)進程占有CPUD.從等待設備的隊列中選取一個作業(yè)進程在操作系統中,JCB是指()。A.文獻控制塊B.進程控制塊C.作業(yè)控制塊D.程序控制塊作業(yè)調度選擇一個作業(yè)裝入主存后,該作業(yè)能否占用解決器必須由()來決定。A.設備管理B.作業(yè)控制C.進程調度D.驅動調度進程調度根據一定的調度算法,從()隊列中挑選出合適的進程。A.阻塞B.就緒C.運營D.等待在操作系統中,作業(yè)處在()時,已處在進程的管理之下。A.后備狀態(tài)B.阻塞狀態(tài)C.執(zhí)行狀態(tài)D.完畢狀態(tài)作業(yè)調度的關鍵在于()。A.選擇恰當的進程管理程序B.選擇恰當的作業(yè)調度算法C.用戶作業(yè)準備充足D.有一個較好的操作環(huán)境從系統的角度出發(fā),希望批解決控制方式下進入輸入井的作業(yè)()盡也許小。A.等待裝入主存時間B.周轉時間C.執(zhí)行時間D.平均周轉時間設某作業(yè)進入輸入井的時間為S,開始運營的時間為R,得到計算結果的時間為E,則該作業(yè)的周轉時間T為()。A.T=E-SB.T=E-(S+R)C.T=(S+R)+ED.T=E-R現有3個作業(yè)同時到達,每個作業(yè)的計算時間都是1小時,它們在一臺CPU上按單道方式運營,則平均周轉時間為()。A.1小時B.2小時C.3小時D.6小時按照作業(yè)到達的先后順序調度作業(yè),排隊等待時間最長的作業(yè)被優(yōu)先調度,這是指()調度算法。A.先來先服務法B.短作業(yè)優(yōu)先法C.時間片輪轉法D.優(yōu)先級法為了使計算機在運營過程中能及時解決內部和外部發(fā)生的各種突發(fā)性事件,現代操作系統采用了()機制。A.查詢B.中斷C.調度D.進程在操作系統中,引起中斷的事件稱為()。A.中斷源B.中斷請求C.斷點D.系統調用當硬件中斷裝置發(fā)現有事件發(fā)生,就會中斷正在占用CPU的程序執(zhí)行,讓操作系統的()占用CPU。A.系統調用程序B.中斷解決程序C.作業(yè)管理程序D.文獻管理程序下列中斷類型中,屬于自愿性中斷事件的是()。A.硬件故障中斷B.程序中斷C.訪管中斷D.外部中斷下列中斷中,也許要人工介入的中斷是()。A.程序中斷B.時鐘中斷C.輸入輸出中斷D.硬件故障中斷系統調用的目的是()。A.請求系統服務B.終止系統服務C.申請系統資源D.釋放系統資源用戶要在程序一級獲得系統幫助,必須通過()。A.進程調度B.作業(yè)調度C.鍵盤命令D.系統調用系統調用是由操作系統提供的內部調用,它()。A.直接通過鍵盤交互方式使用B.只能通過用戶程序間接使用C.是命令接口中的命令D.與系統的命令同樣CPU狀態(tài)分為核心態(tài)和用戶態(tài),從用戶態(tài)轉換到核心態(tài)的途徑是()。A.運營進程修改程序狀態(tài)字B.中斷屏蔽C.系統調用D.進程調度程序二、判斷題(對的的劃√,錯誤的劃×。)解決機調度可分為三級:高級、中級和低檔。在所有的系統中,都必須具有這三級調度。()作業(yè)調度選中一個作業(yè)后,與該作業(yè)相關的進程即占有CPU運營。()吞吐量是指單位時間內CPU完畢作業(yè)的數量。()擬定作業(yè)調度算法時應重要系統資源的均衡使用,使I/O繁忙作業(yè)和CPU繁忙作業(yè)搭配運營。()平均周轉時間和周轉時間與選用的調度算法有關。()通常,為了提高效率,賦予需要大量計算的作業(yè)較高優(yōu)先級,賦予需要大量輸入/輸出的作業(yè)較低的優(yōu)先級。()優(yōu)先級作業(yè)調度算法是指為系統中的每一個作業(yè)擬定一個優(yōu)先級,進行作業(yè)調度時總是優(yōu)先選擇優(yōu)先級高的作業(yè)進入主存運營。()計算機對中斷的解決是在用戶態(tài)下進行的。()中斷解決一般分為中斷響應和中斷解決兩個環(huán)節(jié),前者由軟件實行,后者由硬件實行。()系統調用的調用過程是通過用戶程序,運營在用戶態(tài),而被調用的過程是運營在核心態(tài)下。()參考答案:參考答案:一、DACCBCBDABABABCDADBC二、3,4,5,7,10是對的的。1.(×)。解決機的三級調度中只有進程調度是必不可少的。2.(×)。作業(yè)調度選中的作業(yè)能否占有CPU由進程調度決定,不一定即可執(zhí)行。6.(×)。正好說反了,應賦予需要大量計算的作業(yè)較低優(yōu)先級,賦予需要大量輸入/輸出的作業(yè)較高的優(yōu)先級。8.(×)。計算機對中斷的解決是在核心態(tài)下進行的。9.(×)。中斷響應由硬件實行,中斷解決由軟件實行。三、簡答題必須掌握:1、Linux系統中,進程調度的方式和策略是什么?Linux系統的調度方式基本上采用“搶占式優(yōu)先級”方式。Linux系統針對不同類別的進程提供了三種不同的調度策略,即適合于短實時進程的FIFO,適合于每次運營需要較長時間實時進程的時間片輪轉法,適合于交互式的分時進程傳統的UNIX調度策略。2、作業(yè)調度與進程調度之間有什么差別?作業(yè)調度是宏觀調度,它所選擇的作業(yè)只是具有獲得解決機的資格,但尚未占有解決機,不能立即在其上實際運營。而進程調度是微觀調度,它根據一定的算法,動態(tài)地把解決機實際地分派給所選擇的進行,使之真正活動起來。作業(yè)調度和進程調度之間的一個基本區(qū)別是它們執(zhí)行的頻率不同,進程調度必須相稱頻繁地為CPU選擇進程,而作業(yè)調度的次數很少。3、作業(yè)調度與進程調度兩者間如何協調工作?作業(yè)調度和進程調度是CPU重要的兩級調度。作業(yè)調度是宏觀調度,它所選擇的作業(yè)只是具有獲得解決機的資格,但尚未占有解決機,不能立即在其上實際運營。而進程調度是微觀調度,它根據一定的算法,動態(tài)地把解決機實際地分派給所選擇的進程,使之真正活動起來。4、在操作系統中,引起進程調度的重要因素有哪些?在操作系統中,引起進程調度的重要因素有:正在運營的進程完畢任務,或等待資源,或運營屆時;核心解決完中斷或陷入事件后,發(fā)現系統中“重新調度”標志被置上。其他:1、解決機調度一般可分為哪三級?其中哪一級調度必不可少?為什么?解決機調度一般可分為高級調度(作業(yè)調度)、中級調度和低檔調度(進程調度)。其中進程調度必不可少。進程只有在得到CPU之后才干真正活動起來,所有就緒進程經由進程調度才干獲得CPU的控制權;事實上,進程調度完畢一臺物理的CPU轉變成多臺虛擬(或邏輯)的CPU的工作;進程調度的實現策略往往決定了操作系統的類型,其算法優(yōu)劣直接影響整個系統的性能。2、作業(yè)提交后是否立即放在內存中?為什么?在批解決系統中,作業(yè)提交后并不是立即放在內存中。其因素是:內存容量有限,而提交的作業(yè)數量也許很多,無法把它們都放入內存;即使都放入內存,當內存中可以同時運營的作業(yè)太多時,會影響系統的性能,如使周轉時間太長;此外,大量作業(yè)被收容在輸入井(磁盤)中,可以選擇對資源需求不同的作業(yè)進行合理搭配,再放在內存中,從而使得系統中各部分資源都得到均衡運用。3、作業(yè)在其存在過程中分為哪四種狀態(tài)?作業(yè)在其存在過程中分為提交、后備、執(zhí)行和完畢四種狀態(tài)。四、應用題:假定在單CPU條件下有下列要執(zhí)行的作業(yè):作業(yè)運營時間優(yōu)先級1103211323414552作業(yè)到來的時間是按作業(yè)編號順序進行的(即后面作業(yè)依次比前一個作業(yè)遲到一個時間單位)。①用一個執(zhí)行時間圖描述在下列算法時各自執(zhí)行這些作業(yè)的情況:先來先服務法FCFS、時間片輪轉法RR(時間片=1)和非搶占式優(yōu)先級。②對于上述每種算法,各個作業(yè)的周轉時間是多少?平均周轉時間是多少?③對于上述每種算法,各個作業(yè)的帶權周轉時間是多少?平均帶權周轉時間是多少?①先來先服務法(FCFS)作業(yè)1作業(yè)2作業(yè)3作業(yè)4作業(yè)501011131419t時間片輪轉法(RR)作業(yè)1213415315151515111012345678910111213141516171819t非搶占式優(yōu)先級:作業(yè)1作業(yè)4作業(yè)3作業(yè)5作業(yè)201011131819t②和③先來先服務法(FCFS)作業(yè)到達時間運營時間完畢時間周轉時間帶權周轉時間101010101.0211111010.032213115.5431141111.054519153.0平均周轉時間11.4平均帶權周轉時間6.1時間片輪轉法(RR)作業(yè)到達時間運營時間完畢時間周轉時間帶權周轉時間101019191.9211211.0322863.0431522.054516122.4平均周轉時間8.0平均帶權周轉時間2.06非搶占式優(yōu)先級作業(yè)到達時間運營時間完畢時間周轉時間帶權周轉時間101010101.0211191818.032213115.54311188.054518142.8平均周轉時間12.2平均帶權周轉時間7.06注意:本教材按照Linux系統的約定,優(yōu)先數小的優(yōu)先級高。本試題給出的條件中直接給出的是優(yōu)先級,數大的則優(yōu)先級高。假如試題給出的是優(yōu)先數,則數小的優(yōu)先級高。假如將本試題改為:作業(yè)運營時間優(yōu)先數1102214322411553則作業(yè)2-5優(yōu)先級從高到低順序為:作業(yè)4、作業(yè)3、作業(yè)5、作業(yè)2。上面的解答仍然對的。存儲管理一、復習重點:考核學生對重定位、分區(qū)法、分頁的概念、虛擬存儲概念、請求分頁存儲管理技術、常用頁面置換算法、Linux中的存儲管理技術以及抖動等內容的學習情況。【掌握】掌握以下概念:邏輯地址、物理地址、邏輯地址空間、物理地址空間、重定位、靜態(tài)重定位、動態(tài)重定位、碎片、虛擬存儲器。分區(qū)法分區(qū)法分為固定分區(qū)法和動態(tài)分區(qū)法兩種。要掌握其基本原理、數據結構、地址轉換、內存空間的分派與釋放、分派算法、優(yōu)點和缺陷。分頁技術掌握分頁存儲管理的基本方法,如地址表達、從邏輯地址到物理地址的轉換、數據結構等。虛擬存儲器虛擬存儲器(VirtualMemory)是用戶能作為可編址內存對待的虛擬存儲空間,它使用戶邏輯存儲器與物理存儲器分離,是操作系統給用戶提供的一個比真實內存空間大得多的地址空間。虛擬存儲器的基本特性:虛擬擴充、部分裝入、離散分派、多次對換。此外,虛擬存儲器的容量不是無限大的,它重要受到地址的字長和外存容量的限制請求分頁技術請求分頁存儲管理技術是在單純分頁技術基礎上發(fā)展起來的,兩者主線區(qū)別在于請求分頁提供虛擬存儲器。實現請求分頁,系統必須提供一定容量的內存和外存,以及支持分頁機制,還需要有頁表機制、缺頁中斷機構以及地址轉換機構。常用頁面置換算法能應用先進先出法(FIFO)、最佳置換法(OPT)、最近最少使用置換法(LRU)的實現思想計算頁面淘汰序列、缺頁次數以及缺頁率?!纠斫狻恐囟ㄎ话堰壿嫷刂忿D變?yōu)閮却嫖锢淼刂返倪^程稱作重定位。根據重定位的時機,分為靜態(tài)重定位和動態(tài)重定位。理解它們的概念、實現思想和優(yōu)缺陷。抖動。見教材128頁,理解抖動的含義,與頁面置換算法的關系。Linux中的存儲管理技術Linux系統采用了請求分頁存儲管理技術和對換技術?!玖私狻看鎯ζ鲗哟瘟私獾湫偷拇鎯ζ鲗哟谓Y構:寄存器、高速緩存、內存、磁盤、磁帶。用戶程序的地址空間用戶程序的重要解決階段:編輯、編譯、鏈接、裝入和運營。對換技術的實現思想。二、練習題:(一)輔導例題:(講解請參考教學輔導)【例1】在目的程序裝入內存時,一次性完畢地址修改的方式是().A.靜態(tài)重定位B.動態(tài)重定位C.靜態(tài)連接D.動態(tài)連接答案A【例2】動態(tài)分區(qū)分派按進程的需求量分派內存分區(qū),所以()。A.分區(qū)的長度是固定的B.分區(qū)的個數是擬定的C.分區(qū)的長度和個數都是擬定的D.分區(qū)的長度不是預先固定的,分區(qū)的個數是不擬定的答案D【例3】考慮一個由8個頁面,每頁有1024個字節(jié)組成的邏輯空間,把它裝入到有32個物理塊的存儲器中,問:(1)邏輯地址需要多少二進制位表達?(2)物理地址需要多少二進制位表達?解由于頁面數為8=23,故需要3位二進制數表達。每頁有1024個字節(jié),1024=210,于是頁內地址需要10位二進制數表達。32個物理塊,需要5位二進制數表達(32=25)。(1)頁的邏輯地址由頁號和頁內地址組成,所以需要3+10=13位二進制數表達。(2)頁的物理地址由塊號和頁內地址的拼接,所以需要5+10=15位二進制數表達。【例4】若在一分頁存儲管理系統中,某作業(yè)的頁表如下所示。已知頁面大小為1024字節(jié),試將邏輯地址1011,2148,4000,5012轉化為相應的物理地址。頁號塊號01232316解本題中,為了描述方便,設頁號為p,頁內位移為d,則:(1)對于邏輯地址1011,p=int(1011/1024)=0,d=1011mod1024=1011。查頁表第0頁在第2塊,所以物理地址為10242+1011=3059。(2)對于邏輯地址2148,p=int(2148/1024)=2,d=2148mod1024=100。查頁表第2頁在第1塊,所以物理地址為1024+100=1124。(3)對于邏輯地址4000,p=int(4000/1024)=3,d=4000mod1024=928。查頁表第3頁在第6塊,所以物理地址為10246+928=7072。(4)對于邏輯地址5012,p=int(5012/1024)=4,d=5012mod1024=916。因頁號超過頁表長度,該邏輯地址非法?!纠?】判斷:虛擬存儲器事實上是一種設計技巧,使主存物理容量得到擴大。答案錯誤。【例6】與虛擬存儲技術不能配合使用的是()。A.分區(qū)管理B.頁式存儲管理C.段式存儲管理D.段頁式存儲管理答案A【例7】考慮下述頁面走向:1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6當內存塊數量分別為3時,試問FIFO、LRU、OPT這三種置換算法的缺頁次數各是多少?解使用FIFO算法,缺頁次數是16;使用LRU算法,缺頁次數是15;使用OPT算法,缺頁次數是11。分析所有內存塊最初都是空的,所以第一次用到的頁面都產生一次缺頁。當內存塊數量為3時:FIFO1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6塊11114446663332226塊2222111222777111塊333355511166633缺頁因此,FIFO算法發(fā)生缺頁中斷的次數為16。在FIFO算法中,先進入內存的頁面被先換出。例如,當頁6要調入時,內存的狀態(tài)為4、1、5,考察頁6之前調入的頁面,分別為5、1、2、4、…,可見4為最先進入內存的,本次應換出,然后把頁6調入內存。LRU1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6塊1111445551177222塊222222666333333塊33311122226616缺頁因此,LRU算法發(fā)生缺頁中斷的次數為15。在LRU算法中,最近最少使用的頁面被先換出。例如,當頁6要調入時,內存的狀態(tài)為5、2、1,考察頁6之前調入的頁面,分別為5、1、2、…,可見2為最近一段時間內使用最少的,本次應換出,然后把頁6調入內存。OPT1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6塊111111133336塊22222227222塊3345666611缺頁因此,OPT算法發(fā)生缺頁中斷的次數為11。在OPT算法中,在最遠的將來才被訪問的頁面被先換出。例如,當頁6要調入時,內存的狀態(tài)為1、2、5,考察頁6后面要調入的頁面,分別為2、1、2、…,可見5為最近一段時間內使用最少的,本次應換出,然后把頁6調入內存。(二)自測題:一、選擇題(選擇一個對的答案的代碼填入括號中)通常,用戶編寫的程序中所使用的地址是()。A.邏輯地址B.物理地址C.絕對地址D.內存地址可由CPU調用執(zhí)行的程序所相應的地址空間為()。A.符號名空間B.虛擬地址空間C.物理空間D.邏輯地址空間把邏輯

溫馨提示

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

評論

0/150

提交評論