操作系統(tǒng)知識(shí)點(diǎn)整理_第1頁
操作系統(tǒng)知識(shí)點(diǎn)整理_第2頁
操作系統(tǒng)知識(shí)點(diǎn)整理_第3頁
操作系統(tǒng)知識(shí)點(diǎn)整理_第4頁
操作系統(tǒng)知識(shí)點(diǎn)整理_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第一章操作系統(tǒng)概述1)一個(gè)完整的計(jì)算機(jī)系統(tǒng)是由硬件系統(tǒng)和軟件系統(tǒng)兩大部分組成2)計(jì)算機(jī)軟件是指程序和與程序相關(guān)的文檔的集合3)按功能可把軟件分為“系統(tǒng)軟件”和“應(yīng)用軟件”兩部分系統(tǒng)軟件:操作系統(tǒng)語言處理程序,數(shù)據(jù)庫(kù)管理系統(tǒng) 應(yīng)用軟件:各種管理軟件,用于工程計(jì)算的軟件包,輔助設(shè)計(jì)軟件4)通常把未配置任何軟件的計(jì)算機(jī)稱為“裸機(jī)”5)操作系統(tǒng)可以被看作是計(jì)算機(jī)系統(tǒng)的核心,統(tǒng)管整個(gè)系統(tǒng)資源,制定各種資源的分 配策略,調(diào)度系統(tǒng)中運(yùn)行的用戶程序,協(xié)調(diào)它們對(duì)資源的需求,從而使整個(gè)系統(tǒng)在高效、有 序的環(huán)境里工作。6)發(fā)展的動(dòng)力:(1)提高計(jì)算機(jī)資源的利用率的需要(2)方便用戶使用計(jì)算機(jī)的需要(3)硬件技術(shù)不斷

2、發(fā)展的需要(4)計(jì)算機(jī)體系結(jié)構(gòu)發(fā)展的需要7)操作系統(tǒng)是在“裸機(jī)”上加載的第一層軟件,是對(duì)計(jì)算機(jī)硬件系統(tǒng)功能的首次擴(kuò)充8)操作系統(tǒng)的定義:以及操作系統(tǒng)是控制和管理計(jì)算機(jī)硬件和軟件資源,合理地組織計(jì)算機(jī)工作流程,方便用戶使用計(jì)算機(jī)的一個(gè)大型程序9)操作系統(tǒng)的功能:處理機(jī)管理:進(jìn)程控制,進(jìn)程同步,進(jìn)程通信、調(diào)度、實(shí)施CPU分配存儲(chǔ)器管理:內(nèi)存分配,內(nèi)存保護(hù),地址映射,內(nèi)存擴(kuò)充設(shè)備管理:緩沖管理,設(shè)備分配,設(shè)備管理 文件管理:存儲(chǔ)空間管理,目錄管理,讀寫管理和保護(hù) 與用戶有關(guān)的接口:用戶接口,程序接口,人機(jī)交互10)操作系統(tǒng)另一種定義:操作系統(tǒng)是一組能有效地組織和管理計(jì)算機(jī)硬件和軟件資 源,合理地對(duì)各

3、類作業(yè)進(jìn)行調(diào)度,以及方便用戶使用的程序的集合操作系統(tǒng)的種類:1)單道批處理系統(tǒng)特點(diǎn):?jiǎn)温沸?、?dú)占性、自動(dòng)性、封閉性、順序性缺點(diǎn):系統(tǒng)的資源得不到充分的利用2)多道批處理系統(tǒng)特點(diǎn):多路性、共享性、自動(dòng)型、封閉性、無序性、調(diào)度性好處:提高CPU的利用率提高內(nèi)存和I/O設(shè)備的利用率增加系統(tǒng)吞吐量缺點(diǎn):平均周轉(zhuǎn)時(shí)間長(zhǎng),無交互能力3)分時(shí)系統(tǒng)分時(shí)系統(tǒng)是指在一臺(tái)主機(jī)上連接了多個(gè)配有顯示器和鍵盤的終端,由此所組成的系統(tǒng),該系統(tǒng)允許多個(gè)用戶同時(shí)通過自己的終端,以交互方式使用計(jì)算機(jī),共享主機(jī)中的資源。采用了 “時(shí)間片輪轉(zhuǎn)”的處理機(jī)調(diào)度策略4)實(shí)時(shí)系統(tǒng)實(shí)時(shí)系統(tǒng)是指系統(tǒng)能及時(shí)響應(yīng)外部事件的請(qǐng)求,在規(guī)定的時(shí)間內(nèi)完成對(duì)

4、該事件的處理,并控制所有實(shí)時(shí)任務(wù)協(xié)調(diào)一致地運(yùn)行第二章處理機(jī)管理1)進(jìn)程是指在系統(tǒng)中能獨(dú)立運(yùn)行并作為資源分配的基本單位,它是由一組機(jī)器指令,數(shù)據(jù)和堆棧等組成的,是一個(gè)能獨(dú)立運(yùn)行的活動(dòng)實(shí)體,多個(gè)進(jìn)程可以并發(fā)執(zhí)行和交換信息2)程序是一個(gè)在時(shí)間上嚴(yán)格有序的指令集合3)在單道程序設(shè)計(jì)下,系統(tǒng)具有的特點(diǎn)a. 資源的獨(dú)占性b. 執(zhí)行的順序性c. 結(jié)果的再現(xiàn)性在多道程序設(shè)計(jì)環(huán)境下,系統(tǒng)具有:a. 執(zhí)行的并發(fā)性b. 相互的制約性c. 狀態(tài)的多變性(不可再現(xiàn)性)5)并發(fā)、并行、串行a. 從宏觀上看是并行,同時(shí)在內(nèi)存的多個(gè)程序都在執(zhí)行著,互不影響b. 從微觀上看是串行,由于CPU在任何時(shí)刻只能執(zhí)行一個(gè)程序,因此這些

5、程序輪流占用CPU交替執(zhí)行著c. 我們把“邏輯上相互獨(dú)立的程序,在執(zhí)行時(shí)間上相互重疊,一個(gè)程序的執(zhí) 行還沒有結(jié)束,另一個(gè)程序的執(zhí)行已經(jīng)開始”的這種特性稱為程序執(zhí)行的 并發(fā)性6)對(duì)進(jìn)程的描述a. 進(jìn)程是程序的一次執(zhí)行過程b. 進(jìn)程的運(yùn)行活動(dòng)是建立在某個(gè)數(shù)據(jù)集合上的c. 進(jìn)程是在獲得資源的基礎(chǔ)上從事自己的運(yùn)行活動(dòng)7)進(jìn)程的特征結(jié)構(gòu)特征、動(dòng)態(tài)性、并發(fā)性、獨(dú)立性、異步性進(jìn)程是一個(gè)動(dòng)態(tài)的概念不同進(jìn)程可以執(zhí)行同一個(gè)程序每一個(gè)進(jìn)程都有自己的生命周期進(jìn)程之間具有并發(fā)性,進(jìn)程間會(huì)相互制約8)程序和進(jìn)程的區(qū)別a. 程序是指令的有序集合,是靜態(tài)的,進(jìn)程是程序在處理機(jī)上的一次執(zhí)行過程,是動(dòng)態(tài)的。程序的存在時(shí)永久的,而

6、進(jìn)程是有生命周期的,它因創(chuàng)建而產(chǎn)生,因調(diào)度而運(yùn)行,因撤銷而消亡b. 進(jìn)程是程序的一次執(zhí)行過程,程序是進(jìn)程賴以存在的基礎(chǔ)c. 進(jìn)程具有并發(fā)性,而程序并發(fā)執(zhí)行會(huì)失去可再現(xiàn)性d. 進(jìn)程是系統(tǒng)分配和調(diào)度的獨(dú)立單位,進(jìn)程由程序、數(shù)據(jù)集合和進(jìn)程控制塊組成9)系統(tǒng)進(jìn)程的使用級(jí)別高于用戶進(jìn)程10)進(jìn)程的狀態(tài)創(chuàng)建、就緒、運(yùn)行、阻塞進(jìn)畏狀奇轉(zhuǎn)換閏;刨建a. 一個(gè)進(jìn)程從運(yùn)行狀態(tài)變?yōu)榫途w狀態(tài),一定會(huì)引起另一個(gè)進(jìn)程從就緒變?yōu)檫\(yùn) 行b. 一個(gè)進(jìn)程從運(yùn)行狀態(tài)變?yōu)樽枞麪顟B(tài),一定會(huì)引起另一個(gè)進(jìn)程從運(yùn)行狀態(tài)變?yōu)榫途w狀態(tài);這種因果變遷絕對(duì)不可能發(fā)生,因?yàn)橐粋€(gè)CPU不可能真正同時(shí)運(yùn)行兩個(gè)進(jìn)程c. 一個(gè)進(jìn)程從阻塞狀態(tài)變?yōu)榫途w狀態(tài),不一

