



版權(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ù)庫管理系統(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)外部事
4、件的請(qǐng)求, 在規(guī)定的時(shí)間內(nèi)完成對(duì)該事件的處理,并控制所有實(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. 從微觀上看是
5、串行,由于 CPU 在任何時(shí)刻只能執(zhí)行一個(gè)程序,因此這些程序輪流占用 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. 程序是指令的有序集合, 是
6、靜態(tài)的, 進(jìn)程是程序在處理機(jī)上的一次執(zhí)行過程,是動(dòng)態(tài)的。 程序的存在時(shí)永久的, 而進(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)行、阻塞參考 .資料.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ā)生,因
7、為一個(gè)CPU 不可能真正同時(shí)運(yùn)行兩個(gè)進(jìn)程c.一個(gè)進(jìn)程從阻塞狀態(tài)變?yōu)榫途w狀態(tài),不一定會(huì)引起另一個(gè)進(jìn)程從就緒狀態(tài)變?yōu)檫\(yùn)行狀態(tài)11) 進(jìn)程的三個(gè)組成部分:程序、數(shù)據(jù)集合、進(jìn)程控制塊(PCB )12) 進(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í)間
8、片”的時(shí)間段,它是允許該進(jìn)程占用CPU 的最長(zhǎng)時(shí)間長(zhǎng)度參考 .資料.c. 優(yōu)先數(shù)調(diào)度算法:優(yōu)先數(shù)高的先調(diào)度,若相同則先來先服務(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)程,把具有這種特性
9、的程序稱為 “原語” ,原語的不可分割性,通常利用屏蔽中斷的方法18) 程序接口:操作系統(tǒng)在程序一級(jí)給予用戶的支持命令接口:操作系統(tǒng)在控制一級(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)用這些功能程序的目的訪管指
10、令屬于非特權(quán)指令,功能是執(zhí)行它就會(huì)產(chǎn)生一個(gè)軟中斷,促使中央處理機(jī)由目態(tài)轉(zhuǎn)為管態(tài),進(jìn)入操作系統(tǒng)并處理該中斷22) 從功能上看,可以把系統(tǒng)調(diào)用命令分為五大類: 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è)存放在輔助
11、存儲(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. 提交狀態(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)存
12、中移動(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)比高著優(yōu)先:先調(diào)度響應(yīng)比高著參考 .資料.響應(yīng)比 =已等待時(shí)間 / 所需 CPU 時(shí)間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í)間
13、內(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ǔ)器之間的存儲(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ù)的高速緩存與CP
14、U 之間則以“字”為單位傳遞數(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)中, 把用戶程序指令中的相對(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)存的具體情況
15、將裝入模塊裝入到內(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ū):系統(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ì)形成碎片
16、,造成資源浪費(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ū)的尺寸可以相同, 可以不同。 每個(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):
17、選擇效率高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ū)的起始位置大小及狀態(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)入分
18、區(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ǔ)空間滿足該作業(yè)的需求, 就劃分出一個(gè)與作業(yè)相對(duì)地址空間同樣大小的分區(qū),并分配給它參考 .資料.b. 要解決的問題a) 采用一種新的地址重定位技術(shù), 動(dòng)態(tài)地址重定位, 以便程序能夠在內(nèi)存儲(chǔ)器中隨意移動(dòng),為空閑區(qū)的合并提供保證b)
19、 記住系統(tǒng)中各個(gè)分區(qū)的使用情況c) 給出分區(qū)分配算法c. 地址動(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)重定位是由軟件完成地址轉(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ì)其
20、地址加以轉(zhuǎn)換iv. 完成的結(jié)果:實(shí)施靜態(tài)重定位,原來的指令地址部分被修改了,而動(dòng)態(tài)重定位只是按照所形成的地址去執(zhí)行這條指令, 并不對(duì)指令本身做任何修改d. 空閑區(qū)的合并e. 分區(qū)的管理a) 表格法:一張已分配表,一張空閑表(分區(qū)號(hào),分區(qū)大小,分區(qū)起始地址、狀態(tài))b) 單鏈表法: 一個(gè)存放該分區(qū)的長(zhǎng)度, 另一個(gè)存放它下一個(gè)空閑分區(qū)的起始地址c) 雙鏈表法:還存放上一個(gè)空閑區(qū)起始地址f. 空閑分區(qū)的分配算法a) 最先適應(yīng)算法: 要求空閑分區(qū)鏈以地址遞增的次序鏈接 (對(duì)大作業(yè)不利)b) 最佳適應(yīng)算法: 每次為作業(yè)分配內(nèi)存時(shí), 總是把能滿足要求, 又是最參考 .資料.小的空閑分區(qū)分配給作業(yè),避免“大材
21、小用”按其容量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è)的問題, 只要作業(yè)的存儲(chǔ)需求大于系統(tǒng)提供的整個(gè)用戶區(qū),該作業(yè)就無法投入運(yùn)行b) 雖然避免了內(nèi)部碎片, 但有可能出現(xiàn)極小的翻去暫時(shí)分配不出去
22、的情形,引起了外部碎片,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ì)地址空間b) 用戶程序相對(duì)地址空間中的每一個(gè)分區(qū)被稱為“頁” ,用戶相對(duì)地址空間中的每一個(gè)相對(duì)地址,都可以用(頁號(hào), 頁內(nèi)
23、位移) 這樣的數(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) 用戶作業(yè)的相對(duì)地址空間按照塊的尺寸
24、劃分成頁, 這是在系統(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è)程序以多個(gè)相互獨(dú)立
25、的稱為“段” 的地址空間提交給系統(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)度取決于用戶編寫的程序,
26、 通常由編譯程序在對(duì)源程序進(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è)段賦予一
27、個(gè)段名。a) 作業(yè)地址空間結(jié)構(gòu):主程序段,子程序段,數(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ǔ)參
28、考 .資料.器里調(diào)入內(nèi)存使用,解決了小內(nèi)存與大作業(yè)的矛盾,但會(huì)產(chǎn)生內(nèi)部碎片b) 缺頁中斷是指在指令執(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ù)
29、b) 頁面尺寸c) 程序的實(shí)現(xiàn)7) 頁面淘汰(置換)算法:頁面淘汰是由缺頁中斷引起的,但缺頁中斷不見得一定引起頁面淘汰a. 先進(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 頁面
30、淘汰算法,有時(shí)增加分配給作業(yè)的可用內(nèi)存塊數(shù),它的缺頁次數(shù)反而上升,通常稱為異常現(xiàn)象參考 .資料.第四章設(shè)備管理1“設(shè)備”泛指計(jì)算機(jī)系統(tǒng)中的各種外部設(shè)備,外設(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)軟件)(
31、 3)用戶程序4I/O 設(shè)備一般是由執(zhí)行I/O 操作的機(jī)械部分和執(zhí)行控制I/O 的電子部件組成( 1)執(zhí)行 I/O 操作的機(jī)械部分就是一般的I/O 設(shè)備( 2)執(zhí)行控制 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è)備
32、驅(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è)置專門的設(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)變
33、成所需要的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è)備的利用率8計(jì)算機(jī)設(shè)備的分類( 1)基于設(shè)備的從屬關(guān)系a. 系統(tǒng)設(shè)備(鍵盤、顯示器、打印機(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è)字符為
34、單位來傳送信息。鍵盤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輸入輸出管理步驟( 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)具體
35、設(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è)備, 控制器和通道,不會(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ú)占。 “同時(shí)使用” 是指當(dāng)一個(gè)作業(yè)進(jìn)程暫時(shí)不用時(shí), 其他作業(yè)進(jìn)程就可以使用。每一
36、個(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)臂的移動(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ù)
37、據(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) 中斷方式所謂“中斷” 是一種使 CPU 暫時(shí)中止正在執(zhí)行的程序而轉(zhuǎn)去處理特殊時(shí)間的操作。引起中斷的時(shí)間稱為中斷源。程序中產(chǎn)生的中斷,由 CPU 的某些錯(cuò)誤結(jié)果(如,計(jì)算機(jī)溢出)產(chǎn)生的中斷稱為“內(nèi)中斷”,由外部設(shè)備控制器引起的中斷稱為“外中斷”3) 直接存儲(chǔ)器存取方式( DMA 方式)參考 .資料.特點(diǎn):能
38、使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ú)立于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)和善后處理工作,輸入/ 輸出的管理以
39、及數(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è)單元,作為專用的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 ,需
40、要硬件的支持。作為后援的硬盤(大容量),具有設(shè)備與CPU 并行工作的能力4)SPOOLing技術(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ǔ)上,以高速隨機(jī)外存 (通常為磁盤) 為后援存儲(chǔ)器5)設(shè)備無關(guān)性:應(yīng)用程序中所用的設(shè)備,不局限于使用某個(gè)具體的物理設(shè)備。為每個(gè)設(shè)備所配置的設(shè)備驅(qū)動(dòng)程序是與硬件緊密相關(guān)的軟件。為了實(shí)現(xiàn)設(shè)備獨(dú)立性,必
41、須再在設(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) SPOOLing 系統(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/O 的速度將獨(dú)占設(shè)備改造為共享設(shè)備實(shí)現(xiàn)了虛擬設(shè)備的功能參考 .資料.第五章文件管理1) 目標(biāo):提高外存儲(chǔ)空間的利用率主要任務(wù): 對(duì)用戶文件和系統(tǒng)文件進(jìn)行管理,方便用戶使用, 并保證文件的
42、安全性文件存儲(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ì)象集文件屬性:文件類型、文件長(zhǎng)度、文件的物理位置、文件的建立時(shí)間(最后一次的修改時(shí)間)4) 文件名: 在不同的系統(tǒng)之間, 對(duì)文件名的規(guī)定是不同的。 一個(gè)文件名是在創(chuàng)建該
43、文件時(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文檔文件.hlp幫助文件.obj 目標(biāo)文件.pasPascal 文件.txt一般文本文件.tmp臨時(shí)文件1) 文件被存在大容量的輔助存儲(chǔ)器 (外存) 中,當(dāng)用戶需要使用時(shí),就通過文件名把相應(yīng)的文件讀到內(nèi)存2)“文件系統(tǒng)” 是指操作系統(tǒng)中與文件管理有關(guān)的那部分軟件,被管理的文件, 以
44、及管理文件所需要的數(shù)據(jù)結(jié)構(gòu)(目錄、索引表)的總體3) 對(duì)文件的分類a. 按文件的性質(zhì)和用途:系統(tǒng)文件、用戶文件、庫文件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ù)文件、鏈接文件、索引文件i. 按文件的內(nèi)容(組織形式和處理方式):普通文件、目錄文件、特殊文件j. 按文件的邏輯結(jié)
45、構(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ù)存放、鏈接塊存放以及索引表存放c. 對(duì)應(yīng)地文件就有 3 種物理結(jié)構(gòu),分別叫做順序結(jié)構(gòu),鏈接結(jié)構(gòu)和索引結(jié)構(gòu),也
46、叫作連續(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)分配, 哪些仍然空閑。d. 常采用的磁盤存儲(chǔ)空間管理方案有:位示圖,空閑塊表,空閑塊鏈9
47、) 文件的操作:創(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è)文件目錄中,這樣由文件名查文件目錄項(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)成,在
溫馨提示
- 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- (市質(zhì)檢)2025屆寧德市普通高中高三畢業(yè)班五月份質(zhì)量檢測(cè)地理試卷(含答案)
- 塑造卓越企業(yè)文化
- 碩士答辯導(dǎo)航
- 江蘇省連云港市贛榆縣2024-2025學(xué)年小升初總復(fù)習(xí)數(shù)學(xué)精練含解析
- 四川現(xiàn)代職業(yè)學(xué)院《商務(wù)英語視聽說(4)》2023-2024學(xué)年第一學(xué)期期末試卷
- 江蘇護(hù)理職業(yè)學(xué)院《職業(yè)生涯規(guī)劃與就業(yè)創(chuàng)業(yè)指導(dǎo)》2023-2024學(xué)年第一學(xué)期期末試卷
- 三明醫(yī)學(xué)科技職業(yè)學(xué)院《認(rèn)知心理學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 沈陽航空航天大學(xué)北方科技學(xué)院《重癥護(hù)理學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 南寧理工學(xué)院《產(chǎn)品設(shè)計(jì)2》2023-2024學(xué)年第二學(xué)期期末試卷
- 太原幼兒師范高等??茖W(xué)?!陡叻肿踊瘜W(xué)與物理基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 低鈣血癥的病情觀察和護(hù)理
- 食堂食材配送服務(wù)方案及服務(wù)承諾
- 輔警培訓(xùn)工作方案
- 南京彭宇案完
- 《暖通空調(diào)自動(dòng)控制》課件
- 哮喘患者的護(hù)理常規(guī) 課件
- YB-4001.1-2007鋼格柵板及配套件-第1部分:鋼格柵板(中文版)
- 2023年國(guó)家重點(diǎn)支持的八大高新技術(shù)領(lǐng)域
- 養(yǎng)殖場(chǎng)獸醫(yī)診斷與用藥制度范本
- 12-漏纜卡具安裝技術(shù)交底
- 《銷售管理實(shí)務(wù)》(李寧)011-5 教案 第9課 編制銷售預(yù)算
評(píng)論
0/150
提交評(píng)論