版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一章1.操作系統(tǒng)的概念:通常把操作系統(tǒng)定義為用以控制和管理計(jì)算機(jī)系統(tǒng)資源方便用戶使用的程序和數(shù)據(jù)結(jié)構(gòu)的集合。2.操作系統(tǒng)的基本類型:批處理操作系統(tǒng)、分時(shí)操作系統(tǒng)、實(shí)時(shí)操作系統(tǒng)、個(gè)人計(jì)算機(jī)操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)、分布式操作系統(tǒng)。批處理操作系統(tǒng)特點(diǎn):用戶脫機(jī)使用計(jì)算機(jī)成批處理多道程序運(yùn)行優(yōu)點(diǎn):由于系統(tǒng)資源為多個(gè)作業(yè)所共享,其工作方式是作業(yè)之間自動(dòng)調(diào)度執(zhí)行。并在運(yùn)行過程中用戶不干預(yù)自己的作業(yè),從而大大提高了系統(tǒng)資源的利用率和作業(yè)吞吐量。缺點(diǎn):無交互性,用戶一旦提交作業(yè)就失去了對(duì)其運(yùn)行的控制能力;而且是批處理的,作業(yè)周轉(zhuǎn)時(shí)間長(zhǎng),用戶使用不方便。批處理系統(tǒng)中作業(yè)處理及狀態(tài)分時(shí)操作系統(tǒng)(Time Sha
2、ring OS)分時(shí)操作系統(tǒng)是一個(gè)聯(lián)機(jī)的多用戶交互式的操作系統(tǒng),如UNIX是多用戶分時(shí)操作系統(tǒng)。分時(shí)計(jì)算機(jī)系統(tǒng):由于中斷技術(shù)的使用,使得一臺(tái)計(jì)算機(jī)能連接多個(gè)用戶終端,用戶可通過各自的終端使用和控制計(jì)算機(jī),我們把一臺(tái)計(jì)算機(jī)連接多個(gè)終端的計(jì)算機(jī)系統(tǒng)稱為分時(shí)計(jì)算機(jī)系統(tǒng),或稱分時(shí)系統(tǒng)。分時(shí)技術(shù):把處理機(jī)的響應(yīng)時(shí)間分成若于個(gè)大小相等(或不相等)的時(shí)間單位,稱為時(shí)間片(如100毫秒),每個(gè)終端用戶獲得CPU,就等于獲得一個(gè)時(shí)間片,該用戶程序開始運(yùn)行,當(dāng)時(shí)間片到(用完),用戶程序暫停運(yùn)行,等待下一次運(yùn)行。特點(diǎn):人機(jī)交互性好:在調(diào)試和運(yùn)行程序時(shí)由用戶自己操作。共享主機(jī):多個(gè)用戶同時(shí)使用。用戶獨(dú)立性:對(duì)每個(gè)用戶
3、而言好象獨(dú)占主機(jī)。實(shí)時(shí)操作系統(tǒng)(real-time OS)實(shí)時(shí)操作系統(tǒng)是一種聯(lián)機(jī)的操作系統(tǒng),對(duì)外部的請(qǐng)求,實(shí)時(shí)操作系統(tǒng)能夠在規(guī)定的時(shí)間內(nèi)處理完畢。特點(diǎn):有限等待時(shí)間有限響應(yīng)時(shí)間用戶控制可靠性高系統(tǒng)出錯(cuò)處理能力強(qiáng)設(shè)計(jì)實(shí)時(shí)操作系統(tǒng)要考慮的一些因素:(1)實(shí)時(shí)時(shí)鐘管理(2)連續(xù)的人機(jī)對(duì)話(3)過載 (4) 高度可靠性和安全性需要采取冗余措施。通用操作系統(tǒng)同時(shí)兼有多道批處理、分時(shí)、實(shí)時(shí)處理的功能,或其中兩種以上的功能。個(gè)人計(jì)算機(jī)上的操作系統(tǒng)個(gè)人計(jì)算機(jī)上的操作系統(tǒng)是聯(lián)機(jī)的交互式單用戶操作系統(tǒng),目前在個(gè)人計(jì)算機(jī)上使用的操作系統(tǒng)以windows系列和linux系統(tǒng)為主。網(wǎng)絡(luò)操作系統(tǒng)特征:(1)計(jì)算機(jī)網(wǎng)絡(luò)是一
4、個(gè)互連的計(jì)算機(jī)系統(tǒng)群體。這些計(jì)算機(jī)在物理上是分散的。(2)這些計(jì)算機(jī)是自治的,每臺(tái)計(jì)算機(jī)有自己的操作系統(tǒng),各自獨(dú)立工作,它們?cè)诰W(wǎng)絡(luò)協(xié)議控制下協(xié)同工作。(3)系統(tǒng)互連要通過通信設(shè)施(硬件、軟件)來實(shí)現(xiàn)。(4)系統(tǒng)通過通信設(shè)施執(zhí)行信息交換、資源共享、互操作和協(xié)作處理。分布式系統(tǒng)(Distributed System)特征:(1)功能的分布(2)堅(jiān)強(qiáng)性(3)高可靠性3操作系統(tǒng)的功能處理機(jī)管理、存儲(chǔ)管理(內(nèi)存分配、存儲(chǔ)保護(hù)、內(nèi)存擴(kuò)充)、設(shè)備管理(通道、控制器、輸入輸出設(shè)備的分配與管理,設(shè)備獨(dú)立性)、信息管理(文件系統(tǒng)管理)、用戶接口(程序一級(jí)的接口、作業(yè)一級(jí)的接口)。4.通道和中斷技術(shù)通道:用于控制I
5、/O設(shè)備與內(nèi)存間的數(shù)據(jù)傳輸。啟動(dòng)后可獨(dú)立于CPU運(yùn)行,實(shí)現(xiàn)CPU與I/O的并行。¡ 通道有專用的I/O處理器,可與CPU并行工作¡ 可實(shí)現(xiàn) I/O聯(lián)機(jī)處理中斷是指CPU在收到外部中斷信號(hào)后,停止原來工作,轉(zhuǎn)去處理該中斷事件,完畢后回到原來斷點(diǎn)繼續(xù)工作。¡ 中斷處理過程:中斷請(qǐng)求,中斷響應(yīng),中斷點(diǎn)(暫停當(dāng)前任務(wù)并保存現(xiàn)場(chǎng)),中斷處理例程,中斷返回(恢復(fù)中斷點(diǎn)的現(xiàn)場(chǎng)并繼續(xù)原有任務(wù)監(jiān)督程序發(fā)展為執(zhí)行系統(tǒng)(executive system),常駐內(nèi)存5.多道批處理系統(tǒng)特點(diǎn)¡ 多道:內(nèi)存中同時(shí)存放幾個(gè)作業(yè);¡ 宏觀上并行運(yùn)行:都處于運(yùn)行狀態(tài),但都未運(yùn)行完
6、;¡ 微觀上串行運(yùn)行:各作業(yè)交替使用CPU;優(yōu)點(diǎn):¡ 資源利用率高:CPU和內(nèi)存利用率較高;¡ 作業(yè)吞吐量大:?jiǎn)挝粫r(shí)間內(nèi)完成的工作總量大;缺點(diǎn):¡ 用戶交互性差:整個(gè)作業(yè)完成后或中間出錯(cuò)時(shí),才與用戶交互,不利于調(diào)試和修改;¡ 作業(yè)平均周轉(zhuǎn)時(shí)間長(zhǎng):短作業(yè)的周轉(zhuǎn)時(shí)間顯著增長(zhǎng);多道程序系統(tǒng)中,要解決的問題:同步互斥、內(nèi)存不夠、使用效率、內(nèi)存保護(hù)6.計(jì)算機(jī)硬件:構(gòu)成計(jì)算機(jī)的基本硬件元素:處理器、存儲(chǔ)器、輸入輸出控制與總線、外部設(shè)備。與操作系統(tǒng)相關(guān)的幾種主要的寄存器數(shù)據(jù)寄存器n 地址寄存器n 條件碼寄存器n 程序計(jì)數(shù)器n 指令計(jì)數(shù)器n 程序狀態(tài)字PSWn
7、 中斷現(xiàn)場(chǎng)保護(hù)寄存器n 過程調(diào)用用堆棧存儲(chǔ)器的訪問速度指令的執(zhí)行和中斷操作系統(tǒng)的啟動(dòng)啟動(dòng)電源產(chǎn)生中斷信號(hào)觸發(fā)CPU中的一段指令發(fā)現(xiàn)操作系統(tǒng)引導(dǎo)區(qū)位置導(dǎo)入內(nèi)存執(zhí)行操作系統(tǒng)程序加載到內(nèi)存制定區(qū)域初始化硬件7.算法begin.end 算法的開始于結(jié)束 repeat 操作.until 條件 當(dāng)“條件”未被滿足時(shí)重復(fù)所描述的“操作”while 條件 do 操作.od 當(dāng)“條件”滿足時(shí),進(jìn)行相應(yīng)的“操作”if 條件 then 操作 else 操作 fi 滿足“if”所指的“條件”時(shí),進(jìn)行“then”后的相關(guān)“操作”,否則完成“else”后的相關(guān)操作。第二章1.作業(yè):在一次應(yīng)用業(yè)務(wù)處理過程中,從輸入開始到輸
8、出結(jié)束,用戶要求計(jì)算機(jī)所做的有關(guān)該次業(yè)務(wù)處理的全部工作稱為一個(gè)作業(yè)。作業(yè)由不同的順序相連的作業(yè)步組成,作業(yè)步是一個(gè)作業(yè)的處理過程中計(jì)算機(jī)所做的相對(duì)獨(dú)立的工作。2.作業(yè)的組織:作業(yè)由三部分組成,即程序、數(shù)據(jù)和作業(yè)說明書。作業(yè)中包含的程序和數(shù)據(jù)完成用戶所要求的業(yè)務(wù)處理工作,作業(yè)說明書則體現(xiàn)用戶的控制意圖。由作業(yè)說明書在系統(tǒng)中生成一個(gè)稱為作業(yè)控制塊(JCB)的表格,JCB包括:作業(yè)名、估計(jì)執(zhí)行時(shí)間、優(yōu)先數(shù)(用于調(diào)度)、作業(yè)說明書文件名、程序類型、資源要求(靜態(tài)申請(qǐng)和動(dòng)態(tài)申請(qǐng))、作業(yè)狀態(tài)(提交后各執(zhí)行完成)。作業(yè)說明書包括:作業(yè)基本情況描述(用戶名、作業(yè)名、使用語(yǔ)言名、允許最大處理時(shí)間等)、作業(yè)控制描
9、述(控制方式、操作順序、出錯(cuò)處理等)、作業(yè)資源要求描述(要求處理時(shí)間、內(nèi)存空間、外設(shè)類型和數(shù)量、處理及優(yōu)先級(jí)、庫(kù)函數(shù)或?qū)嵱贸绦虻龋?.如何控制作業(yè)聯(lián)機(jī)輸入輸出方式聯(lián)機(jī)輸入輸出方式大多用在交互式系統(tǒng)中,用戶與系統(tǒng)通過交互式會(huì)話輸入輸出作業(yè)。在聯(lián)機(jī)輸入輸出方式中,外圍設(shè)備直接與主機(jī)相連接。脫機(jī)輸入輸出方式脫機(jī)輸入又稱為預(yù)輸入方式,利用低檔個(gè)人計(jì)算機(jī)作為外圍處理機(jī)進(jìn)行輸入輸出處理。直接耦合方式把主機(jī)與低檔外圍通過一個(gè)公用的大容量外存直接耦合起來。SPOOLING系統(tǒng)(外圍設(shè)備同時(shí)聯(lián)機(jī)操作)多臺(tái)外圍設(shè)備通過通道或DMA器件和主機(jī)與外存連接起來。網(wǎng)絡(luò)聯(lián)機(jī)方式網(wǎng)絡(luò)聯(lián)機(jī)方式以上述幾種輸入輸出方式為基礎(chǔ)。當(dāng)
10、用戶通過計(jì)算機(jī)網(wǎng)絡(luò)中的某一臺(tái)設(shè)備對(duì)計(jì)算機(jī)網(wǎng)絡(luò)中的另一臺(tái)主機(jī)進(jìn)行輸入輸出操作時(shí),就構(gòu)成了網(wǎng)絡(luò)聯(lián)機(jī)方式。4.系統(tǒng)調(diào)用系統(tǒng)調(diào)用大致可分為6類:(1)設(shè)備管理:該類系統(tǒng)調(diào)用被用來請(qǐng)求和釋放有關(guān)設(shè)備以及啟動(dòng)設(shè)備操作等。(2)文件管理:包括對(duì)文件的讀、寫、創(chuàng)建和刪除等。(3)進(jìn)程控制:包括進(jìn)程創(chuàng)建、進(jìn)程執(zhí)行、進(jìn)程撤銷、進(jìn)程等待和執(zhí)行優(yōu)先級(jí)控制等。(4)進(jìn)程通信:該系統(tǒng)調(diào)用被用在進(jìn)程之間傳遞消息或符號(hào)。(5)存儲(chǔ)管理:包括調(diào)查作業(yè)占據(jù)內(nèi)存區(qū)的大小、獲取作業(yè)占據(jù)內(nèi)存區(qū)的始址等。(6)線程管理:包括線程的創(chuàng)建、調(diào)度、執(zhí)行、撤銷等。系統(tǒng)調(diào)用的實(shí)現(xiàn):當(dāng)用戶使用系統(tǒng)調(diào)用時(shí),產(chǎn)生一條相應(yīng)的指令,處理機(jī)在執(zhí)行到該指令時(shí)發(fā)
11、生相應(yīng)的中斷,并發(fā)出有關(guān)信號(hào)給該處理機(jī)制。該處理機(jī)制在收到了處理機(jī)發(fā)來的信號(hào)后,啟動(dòng)相關(guān)的處理程序去完成該系統(tǒng)調(diào)用所要求的功能。陷進(jìn)處理機(jī)構(gòu):在系統(tǒng)中為控制系統(tǒng)調(diào)用服務(wù)的機(jī)構(gòu)稱為陷進(jìn)處理機(jī)構(gòu)。陷進(jìn)指令:把由于系統(tǒng)調(diào)用引起處理機(jī)中斷的指令稱為陷進(jìn)指令。第三章1.程序的并發(fā)執(zhí)行程序用來描述計(jì)算機(jī)所完成的獨(dú)立功能,并在時(shí)間上嚴(yán)格地按前后次序相繼地進(jìn)行計(jì)算機(jī)操作序列集合,是一個(gè)靜態(tài)概念。個(gè)程序由若干個(gè)程序段組成,而這些程序段的執(zhí)行必須是順序的,這種程序執(zhí)行的方式就稱為程序的順序執(zhí)行。程序順序執(zhí)行的特點(diǎn):n 1.順序性 處理機(jī)嚴(yán)格按照程序所規(guī)定的順序執(zhí)行,即每個(gè)操作必須在下一個(gè)操作開始之前結(jié)束。n 2.
12、封閉性 程序一旦開始執(zhí)行,其計(jì)算結(jié)果不受外界的影響,當(dāng)程序的初始條件給定之后,其后的狀態(tài)只能由程序本身確定,即只有本程序才能改變它。n 3.可再現(xiàn)性 程序執(zhí)行的結(jié)果與初始條件有關(guān),而與執(zhí)行時(shí)間無關(guān)。即只要程序的初始條件相同,它的執(zhí)行結(jié)果是相同的,不論它在什么時(shí)間執(zhí)行,也不管計(jì)算機(jī)的運(yùn)行速度。多道程序系統(tǒng)中程序執(zhí)行環(huán)境的變化執(zhí)行環(huán)境的特點(diǎn):n (1)獨(dú)立性在多道環(huán)境下執(zhí)行的每道程序都是邏輯上獨(dú)立的。n (2)隨機(jī)性程序和數(shù)據(jù)的輸入和執(zhí)行開始時(shí)間都是隨機(jī)的。n (3)資源共享軟硬件資源的有限性導(dǎo)致資源共享。程序并發(fā)執(zhí)行:若干個(gè)程序段同時(shí)在系統(tǒng)中運(yùn)行,這些程序的執(zhí)行在時(shí)間上是重迭的,一個(gè)程序段的執(zhí)行
13、尚未結(jié)束,另一個(gè)程序段的執(zhí)行已經(jīng)開始,即使這種重迭是很小的,也稱這幾個(gè)程序段是并發(fā)執(zhí)行的。2.進(jìn)程:進(jìn)程是一個(gè)程序?qū)δ硞€(gè)數(shù)據(jù)集的執(zhí)行過程,是分配資源的基本單位。進(jìn)程和程序的區(qū)別與聯(lián)系:程序是指令的集合,是靜態(tài)的概念。 進(jìn)程是程序在處理機(jī)上的一次執(zhí)行的過程,是動(dòng)態(tài)的概念。程序可以作為軟件資料長(zhǎng)期保存。進(jìn)程是有生命周期的。進(jìn)程是一個(gè)獨(dú)立的運(yùn)行單位,能與其它進(jìn)程并行(并發(fā))活動(dòng)。而程序則不是。進(jìn)程是競(jìng)爭(zhēng)計(jì)算機(jī)系統(tǒng)有限資源的基本單位,也是進(jìn)行處理機(jī)調(diào)度的基本單位。不同的進(jìn)程可以包含同一程序,只要該程序所對(duì)應(yīng)的數(shù)據(jù)集不同。作業(yè)和進(jìn)程的關(guān)系作業(yè)是用戶需要計(jì)算機(jī)完成某項(xiàng)任務(wù)時(shí)要求計(jì)算機(jī)所做工作的集合。而進(jìn)程
14、則是已提交完畢程序的執(zhí)行過程的描述,是資源分配的基本單位。其主要區(qū)別如下:n 作業(yè)是用戶向計(jì)算機(jī)提交任務(wù)的任務(wù)實(shí)體。n 一個(gè)作業(yè)可由多個(gè)進(jìn)程組成。n 作業(yè)的概念主要用于批處理系統(tǒng)中。進(jìn)程描述在系統(tǒng)中一個(gè)進(jìn)程存在:進(jìn)程控制塊PCB、有關(guān)程序段、數(shù)據(jù)結(jié)構(gòu)集 進(jìn)程控制塊 PCB (Process Control Block)包含一個(gè)進(jìn)程的描述信息、控制信息及資源信息,有些系統(tǒng)還有進(jìn)程調(diào)度等待所使用的現(xiàn)場(chǎng)保護(hù)區(qū)。PCB集中反映一個(gè)進(jìn)程的動(dòng)態(tài)特征。在創(chuàng)建時(shí),建立PCB,并伴隨進(jìn)程運(yùn)行的全過程,當(dāng)進(jìn)程完成其功能后,系統(tǒng)釋放PCB,進(jìn)程也隨之消亡(1)描述信息 1、進(jìn)程名或進(jìn)程標(biāo)識(shí)號(hào) name 每個(gè)進(jìn)程都必
15、須有一個(gè)唯一的標(biāo)識(shí)符,可以是字符串,也可以是一個(gè)數(shù)字。UNIX系統(tǒng)中就是一個(gè)整型數(shù)。在進(jìn)程創(chuàng)建時(shí)由系統(tǒng)賦予。 2、用戶名或用戶標(biāo)識(shí)號(hào) 每個(gè)進(jìn)程都隸屬于某個(gè)用戶,用戶名或用戶標(biāo)識(shí)號(hào)有利于資源共享和保護(hù) 3、家族關(guān)系 process family 有的系統(tǒng)允許一個(gè)進(jìn)程可創(chuàng)建自已的子進(jìn)程,子進(jìn)程還可以創(chuàng)建,一個(gè)進(jìn)程往往處在一個(gè)家族之中,就需要記錄進(jìn)程在家族中位置的信息。 (2)控制信息 1、進(jìn)程當(dāng)前狀態(tài) status說明進(jìn)程當(dāng)前所處的狀態(tài)。為了管理的方便,系統(tǒng)設(shè)計(jì)時(shí)會(huì)將相同的狀態(tài)的進(jìn)程組成一個(gè)隊(duì)列,如就緒進(jìn)程隊(duì)列,等待進(jìn)程則要根據(jù)等待的事件組成多個(gè)等待隊(duì)列,如等待打印機(jī)隊(duì)列、等待磁盤I/O完成隊(duì)列等
16、等。2、進(jìn)程優(yōu)先級(jí) priority 進(jìn)程的優(yōu)先級(jí)反映進(jìn)程的緊迫程度,通常由用戶指定和系統(tǒng)設(shè)置。3、執(zhí)行程序開始地址 start-addr4、各種計(jì)時(shí)信息進(jìn)程占用系統(tǒng)資源的情況,不同的系統(tǒng)的處理差別很大。5、通信信息 communication information是指某個(gè)進(jìn)程在運(yùn)行的過程中要與其它進(jìn)程進(jìn)行通信,該區(qū)記錄有關(guān)進(jìn)程通信方面的信息。(3)資源管理信息包括有關(guān)存儲(chǔ)器的信息、使用輸入、輸出設(shè)備的信息、有關(guān)文件系統(tǒng)的信息:1、占用內(nèi)存大小及管理用數(shù)據(jù)結(jié)構(gòu)指針。2、在某些復(fù)雜系統(tǒng)中,還有對(duì)換或覆蓋用的有關(guān)信息。3、共享程序段大小及起始地址。4、輸入輸出設(shè)備的設(shè)備號(hào),所要傳送的數(shù)據(jù)長(zhǎng)度、緩
17、沖區(qū)地址、緩沖區(qū)長(zhǎng)度及使用設(shè)備的有關(guān)數(shù)據(jù)結(jié)構(gòu)指針等。5、指向文件系統(tǒng)的指針及有關(guān)標(biāo)識(shí)等。(4)、CPU現(xiàn)場(chǎng)保護(hù)區(qū) cpustatus當(dāng)進(jìn)程因某種原因不能繼續(xù)占用CPU時(shí)(等待打印機(jī)),釋放CPU,這時(shí)就要將CPU的各種狀態(tài)信息保護(hù)起來,為將來再次得到處理機(jī)恢復(fù)CPU的各種狀態(tài),繼續(xù)運(yùn)行。進(jìn)程上下文實(shí)際上是進(jìn)程執(zhí)行活動(dòng)全過程的靜態(tài)描述。進(jìn)程上下文是一個(gè)抽象的概念,它包含了每個(gè)進(jìn)程執(zhí)行過的、執(zhí)行時(shí)的以及待執(zhí)行的指令和數(shù)據(jù),在指令寄存器、堆棧(存放個(gè)調(diào)用子程序的返回點(diǎn)和參數(shù)等),狀態(tài)字寄存器等中的內(nèi)容。上文:已執(zhí)行過的進(jìn)程指令和數(shù)據(jù)在相關(guān)寄存器與堆棧中的內(nèi)容。正文:正在執(zhí)行的指令和數(shù)據(jù)在相關(guān)寄存器與
18、堆棧中的內(nèi)容。下文:待執(zhí)行的指令和數(shù)據(jù)在相關(guān)寄存器與堆棧中的內(nèi)容。進(jìn)程上下文切換進(jìn)程上下文切換發(fā)生在不同的進(jìn)程之間而不是同一個(gè)進(jìn)程內(nèi)。包含3個(gè)部分,第一部分為保存被切換進(jìn)程的正文部分(或當(dāng)前狀態(tài))至有關(guān)存儲(chǔ)區(qū)。第二部分操作系統(tǒng)進(jìn)程中有關(guān)調(diào)度和資源分配程序執(zhí)行,并選取新的進(jìn)程。第三部分則是將被選中進(jìn)程的原來被保存的正文部分從有關(guān)存儲(chǔ)區(qū)中選出,并送至有關(guān)寄存器或堆棧中,激活被選中進(jìn)程執(zhí)行。進(jìn)程空間和大小任一進(jìn)程都有自己的地址空間,把該空間稱為進(jìn)程空間或虛空間。進(jìn)程空間的大小只與處理機(jī)的位數(shù)有關(guān)。程序的執(zhí)行都在進(jìn)程空間內(nèi)進(jìn)行。用戶程序、進(jìn)程的各種控制表格等都按一定的結(jié)構(gòu)排列在進(jìn)程空間中。在有的系統(tǒng)中
19、進(jìn)程空間被劃分為兩部分:用戶空間和系統(tǒng)空間。為了防止用戶程序訪問系統(tǒng)空間,造成訪問出錯(cuò),計(jì)算機(jī)通過程序狀態(tài)寄存器等設(shè)置不同的執(zhí)行模式,即用戶模式(用戶態(tài))和系統(tǒng)模式(系統(tǒng)態(tài))來進(jìn)行保護(hù)。3.進(jìn)程狀態(tài)及其轉(zhuǎn)換進(jìn)程的三種基本狀態(tài):執(zhí)行狀態(tài)、就緒狀態(tài)、等待狀態(tài)(又稱阻塞、掛起、睡眠)就緒狀態(tài)(Ready) 存在于處理機(jī)調(diào)度隊(duì)列中的那些進(jìn)程,它們已經(jīng)準(zhǔn)備就緒,一旦得到CPU,就立即可以運(yùn)行,這些進(jìn)程所取的狀態(tài)為就緒狀態(tài)。(有多個(gè)進(jìn)程處于此狀態(tài))執(zhí)行狀態(tài)(Running)當(dāng)進(jìn)程由調(diào)度/分派程序分派后,得到CPU控制權(quán),它的程序正在運(yùn)行,該進(jìn)程所處的狀態(tài)為執(zhí)行狀態(tài)。(在系統(tǒng)中,總只有一個(gè)進(jìn)程處于此狀態(tài))等
20、待狀態(tài)(Wait)若一個(gè)進(jìn)程正在等待某個(gè)事件的發(fā)生(如等待I/O的完成),而暫停執(zhí)行,這時(shí),即使給它CPU時(shí)間,它也無法執(zhí)行,則稱該進(jìn)程處于等待狀態(tài)。進(jìn)程狀態(tài)轉(zhuǎn)換運(yùn)行到等待 等待某事件的發(fā)生(如等待I/O完成)等待到就緒 事件已經(jīng)發(fā)生(如I/O完成)運(yùn)行到就緒 時(shí)間片到(例如,兩節(jié)課時(shí)間到,下課)新建進(jìn)程到就緒 新創(chuàng)建的進(jìn)程進(jìn)入就緒狀態(tài)就緒到運(yùn)行 當(dāng)處理機(jī)空閉時(shí),由調(diào)度(分派)程序從就緒進(jìn)程隊(duì)列中選擇一個(gè)進(jìn)程占用CPU。進(jìn)程控制:就是系統(tǒng)使用一些具有特定功能的程序段來創(chuàng)建、撤銷進(jìn)程以及完成進(jìn)程各狀態(tài)的轉(zhuǎn)換,從而達(dá)到多進(jìn)程高效率并發(fā)執(zhí)行和協(xié)調(diào)、實(shí)現(xiàn)資源共享的目的。原語(yǔ):把系統(tǒng)態(tài)下執(zhí)行的某些具有特
21、定功能的程序段稱為原語(yǔ)。用于進(jìn)程控制的原語(yǔ)有:創(chuàng)建原語(yǔ)、撤銷原語(yǔ)、阻塞原語(yǔ)、喚醒原語(yǔ)。進(jìn)程創(chuàng)建方式:由系統(tǒng)程序模塊統(tǒng)一創(chuàng)建;由父進(jìn)程創(chuàng)建。進(jìn)程創(chuàng)建系統(tǒng)調(diào)用: create(name,priority,start-addr) UNIX系統(tǒng):fork()進(jìn)程撤銷:(1)該進(jìn)程已完成所要求的功能而正常終止(2)由于某種錯(cuò)誤導(dǎo)致非正常終止(3)祖先進(jìn)程要求撤銷某個(gè)子進(jìn)程。在一般操作系統(tǒng)中進(jìn)程撤消的系統(tǒng)調(diào)用是:kill UNIX系統(tǒng)中是exit() 如果撤銷進(jìn)程有自己的子進(jìn)程,則撤銷原語(yǔ)先撤銷其子進(jìn)程的PCB結(jié)構(gòu)并釋放子進(jìn)程所釋放的資源后,再撤銷當(dāng)前進(jìn)程的PCB結(jié)構(gòu)和釋放其資源。進(jìn)程的阻塞與喚醒當(dāng)一個(gè)處
22、在運(yùn)行狀態(tài)的進(jìn)程,因等待某個(gè)事件的發(fā)生(如等待打印機(jī))而不能繼續(xù)運(yùn)行時(shí),將調(diào)用進(jìn)程掛起系統(tǒng)調(diào)用,把進(jìn)程的狀態(tài)置為阻塞狀態(tài),并調(diào)用進(jìn)程調(diào)度程序(等于讓出處理機(jī))。進(jìn)程從運(yùn)行狀態(tài)轉(zhuǎn)換成阻塞狀態(tài)是由進(jìn)程掛起原語(yǔ)實(shí)現(xiàn)的,因此,調(diào)用進(jìn)程掛起操作是在進(jìn)程處于運(yùn)行狀態(tài)下執(zhí)行的。它的執(zhí)行將引起等待某事件的隊(duì)列的改變.一個(gè)正在運(yùn)行的進(jìn)程會(huì)因等待某事件(例如,等待打印機(jī))的發(fā)生,由運(yùn)行狀態(tài)轉(zhuǎn)換成阻塞狀態(tài),當(dāng)它等待的事件發(fā)生后,這個(gè)進(jìn)程將由阻塞狀態(tài)轉(zhuǎn)換成就緒狀態(tài)。這種轉(zhuǎn)換由進(jìn)程喚醒操作完成。喚醒一個(gè)進(jìn)程有兩種方式:系統(tǒng)進(jìn)程喚醒、事件發(fā)生進(jìn)程喚醒。 調(diào)用進(jìn)程喚醒操作一般在中斷處理、進(jìn)程通信等過程中。例如,打印機(jī)完成中
23、斷處理程序, 在完成了打印完成的操作后,就去檢查等待打印機(jī)的隊(duì)列,若不為空,則調(diào)用進(jìn)程喚醒操作,喚醒一個(gè)(或多個(gè))等待打印機(jī)的進(jìn)程。 4.進(jìn)程互斥產(chǎn)生互斥的原因:資源共享、進(jìn)程合作臨界資源:一次僅允許一個(gè)進(jìn)程使用的資源稱為臨界資源。臨界區(qū):每個(gè)進(jìn)程中訪問臨界資源的那段程序段稱為臨界區(qū)(臨界段)。間接制約:由于共享某公有資源而引起的在臨界區(qū)內(nèi)不允許并發(fā)進(jìn)程交叉執(zhí)行的現(xiàn)象稱為有共享公有資源而造成的對(duì)并發(fā)進(jìn)程執(zhí)行速度的間接制約,簡(jiǎn)稱間接制約?;コ猓涸诓僮飨到y(tǒng)中,當(dāng)某一進(jìn)程正在訪問某臨界區(qū)時(shí),就不允許其它進(jìn)程進(jìn)入,否則就會(huì)發(fā)生(后果)無法估計(jì)的錯(cuò)誤。我們把進(jìn)程之間的這種相互制約的關(guān)系稱為互斥。進(jìn)入臨界
24、區(qū)的準(zhǔn)則:(1)不能假設(shè)各并發(fā)進(jìn)程的相對(duì)執(zhí)行速度;(2)并發(fā)進(jìn)程中的某個(gè)進(jìn)程不在臨界區(qū)時(shí),它不能阻止其他進(jìn)程進(jìn)入臨界區(qū);(3)并發(fā)進(jìn)程中的若干個(gè)進(jìn)程申請(qǐng)進(jìn)入界區(qū)時(shí),只能允許一個(gè)進(jìn)程進(jìn)入;(4)當(dāng)有若干個(gè)進(jìn)程欲進(jìn)入臨界區(qū)時(shí),應(yīng)在有限的時(shí)間內(nèi)使其進(jìn)入。解決進(jìn)程互斥的最簡(jiǎn)單的辦法是加鎖。在系統(tǒng)中為每個(gè)臨界資源設(shè)置一個(gè)鎖位,n 1 表示資源可用,n 0 表示資源已被占用(不可用)。這樣當(dāng)一個(gè)進(jìn)程使用某個(gè)臨界資源之前必須完成下列操作:1、考察鎖位的值;2、若原來的值是為“1”,將鎖位置為“0”(占用該資源);3、若原來值是為“0”,(該資源已被別人占用),則轉(zhuǎn)到1。當(dāng)進(jìn)程使用完資源后,將鎖位置為“1“,
25、稱為開鎖操作。5.信號(hào)量與P、V原語(yǔ)信號(hào)量sem:是一個(gè)整數(shù),在sem大于等于零時(shí),代表可供并發(fā)資源使用的資源實(shí)體數(shù),但sem小于零時(shí)則表示正在等待使用臨界區(qū)的進(jìn)程數(shù)。sem代表資源的實(shí)體。在實(shí)際應(yīng)用中應(yīng)準(zhǔn)確地說明sem的意義和初值。P操作:(1)sem減1;(2)若sem減1后仍大于等于0,則進(jìn)程繼續(xù)執(zhí)行;(3)若結(jié)果小于0,則該進(jìn)程掛起。注:掛起該進(jìn)程包括:保留調(diào)用進(jìn)程CPU現(xiàn)場(chǎng);置“等待”狀態(tài);入等待隊(duì)列;轉(zhuǎn)進(jìn)程調(diào)度; V操作:(1)s值加1;(2)若相加結(jié)果大于0,進(jìn)程繼續(xù)執(zhí)行;(3)否則,喚醒一個(gè)(或多個(gè))等待該信號(hào)燈的進(jìn)程,然后本進(jìn)程繼續(xù)執(zhí)行或轉(zhuǎn)進(jìn)程調(diào)度。 P、V原語(yǔ)實(shí)現(xiàn)互斥的原理
26、當(dāng)一個(gè)進(jìn)程想要進(jìn)入臨界區(qū)時(shí),它必須先執(zhí)行P原語(yǔ)操作以將信號(hào)量sem減1。在一個(gè)進(jìn)程完成對(duì)臨界資源的操作后,它必須執(zhí)行V原語(yǔ)操作以釋放它占用的臨界資源。由于信號(hào)量初始值為1,所以,任一進(jìn)程在執(zhí)行P原語(yǔ)操作之后將sem的值變?yōu)?,表示該進(jìn)程可以進(jìn)入臨界區(qū)。在該進(jìn)程未執(zhí)行V原語(yǔ)操作之前如有另一進(jìn)程想進(jìn)入臨界區(qū)的話,它也應(yīng)先執(zhí)行P原語(yǔ)操作,從而使sem的值變?yōu)?1,因此,第二個(gè)進(jìn)程將會(huì)被阻塞,直到第一個(gè)進(jìn)程執(zhí)行V原語(yǔ)操作之后,sem的值變?yōu)?,從而可喚醒第二個(gè)進(jìn)程進(jìn)入就緒隊(duì)列,經(jīng)調(diào)度后進(jìn)入臨界區(qū)。在第二個(gè)進(jìn)程執(zhí)行完V原語(yǔ)操作之后,如果沒有其它進(jìn)程申請(qǐng)進(jìn)入臨界區(qū)的話,則sem又恢復(fù)到初始值。用信號(hào)量實(shí)現(xiàn)
27、兩并發(fā)進(jìn)程Pa,Pb互斥的描述如下:(1) 設(shè)sem為互斥信號(hào)量,其取值范圍為(1,0,-1)。其中sem=1標(biāo)志進(jìn)程Pa,Pb都未進(jìn)入類名為S的臨界區(qū),sem=0表示進(jìn)程Pa,Pb已進(jìn)入類名為S的臨界區(qū),sem=-1表示進(jìn)程Pa,Pb中,一個(gè)進(jìn)程已進(jìn)入臨界區(qū),而另一進(jìn)程等待進(jìn)入臨界區(qū)。(2) 描述Pa:P(sem)<S>V(sem):.Pb:P(sem)<S>V(sem):. 6.進(jìn)程同步同步:把異步環(huán)境下的一組并發(fā)進(jìn)程,因直接制約而互相發(fā)送消息而進(jìn)行互相合作、互相等待,使得各進(jìn)程按一定的速度執(zhí)行的過程稱為進(jìn)程間的同步。用wait(消息名)表示進(jìn)程等待合作進(jìn)程發(fā)來的消
28、息.功能:等待到消息名為true的進(jìn)程繼續(xù)執(zhí)行。用signal(消息名)表示向合作進(jìn)程發(fā)送消息功能:發(fā)送消息名,并將其值置為true。利用過程wait和singnal描述計(jì)算進(jìn)程Pc和打印進(jìn)程Pp的同步關(guān)系(1) 設(shè)消息名Bufempty表示buf為空,消息名Buffull表示Buf中裝滿了數(shù)據(jù)。(2) 初始化Bufempty=true,Buffull=false.。(3) 描述:Pc : A:wait(Bufempty) 計(jì)算 Buf 計(jì)算結(jié)果 Bufempty false signal(Buffull) Goto APp : B:wait(Bufful) 打印Buf中的數(shù)據(jù) 清除Buf中的
29、數(shù)據(jù) Bufful false signal(Bufempty) Goto B私有信號(hào)量(private Semaphore):進(jìn)程同步的信號(hào)量只與制約進(jìn)程及被制約進(jìn)程有關(guān)而不是與整組并發(fā)進(jìn)程有關(guān)。因此該信號(hào)量稱為私有信號(hào)量。用P,V原語(yǔ)操作實(shí)現(xiàn)同步首先,為各并發(fā)進(jìn)程設(shè)置私有信號(hào)量,然后,為私有信號(hào)量賦初值,最后,利用P,V原語(yǔ)和私有信號(hào)量規(guī)定各進(jìn)程的執(zhí)行順序。例:設(shè)進(jìn)程Pa和Pb通過緩沖區(qū)隊(duì)列傳遞數(shù)據(jù)。Pa為發(fā)送進(jìn)程,Pb為接收進(jìn)程。Pa發(fā)送數(shù)據(jù)時(shí)調(diào)用發(fā)送過程deposit(data),Pb接受數(shù)據(jù)時(shí)調(diào)用過程remove(data),且數(shù)據(jù)的發(fā)送和接受過程滿足如下條件:(1)在7.生產(chǎn)者與消
30、費(fèi)者問題對(duì)于生產(chǎn)者進(jìn)程:產(chǎn)生一個(gè)數(shù)據(jù),當(dāng)要送入緩沖區(qū)時(shí),要檢查緩沖區(qū)是否已滿,若未滿,則可將數(shù)據(jù)送入緩沖區(qū),并通知消費(fèi)者進(jìn)程;否則,等待;對(duì)于消費(fèi)者進(jìn)程:當(dāng)它去取數(shù)據(jù)時(shí),要看緩沖區(qū)中是否有數(shù)據(jù)可取,若有則取走一個(gè)數(shù)據(jù),并通知生產(chǎn)者進(jìn)程,否則,等待。這種相互等待,并互通信息就是典型的進(jìn)程同步。同時(shí),緩沖區(qū)是個(gè)臨界資源,因此,諸進(jìn)程對(duì)緩沖區(qū)的操作程序是一個(gè)共享臨界區(qū),因此,還有個(gè)互斥的問題。 8.進(jìn)程通信通信(communication)意味著進(jìn)程間傳遞數(shù)據(jù)。操作系統(tǒng)可以看作是各種進(jìn)程組成的,這些進(jìn)程都具有各自獨(dú)立的功能,且大多數(shù)都被外部需要而啟動(dòng)執(zhí)行。在單機(jī)系統(tǒng)中進(jìn)程的通信有4種形式:(1)主從
31、式(2)會(huì)話式(3)消息或郵箱機(jī)制(4)共享存儲(chǔ)區(qū)方式會(huì)話方式的特點(diǎn):(1)使用進(jìn)程在使用服務(wù)進(jìn)程所提供的服務(wù)之前,必須得到服務(wù)進(jìn)程的許可。(2)服務(wù)進(jìn)程根據(jù)使用進(jìn)程的要求提供服務(wù),但對(duì)所提供服務(wù)的控制由服務(wù)進(jìn)程自身完成。(3)使用進(jìn)程和服務(wù)進(jìn)程在進(jìn)行通信時(shí)有固定連接關(guān)系。消息或郵箱機(jī)制的特點(diǎn)是:(1)只要存在空緩沖區(qū)或郵箱,發(fā)送進(jìn)程就可以發(fā)送消息。(2)與會(huì)話系統(tǒng)不同,發(fā)送進(jìn)程和接受進(jìn)程之間無直接聯(lián)接關(guān)系。(3)發(fā)送進(jìn)程和接受進(jìn)程之間存在緩沖區(qū)或郵箱用來存放被傳送消息。郵箱通信就是由發(fā)送進(jìn)程申請(qǐng)建立一與接受進(jìn)程聯(lián)接的郵箱。設(shè)置郵箱的最大好處是發(fā)送進(jìn)程和接受進(jìn)程之間沒有時(shí)間上的限制。共享存儲(chǔ)區(qū)
32、方式不要求數(shù)據(jù)移動(dòng),兩個(gè)需要互相交換信息的進(jìn)程通過共享數(shù)據(jù)區(qū)的操作達(dá)到互相通信的目的。9.死鎖問題死鎖:指?jìng)€(gè)并發(fā)進(jìn)程彼此互相等待對(duì)方所擁有的資源,且這些并發(fā)進(jìn)程在得到對(duì)方的資源之前不會(huì)釋放自己所擁有的資源。從而造成大家都想得到資源而又得不到資源,個(gè)并發(fā)進(jìn)程不能繼續(xù)向前推進(jìn)的狀態(tài)。死鎖的起因:根本原因在于系統(tǒng)提供的資源個(gè)數(shù)少于并發(fā)進(jìn)程所要求的該類資源數(shù)。產(chǎn)生死鎖有四個(gè)必要條件:(1)互斥條件。并發(fā)進(jìn)程所要求和占有的資源是不能同時(shí)被兩個(gè)以上進(jìn)程使用或操作的,進(jìn)程對(duì)他所需要的資源進(jìn)行排他性控制。 (2)不剝奪條件。進(jìn)程所獲得的資源在未使用完畢之前,不能被其它進(jìn)程強(qiáng)行剝奪,而只能由獲得該資源的進(jìn)程自己
33、釋放。(3)部分分配。進(jìn)程每次申請(qǐng)它所需要的一部分資源,在等待新資源的同時(shí),繼續(xù)占用已分配的資源。(4)環(huán)路等待條件。存在一種進(jìn)程循環(huán)鏈,鏈中每一個(gè)進(jìn)程已獲得的資源同時(shí)被下一個(gè)進(jìn)程所請(qǐng)求。只要有一個(gè)條件不滿足,死鎖就可解除。預(yù)防死鎖 1破壞“請(qǐng)求與保持條件” 每個(gè)進(jìn)程在運(yùn)行之前,必須預(yù)先提出自己所要使用的全部資源,調(diào)度程序在該進(jìn)程所需要的資源末得到滿足之前,不讓它們投入運(yùn)行,并且當(dāng)資源一旦分配給某個(gè)進(jìn)程之后,那么在該進(jìn)程的整個(gè)運(yùn)行期間相應(yīng)資源一直被它占有,這就破壞了產(chǎn)生死鎖的部分分配條件。2破壞環(huán)路條件 對(duì)系統(tǒng)提供的每一項(xiàng)資源,由系統(tǒng)設(shè)計(jì)者將它們按類型進(jìn)行線性排隊(duì),并賦予不同的序號(hào)。3資源受控
34、動(dòng)態(tài)分配 為了避免死鎖發(fā)生,操作系統(tǒng)必須根據(jù)預(yù)先掌握的關(guān)于資源用法的信息控制資源分配,使得共同進(jìn)展路徑的下一步不致于進(jìn)入危險(xiǎn)區(qū),即只要有產(chǎn)生死鎖的可能性,就避免把一種資源分配給一個(gè)進(jìn)程。 死鎖的檢測(cè)和恢復(fù) 1資源剝奪法 (1)還原算法。即恢復(fù)計(jì)算結(jié)果和狀態(tài)。(2)建立檢查點(diǎn)主要是用來恢復(fù)分配前的狀態(tài)。 2撤消進(jìn)程法 按一定的順序中止進(jìn)程序列,直至已釋放到有足夠的資源來完成剩下的資源為止。第四章1.一個(gè)作業(yè)從提交給計(jì)算機(jī)系統(tǒng)到執(zhí)行結(jié)束退出系統(tǒng),一般都要經(jīng)歷提交、收容、執(zhí)行和完成四個(gè)狀態(tài)。一個(gè)作業(yè)在其處于從輸入設(shè)備進(jìn)入外部存儲(chǔ)設(shè)備的過程成為提交狀態(tài)。處于提交狀態(tài)的作業(yè),因其信息尚未全部進(jìn)入系統(tǒng),所
35、以不能被調(diào)用程序選取。收容狀態(tài)也稱為后備狀態(tài),輸入管理系統(tǒng)不斷地將作業(yè)輸入到外存中對(duì)應(yīng)部分(或稱輸入井,即專門用來存放待處理作業(yè)信息的一組外存分區(qū))。若一個(gè)作業(yè)的全部信息已全部被輸入進(jìn)輸入井,那么,在它還未被調(diào)度去執(zhí)行之前,該作業(yè)處于收容狀態(tài)。作業(yè)調(diào)度程序從后備作業(yè)中選取若干作業(yè)到內(nèi)存投入運(yùn)行。它為被選中作業(yè)建立進(jìn)程并分配必要的資源,這時(shí),這些被選中的作業(yè)處于執(zhí)行狀態(tài)。當(dāng)作業(yè)運(yùn)行完畢,但它所占用的資源尚未全部被系統(tǒng)收回時(shí),該作業(yè)處于完成狀態(tài)。一般來說,處理機(jī)調(diào)度可分為4級(jí):作業(yè)調(diào)度、交換調(diào)度、進(jìn)程調(diào)度、線程調(diào)度。 作業(yè)調(diào)度:又稱宏觀調(diào)度或高級(jí)調(diào)度,其主要任務(wù)是按一定的原則對(duì)外存輸入井上的大量后
36、備作業(yè)進(jìn)行選擇,給選出的作業(yè)分配內(nèi)存、輸入輸出設(shè)備等必要的資源,并建立相應(yīng)的根程序,以使該作業(yè)的進(jìn)程獲得競(jìng)爭(zhēng)處理機(jī)的權(quán)利,另外,當(dāng)該作業(yè)執(zhí)行完畢時(shí),還負(fù)責(zé)回收系統(tǒng)資源。交換調(diào)度:又稱中級(jí)調(diào)度,其主要任務(wù)是按照給定的原則和策略,將處于外存交換區(qū)中的就緒狀態(tài)或就緒等待狀態(tài)的進(jìn)程調(diào)入內(nèi)存,或把處于內(nèi)存就緒狀態(tài)或內(nèi)存等待狀態(tài)的進(jìn)程交換到外存交換區(qū)。交換調(diào)度主要涉及內(nèi)存的管理和擴(kuò)充,一般將它歸在存儲(chǔ)管理之中。進(jìn)程調(diào)度:又稱微觀調(diào)度或低級(jí)調(diào)度,其主要任務(wù)是按照某種策略和方法選取一個(gè)處于就緒狀態(tài)的進(jìn)程占用處理機(jī)。只有在多道批處理系統(tǒng)中才有作業(yè)調(diào)度,而在分時(shí)和實(shí)時(shí)系統(tǒng)中一般只有進(jìn)程調(diào)度、交換調(diào)度和線程調(diào)度。這
37、是因?yàn)樵诜謺r(shí)和實(shí)時(shí)系統(tǒng)中,為了縮短響應(yīng)時(shí)間或?yàn)榱藵M足用戶需求的截止時(shí)間,作業(yè)不是建立在外存中,而是直接建立在內(nèi)存中。2.作業(yè)調(diào)度作業(yè)調(diào)度的功能:(1)記錄系統(tǒng)中各作業(yè)的狀況,包括執(zhí)行階段的有關(guān)情況。通常,系統(tǒng)為每個(gè)作業(yè)建立一個(gè)作業(yè)控制表JCB記錄這些有關(guān)信息。作業(yè)控制塊JCB:在作業(yè)調(diào)度的過程中記錄作業(yè)各方面的信息。它隨作業(yè)的創(chuàng)建而產(chǎn)生,隨作業(yè)的撤消而被清除。(2)從后備隊(duì)列中選取一部分作業(yè)投入執(zhí)行(3)為被選中的作業(yè)做好執(zhí)行前的準(zhǔn)備工作。(4)在作業(yè)執(zhí)行結(jié)束時(shí)做好善后處理工作。作業(yè)調(diào)度目標(biāo):(1) 對(duì)所有作業(yè)應(yīng)該是公平合理的。(2) 應(yīng)使設(shè)備有高的利用率。(3) 每天執(zhí)行盡可能多的作業(yè)(4)
38、 有快的響應(yīng)時(shí)間對(duì)于批處理系統(tǒng),作業(yè)的平均周轉(zhuǎn)時(shí)間或平均帶權(quán)周轉(zhuǎn)時(shí)間,被作為衡量調(diào)度算法優(yōu)劣的標(biāo)準(zhǔn);對(duì)于分時(shí)系統(tǒng)和實(shí)時(shí)系統(tǒng),外加平均響應(yīng)時(shí)間作為衡量調(diào)度算法優(yōu)劣的標(biāo)準(zhǔn)(1)周轉(zhuǎn)時(shí)間:作業(yè)i從提交時(shí)刻到完成時(shí)刻稱為作業(yè)的周轉(zhuǎn)時(shí)間。Ti = Tei - TsiTei為作業(yè)i的完成時(shí)間,Tsi為作業(yè)的提交時(shí)間一個(gè)作業(yè)的周轉(zhuǎn)時(shí)間說明了該作業(yè)在系統(tǒng)內(nèi)停留的時(shí)間,包含兩部分:一是等待時(shí)間;二為執(zhí)行時(shí)間Ti = Twi + TriTwi主要是指作業(yè)i由后備狀態(tài)到執(zhí)行狀態(tài)的等待時(shí)間,它不包括作業(yè)進(jìn)入執(zhí)行狀態(tài)后的等待時(shí)間。一批作業(yè)的平均周轉(zhuǎn)時(shí)間為: nT=1/n Ti i=1帶權(quán)周轉(zhuǎn)時(shí)間Wi=Ti/Tri Ti
39、作業(yè)周轉(zhuǎn)時(shí)間 Tri作業(yè)執(zhí)行時(shí)間一批作業(yè)的平均帶權(quán)周轉(zhuǎn)時(shí)間為 nW=1/n Wi i=13進(jìn)程調(diào)度進(jìn)程調(diào)度的功能:用PCB塊記錄系統(tǒng)中所有進(jìn)程的執(zhí)行情況按照一定的調(diào)度算法,選擇一個(gè)處于就緒狀態(tài)的進(jìn)程,給它分配處理機(jī)(這是最重要的功能)實(shí)施進(jìn)行進(jìn)程上下文的切換引起進(jìn)程調(diào)度的原因:(1) 正在執(zhí)行的進(jìn)程執(zhí)行完畢。這時(shí),如果不選擇新的就緒進(jìn)程執(zhí)行,將浪費(fèi)處理機(jī)資源。(2) 執(zhí)行中進(jìn)程自己調(diào)用阻塞原語(yǔ)將自己阻塞起來進(jìn)入睡眠等待狀態(tài)。(3) 執(zhí)行中進(jìn)程調(diào)用了P原語(yǔ)操作,從而因資源不足而被阻塞;或調(diào)用了V原語(yǔ)激活了等待資源的進(jìn)程隊(duì)列。(4) 執(zhí)行中進(jìn)程提出了I/O請(qǐng)求后被阻塞。(5) 在分時(shí)系統(tǒng)中時(shí)間片已
40、經(jīng)用完。(6) 在執(zhí)行完系統(tǒng)調(diào)用,在系統(tǒng)程序返回用戶進(jìn)程,可認(rèn)為系統(tǒng)進(jìn)程執(zhí)行完畢,從而可調(diào)度選擇一新的用戶程序執(zhí)行。以上都是CPU執(zhí)行不可剝奪方式下做引起的進(jìn)程調(diào)度的原因,在CPU執(zhí)行方式是可剝奪時(shí),還有:(7) 就緒隊(duì)列中的某進(jìn)程的優(yōu)先級(jí)變得高于當(dāng)前執(zhí)行進(jìn)程的優(yōu)先級(jí),從而也將發(fā)生進(jìn)程調(diào)度??蓜儕Z方式:即就緒隊(duì)列中一旦有優(yōu)先級(jí)高于當(dāng)前進(jìn)程優(yōu)先級(jí)的進(jìn)程存在時(shí),便立即發(fā)生進(jìn)程調(diào)度,轉(zhuǎn)讓處理機(jī)。非剝奪方式(不可剝奪方式):即使在就緒隊(duì)列存在有優(yōu)先級(jí)高于當(dāng)前執(zhí)行進(jìn)程時(shí),當(dāng)前進(jìn)程仍將繼續(xù)占有處理機(jī),直到該進(jìn)程因自己調(diào)度調(diào)用原語(yǔ)操作或、等待I/O進(jìn)入阻塞狀態(tài)或時(shí)間片用完時(shí)才重新發(fā)生調(diào)度讓出處理機(jī)。進(jìn)程調(diào)度
41、性能評(píng)價(jià)(1)進(jìn)程調(diào)度性能是衡量操作系統(tǒng)性能的一個(gè)重要指標(biāo)(2)在大多數(shù)情況下,利用測(cè)試或模擬系統(tǒng)響應(yīng)時(shí)間的方法來評(píng)價(jià)進(jìn)程調(diào)度的性能4.調(diào)度算法先來先服務(wù)(FCFS)算法將用戶作業(yè)和就緒進(jìn)程按提交順序或變成就緒狀態(tài)的先后排成隊(duì)列,并按照先來先服務(wù)的方式進(jìn)行調(diào)度處理。優(yōu)點(diǎn):在一般意義下是公平的,即每個(gè)作業(yè)或進(jìn)程都按照它們?cè)陉?duì)列中等待時(shí)間長(zhǎng)短來決定它們是否優(yōu)先享受服務(wù)。缺點(diǎn):對(duì)于那些執(zhí)行時(shí)間較短的作業(yè)或進(jìn)程來說,如果它們?cè)谀承﹫?zhí)行時(shí)間很長(zhǎng)的作業(yè)或進(jìn)程之后到達(dá),則它們等待很長(zhǎng)時(shí)間。(時(shí)間片)輪轉(zhuǎn)法(RR)算法描述:就緒隊(duì)列按進(jìn)程到達(dá)的時(shí)間來排列。處理機(jī)的時(shí)間被分為固定大小的時(shí)間片。調(diào)度程序總是選擇就
42、緒隊(duì)列中的第一個(gè)進(jìn)程。一個(gè)執(zhí)行進(jìn)程如果在用完一個(gè)時(shí)間片后還沒有完成其任務(wù),它就自動(dòng)釋放處理機(jī)回到就緒隊(duì)列的末尾重新排隊(duì),等待下一次被調(diào)度。缺點(diǎn):只能用來分配那些可搶占資源,而且這種算法只能用于進(jìn)程調(diào)度,不能用于作業(yè)調(diào)度(作業(yè)調(diào)度包含了不可搶占資源)。 時(shí)間片的選取非常重要,時(shí)間片長(zhǎng)度的選擇會(huì)直接影響系統(tǒng)開銷和響應(yīng)時(shí)間。如果時(shí)間片長(zhǎng)度過短,則調(diào)度程序剝奪處理機(jī)的次數(shù)增多,這將使進(jìn)程上下文交換次數(shù)也大大增加,加重了系統(tǒng)開銷。如果時(shí)間片長(zhǎng)度選擇過長(zhǎng)(大),大到一個(gè)進(jìn)程足以完成其全部運(yùn)行工作所需的時(shí)間,那么時(shí)間片輪轉(zhuǎn)法就退化為先來先服務(wù)策略了。最佳的時(shí)間片量值應(yīng)能使分時(shí)用戶得到好的響應(yīng)時(shí)間。時(shí)間片的確
43、定在輪轉(zhuǎn)法中,時(shí)間片長(zhǎng)度q根據(jù)系統(tǒng)對(duì)響應(yīng)時(shí)間的要求R和就緒隊(duì)列中所能容納的最大進(jìn)程數(shù)Nmax確定的。 q=R/Nmax一種改進(jìn)的方法就是每當(dāng)一輪調(diào)度開始時(shí),系統(tǒng)根據(jù)就緒隊(duì)列中當(dāng)前的進(jìn)程數(shù)計(jì)算一次q,作為新一輪調(diào)度的時(shí)間片。多級(jí)反饋輪轉(zhuǎn)法(進(jìn)程調(diào)度)(1)在時(shí)間片輪轉(zhuǎn)法中設(shè)置三個(gè)就緒隊(duì)列a.時(shí)間片完成就緒隊(duì)列b.等待結(jié)束就緒隊(duì)列c.新進(jìn)程就緒隊(duì)列(2)每個(gè)隊(duì)列建立時(shí)按FCFS排列,同一隊(duì)列中進(jìn)程的優(yōu)先級(jí)相同,不同隊(duì)列具有不同的優(yōu)先級(jí)優(yōu)先級(jí)高的隊(duì)列中進(jìn)程的時(shí)間片短,優(yōu)先級(jí)低的隊(duì)列中進(jìn)程的時(shí)間片長(zhǎng)。(3)進(jìn)程調(diào)度時(shí),先調(diào)度高優(yōu)先級(jí)就緒隊(duì)列中的進(jìn)程,當(dāng)高優(yōu)先級(jí)就緒隊(duì)列為空時(shí)才調(diào)度優(yōu)先級(jí)低的就緒隊(duì)列中的
44、進(jìn)程(4)一個(gè)進(jìn)程在執(zhí)行過程中要經(jīng)歷不同的就緒隊(duì)列優(yōu)先級(jí)法算法描述:按照某種原則給作業(yè)或進(jìn)程確定一個(gè)優(yōu)先級(jí),進(jìn)程的就緒隊(duì)列或作業(yè)的后備隊(duì)列按對(duì)象的優(yōu)先級(jí)進(jìn)行排列,高前低后。對(duì)象進(jìn)入隊(duì)列是插入。當(dāng)調(diào)度發(fā)生時(shí),排列在最前面的進(jìn)程或作業(yè)被調(diào)度。確定優(yōu)先級(jí)的方法有兩類:動(dòng)態(tài)法和靜態(tài)法靜態(tài)法是根據(jù)作業(yè)或進(jìn)程的靜態(tài)特性,在作業(yè)或進(jìn)程開始執(zhí)行之前就確定它們的優(yōu)先級(jí),一旦開始執(zhí)行后就不能改變。動(dòng)態(tài)法:把作業(yè)或進(jìn)程靜態(tài)性和動(dòng)態(tài)性結(jié)合起來確定作業(yè)或進(jìn)程的優(yōu)先級(jí),隨著作業(yè)或進(jìn)程的執(zhí)行過程,優(yōu)先級(jí)不斷變化。作業(yè)調(diào)度中靜態(tài)優(yōu)先級(jí)確定原則:(1) 由用戶自己根據(jù)作業(yè)的緊急程度輸入一個(gè)適當(dāng)?shù)膬?yōu)先級(jí)(2) 由系統(tǒng)或操作員根據(jù)
45、作業(yè)類型指定優(yōu)先級(jí)。(3) 系統(tǒng)根據(jù)作業(yè)要求資源情況確定優(yōu)先級(jí)。進(jìn)程調(diào)度靜態(tài)優(yōu)先級(jí)確定原則:(1) 按照進(jìn)程的類型給與不同的優(yōu)先級(jí)。(2) 將作業(yè)的靜態(tài)優(yōu)先級(jí)作為它所屬進(jìn)程的優(yōu)先級(jí)。由于在進(jìn)程調(diào)度中靜態(tài)優(yōu)先級(jí)確定方法的缺陷:系統(tǒng)效率低、調(diào)度性能不高,所以多采用動(dòng)態(tài)的方法確定優(yōu)先級(jí)。進(jìn)程調(diào)度動(dòng)態(tài)優(yōu)先級(jí)確定原則:(1) 根據(jù)進(jìn)程占有CPU時(shí)間的長(zhǎng)短來決定。一個(gè)進(jìn)程占有處理機(jī)時(shí)間越長(zhǎng),則在被阻塞后再次獲得調(diào)度的優(yōu)先級(jí)越低,反之,獲得調(diào)度的可能性越大(2) 根據(jù)就緒進(jìn)程等待CPU的時(shí)間長(zhǎng)短來決定。一個(gè)就緒進(jìn)程在就緒隊(duì)列中等待的時(shí)間越長(zhǎng),則它獲得調(diào)度選中的優(yōu)先級(jí)就越高。最短作業(yè)優(yōu)先法SJF(作業(yè)調(diào)度)選
46、擇那些估計(jì)需要執(zhí)行時(shí)間最短的作業(yè)投入執(zhí)行,為它們創(chuàng)建進(jìn)程和分配資源。優(yōu)點(diǎn):可使得系統(tǒng)在同一時(shí)間內(nèi)處理的作業(yè)個(gè)數(shù)最多,從而吞吐量也就大于其他調(diào)度方式。缺點(diǎn):對(duì)于一個(gè)不斷有作業(yè)進(jìn)入的批處理系統(tǒng)來說,最短作業(yè)優(yōu)先法有可能使得那些長(zhǎng)作業(yè)永遠(yuǎn)得不到調(diào)度執(zhí)行的機(jī)會(huì)。最高響應(yīng)比優(yōu)先法(作業(yè)調(diào)度)綜合平衡FCFS和SJF,既考慮等待時(shí)間長(zhǎng)的作業(yè),也照顧執(zhí)行時(shí)間短的作業(yè)。響應(yīng)比:R=(等待時(shí)間W+執(zhí)行時(shí)間T)/執(zhí)行時(shí)間T優(yōu)點(diǎn):長(zhǎng)作業(yè)有機(jī)會(huì)獲得調(diào)度執(zhí)行缺點(diǎn):同一時(shí)間內(nèi)處理的作業(yè)數(shù)少于最短作業(yè)優(yōu)先法,吞吐量也小于最短作業(yè)優(yōu)先法 調(diào)度前計(jì)算響應(yīng)比,系統(tǒng)開銷增加。算法評(píng)價(jià)FCFS算法 :作業(yè)到達(dá)率; :服務(wù)器(主機(jī))的
47、服務(wù)率;只有當(dāng)< 時(shí)系統(tǒng)才是穩(wěn)定的。n:系統(tǒng)中的平均作業(yè)個(gè)數(shù);R:系統(tǒng)響應(yīng)時(shí)間; : /,是系統(tǒng)中存在作業(yè)的概率,1-是系統(tǒng)中沒有作業(yè)的概率。 n= /(1-)Little結(jié)果:n=R;R=n/ FCFS算法的評(píng)價(jià): R=n/=/(1-)*1/RR算法q:時(shí)間片;k:每個(gè)進(jìn)程平均需要的時(shí)間片數(shù),即該進(jìn)程到達(dá)等待隊(duì)列的次數(shù);線性優(yōu)先級(jí)法的調(diào)度性能1/:平均服務(wù)時(shí)間,則:1/=k×qRR算法的評(píng)價(jià):已使用過k次時(shí)間片的進(jìn)程的響應(yīng)時(shí)間是:R(k)=/(1-) =1/(1-)=k×q/(1-)FCFS方式短作業(yè)駐留時(shí)間與長(zhǎng)作業(yè)相同,對(duì)短作業(yè)不利。輪轉(zhuǎn)法所需服務(wù)時(shí)間短的顧客響應(yīng)
48、時(shí)間將會(huì)小于所需服務(wù)時(shí)間長(zhǎng)的顧客響應(yīng)時(shí)間。實(shí)時(shí)調(diào)度算法分類:靜態(tài)表格驅(qū)動(dòng)類、靜態(tài)優(yōu)先級(jí)驅(qū)動(dòng)搶先式調(diào)度算法類、動(dòng)態(tài)計(jì)劃調(diào)度算法類、盡力而為調(diào)度算法類。具有代表性的實(shí)時(shí)調(diào)度算法時(shí)限式調(diào)度法(靜態(tài)表格驅(qū)動(dòng)類代表):是一種以滿足用戶要求時(shí)限為調(diào)度原則的算法。算法描述:時(shí)限有兩種:處理開始時(shí)限和處理結(jié)束時(shí)限,在實(shí)際中可以使用任一種時(shí)限。頻率單調(diào)調(diào)度(靜態(tài)優(yōu)先級(jí)驅(qū)動(dòng)搶先式調(diào)度算法類代表):是一種被廣泛用于多周期性實(shí)時(shí)處理的調(diào)度算法。其基本原理是頻率低(周期越長(zhǎng))的任務(wù)優(yōu)先級(jí)越低。第五章1.存儲(chǔ)器:能接收數(shù)據(jù)和保存數(shù)據(jù)、而且能根據(jù)命令提供這些數(shù)據(jù)的裝置。存儲(chǔ)器分成兩類:內(nèi)存儲(chǔ)器(簡(jiǎn)稱內(nèi)存、主存、物理存儲(chǔ)器)
49、外存儲(chǔ)器(簡(jiǎn)稱外存、輔助存儲(chǔ)器)虛擬存儲(chǔ)器:為用戶提供一種不受物理存儲(chǔ)器結(jié)構(gòu)和容量限制的存儲(chǔ)器的技術(shù)稱為虛擬存儲(chǔ)器,或稱虛擬存儲(chǔ)技術(shù)。虛擬存儲(chǔ)器需要大容量的外存儲(chǔ)器的支持,或稱物資基礎(chǔ)。程序地址:用戶編程序時(shí)所用的地址(或稱邏輯地址 、虛地址 ),基本單位可與內(nèi)存的基本單位相同,也可以不相同。程序地址空間(邏輯地址空間、虛地址空間):用戶的程序地址的集合稱為邏輯地址空間,它的編址總是從0開始的,可以是一維線性空間,也可以是多維空間。物理地址:把內(nèi)存分成若干個(gè)大小相等的存儲(chǔ)單元,每個(gè)單元給一個(gè)編號(hào),這個(gè)編號(hào)稱為內(nèi)存地址(物理地址、絕對(duì)地址、實(shí)地址),存儲(chǔ)單元占8位,稱作字節(jié)(byte)。物理地址
50、空間:物理地址的集合稱為物理地址空間(主存地址空間),它是一個(gè)一維的線性空間。安排進(jìn)程的地址方法:(1) 按照物理存儲(chǔ)器中的位置賦予實(shí)際物理地址。好處:CPU執(zhí)行目標(biāo)代碼時(shí)的執(zhí)行速度高。壞處:由于物理存儲(chǔ)器的容量限制,能裝入內(nèi)存并發(fā)執(zhí)行的進(jìn)程數(shù)將會(huì)大大減少,對(duì)于某些較大的進(jìn)程來說,當(dāng)其所要求的總內(nèi)存容量超過內(nèi)存容量時(shí)將會(huì)無法執(zhí)行;由于編譯程序必須知道內(nèi)存的當(dāng)前空閑部分及其地址,并且把一個(gè)進(jìn)程的不同程序段連續(xù)的存放起來,因此編譯程序?qū)⒎浅?fù)雜。(2) 編譯鏈接程序把用戶源程序編譯后鏈接到一個(gè)以0地址為始地址的線性或多維虛擬地址空間。2.存儲(chǔ)管理功能:地址映射 將程序地址空間中使用的邏輯地址變換成
51、主存中的地址的過程主存分配 按照一定的算法把某一空閑的主存區(qū)分配給作業(yè)或進(jìn)程。存儲(chǔ)保護(hù) 保證用戶程序(或進(jìn)程映象)在各自的存儲(chǔ)區(qū)域內(nèi)操作,互不干擾。提供虛擬存儲(chǔ)技術(shù) 使用戶程序的大小和結(jié)構(gòu)不受主存容量和結(jié)構(gòu)的限制,即使在用戶程序比實(shí)際主存容量還要大的情況下,程序也能正確運(yùn)行實(shí)現(xiàn)地址映射有三種方式:.編程或編譯時(shí)確定地址映射關(guān)系.靜態(tài)地址映射.動(dòng)態(tài)地址映射(1)編程或編譯時(shí)確定地址映射關(guān)系編程時(shí)確定虛實(shí)地址的關(guān)系是指在用機(jī)器指令編程時(shí),程序員直接按物理內(nèi)存地址編程,這種程序在系統(tǒng)中是不能做任何移動(dòng)的,否則就會(huì)出錯(cuò)。(2)靜態(tài)地址映射靜態(tài)地址映射是在程序裝入內(nèi)存時(shí)完成從邏輯地址到物理地址的轉(zhuǎn)換的。
52、在一些早期的系統(tǒng)中都有一個(gè)裝入程序(加載程序),它負(fù)責(zé)將用戶程序裝入系統(tǒng),并將用戶程序中使用的訪問內(nèi)存的邏輯地址轉(zhuǎn)換成物理地址。優(yōu)點(diǎn):實(shí)現(xiàn)簡(jiǎn)單,不要硬件的支持。缺點(diǎn):程序一旦裝入內(nèi)存,移動(dòng)就比較困難。有時(shí)間上的浪費(fèi)。在程序裝入內(nèi)存時(shí)要將所有訪問內(nèi)存的地址轉(zhuǎn)換成物理地址。必須占用連續(xù)的內(nèi)存空間,很難做到程序和數(shù)據(jù)的共享。(3)動(dòng)態(tài)地址映射動(dòng)態(tài)地址映射是在程序執(zhí)行時(shí)由系統(tǒng)硬件完成從邏輯地址到物理地址的轉(zhuǎn)換的。動(dòng)態(tài)地址映射是由硬件地執(zhí)行時(shí)完成的,程序中不執(zhí)行的程序就不做地址映射的工作,這樣節(jié)省了CPU的時(shí)間 。 重定位寄存器的內(nèi)容由操作系統(tǒng)用特權(quán)指令來設(shè)置,比較靈活。實(shí)現(xiàn)動(dòng)態(tài)地址映射必須有硬件的支持
53、,并有一定的執(zhí)行時(shí)間延遲。現(xiàn)代計(jì)算機(jī)系統(tǒng)中都采用動(dòng)態(tài)地址映射技術(shù)。優(yōu)點(diǎn):可以對(duì)內(nèi)存進(jìn)行非連續(xù)分配,動(dòng)態(tài)重定位提供了實(shí)現(xiàn)虛擬存儲(chǔ)器的基礎(chǔ),有利于程序段的共享。動(dòng)態(tài)地址映射技術(shù)能滿足以下目標(biāo):(1)具有給一個(gè)用戶程序任意分配內(nèi)存區(qū)的能力;(2)可實(shí)現(xiàn)虛擬存儲(chǔ);(3)具有重新分配的能力(4)對(duì)于一個(gè)用戶程序,可以分配到多個(gè)不同的存儲(chǔ)區(qū)3.內(nèi)外存數(shù)據(jù)傳輸?shù)目刂埔獙?shí)現(xiàn)內(nèi)存擴(kuò)充,在程序執(zhí)行過程中,內(nèi)存和外存之間必須經(jīng)常地交換數(shù)據(jù)。內(nèi)外存的數(shù)據(jù)流動(dòng)控制方法有兩種一種是用戶自己控制程序,例子:覆蓋技術(shù),一種早期的主存擴(kuò)充技術(shù),要求用戶了解程序結(jié)構(gòu),指定各程序段調(diào)入內(nèi)存的先后次序。另一種是操作系統(tǒng)控制,A交換方
54、式:操作系統(tǒng)把等待狀態(tài)的進(jìn)程換出內(nèi)存,而把等待事件已發(fā)生,處于就緒態(tài)的進(jìn)程換入內(nèi)存。B請(qǐng)求調(diào)入方式和預(yù)調(diào)入方式:請(qǐng)求調(diào)入方式:在程序執(zhí)行時(shí),如果所要訪問的程序段或數(shù)據(jù)段不在內(nèi)存中,則操作系統(tǒng)自動(dòng)地從外存將有關(guān)程序段和數(shù)據(jù)段調(diào)入內(nèi)存地一種操作系統(tǒng)控制方式。預(yù)調(diào)入方式:系統(tǒng)預(yù)測(cè)在不遠(yuǎn)的將來會(huì)訪問到的哪些程序段和數(shù)據(jù)段,并在它們?cè)L問前調(diào)入。4.內(nèi)存的分配和回收在多道程序設(shè)計(jì)的環(huán)境中,內(nèi)存分配的功能包括:制定分配策略、構(gòu)造分配用的數(shù)據(jù)結(jié)構(gòu)、響應(yīng)系統(tǒng)的內(nèi)存分配的請(qǐng)求和回收系統(tǒng)釋放的內(nèi)存區(qū)。內(nèi)存管理策略有5種:(1)分配結(jié)構(gòu) 登記內(nèi)存使用情況,供分配程序使用的表格和鏈表。(2)放置策略 確定調(diào)入內(nèi)存的程序
55、和數(shù)據(jù)在內(nèi)存中的位置。決定內(nèi)存中放置信息的區(qū)域(或位置),即如何在若干個(gè)空閑區(qū)中選擇一個(gè)或幾個(gè)空閑區(qū)的原則;(3)交換策略 當(dāng)內(nèi)存不足時(shí),決定將某些信息調(diào)出內(nèi)存的策略 。(4)調(diào)入策略 外存中的程序段和數(shù)據(jù)段什么時(shí)間按照什么樣的控制方式進(jìn)入內(nèi)存(5)回收策略 回收的時(shí)機(jī),對(duì)所回收的內(nèi)存空閑區(qū)和已存在的內(nèi)存空閑區(qū)的整理。 5.內(nèi)存信息的共享與保護(hù)常用的存儲(chǔ)保護(hù)有三種。硬件法、軟件法、軟硬件結(jié)合(1)上下界保護(hù)(常用的硬件保護(hù)法)上界寄存器 存放程序裝入內(nèi)存后的開始地址(首址)下界寄存器 存放程序裝入內(nèi)存后的末地址判別式:上界寄存器 物理地址下界寄存器(2)保護(hù)鍵法:為每一個(gè)被保護(hù)存儲(chǔ)塊分配一個(gè)單獨(dú)的保護(hù)鍵
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 樣本土地征用協(xié)議書示范
- 大學(xué)生畢業(yè)實(shí)習(xí)就業(yè)協(xié)議書模板
- 2024年商鋪房屋買賣合同范本
- 新型連鎖商品供貸合同書
- 建筑項(xiàng)目承包合同模版
- 產(chǎn)品責(zé)任保險(xiǎn)合同條款全新解讀
- 擋土墻工程設(shè)計(jì)施工總包合同
- 房屋建造安全協(xié)議
- 試用期勞動(dòng)合同維權(quán)寶典
- 快遞承包合同的格式與內(nèi)容
- 組態(tài)王與MySQL數(shù)據(jù)庫(kù)連接配置教程-20190807
- 《AP統(tǒng)計(jì)學(xué)講義》課件
- 一 《展示國(guó)家工程 了解工匠貢獻(xiàn)》(教學(xué)設(shè)計(jì))-【中職專用】高二語(yǔ)文精講課堂(高教版2023·職業(yè)模塊)
- 服裝設(shè)計(jì)與工藝專業(yè)調(diào)研報(bào)告
- 血糖儀市場(chǎng)推廣活動(dòng)方案
- 《機(jī)械基礎(chǔ)(第七版)》期末考試復(fù)習(xí)題庫(kù)(含答案)
- 兒童脛腓骨骨折課件
- 2018年全國(guó)統(tǒng)一施工機(jī)械臺(tái)班費(fèi)用定額
- 公路工程安全風(fēng)險(xiǎn)辨識(shí)與防控手冊(cè)
- 2023纖維復(fù)合材料修復(fù)加固邊坡支擋結(jié)構(gòu)技術(shù)規(guī)程
- NET Core 底層入門(完整版)
評(píng)論
0/150
提交評(píng)論