7、定會(huì)引起另一個(gè)進(jìn)程從就緒狀態(tài)變?yōu)檫\(yùn)行狀態(tài)11)進(jìn)程的三個(gè)組成部分:程序、數(shù)據(jù)集合、進(jìn)程控制塊( PCB12)進(jìn)程控制塊是進(jìn)程存在的唯一標(biāo)示a. 作用:通過PCB是原來不能獨(dú)立運(yùn)行的程序,成為一個(gè)可以獨(dú)立運(yùn)行的 基本單位,一個(gè)能夠并發(fā)執(zhí)行的進(jìn)程b. 其中的信息:進(jìn)程標(biāo)識(shí)符、處理機(jī)狀態(tài)、進(jìn)程調(diào)度信息、進(jìn)程控制信息13)操作系統(tǒng)中把做出“決定把CPU分配給誰用”的程序稱為“進(jìn)程調(diào)度程序”14)常用的進(jìn)程調(diào)度算法:a. 先來先服務(wù)調(diào)度算法b. 時(shí)間片輪轉(zhuǎn)調(diào)度算法:為就緒隊(duì)列中的每一個(gè)進(jìn)程分配一個(gè)稱為“時(shí)間片”的時(shí)間段,它是允許該進(jìn)程占用CPU的最長(zhǎng)時(shí)間長(zhǎng)度c. 優(yōu)先數(shù)調(diào)度算法:優(yōu)先數(shù)高的先調(diào)度,若相同

8、則先來先服務(wù)d. 多級(jí)隊(duì)列調(diào)度算法:時(shí)間片調(diào)度和優(yōu)先數(shù)調(diào)度算法的結(jié)合15)進(jìn)程調(diào)度程序的主要功能a. 記錄系統(tǒng)中所有進(jìn)程的有關(guān)情況,比如進(jìn)程的當(dāng)前狀態(tài),優(yōu)先數(shù)等b. 確定分配處理機(jī)的算法c. 完成處理機(jī)的分配d. 完成處理機(jī)的回收16)把處理劑分配給進(jìn)程后,還有一個(gè)允許它占用多長(zhǎng)時(shí)間的問題,有兩種處理方式,一種是不可剝奪方式,另一種是剝奪方式17)為了對(duì)進(jìn)程進(jìn)行有效的管理和控制,操作系統(tǒng)要提供若干基本的操作以便能創(chuàng)建進(jìn)程、撤銷進(jìn)程、阻塞進(jìn)程、喚醒進(jìn)程,把具有這種特性的程序稱為“原語”, 原語的不可分割性,通常利用屏蔽中斷的方法18)程序接口:操作系統(tǒng)在程序一級(jí)給予用戶的支持命令接口:操作系統(tǒng)在

9、控制一級(jí)給予用戶的支持19)CPU旨令系統(tǒng)中的指令分為兩類a. 操作系統(tǒng)和用戶都能使用的指令,非特權(quán)指令b. 只能由操作系統(tǒng)使用的指令,特權(quán)指令20)CPU的兩種工作狀態(tài):管態(tài)、目態(tài)a. 當(dāng)CPU處于管態(tài)時(shí),可以執(zhí)行包括特權(quán)指令在內(nèi)的一切機(jī)器指令b. 當(dāng)CPU處于目態(tài)時(shí),禁止使用特權(quán)指令21)訪管指令系統(tǒng)調(diào)用命令的程序?qū)儆诓僮飨到y(tǒng),它應(yīng)該在管態(tài)下執(zhí)行用戶程序只有通過計(jì)算機(jī)系統(tǒng)提供的訪管指令才能實(shí)現(xiàn)由目態(tài)轉(zhuǎn)為管態(tài),進(jìn)而調(diào)用這些功能程序的目的訪管指令屬于非特權(quán)指令,功能是執(zhí)行它就會(huì)產(chǎn)生一個(gè)軟中斷,促使中央處理機(jī)由目態(tài)轉(zhuǎn)為管態(tài),進(jìn)入操作系統(tǒng)并處理該中斷22)從功能上看,可以把系統(tǒng)調(diào)用命令分為五大類:

10、a.是關(guān)于進(jìn)程管理和控制的b. 二是關(guān)于外部設(shè)備輸入/輸出的c. 三是關(guān)于磁盤文件管理的d. 四是關(guān)于訪問系統(tǒng)信息的e. 五是關(guān)于存儲(chǔ)申請(qǐng)與釋放的23)從形式上看,操作系統(tǒng)提供的系統(tǒng)調(diào)用與一般的過程調(diào)用(子程序調(diào)用)相似,但它們有著明顯的區(qū)別作業(yè)管理:1)把一個(gè)作業(yè)提交給系統(tǒng)時(shí),系統(tǒng)要開辟一個(gè)作業(yè)控制塊JCB,以便隨時(shí)記錄作業(yè)的信息2)被系統(tǒng)接納的作業(yè), 在沒有投入運(yùn)行之前,稱為后備作業(yè)。這些作業(yè)存放在輔助存儲(chǔ)器中,并由他們的 JCB連接在一起,形成所謂的后備作業(yè)隊(duì)列3)作業(yè)調(diào)度:按照某種規(guī)則,從后備作業(yè)隊(duì)列中挑選作業(yè)進(jìn)入內(nèi)存,參與處理機(jī)的競(jìng)爭(zhēng),這個(gè)過程稱為作業(yè)調(diào)度4)作業(yè)的狀態(tài):a. 提交狀

11、態(tài):進(jìn)入輔助存儲(chǔ)器,作業(yè)的信息還沒有全部進(jìn)入系統(tǒng),系統(tǒng)也沒有為它建立JCB感知不到它的存在b. 后備狀態(tài):建立起了 JCB,并將JCB排到后備作業(yè)隊(duì)列中c. 運(yùn)行狀態(tài):(阻塞、運(yùn)行、就緒)都屬于運(yùn)行狀態(tài)d. 完成狀態(tài):也是一個(gè)暫時(shí)性的狀態(tài)5)作業(yè)的調(diào)度算法:a. 先來先服務(wù):以作業(yè)進(jìn)入后備作業(yè)隊(duì)列的先后次序周轉(zhuǎn)時(shí)間=完成時(shí)間-到達(dá)時(shí)間注:若分配一定的內(nèi)存,且不允許作業(yè)在內(nèi)存中移動(dòng)時(shí),要考慮所占內(nèi)存大小b. 短作業(yè)優(yōu)先:從后備作業(yè)隊(duì)列中挑選所需 CPU時(shí)間最少且資源能夠得到滿足的作業(yè)注:如果所有作業(yè)“同時(shí)”到達(dá)后備作業(yè)隊(duì)列,那么采用短作業(yè)優(yōu)先的作業(yè)調(diào)度算法總會(huì)獲得最小的平均周轉(zhuǎn)時(shí)間c. 響應(yīng)比高

12、著優(yōu)先:先調(diào)度響應(yīng)比高著響應(yīng)比=已等待時(shí)間/所需CPU寸間6)在確定作業(yè)調(diào)度算法時(shí)應(yīng)注意的問題:a. 公平對(duì)待后備作業(yè)隊(duì)列中的每一個(gè)作業(yè),避免無故或無限期的延遲一個(gè)作業(yè)的執(zhí)行,使各類用戶感到滿意b. 使進(jìn)入內(nèi)存的多個(gè)作業(yè),能均衡地使用系統(tǒng)中的資源,避免出現(xiàn)有的資源沒有作業(yè)使用,有的資源卻被多個(gè)作業(yè)爭(zhēng)搶的“忙閑”不均的情況c. 力爭(zhēng)在單位時(shí)間內(nèi)為盡可能多的作業(yè)提供服務(wù),提高整個(gè)系統(tǒng)的吞吐能力第三章存儲(chǔ)管理1)計(jì)算機(jī)操作系統(tǒng)的存儲(chǔ)器:CPU寄存器,主存,輔存2)在考慮計(jì)算機(jī)存儲(chǔ)器的設(shè)計(jì)時(shí),必須顧及a. 價(jià)格、容量、訪問時(shí)間b. 存取時(shí)間越快,價(jià)格越高,容量越小3)高速緩存:介于寄存器和存儲(chǔ)器之間的

13、存儲(chǔ)器,主要用于備份主存中較常用的數(shù)據(jù),以減少處理機(jī)對(duì)主存儲(chǔ)器的訪問次數(shù),提高程序執(zhí)行速度高速緩存容量遠(yuǎn)大于寄存器,比內(nèi)存約小兩到三個(gè)數(shù)量級(jí)左右為了緩和內(nèi)存與處理機(jī)(CPU速度的不匹配4)字(字長(zhǎng)):一次傳送數(shù)據(jù)的長(zhǎng)度16、32、64-依系統(tǒng)而定(主)內(nèi)存儲(chǔ)器和高速緩存之間是以“塊”為單位傳遞數(shù)據(jù)的高速緩存與CPU之間則以“字”為單位傳遞數(shù)據(jù)5)存儲(chǔ)器管理的功能:a. 內(nèi)存的分配與回收b. 存儲(chǔ)的保護(hù)和共享c. 地址定位d. 存儲(chǔ)擴(kuò)充6)內(nèi)存儲(chǔ)器由一個(gè)個(gè)存儲(chǔ)單元組成,一個(gè)存儲(chǔ)單元可存放若干個(gè)二進(jìn)制的位(bit ) , 8個(gè)二進(jìn)制位被稱為一個(gè)字節(jié)(byte )7)在操作系統(tǒng)中,把用戶程序指令中的

14、相對(duì)地址變?yōu)樗诮^對(duì)地址空間中的絕對(duì)地址的這個(gè)過程,稱為地址重定位8)地址的定位方式:a. 絕對(duì)定位方式:是在程序裝入內(nèi)存之前,程序指令中的地址就已經(jīng)是絕對(duì)地址,已經(jīng)正確地反映了它將要進(jìn)入的存儲(chǔ)區(qū)的位置,不適用于多道程序設(shè)計(jì)環(huán)境b. 靜態(tài)重定位(多道程序環(huán)境下)根據(jù)內(nèi)存的具體情況將裝入模塊裝入到內(nèi)存的適當(dāng)位置,會(huì)使裝入模塊中的所有邏輯地址與實(shí)際裝入內(nèi)存后的物理地址不同。這種地址重定位是在程序執(zhí)行前完成的c. 動(dòng)態(tài)重定位將地址重定位的時(shí)間推遲到程序執(zhí)行時(shí)再進(jìn)行所以裝入內(nèi)存的所有地址都仍是邏輯地址連續(xù)分配存儲(chǔ)方式 :1)單一連續(xù)分配(靜態(tài)重定位)a. 單道程序環(huán)境下,總體上把內(nèi)存儲(chǔ)器分為兩個(gè)分區(qū):

15、系統(tǒng)區(qū)和用戶區(qū)b. 系統(tǒng)總是把整個(gè)用戶區(qū)分配給一個(gè)用戶使用,把分配給了用戶但未被使用的區(qū)域稱為內(nèi)部碎片”c. 單一連續(xù)分區(qū)存儲(chǔ)管理的缺點(diǎn):a)由于每次只能有一個(gè)進(jìn)入內(nèi)存,故它不適用于多道程序設(shè)計(jì),工作效 率不高,資源利用率低b)只要作業(yè)比用戶區(qū)小,在用戶區(qū)里就會(huì)形成碎片,造成資源浪費(fèi)c)大作業(yè)無法在小內(nèi)存中運(yùn)行d. 為緩解大作業(yè)小內(nèi)存的情況提出覆蓋技術(shù)和對(duì)換技術(shù)a)覆蓋技術(shù):允許一個(gè)作業(yè)的若干個(gè)程序段使用同一個(gè)存儲(chǔ)區(qū)b)對(duì)換技術(shù):以輔助存儲(chǔ)器作為內(nèi)存的后援(硬盤)2)固定分區(qū)存儲(chǔ)管理(靜態(tài)):分區(qū)數(shù)目、大小固定a. 預(yù)先把內(nèi)存儲(chǔ)器中可供分配的用戶區(qū)劃分成若干個(gè)連續(xù)分區(qū),每個(gè)分區(qū)的尺寸可以相同,

16、可以不同。每個(gè)分區(qū)中只允許裝入一個(gè)作業(yè)運(yùn)行, 系統(tǒng)可 以為每一個(gè)分區(qū)設(shè)置一個(gè)后備作業(yè)隊(duì)列, 一個(gè)作業(yè)到達(dá)時(shí),總是進(jìn)入到“能 容納該作業(yè)的最小分區(qū)”的那個(gè)后備隊(duì)列中去排隊(duì)b. 分區(qū)的分配與釋放方案:a)在隊(duì)列中挑選出第一個(gè)可容納的作業(yè)進(jìn)入i. 優(yōu)點(diǎn):選擇效率高ii. 缺點(diǎn):小作業(yè)- 大內(nèi)存b)在這個(gè)隊(duì)列中進(jìn)行搜索,找到這個(gè)分區(qū)能夠容納的最大的那個(gè)作業(yè), 讓它進(jìn)入運(yùn)行i. 優(yōu)點(diǎn):存儲(chǔ)空間利用率高,產(chǎn)生內(nèi)部碎片盡可能的小ii. 缺點(diǎn):選擇效率低c)在系統(tǒng)中至少保留一個(gè)小的分區(qū),以避免因?yàn)檫\(yùn)行小作業(yè)而被迫分配 打分去的發(fā)生d)為具體管理各個(gè)分區(qū),并建立一個(gè)“分區(qū)分配表”,其中包括每個(gè)分區(qū)的起始位置大小

17、及狀態(tài)c. 特點(diǎn)a)它是最簡(jiǎn)單的,具有“多道”色彩的存儲(chǔ)管理方案,提高資源利用率b)當(dāng)把一個(gè)分區(qū)分配給某個(gè)作業(yè)時(shí),該作業(yè)的程序?qū)⒁淮涡缘娜垦b入 到分配給他的連續(xù)分區(qū)里c)靜態(tài)重定位,在分區(qū)內(nèi)的程序不能隨意移動(dòng)d. 缺點(diǎn)a)進(jìn)入分區(qū)的作業(yè)尺寸不見得與分區(qū)的長(zhǎng)度相吻合,勢(shì)必產(chǎn)生內(nèi)部碎片,引起資源的浪費(fèi)b)如果到達(dá)作業(yè)的尺寸比任何一個(gè)分區(qū)的長(zhǎng)度都大,它就無法運(yùn)行3)可變分區(qū)存儲(chǔ)管理:分區(qū)的邊界劃分隨作業(yè)的需求可變,分區(qū)的數(shù)目隨著進(jìn)入作業(yè)的多少可變,消滅了內(nèi)部碎片(可能會(huì)產(chǎn)生內(nèi)部碎片)。外部碎片是指無法分配給用戶使用的存儲(chǔ)區(qū)a. 基本思想:在作業(yè)要求裝入內(nèi)存儲(chǔ)器時(shí),如果當(dāng)時(shí)內(nèi)存儲(chǔ)器中有足夠的存儲(chǔ)空間

18、滿足該作業(yè)的需求,就劃分出一個(gè)與作業(yè)相對(duì)地址空間同樣大小的分區(qū),并分配給它b. 要解決的問題c.d.e.f.a)采用一種新的地址重定位技術(shù),動(dòng)態(tài)地址重定位,以便程序能夠在內(nèi)存儲(chǔ)器中隨意移動(dòng),為空閑區(qū)的合并提供保證b)記住系統(tǒng)中各個(gè)分區(qū)的使用情況c)給出分區(qū)分配算法地址動(dòng)態(tài)重定位過程(在程序執(zhí)行時(shí)動(dòng)態(tài)完成)a)為實(shí)施地址動(dòng)態(tài)重定位, 硬件要增加一個(gè)地址轉(zhuǎn)換機(jī)構(gòu),這個(gè)機(jī)構(gòu)一般由地址轉(zhuǎn)換線路和一個(gè)定位寄存器(基址寄存器)組成b)地址的靜態(tài)重定位和動(dòng)態(tài)重定位的比較i. 地址轉(zhuǎn)換時(shí)刻:靜態(tài)重定位是在程序運(yùn)行之前完成地址轉(zhuǎn)換的,而動(dòng)態(tài)重定位是在程序執(zhí)行時(shí)完成ii. 誰來完成任務(wù):靜態(tài)重定位是由軟件完成地址

19、轉(zhuǎn)換工作的,而動(dòng)態(tài)重定位則是由一套硬件提供的地址轉(zhuǎn)換機(jī)構(gòu)來完成iii. 完成的形式:靜態(tài)重定位是在裝入時(shí)一次性集中地把程序指令中所有要轉(zhuǎn)換的地址加以轉(zhuǎn)換;而動(dòng)態(tài)重定位則是每執(zhí)行一條執(zhí)行 時(shí),就對(duì)其地址加以轉(zhuǎn)換iv. 完成的結(jié)果:實(shí)施靜態(tài)重定位,原來的指令地址部分被修改了,而動(dòng)態(tài)重定位只是按照所形成的地址去執(zhí)行這條指令,并不對(duì)指令本身做任何修改空閑區(qū)的合并分區(qū)的管理a)表格法:一張已分配表,一張空閑表(分區(qū)號(hào),分區(qū)大小,分區(qū)起始 地址、狀態(tài))b)單鏈表法:一個(gè)存放該分區(qū)的長(zhǎng)度, 另一個(gè)存放它下一個(gè)空閑分區(qū)的 起始地址c)雙鏈表法:還存放上一個(gè)空閑區(qū)起始地址空閑分區(qū)的分配算法a)最先適應(yīng)算法:要求

20、空閑分區(qū)鏈以地址遞增的次序鏈接(對(duì)大作業(yè)不利)b)最佳適應(yīng)算法:每次為作業(yè)分配內(nèi)存時(shí),總是把能滿足要求, 又是最小的空閑分區(qū)分配給作業(yè),避免“大材小用”按其容量C)最壞適應(yīng)算法:挑選一個(gè)最大的空閑區(qū), 從中分割一部分存儲(chǔ)空間給 作者使用,以至于存儲(chǔ)器中缺乏大的空閑分區(qū),照顧中小作業(yè)的需求d)循環(huán)首次適應(yīng)算法:從上次分配的位置之后開始查找g. 可變分區(qū)存儲(chǔ)管理的特點(diǎn)a)作業(yè)一次性的全部裝入到一個(gè)連續(xù)的存儲(chǔ)分區(qū)中b)分區(qū)是按照作業(yè)對(duì)存儲(chǔ)的需求劃分的,所以不會(huì)出現(xiàn)內(nèi)部碎片c)為了確保作業(yè)能夠在內(nèi)存中移動(dòng),要有硬件的支持,實(shí)行指令地址的動(dòng)態(tài)重定位h. 缺點(diǎn):a)仍然沒有解決小內(nèi)存裕興大作業(yè)的問題,只要

21、作業(yè)的存儲(chǔ)需求大于系統(tǒng)提供的整個(gè)用戶區(qū),該作業(yè)就無法投入運(yùn)行b)雖然避免了內(nèi)部碎片,但有可能出現(xiàn)極小的翻去暫時(shí)分配不出去的情 形,引起了外部碎片,c)為了形成大的分區(qū),可變分區(qū)存儲(chǔ)管理通過移動(dòng)程序來達(dá)到分區(qū)合并的目的,然而程序的移動(dòng)是很花費(fèi)時(shí)間的,增加了系統(tǒng)在這方面的投入與開銷4)分頁式存儲(chǔ)管理:需要兩次訪問內(nèi)存,目的是提高內(nèi)存利用率a. 分頁式儲(chǔ)存管理是將固定分區(qū)方法與動(dòng)態(tài)重定位技術(shù)結(jié)合在一起,需要硬件支持基本思想:首先把整個(gè)內(nèi)存儲(chǔ)器劃分成大小相等的許多分區(qū),每個(gè)分區(qū)稱為“一塊”b. 在分頁式存儲(chǔ)管理中,塊是存儲(chǔ)分配的單位a)用戶作業(yè)仍然是相對(duì)于“ 0 ”進(jìn)行編址,形成一個(gè)連續(xù)的相對(duì)地址空

22、間b)用戶程序相對(duì)地址空間中的每一個(gè)分區(qū)被稱為“頁”,用戶相對(duì)地址空間中的每一個(gè)相對(duì)地址,都可以用(頁號(hào),頁內(nèi)位移)這樣的數(shù)對(duì)來表示i. 物理地址 頊的大小*頁號(hào)+頁內(nèi)位移ii. 頁號(hào)=相對(duì)地址/塊尺寸iii. 頁內(nèi)位移=相對(duì)地址淋尺寸c. 頁與塊對(duì)應(yīng)關(guān)系表稱為頁表”a)快速寄存器組單獨(dú)起名為“相聯(lián)寄存器”,簡(jiǎn)稱“快表”b)快表與頁表聯(lián)合工作,先查找快表,若無再查找頁表并把數(shù)據(jù)寫入快表c)(訪問頁表時(shí)間+訪問一次內(nèi)存時(shí)間)*命中率+訪問快表時(shí)間*命中率 =平均內(nèi)存存取時(shí)間d)頁面尺寸大多選在 512byte到64kb之間d. 特點(diǎn):a)內(nèi)存儲(chǔ)器實(shí)現(xiàn)被劃分成相等尺寸的塊,它是進(jìn)行存儲(chǔ)分配的單元b

23、)用戶作業(yè)的相對(duì)地址空間按照塊的尺寸劃分成頁,這是在系統(tǒng)內(nèi)部進(jìn)行的,用戶感覺不到c)相對(duì)地址空間中的頁可以進(jìn)入內(nèi)存中的任何一個(gè)空閑塊,并且分頁式存儲(chǔ)管理實(shí)行的是動(dòng)態(tài)重定位,因此它打破了一個(gè)作業(yè)必須占據(jù)連續(xù) 的存儲(chǔ)空間的限制, 作業(yè)在不連續(xù)的存儲(chǔ)區(qū)里,也能夠得到正確的運(yùn)行e. 缺點(diǎn):a)平均每一個(gè)作業(yè)要浪費(fèi)半頁大小的存儲(chǔ)塊,會(huì)產(chǎn)生內(nèi)部碎片b)作業(yè)雖然可以不占據(jù)連續(xù)的存儲(chǔ)區(qū),但是每次仍然要求一次全部進(jìn)入內(nèi)存。因此,如果作業(yè)很大,其存儲(chǔ)需求大于內(nèi)存,仍然存在小內(nèi)存不能運(yùn)行大作業(yè)的問題5)分段式存儲(chǔ)管理:a. 目的:方便用戶使用編程,存儲(chǔ)共享,存儲(chǔ)保護(hù),動(dòng)態(tài)增長(zhǎng),動(dòng)態(tài)鏈接b. 要求用戶將自己的整個(gè)作業(yè)

24、程序以多個(gè)相互獨(dú)立的稱為“段”的地址空間提交給系統(tǒng),每個(gè)段都是一個(gè)從“0”開始的一維地址空間,長(zhǎng)度不一,操作系統(tǒng)按照段長(zhǎng)為作業(yè)分配內(nèi)存空間c. 段表:段號(hào)、段長(zhǎng)、該段在內(nèi)存的基址(起始地址)段號(hào),段內(nèi)位移a)物理地址=段的起始地址+ 段內(nèi)地址b)邏輯地址=段號(hào)+段內(nèi)地址d. 分段與分頁的區(qū)別:a)頁是信息的物理單位,段是信息的邏輯單位i. 分頁提高內(nèi)存的利用率,僅僅是系統(tǒng)管理上的需要,用戶不可見。段是信息的邏輯單位,它通常包括的是一組意義相對(duì)完整的信息,分段段的目的主要在于能更好地滿足用戶的需要b)頁的尺寸由系統(tǒng)決定,段的尺寸因段而異i. 段的長(zhǎng)度取決于用戶編寫的程序,通常由編譯程序在對(duì)源程序

25、進(jìn)行編譯時(shí)根據(jù)信息的性質(zhì)來劃分c)頁的地址空間是一維的,段的地址空間是二維的i. 分頁:用戶必須通過鏈接編輯程序,把各程序段鏈接成一個(gè)相對(duì)于0編址的線性空間,程序中是通過地址編號(hào)來確定空間中的位置的。因此用戶向系統(tǒng)提供的是一個(gè)一維的邏輯地址空間。ii. 分段:用戶不把各程序段鏈接成一個(gè)相對(duì)于0進(jìn)行編制的一維線性空間,各程序段之間是通過段號(hào),段內(nèi)位移進(jìn)行訪問的。因 此,用戶向系統(tǒng)提供的是一個(gè)二維的邏輯地址空間6)段頁式存儲(chǔ)管理:(三次訪問內(nèi)存)a. 基本原理:分段和分頁原理的結(jié)合,即先將用戶程序分成若干個(gè)段,再把每個(gè)段分成若干個(gè)頁,并為每一個(gè)段賦予一個(gè)段名。a)作業(yè)地址空間結(jié)構(gòu):主程序段,子程序

26、段,數(shù)據(jù)段b)地址結(jié)構(gòu):段號(hào),段內(nèi)頁號(hào),頁內(nèi)地址b. 系統(tǒng)設(shè)置了位示圖、段表和頁表,記錄主存的使用情況和作業(yè)分配情況a)邏輯地址=段號(hào)+頁號(hào)+頁內(nèi)位置b)塊號(hào)*塊長(zhǎng)+頁內(nèi)地址c. 虛擬存儲(chǔ)器:是具有請(qǐng)求調(diào)入功能和置換功能,能從邏輯上對(duì)內(nèi)存容量加以擴(kuò)充的一種存儲(chǔ)器系統(tǒng),其邏輯容量由內(nèi)存容量和外存容量之和所決定,其運(yùn)行速度接近于內(nèi)存速度。a)特征:多次性、對(duì)換性、虛擬性、離散性d. 請(qǐng)求分頁式存儲(chǔ)管理(需要硬件支持)a)是基于分頁式存儲(chǔ)管理的一種虛擬存儲(chǔ)器“請(qǐng)求分頁式”是指當(dāng)程序運(yùn)行中需要某一頁時(shí),再把它從輔助存儲(chǔ)器里調(diào)入內(nèi)存使用,解決了小內(nèi)存與大作業(yè)的矛盾,但會(huì)產(chǎn)生內(nèi)部碎片b)缺頁中斷是指在指令

27、執(zhí)行期間,若發(fā)現(xiàn)所要訪問的指令或數(shù)據(jù)不在內(nèi)存時(shí),便立即產(chǎn)生和處理缺頁中斷信號(hào),以便能及時(shí)將所缺之頁面調(diào)入內(nèi)存e. 缺頁中斷與一般中斷的區(qū)別缺頁中斷率=缺頁次數(shù)/頁面總數(shù)a)缺頁中斷是在執(zhí)行一條指令中間時(shí)產(chǎn)生的中斷,并立即去處理,一般中斷則是一條指令執(zhí)行完畢后,當(dāng)發(fā)現(xiàn)有中斷請(qǐng)求時(shí), 才去響應(yīng)和處理b)缺頁中斷處理完成后,仍返回到原指令去執(zhí)行,因?yàn)槟菞l指令并未執(zhí)行;而一般中斷則是到下一條指令去執(zhí)行,因?yàn)樯弦粭l指令已經(jīng)執(zhí)行完畢了f. 影響缺頁中斷次數(shù)的因素:a)分配給作業(yè)的內(nèi)存塊數(shù)b)頁面尺寸c)程序的實(shí)現(xiàn)7)頁面淘汰(置換)算法:頁面淘汰是由缺頁中斷引起的,但缺頁中斷不見得一定引起頁面淘汰a. 先

28、進(jìn)先出頁面淘汰(置換)算法(FIFO)淘汰最先進(jìn)入內(nèi)存的頁面(3個(gè)內(nèi)存塊都為空,3次缺頁中斷)b. 最近最久未用頁面淘汰(置換)算法( LRU總是把最長(zhǎng)時(shí)間未被訪問過的頁面淘汰出去(需要寄存器和棧)c. 最近最少用頁面淘汰(置換)算法( LFU總是把當(dāng)前使用的最少的頁面淘汰出去為每個(gè)內(nèi)存中的頁面設(shè)置一個(gè)計(jì)數(shù)器(移位寄存器)加1d. 最優(yōu)(最佳)頁面淘汰(置換)算法( OPT把以后不再使用的或最長(zhǎng)時(shí)間內(nèi)不會(huì)用到的頁面淘汰出去(理論上,不會(huì)實(shí)現(xiàn))注:對(duì)于FIFO頁面淘汰算法,有時(shí)增加分配給作業(yè)的可用內(nèi)存塊數(shù),它的缺頁次數(shù)反而上升,通常稱為異?,F(xiàn)象第四章設(shè)備管理1“設(shè)備”泛指計(jì)算機(jī)系統(tǒng)中的各種外部設(shè)

29、備,外設(shè)(即主機(jī)以外的其他所有設(shè)備)在眾多的I/O設(shè)備中,并不是所有的設(shè)備都是可以共享的,可以借助于磁盤,把只能獨(dú)享的設(shè)備變?yōu)楣蚕恚@就是所謂的“虛擬設(shè)備”SPOOLing技術(shù)2設(shè)備是指計(jì)算機(jī)中用以在機(jī)器之間進(jìn)行傳送和接收信息,完成用戶輸入/輸出(I/O )操作的那些部件。比如磁盤、磁帶、打印機(jī)、顯示器、鼠標(biāo)、鍵盤3. 計(jì)算機(jī)I/O系統(tǒng)的組織結(jié)構(gòu):(1) 底層是具體的設(shè)備和硬件接口(2) 中間是系統(tǒng)軟件(與設(shè)備相關(guān)軟件、與設(shè)備無關(guān)軟件)(3) 用戶程序4. I/O設(shè)備一般是由執(zhí)行I/O操作的機(jī)械部分和執(zhí)行控制I/O的電子部件組成(1) 執(zhí)行I/O操作的機(jī)械部分就是一般的I/O設(shè)備(2) 執(zhí)行控

30、制I/O的電子部件稱為設(shè)備控制器或適配器 為了能夠使CPU設(shè)備控制器中的各個(gè)寄存器進(jìn)行通信,通常采用“單獨(dú)的I/O空間”和“內(nèi)存映射I/O ”兩種方法 設(shè)備控制器是 CPU與外圍設(shè)備之間的接口,是一個(gè)可編址設(shè)備,每一個(gè)地址對(duì)應(yīng)一個(gè)設(shè)備功能:接收和識(shí)別命令數(shù)據(jù)交換標(biāo)識(shí)和報(bào)告設(shè)備的狀態(tài)地址識(shí)別數(shù)據(jù)緩沖區(qū)差錯(cuò)控制組成:設(shè)備控制器與處理機(jī)(CPU的接口設(shè)備控制器與設(shè)備的接口I/O邏輯:用于實(shí)現(xiàn)對(duì)設(shè)備的控制5 .設(shè)備驅(qū)動(dòng)程序:6. 設(shè)備處理方式:(1) 為每一類設(shè)備設(shè)置一個(gè)進(jìn)程,專門用于執(zhí)行這類設(shè)備的I/O操作(2) 在整個(gè)系統(tǒng)中設(shè)置一個(gè)I/O進(jìn)程,專門用于執(zhí)行系統(tǒng)中所有各類設(shè)備的I/O操作(3) 不設(shè)

31、置專門的設(shè)備處理進(jìn)程,而只為各類設(shè)置相應(yīng)的設(shè)備驅(qū)動(dòng)程序,供用戶或系 統(tǒng)進(jìn)程調(diào)用7. 設(shè)備驅(qū)動(dòng)程序的處理過程(1) 將抽象要求轉(zhuǎn)換為具體要求(2) 對(duì)服務(wù)請(qǐng)求進(jìn)行校驗(yàn),即檢查I/O請(qǐng)求的合法性(3) 檢查設(shè)備的狀態(tài)(4) 傳送必要的參數(shù)(5) 啟動(dòng)I/O設(shè)備(6) 工作方式的設(shè)置I/O接口程序:是操作系統(tǒng)中與設(shè)備無關(guān)的軟件,它從上層接收用戶對(duì)設(shè)備提出的I/O請(qǐng)求,然后負(fù)責(zé)吧I/O請(qǐng)求轉(zhuǎn)變成所需要的I/O命令,調(diào)用具體的設(shè)備驅(qū)動(dòng)程序去 執(zhí)行系統(tǒng)都是用主設(shè)備號(hào)和次設(shè)備號(hào)組成“邏輯設(shè)備名”操作系統(tǒng)提供的設(shè)備無關(guān)性的優(yōu)點(diǎn):方便用戶提高設(shè)備的利用率&計(jì)算機(jī)設(shè)備的分類(1) 基于設(shè)備的從屬關(guān)系a. 系統(tǒng)設(shè)備

32、(鍵盤、顯示器、打印機(jī)、磁盤驅(qū)動(dòng))b. 用戶設(shè)備(2) 基于設(shè)備的分配特性a. 獨(dú)享設(shè)備(打印機(jī))b. 共享設(shè)備c. 虛擬設(shè)備(SPOOLing技術(shù))(3) 基于設(shè)備的工作特性a. 輸入/輸出設(shè)備(字符設(shè)備)b. 存儲(chǔ)設(shè)備(塊設(shè)備)磁盤、磁帶(4) 按信息交換的單位a. 塊設(shè)備:用于存儲(chǔ)信息,屬于結(jié)構(gòu)設(shè)備。磁盤、磁帶(以塊為單位傳送信息)b. 字符設(shè)備:以單個(gè)字符為單位來傳送信息。鍵盤9 設(shè)備管理的目標(biāo)a. 提高外部設(shè)備的利用率b. 為用戶提供便利、統(tǒng)一的使用界面10. 設(shè)備管理的功能a. 提供一組I/O命令b. 進(jìn)行設(shè)備的分配和回收c. 對(duì)緩沖區(qū)進(jìn)行管理d. 實(shí)現(xiàn)真正的I/O操作11. 輸入

33、輸出管理步驟(1) 用戶在程序中使用系統(tǒng)提供的輸入/輸出命令發(fā)出I/O請(qǐng)求(2) 輸入輸出管理程序接受這個(gè)請(qǐng)求(3) “設(shè)備驅(qū)動(dòng)程序”來具體完成所要求的的I/O操作(4) 實(shí)現(xiàn)設(shè)備中斷處理程序來處理這個(gè)請(qǐng)求設(shè)備的輸入輸出管理程序由3塊內(nèi)容組成:接受用戶的I/O請(qǐng)求,組織管理輸入輸出進(jìn)行,輸入輸出的善后處理設(shè)備控制:1) 設(shè)備控制塊DCB中存放的是一臺(tái)具體設(shè)備的有關(guān)信息,找到一個(gè)設(shè)備的DCB就得到了該設(shè)備的特性,各種參數(shù),使用情況等,所以DCB是設(shè)備管理中最重要的一條 數(shù)據(jù)結(jié)構(gòu)2) 獨(dú)享設(shè)備中具有排他性,只能采取“靜態(tài)分配”的策略a. 靜態(tài)分配:用戶作業(yè)開始之前,由系統(tǒng)一次分配給該作業(yè)所需的設(shè)備

34、,控制器和通道,不會(huì)發(fā)生死鎖b. 動(dòng)態(tài)分配:在進(jìn)程執(zhí)行過程中進(jìn)行的設(shè)備分配,可能造成死鎖對(duì)獨(dú)享設(shè)備采用的分配算法:先來先服務(wù) 優(yōu)先級(jí)高者先服務(wù)3)共享磁盤的調(diào)度磁盤是一種典型的共享存儲(chǔ)設(shè)備,允許多個(gè)作業(yè)進(jìn)程同時(shí)使用, 而不是讓一個(gè)作業(yè)在整個(gè)運(yùn)行期間獨(dú)占?!巴瑫r(shí)使用”是指當(dāng)一個(gè)作業(yè)進(jìn)程暫時(shí)不用時(shí),其他作業(yè)進(jìn)程就可以使用。每一個(gè)時(shí)刻只有一個(gè)作業(yè)用4)調(diào)度算法a. “先來先服務(wù)”調(diào)度算法(并不理想)(移臂調(diào)度,減少查找時(shí)間)以I/O請(qǐng)求到達(dá)的先后次序作為磁盤調(diào)度的順序b. “最短查找時(shí)間”調(diào)度算法把距離磁頭當(dāng)前位置最近的I/O請(qǐng)求作為下一次調(diào)度的對(duì)象c. “電梯”調(diào)度算法(SCAN總是沿著此案移動(dòng)臂

35、的移動(dòng)方向選擇距離磁頭當(dāng)前位置最近的I/O請(qǐng)求,作為下一次調(diào)度的對(duì)象d. “單向掃描”調(diào)度算法(循環(huán)掃描 CSCAN總是從0號(hào)柱面開始往里移動(dòng)移動(dòng)臂, 遇到有I/O請(qǐng)求就進(jìn)行處理,直到到達(dá) 最后一個(gè)請(qǐng)求柱面,然后移動(dòng)臂立即帶動(dòng)磁頭不做任何服務(wù)地快速返回到0號(hào)柱面,開始下一次掃描對(duì)I/O設(shè)備的控制方式(數(shù)據(jù)傳輸方式)1)程序循環(huán)測(cè)試方式(程序查詢式)是指用戶進(jìn)程使用start指令啟動(dòng)設(shè)備后,不斷地執(zhí)行test指令,去測(cè)試所啟動(dòng)設(shè)備的狀態(tài)寄存器。 只有在狀態(tài)寄存器出現(xiàn)了所需要的狀態(tài)后,才停止測(cè)試工作,完成輸入/輸出。數(shù)據(jù)寄存器:用來存放傳輸?shù)臄?shù)據(jù)狀態(tài)寄存器:用來記錄設(shè)備當(dāng)前所處狀態(tài)2)中斷方式所謂

36、“中斷”是一種使 CPU暫時(shí)中止正在執(zhí)行的程序而轉(zhuǎn)去處理特殊時(shí)間的操作。引起中斷的時(shí)間稱為中斷源。程序中產(chǎn)生的中斷,由CPU的某些錯(cuò)誤結(jié)果(如,計(jì)算機(jī)溢出)產(chǎn)生的中斷稱為“內(nèi) 中斷”,由外部設(shè)備控制器引起的中斷稱為“外中斷”3)直接存儲(chǔ)器存取方式(DMA方式)特點(diǎn):能使I/O設(shè)備直接和內(nèi)存儲(chǔ)器進(jìn)行成批數(shù)據(jù)的快速傳輸。(單位:塊數(shù)據(jù))DMA控制器包括四個(gè)寄存器:數(shù)據(jù)寄存器,狀態(tài)寄存器,地址寄存器,字節(jié)計(jì)數(shù)器DMA控制器的組成:主機(jī)與 DMA控制器的接口; DMA控制器與塊設(shè)備的接口;I/O控制邏輯4)通道方式通道方式能夠使CPU徹底從I/O中解放出來。CPU進(jìn)行善后處理和啟動(dòng)。通道是一個(gè)獨(dú)立于

37、CPU的,專門用來管理輸入/輸出操作的處理機(jī)。通道是通過執(zhí)行通道程序并與設(shè)備控制器共同實(shí)現(xiàn)對(duì)I/O設(shè)備的控制的。它規(guī)定了設(shè)備應(yīng)該執(zhí)行的各種操作的順序。由一系列通道指令所構(gòu)成,CPU對(duì)I/O請(qǐng)求只去做啟動(dòng)和善后處理工作,輸入/輸出的管理以及數(shù)據(jù)傳輸?shù)仁乱耍坑赏ǖ廓?dú)立完成。緩沖:1)原因:a. 緩和CPU與 I/O設(shè)備間速度不匹配的矛盾b. 減少對(duì)CPU的中斷頻率,放寬對(duì) CPU中斷響應(yīng)時(shí)間的限制c. 解決數(shù)據(jù)粒度不匹配的問題d. 提高CPU和I/O設(shè)備之間的并行性2)緩沖的實(shí)現(xiàn)a. 采用專門的硬件寄存器,比如設(shè)備控制器里的數(shù)據(jù)寄存器,“硬件緩沖”b. 在內(nèi)存儲(chǔ)器中開辟出 n個(gè)單元,作為專用的

38、I/O緩沖區(qū),以便存放輸入/輸出 的數(shù)據(jù),這種緩沖區(qū)就是“軟件緩沖”c. 根據(jù)緩沖區(qū)的個(gè)數(shù):?jiǎn)尉彌_區(qū)、雙緩沖區(qū)、多緩沖區(qū)、緩沖池3)虛擬設(shè)備a. 通過多道程序技術(shù)可將一臺(tái)物理CPU虛擬為多臺(tái)邏輯CPU需要硬件的支持。作為后援的硬盤(大容量),具有設(shè)備與CPU并行工作的能力4)SPOOLi ng 技術(shù)a.在主機(jī)的直接控制下,實(shí)現(xiàn)以前的脫機(jī)輸入/輸出功能,此時(shí)的外圍操作與 CPU對(duì)數(shù)據(jù)的處理同時(shí)進(jìn)行,我們把這種在聯(lián)機(jī)情況下實(shí)現(xiàn)的同時(shí)外圍操作的技術(shù)稱為SPOOLing技術(shù),或假脫機(jī)技術(shù)b. SPOOLing技術(shù)是對(duì)脫機(jī)輸入/輸出系統(tǒng)的模擬。SPOOLing系統(tǒng)建立在通道技術(shù)和多道程序技術(shù)的基礎(chǔ)上,以

39、高速隨機(jī)外存(通常為磁盤)為后援存儲(chǔ)器5)設(shè)備無關(guān)性:應(yīng)用程序中所用的設(shè)備, 不局限于使用某個(gè)具體的物理設(shè)備。 為每個(gè)設(shè)備所配置的 設(shè)備驅(qū)動(dòng)程序是與硬件緊密相關(guān)的軟件。為了實(shí)現(xiàn)設(shè)備獨(dú)立性,必須再在設(shè)備驅(qū)動(dòng)程序上設(shè)置一層軟件,稱為與設(shè)備無關(guān)的 I/O軟件或設(shè)備獨(dú)立性軟件6)操作系統(tǒng)中實(shí)現(xiàn)虛擬設(shè)備的軟件功能模塊由3部分組成a. 預(yù)輸入程序b. 緩輸出程序c. 井管理程序7)SPOOLi ng系統(tǒng)由四部分組成a. 輸入井和輸出井在磁盤上開辟出來的兩個(gè)存儲(chǔ)區(qū)域,輸入數(shù)據(jù),輸出數(shù)據(jù)b. 輸入緩沖區(qū)和輸出緩沖區(qū)在內(nèi)存中開辟的兩個(gè)緩沖區(qū)c. 輸入進(jìn)程和輸出進(jìn)程模擬外圍控制機(jī)d. 井管理程序特點(diǎn):提高了 I/

40、O的速度將獨(dú)占設(shè)備改造為共享設(shè)備實(shí)現(xiàn)了虛擬設(shè)備的功能第五章文件管理1)目標(biāo):提高外存儲(chǔ)空間的利用率主要任務(wù):對(duì)用戶文件和系統(tǒng)文件進(jìn)行管理,方便用戶使用,并保證文件的安全性文件存儲(chǔ)設(shè)備是以塊為單位進(jìn)行管理的2)所謂“文件”是指具有完整邏輯意義的一組相關(guān)信息的集合,它是在磁盤上保存信息,而且能方便以后讀取的方法, 文件用符號(hào)名加以標(biāo)識(shí), 這個(gè)符號(hào)名就被稱為“文 件名”3)文件是指由創(chuàng)建者所定義的,具有文件名的一組相關(guān)元素的集合,可分為有結(jié)構(gòu)文件和無結(jié)構(gòu)文件兩種。 在有結(jié)構(gòu)的文件中,文件由若干個(gè)相關(guān)記錄組成而無結(jié)構(gòu)文 件則被看成是一個(gè)字符流。文件在文件系統(tǒng)中是一個(gè)最大的數(shù)據(jù)單位,它描述了對(duì)象集文件屬

41、性:文件類型、文件長(zhǎng)度、文件的物理位置、文件的建立時(shí)間(最后一次的修改時(shí)間)4)文件名:在不同的系統(tǒng)之間, 對(duì)文件名的規(guī)定是不同的。一個(gè)文件名是在創(chuàng)建該文件時(shí)由用戶給出的,操作系統(tǒng)將向用戶提供組成文件名的命名規(guī)則5)很多操作系統(tǒng)采用句點(diǎn) 隔開成兩部分的文件名形式,句點(diǎn)之前的部分稱為文 件名,句點(diǎn)后面的部分稱為文件的“擴(kuò)展名”。又稱后綴名,用于指示文件的類型bak備份文件.basABSIC源程序.bin可執(zhí)行的二進(jìn)制文件cC源程序.dat數(shù)據(jù)文件.doc文檔文件hip幫助文件.obj目標(biāo)文件.pasPascal 文件txt一般文本文件.tmp臨時(shí)文件1)文件被存在大容量的輔助存儲(chǔ)器(外存)中,當(dāng)

42、用戶需要使用時(shí),就通過文件名把相應(yīng)的文件讀到內(nèi)存2)“文件系統(tǒng)”是指操作系統(tǒng)中與文件管理有關(guān)的那部分軟件,被管理的文件,以及管理文件所需要的數(shù)據(jù)結(jié)構(gòu)(目錄、索引表)的總體3)對(duì)文件的分類a. 按文件的性質(zhì)和用途:系統(tǒng)文件、用戶文件、庫(kù)文件b. 按文件中數(shù)據(jù)的形式:源文件、目標(biāo)文件、可執(zhí)行文件c. 按存取控制屬性分類:只執(zhí)行文件、只讀文件、讀寫文件d. 按文件的保護(hù)性質(zhì):只讀文件、讀寫文件、可執(zhí)行文件、不保護(hù)文件e. 按文件的保護(hù)期限:臨時(shí)文件、檔案文件、永久文件f. 按文件的存取方式:順序存取文件、隨機(jī)存取文件g. 按設(shè)備的類型:磁盤文件、磁帶文件、打印文件h. 按文件的物理結(jié)構(gòu):連續(xù)文件、鏈

43、接文件、索引文件i. 按文件的內(nèi)容(組織形式和處理方式):普通文件、目錄文件、特殊文件j. 按文件的邏輯結(jié)構(gòu):流式文件、記錄式文件4)文件的邏輯結(jié)構(gòu)a. 從用戶使用的角度出發(fā)組織的文件,被稱為是文件的邏輯結(jié)構(gòu),一類是有結(jié)構(gòu)的文件,這是指由一個(gè)以上的記錄構(gòu)成的文件,故又稱為記錄式文件b. 從文件的組織方式來分,可以分為順序文件,索引文件,索引順序文件c. UNIX操作系統(tǒng)總是以流失作為文件的邏輯結(jié)構(gòu)5)文件的物理結(jié)構(gòu)a. 文件按不同的組織方式在輔存上存放,就會(huì)得到不同的物理結(jié)構(gòu),文件的物理結(jié)構(gòu)有時(shí)也稱為文件的“存儲(chǔ)結(jié)構(gòu)”b. 文件在輔存(外存)上可以有3種不同的存放方式:連續(xù)存放、鏈接塊存放以

44、及索引表存放c. 對(duì)應(yīng)地文件就有3種物理結(jié)構(gòu),分別叫做順序結(jié)構(gòu), 鏈接結(jié)構(gòu)和索引結(jié)構(gòu), 也 叫作連續(xù)文件,串聯(lián)文件,索引文件6)存放方式a. 連續(xù)存放一連續(xù)文件不足之處:必須預(yù)先知道文件的最大長(zhǎng)度會(huì)造成磁盤碎片b. 鏈接塊存放一串聯(lián)文件不會(huì)因?yàn)榇疟P碎片而浪費(fèi)存儲(chǔ)空間,但使用的指針要占去一些字節(jié),每個(gè)磁盤塊存儲(chǔ)數(shù)據(jù)的字節(jié)數(shù)不再是2的幕,從而降低了系統(tǒng)的運(yùn)行效率c. 索引表存放一索引文件7) 文件的存取a. 順序存取b. 隨機(jī)存取8) 磁盤空間的管理a. 磁盤是以塊為單位進(jìn)行分配的b. 磁盤與內(nèi)存之間是以磁盤塊為信息傳輸?shù)膯挝籧. 選定了塊的大小,還要對(duì)它們進(jìn)行管理,即要記住哪些已經(jīng)分配,哪些仍然

45、空 閑。d. 常采用的磁盤存儲(chǔ)空間管理方案有:位示圖,空閑塊表,空閑塊鏈9) 文件的操作:創(chuàng)建文件、刪除文件、打開文件、關(guān)閉文件、讀文件、寫文件10) 系統(tǒng)是通過文件的目錄來管理文件的文件目錄也是一種數(shù)據(jù)結(jié)構(gòu),用于標(biāo)識(shí)系統(tǒng)中的文件及其物理地址11) 為每一個(gè)文件開辟一個(gè)存儲(chǔ)區(qū),在它的里面記錄著該文件的有關(guān)信息。我們把該存儲(chǔ)區(qū)稱為文件控制塊”(FCB 也是一個(gè)目錄項(xiàng)隨系統(tǒng)的不同,一個(gè)文件的FCB中所包含的內(nèi)容及大小也不盡相同包含內(nèi)容:文件名稱文件在輔存中存放的物理位置文件的邏輯結(jié)構(gòu)文件的物理結(jié)構(gòu)文件的存取控制信息文件管理信息12) 目錄的層次結(jié)構(gòu)如果把所有文件的 FCB都登記在一個(gè)文件目錄中,這

46、樣由文件名查文件目錄項(xiàng),直接就能夠找到所需要的文件,那么就成這種文件目錄為一級(jí)目錄結(jié)構(gòu)a) 優(yōu)點(diǎn):i.簡(jiǎn)單,能實(shí)現(xiàn)目錄管理中最基本的功能一按名存取b) 缺點(diǎn):i.查找速度慢,不允許重名,不便于實(shí)現(xiàn)文件共享二級(jí)目錄結(jié)構(gòu):由“主目錄”與“用戶目錄”二級(jí)構(gòu)成,在主目錄(根目錄)中,每個(gè)目錄項(xiàng)的內(nèi)容只是給出文件主名以及它的目錄所在的磁盤地址。在一個(gè)個(gè)用戶目錄中, 才是由問價(jià)的呢FCB組成的目錄,用戶目錄,實(shí)際上就是一級(jí)目錄1)兩級(jí)目錄結(jié)構(gòu)的優(yōu)點(diǎn):a. 提高了檢索目錄的速度b. 在不同的文件目錄中,可以使用相同的文件名c. 不同用戶還可使用不同的文件名訪問系統(tǒng)中的同一個(gè)共享文件2)缺點(diǎn):a. 若一個(gè)用戶

47、可以擁有很多文件,則查找時(shí)間仍然很長(zhǎng)b. 用戶無法對(duì)自己的文件進(jìn)行再分類安排3)樹型目錄結(jié)構(gòu)允許每個(gè)用戶可以擁有多個(gè)目錄,即在用戶目錄的下面可以再分子目錄,子目錄的下面還可以再有子目錄。但每個(gè)文件目錄中, 只能有一個(gè)根目錄, 每個(gè)文件和每個(gè)目錄都只能有一個(gè)父目錄4)從根目錄出發(fā)到具體文件所經(jīng)過的各層名字,就構(gòu)成了文件的“路徑名”,從根目錄出發(fā)的這個(gè)路徑名,也稱為文件的“絕對(duì)路徑名”。文件的絕對(duì)路徑名必須從根目錄出發(fā),且是唯一的,從分隔符開頭在UNIX系統(tǒng)中,路徑名各部分之間是用“ /”分隔在MS-DOS統(tǒng)中,路徑各部分是用“”分隔在MVLTICS系統(tǒng)中,路徑各部分之間是用“”分隔在當(dāng)前目錄下的

48、文件的路徑名,稱為文件的相對(duì)路徑名5)文件的“共享”是指一個(gè)文件可以被多個(gè)授權(quán)用戶共同使用分兩種:任何時(shí)刻只允許一個(gè)用戶使用共享文件允許多個(gè)用戶同時(shí)使用同一個(gè)共享文件,只進(jìn)行讀操作第六章進(jìn)程間的制約關(guān)系1)在多道程序設(shè)計(jì)環(huán)境下, 進(jìn)程程序的執(zhí)行具有并發(fā)性, 在相同的前提條件下, 兩次執(zhí)行的結(jié)果有可能不相同,使得一個(gè)進(jìn)程對(duì)另一個(gè)進(jìn)程的影響無法預(yù)測(cè),在操作系統(tǒng)里把這種由于時(shí)間因素的影響而產(chǎn)生的錯(cuò)誤稱為:“與時(shí)間有關(guān)的錯(cuò)誤”2)進(jìn)程間具有兩種制約關(guān)系:互斥和同步a. 由于對(duì)共享資源的爭(zhēng)奪,導(dǎo)致進(jìn)程之間出現(xiàn)互斥關(guān)系b. 由于對(duì)任務(wù)的協(xié)調(diào)工作,導(dǎo)致進(jìn)城之間出現(xiàn)同步關(guān)系3)把那些可以共享的資源(文件、隊(duì)列

49、、緩沖區(qū)、表格、變量)統(tǒng)稱為共享變量或臨界資源與一個(gè)共享變量(或共享資源)交往的多個(gè)進(jìn)程,為了保證它們各自運(yùn)行結(jié)果的正 確性,當(dāng)其中的一個(gè)進(jìn)程正在對(duì)該變量(臨界資源)進(jìn)行操作時(shí),就不允許其他進(jìn)程同時(shí)對(duì)它操作。進(jìn)程的這種制約關(guān)系被稱為“互斥”4)注意(互斥進(jìn)程)a. 作為具有互斥關(guān)系的進(jìn)程,它的一部分程序可能用于內(nèi)部的計(jì)算以及內(nèi)部的數(shù)據(jù)處理等,那么只有設(shè)計(jì)共享變量的那一部分程序,才真正需要保證互斥地執(zhí)行,把進(jìn)程程序中“真正需要保證互斥執(zhí)行”的那一段程序(或在每個(gè)進(jìn)程中訪問臨界資源的那段代碼)稱為該進(jìn)程的臨界區(qū)(臨界段)b. 具有互斥關(guān)系的進(jìn)程, 并不關(guān)心對(duì)方的存在,即使對(duì)方不存在,自己也能夠正確地運(yùn)行c. 具有互斥關(guān)系的那些進(jìn)程程序中的臨界區(qū),雖然都是針對(duì)同一個(gè)共享變量的程序,但在其上執(zhí)行的操作可以相同也可以不同d. 進(jìn)程的臨界區(qū)是相對(duì)于某個(gè)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論