版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、操作系統(tǒng)概述一個(gè)完整的計(jì)算機(jī)系統(tǒng)是由硬件系統(tǒng)和軟件系統(tǒng)兩大部分組成計(jì)算機(jī)軟件是指程序和與程序相關(guān)的文檔的集合按功能可把軟件分為“系統(tǒng)軟件”和“應(yīng)用軟件”兩部分系統(tǒng)軟件:操作系統(tǒng)語言處理程序,數(shù)據(jù)庫管理系統(tǒng)應(yīng)用軟件:各種管理軟件,用于工程計(jì)算的軟件包,輔助設(shè)計(jì)軟件通常把未配置任何軟件的計(jì)算機(jī)稱為“裸機(jī)”操作系統(tǒng)可以被看作是計(jì)算機(jī)系統(tǒng)的核心,統(tǒng)管整個(gè)系統(tǒng)資源,制定各種資源的分配策略,調(diào)度系統(tǒng)中運(yùn)行的用戶程序,協(xié)調(diào)它們對資源的需求,從而使整個(gè)系統(tǒng)在高效、有序的環(huán)境里工作。發(fā)展的動(dòng)力:提高計(jì)算機(jī)資源的利用率的需要方便用戶使用計(jì)算機(jī)的需要硬件技術(shù)不斷發(fā)展的需要計(jì)算機(jī)體系結(jié)構(gòu)發(fā)展的需要操作系統(tǒng)是在“裸機(jī)”
2、上加載的第一層軟件,是對計(jì)算機(jī)硬件系統(tǒng)功能的首次擴(kuò)充操作系統(tǒng)的定義:操作系統(tǒng)是控制和管理計(jì)算機(jī)硬件和軟件資源,合理地組織計(jì)算機(jī)工作流程,以及方便用戶使用計(jì)算機(jī)的一個(gè)大型程序操作系統(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ī)交互操作系統(tǒng)另一種定義:操作系統(tǒng)是一組能有效地組織和管理計(jì)算機(jī)硬件和軟件資源,合理地對各類作業(yè)進(jìn)行調(diào)度,以及方便用戶使用的程序的集合操作系統(tǒng)的種類:單道批處理系統(tǒng)特點(diǎn):單路
3、性、獨(dú)占性、自動(dòng)性、封閉性、順序性缺點(diǎn):系統(tǒng)的資源得不到充分的利用多道批處理系統(tǒng)特點(diǎn):多路性、共享性、自動(dòng)型、封閉性、無序性、調(diào)度性好處:提高CPU的利用率提高內(nèi)存和I/O設(shè)備的利用率增加系統(tǒng)吞吐量缺點(diǎn):平均周轉(zhuǎn)時(shí)間長,無交互能力分時(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)度策略實(shí)時(shí)系統(tǒng)實(shí)時(shí)系統(tǒng)是指系統(tǒng)能及時(shí)響應(yīng)外部事件的請求,在規(guī)定的時(shí)間內(nèi)完成對該事件的處理,并控制所有實(shí)時(shí)任務(wù)協(xié)調(diào)一致地運(yùn)行處理機(jī)管理進(jìn)程是指在系統(tǒng)中能獨(dú)立運(yùn)行并作為資源分配的基本
4、單位,它是由一組機(jī)器指令,數(shù)據(jù)和堆棧等組成的,是一個(gè)能獨(dú)立運(yùn)行的活動(dòng)實(shí)體,多個(gè)進(jìn)程可以并發(fā)執(zhí)行和交換信息程序是一個(gè)在時(shí)間上嚴(yán)格有序的指令集合在單道程序設(shè)計(jì)下,系統(tǒng)具有的特點(diǎn)資源的獨(dú)占性執(zhí)行的順序性結(jié)果的再現(xiàn)性在多道程序設(shè)計(jì)環(huán)境下,系統(tǒng)具有:執(zhí)行的并發(fā)性相互的制約性狀態(tài)的多變性(不可再現(xiàn)性)并發(fā)、并行、串行從宏觀上看是并行,同時(shí)在內(nèi)存的多個(gè)程序都在執(zhí)行著,互不影響從微觀上看是串行,由于CPU在任何時(shí)刻只能執(zhí)行一個(gè)程序,因此這些程序輪流占用CPU,交替執(zhí)行著我們把“邏輯上相互獨(dú)立的程序,在執(zhí)行時(shí)間上相互重疊,一個(gè)程序的執(zhí)行還沒有結(jié)束,另一個(gè)程序的執(zhí)行已經(jīng)開始”的這種特性稱為程序執(zhí)行的并發(fā)性對進(jìn)程的
5、描述進(jìn)程是程序的一次執(zhí)行過程進(jìn)程的運(yùn)行活動(dòng)是建立在某個(gè)數(shù)據(jù)集合上的進(jìn)程是在獲得資源的基礎(chǔ)上從事自己的運(yùn)行活動(dòng)進(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ì)相互制約程序和進(jìn)程的區(qū)別程序是指令的有序集合,是靜態(tài)的,進(jìn)程是程序在處理機(jī)上的一次執(zhí)行過程,是動(dòng)態(tài)的。程序的存在時(shí)永久的,而進(jìn)程是有生命周期的,它因創(chuàng)建而產(chǎn)生,因調(diào)度而運(yùn)行,因撤銷而消亡進(jìn)程是程序的一次執(zhí)行過程,程序是進(jìn)程賴以存在的基礎(chǔ)進(jìn)程具有并發(fā)性,而程序并發(fā)執(zhí)行會(huì)失去可再現(xiàn)性進(jìn)程是系統(tǒng)分配和調(diào)度的獨(dú)立單位,進(jìn)程由程序、數(shù)據(jù)集合和進(jìn)程控
6、制塊組成系統(tǒng)進(jìn)程的使用級(jí)別高于用戶進(jìn)程進(jìn)程的狀態(tài)創(chuàng)建、就緒、運(yùn)行、阻塞一個(gè)進(jìn)程從運(yùn)行狀態(tài)變?yōu)榫途w狀態(tài),一定會(huì)引起另一個(gè)進(jìn)程從就緒變?yōu)檫\(yùn)行一個(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);這種因果變遷絕對不可能發(fā)生,因?yàn)橐粋€(gè)CPU不可能真正同時(shí)運(yùn)行兩個(gè)進(jìn)程一個(gè)進(jìn)程從阻塞狀態(tài)變?yōu)榫途w狀態(tài),不一定會(huì)引起另一個(gè)進(jìn)程從就緒狀態(tài)變?yōu)檫\(yùn)行狀態(tài)進(jìn)程的三個(gè)組成部分:程序、數(shù)據(jù)集合、進(jìn)程控制塊(PCB)進(jìn)程控制塊是進(jìn)程存在的唯一標(biāo)示作用:通過PCB,是原來不能獨(dú)立運(yùn)行的程序,成為一個(gè)可以獨(dú)立運(yùn)行的基本單位,一個(gè)能夠并發(fā)執(zhí)行的進(jìn)程其中的信息:進(jìn)程標(biāo)識(shí)符、處理機(jī)狀態(tài)、進(jìn)程調(diào)度信息、進(jìn)程控制信
7、息操作系統(tǒng)中把做出“決定把CPU分配給誰用”的程序稱為“進(jìn)程調(diào)度程序”常用的進(jìn)程調(diào)度算法:先來先服務(wù)調(diào)度算法時(shí)間片輪轉(zhuǎn)調(diào)度算法:為就緒隊(duì)列中的每一個(gè)進(jìn)程分配一個(gè)稱為“時(shí)間片”的時(shí)間段,它是允許該進(jìn)程占用CPU的最長時(shí)間長度優(yōu)先數(shù)調(diào)度算法:優(yōu)先數(shù)高的先調(diào)度,若相同則先來先服務(wù)多級(jí)隊(duì)列調(diào)度算法:時(shí)間片調(diào)度和優(yōu)先數(shù)調(diào)度算法的結(jié)合進(jìn)程調(diào)度程序的主要功能記錄系統(tǒng)中所有進(jìn)程的有關(guān)情況,比如進(jìn)程的當(dāng)前狀態(tài),優(yōu)先數(shù)等確定分配處理機(jī)的算法完成處理機(jī)的分配完成處理機(jī)的回收把處理劑分配給進(jìn)程后,還有一個(gè)允許它占用多長時(shí)間的問題,有兩種處理方式,一種是不可剝奪方式,另一種是剝奪方式為了對進(jìn)程進(jìn)行有效的管理和控制,操作
8、系統(tǒng)要提供若干基本的操作以便能創(chuàng)建進(jìn)程、撤銷進(jìn)程、阻塞進(jìn)程、喚醒進(jìn)程,把具有這種特性的程序稱為“原語”,原語的不可分割性,通常利用屏蔽中斷的方法程序接口:操作系統(tǒng)在程序一級(jí)給予用戶的支持命令接口:操作系統(tǒng)在控制一級(jí)給予用戶的支持CPU指令系統(tǒng)中的指令分為兩類操作系統(tǒng)和用戶都能使用的指令,非特權(quán)指令只能由操作系統(tǒng)使用的指令,特權(quán)指令CPU的兩種工作狀態(tài):管態(tài)、目態(tài)當(dāng)CPU處于管態(tài)時(shí),可以執(zhí)行包括特權(quán)指令在內(nèi)的一切機(jī)器指令當(dāng)CPU處于目態(tài)時(shí),禁止使用特權(quán)指令訪管指令系統(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)用這些功能程序
9、的目的訪管指令屬于非特權(quán)指令,功能是執(zhí)行它就會(huì)產(chǎn)生一個(gè)軟中斷,促使中央處理機(jī)由目態(tài)轉(zhuǎn)為管態(tài),進(jìn)入操作系統(tǒng)并處理該中斷從功能上看,可以把系統(tǒng)調(diào)用命令分為五大類:一是關(guān)于進(jìn)程管理和控制的二是關(guān)于外部設(shè)備輸入/輸出的三是關(guān)于磁盤文件管理的四是關(guān)于訪問系統(tǒng)信息的五是關(guān)于存儲(chǔ)申請與釋放的從形式上看,操作系統(tǒng)提供的系統(tǒng)調(diào)用與一般的過程調(diào)用(子程序調(diào)用)相似,但它們有著明顯 的區(qū)別作業(yè)管理:把一個(gè)作業(yè)提交給系統(tǒng)時(shí),系統(tǒng)要開辟一個(gè)作業(yè)控制塊JCB,以便隨時(shí)記錄作業(yè)的信息被系統(tǒng)接納的作業(yè),在沒有投入運(yùn)行之前,稱為后備作業(yè)。這些作業(yè)存放在輔助存儲(chǔ)器中,并由他們的JCB連接在一起,形成所謂的后備作業(yè)隊(duì)列作業(yè)調(diào)度:按
10、照某種規(guī)則,從后備作業(yè)隊(duì)列中挑選作業(yè)進(jìn)入內(nèi)存,參與處理機(jī)的競爭,這個(gè)過程稱為作業(yè)調(diào)度作業(yè)的狀態(tài):提交狀態(tài):進(jìn)入輔助存儲(chǔ)器,作業(yè)的信息還沒有全部進(jìn)入系統(tǒng),系統(tǒng)也沒有為它建立JCB,感知不到它的存在后備狀態(tài):建立起了JCB,并將JCB排到后備作業(yè)隊(duì)列中運(yùn)行狀態(tài):(阻塞、運(yùn)行、就緒)都屬于運(yùn)行狀態(tài)完成狀態(tài):也是一個(gè)暫時(shí)性的狀態(tài)作業(yè)的調(diào)度算法:先來先服務(wù):以作業(yè)進(jìn)入后備作業(yè)隊(duì)列的先后次序周轉(zhuǎn)時(shí)間=完成時(shí)間-到達(dá)時(shí)間注:若分配一定的內(nèi)存,且不允許作業(yè)在內(nèi)存中移動(dòng)時(shí),要考慮所占內(nèi)存大小短作業(yè)優(yōu)先:從后備作業(yè)隊(duì)列中挑選所需CPU時(shí)間最少且資源能夠得到滿足的作業(yè)注:如果所有作業(yè)“同時(shí)”到達(dá)后備作業(yè)隊(duì)列,那么采
11、用短作業(yè)優(yōu)先的作業(yè)調(diào)度算法總會(huì)獲得最小的平均周轉(zhuǎn)時(shí)間響應(yīng)比高著優(yōu)先:先調(diào)度響應(yīng)比高著 響應(yīng)比=已等待時(shí)間/所需CPU時(shí)間在確定作業(yè)調(diào)度算法時(shí)應(yīng)注意的問題:公平對待后備作業(yè)隊(duì)列中的每一個(gè)作業(yè),避免無故或無限期的延遲一個(gè)作業(yè)的執(zhí)行,使各類用戶感到滿意使進(jìn)入內(nèi)存的多個(gè)作業(yè),能均衡地使用系統(tǒng)中的資源,避免出現(xiàn)有的資源沒有作業(yè)使用,有的資源卻被多個(gè)作業(yè)爭搶的“忙閑”不均的情況力爭在單位時(shí)間內(nèi)為盡可能多的作業(yè)提供服務(wù),提高整個(gè)系統(tǒng)的吞吐能力存儲(chǔ)管理 計(jì)算機(jī)操作系統(tǒng)的存儲(chǔ)器:CPU寄存器,主存,輔存在考慮計(jì)算機(jī)存儲(chǔ)器的設(shè)計(jì)時(shí),必須顧及價(jià)格、容量、訪問時(shí)間存取時(shí)間越快,價(jià)格越高,容量越小高速緩存:介于寄存器和
12、存儲(chǔ)器之間的存儲(chǔ)器,主要用于備份主存中較常用的數(shù)據(jù),以減少處理機(jī)對主存儲(chǔ)器的訪問次數(shù),提高程序執(zhí)行速度高速緩存容量遠(yuǎn)大于寄存器,比內(nèi)存約小兩到三個(gè)數(shù)量級(jí)左右為了緩和內(nèi)存與處理機(jī)(CPU)速度的不匹配字(字長):一次傳送數(shù)據(jù)的長度16、32、64依系統(tǒng)而定(主)內(nèi)存儲(chǔ)器和高速緩存之間是以“塊”為單位傳遞數(shù)據(jù)的高速緩存與CPU之間則以“字”為單位傳遞數(shù)據(jù)存儲(chǔ)器管理的功能:內(nèi)存的分配與回收存儲(chǔ)的保護(hù)和共享地址定位存儲(chǔ)擴(kuò)充內(nèi)存儲(chǔ)器由一個(gè)個(gè)存儲(chǔ)單元組成,一個(gè)存儲(chǔ)單元可存放若干個(gè)二進(jìn)制的位(bit),8個(gè)二進(jìn)制位被稱為一個(gè)字節(jié)(byte)在操作系統(tǒng)中,把用戶程序指令中的相對地址變?yōu)樗诮^對地址空間中的絕對
13、地址的這個(gè)過程,稱為地址重定位地址的定位方式:絕對定位方式:是在程序裝入內(nèi)存之前,程序指令中的地址就已經(jīng)是絕對地址,已經(jīng)正確地反映了它將要進(jìn)入的存儲(chǔ)區(qū)的位置,不適用于多道程序設(shè)計(jì)環(huán)境靜態(tài)重定位(多道程序環(huán)境下)根據(jù)內(nèi)存的具體情況將裝入模塊裝入到內(nèi)存的適當(dāng)位置,會(huì)使裝入模塊中的所有邏輯地址與實(shí)際裝入內(nèi)存后的物理地址不同。這種地址重定位是在程序執(zhí)行前完成的動(dòng)態(tài)重定位將地址重定位的時(shí)間推遲到程序執(zhí)行時(shí)再進(jìn)行所以裝入內(nèi)存的所有地址都仍是邏輯地址連續(xù)分配存儲(chǔ)方式 :單一連續(xù)分配(靜態(tài)重定位)單道程序環(huán)境下,總體上把內(nèi)存儲(chǔ)器分為兩個(gè)分區(qū):系統(tǒng)區(qū)和用戶區(qū)系統(tǒng)總是把整個(gè)用戶區(qū)分配給一個(gè)用戶使用,把分配給了用戶
14、但未被使用的區(qū)域稱為“內(nèi)部碎片”單一連續(xù)分區(qū)存儲(chǔ)管理的缺點(diǎn):由于每次只能有一個(gè)進(jìn)入內(nèi)存,故它不適用于多道程序設(shè)計(jì),工作效率不高,資源利用率低只要作業(yè)比用戶區(qū)小,在用戶區(qū)里就會(huì)形成碎片,造成資源浪費(fèi)大作業(yè)無法在小內(nèi)存中運(yùn)行為緩解大作業(yè)小內(nèi)存的情況提出覆蓋技術(shù)和對換技術(shù)覆蓋技術(shù):允許一個(gè)作業(yè)的若干個(gè)程序段使用同一個(gè)存儲(chǔ)區(qū)對換技術(shù):以輔助存儲(chǔ)器作為內(nèi)存的后援(硬盤)固定分區(qū)存儲(chǔ)管理(靜態(tài)):分區(qū)數(shù)目、大小固定預(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)入到“能
15、容納該作業(yè)的最小分區(qū)”的那個(gè)后備隊(duì)列中去排隊(duì)分區(qū)的分配與釋放方案:在隊(duì)列中挑選出第一個(gè)可容納的作業(yè)進(jìn)入優(yōu)點(diǎn):選擇效率高缺點(diǎn):小作業(yè)-大內(nèi)存在這個(gè)隊(duì)列中進(jìn)行搜索,找到這個(gè)分區(qū)能夠容納的最大的那個(gè)作業(yè),讓它進(jìn)入運(yùn)行優(yōu)點(diǎn):存儲(chǔ)空間利用率高,產(chǎn)生內(nèi)部碎片盡可能的小缺點(diǎn):選擇效率低在系統(tǒng)中至少保留一個(gè)小的分區(qū),以避免因?yàn)檫\(yùn)行小作業(yè)而被迫分配打分去的發(fā)生為具體管理各個(gè)分區(qū),并建立一個(gè)“分區(qū)分配表”,其中包括每個(gè)分區(qū)的起始位置大小及狀態(tài)特點(diǎn)它是最簡單的,具有“多道”色彩的存儲(chǔ)管理方案,提高資源利用率當(dāng)把一個(gè)分區(qū)分配給某個(gè)作業(yè)時(shí),該作業(yè)的程序?qū)⒁淮涡缘娜垦b入到分配給他的連續(xù)分區(qū)里靜態(tài)重定位,在分區(qū)內(nèi)的程序不
16、能隨意移動(dòng)缺點(diǎn)進(jìn)入分區(qū)的作業(yè)尺寸不見得與分區(qū)的長度相吻合,勢必產(chǎn)生內(nèi)部碎片,引起資源的浪費(fèi)如果到達(dá)作業(yè)的尺寸比任何一個(gè)分區(qū)的長度都大,它就無法運(yùn)行可變分區(qū)存儲(chǔ)管理:分區(qū)的邊界劃分隨作業(yè)的需求可變,分區(qū)的數(shù)目隨著進(jìn)入作業(yè)的多少可變,消滅了內(nèi)部碎片(可能會(huì)產(chǎn)生內(nèi)部碎片)。外部碎片是指無法分配給用戶使用的存儲(chǔ)區(qū)基本思想:在作業(yè)要求裝入內(nèi)存儲(chǔ)器時(shí),如果當(dāng)時(shí)內(nèi)存儲(chǔ)器中有足夠的存儲(chǔ)空間滿足該作業(yè)的需求,就劃分出一個(gè)與作業(yè)相對地址空間同樣大小的分區(qū),并分配給它要解決的問題采用一種新的地址重定位技術(shù),動(dòng)態(tài)地址重定位,以便程序能夠在內(nèi)存儲(chǔ)器中隨意移動(dòng),為空閑區(qū)的合并提供保證記住系統(tǒng)中各個(gè)分區(qū)的使用情況給出分區(qū)分
17、配算法地址動(dòng)態(tài)重定位過程(在程序執(zhí)行時(shí)動(dòng)態(tài)完成)為實(shí)施地址動(dòng)態(tài)重定位,硬件要增加一個(gè)地址轉(zhuǎn)換機(jī)構(gòu),這個(gè)機(jī)構(gòu)一般由地址轉(zhuǎn)換線路和一個(gè)定位寄存器(基址寄存器)組成地址的靜態(tài)重定位和動(dòng)態(tài)重定位的比較地址轉(zhuǎn)換時(shí)刻:靜態(tài)重定位是在程序運(yùn)行之前完成地址轉(zhuǎn)換的,而動(dòng)態(tài)重定位是在程序執(zhí)行時(shí)完成誰來完成任務(wù):靜態(tài)重定位是由軟件完成地址轉(zhuǎn)換工作的,而動(dòng)態(tài)重定位則是由一套硬件提供的地址轉(zhuǎn)換機(jī)構(gòu)來完成完成的形式:靜態(tài)重定位是在裝入時(shí)一次性集中地把程序指令中所有要轉(zhuǎn)換的地址加以轉(zhuǎn)換;而動(dòng)態(tài)重定位則是每執(zhí)行一條執(zhí)行時(shí),就對其地址加以轉(zhuǎn)換完成的結(jié)果:實(shí)施靜態(tài)重定位,原來的指令地址部分被修改了,而動(dòng)態(tài)重定位只是按照所形成的地
18、址去執(zhí)行這條指令,并不對指令本身做任何修改空閑區(qū)的合并分區(qū)的管理表格法:一張已分配表,一張空閑表(分區(qū)號(hào),分區(qū)大小,分區(qū)起始地址、狀態(tài))單鏈表法:一個(gè)存放該分區(qū)的長度,另一個(gè)存放它下一個(gè)空閑分區(qū)的起始地址雙鏈表法:還存放上一個(gè)空閑區(qū)起始地址空閑分區(qū)的分配算法最先適應(yīng)算法:要求空閑分區(qū)鏈以地址遞增的次序鏈接(對大作業(yè)不利)最佳適應(yīng)算法:每次為作業(yè)分配內(nèi)存時(shí),總是把能滿足要求,又是最小的空閑分區(qū)分配給作業(yè),避免“大材小用” 按其容量最壞適應(yīng)算法:挑選一個(gè)最大的空閑區(qū),從中分割一部分存儲(chǔ)空間給作者使用,以至于存儲(chǔ)器中缺乏大的空閑分區(qū),照顧中小作業(yè)的需求循環(huán)首次適應(yīng)算法:從上次分配的位置之后開始查找可
19、變分區(qū)存儲(chǔ)管理的特點(diǎn)作業(yè)一次性的全部裝入到一個(gè)連續(xù)的存儲(chǔ)分區(qū)中分區(qū)是按照作業(yè)對存儲(chǔ)的需求劃分的,所以不會(huì)出現(xiàn)內(nèi)部碎片為了確保作業(yè)能夠在內(nèi)存中移動(dòng),要有硬件的支持,實(shí)行指令地址的動(dòng)態(tài)重定位缺點(diǎn):仍然沒有解決小內(nèi)存裕興大作業(yè)的問題,只要作業(yè)的存儲(chǔ)需求大于系統(tǒng)提供的整個(gè)用戶區(qū),該作業(yè)就無法投入運(yùn)行雖然避免了內(nèi)部碎片,但有可能出現(xiàn)極小的翻去暫時(shí)分配不出去的情形,引起了外部碎片,為了形成大的分區(qū),可變分區(qū)存儲(chǔ)管理通過移動(dòng)程序來達(dá)到分區(qū)合并的目的,然而程序的移動(dòng)是很花費(fèi)時(shí)間的,增加了系統(tǒng)在這方面的投入與開銷分頁式存儲(chǔ)管理:需要兩次訪問內(nèi)存,目的是提高內(nèi)存利用率分頁式儲(chǔ)存管理是將固定分區(qū)方法與動(dòng)態(tài)重定位技術(shù)
20、結(jié)合在一起,需要硬件支持基本思想:首先把整個(gè)內(nèi)存儲(chǔ)器劃分成大小相等的許多分區(qū),每個(gè)分區(qū)稱為“一塊”在分頁式存儲(chǔ)管理中,塊是存儲(chǔ)分配的單位用戶作業(yè)仍然是相對于“0”進(jìn)行編址,形成一個(gè)連續(xù)的相對地址空間用戶程序相對地址空間中的每一個(gè)分區(qū)被稱為“頁”,用戶相對地址空間中的每一個(gè)相對地址,都可以用(頁號(hào),頁內(nèi)位移)這樣的數(shù)對來表示物理地址=頁的大小*頁號(hào)+頁內(nèi)位移頁號(hào)=相對地址/塊尺寸頁內(nèi)位移=相對地址%塊尺寸頁與塊對應(yīng)關(guān)系表稱為“頁表”快速寄存器組單獨(dú)起名為“相聯(lián)寄存器”,簡稱“快表”快表與頁表聯(lián)合工作,先查找快表,若無再查找頁表并把數(shù)據(jù)寫入快表(訪問頁表時(shí)間+訪問一次內(nèi)存時(shí)間)*命中率+訪問快表時(shí)
21、間*命中率=平均內(nèi)存存取時(shí)間頁面尺寸大多選在512byte到64kb之間特點(diǎn):內(nèi)存儲(chǔ)器實(shí)現(xiàn)被劃分成相等尺寸的塊,它是進(jìn)行存儲(chǔ)分配的單元用戶作業(yè)的相對地址空間按照塊的尺寸劃分成頁,這是在系統(tǒng)內(nèi)部進(jìn)行的,用戶感覺不到相對地址空間中的頁可以進(jìn)入內(nèi)存中的任何一個(gè)空閑塊,并且分頁式存儲(chǔ)管理實(shí)行的是動(dòng)態(tài)重定位,因此它打破了一個(gè)作業(yè)必須占據(jù)連續(xù)的存儲(chǔ)空間的限制,作業(yè)在不連續(xù)的存儲(chǔ)區(qū)里,也能夠得到正確的運(yùn)行缺點(diǎn):平均每一個(gè)作業(yè)要浪費(fèi)半頁大小的存儲(chǔ)塊,會(huì)產(chǎn)生內(nèi)部碎片作業(yè)雖然可以不占據(jù)連續(xù)的存儲(chǔ)區(qū),但是每次仍然要求一次全部進(jìn)入內(nèi)存。因此,如果作業(yè)很大,其存儲(chǔ)需求大于內(nèi)存,仍然存在小內(nèi)存不能運(yùn)行大作業(yè)的問題分段式存
22、儲(chǔ)管理:目的:方便用戶使用編程,存儲(chǔ)共享,存儲(chǔ)保護(hù),動(dòng)態(tài)增長,動(dòng)態(tài)鏈接要求用戶將自己的整個(gè)作業(yè)程序以多個(gè)相互獨(dú)立的稱為“段”的地址空間提交給系統(tǒng),每個(gè)段都是一個(gè)從“0”開始的一維地址空間,長度不一,操作系統(tǒng)按照段長為作業(yè)分配內(nèi)存空間段表:段號(hào)、段長、該段在內(nèi)存的基址(起始地址)段號(hào),段內(nèi)位移物理地址=段的起始地址+段內(nèi)地址邏輯地址=段號(hào)+段內(nèi)地址分段與分頁的區(qū)別:頁是信息的物理單位,段是信息的邏輯單位分頁提高內(nèi)存的利用率,僅僅是系統(tǒng)管理上的需要,用戶不可見。段是信息的邏輯單位,它通常包括的是一組意義相對完整的信息,分段段的目的主要在于能更好地滿足用戶的需要頁的尺寸由系統(tǒng)決定,段的尺寸因段而異段
23、的長度取決于用戶編寫的程序,通常由編譯程序在對源程序進(jìn)行編譯時(shí)根據(jù)信息的性質(zhì)來劃分頁的地址空間是一維的,段的地址空間是二維的分頁:用戶必須通過鏈接編輯程序,把各程序段鏈接成一個(gè)相對于0編址的線性空間,程序中是通過地址編號(hào)來確定空間中的位置的。因此用戶向系統(tǒng)提供的是一個(gè)一維的邏輯地址空間。分段:用戶不把各程序段鏈接成一個(gè)相對于0進(jìn)行編制的一維線性空間,各程序段之間是通過段號(hào),段內(nèi)位移進(jìn)行訪問的。因此,用戶向系統(tǒng)提供的是一個(gè)二維的邏輯地址空間段頁式存儲(chǔ)管理:(三次訪問內(nèi)存)基本原理:分段和分頁原理的結(jié)合,即先將用戶程序分成若干個(gè)段,再把每個(gè)段分成若干個(gè)頁,并為每一個(gè)段賦予一個(gè)段名。作業(yè)地址空間結(jié)構(gòu)
24、:主程序段,子程序段,數(shù)據(jù)段地址結(jié)構(gòu):段號(hào),段內(nèi)頁號(hào),頁內(nèi)地址系統(tǒng)設(shè)置了位示圖、段表和頁表,記錄主存的使用情況和作業(yè)分配情況邏輯地址=段號(hào)+頁號(hào)+頁內(nèi)位置塊號(hào)*塊長+頁內(nèi)地址虛擬存儲(chǔ)器:是具有請求調(diào)入功能和置換功能,能從邏輯上對內(nèi)存容量加以擴(kuò)充的一種存儲(chǔ)器系統(tǒng),其邏輯容量由內(nèi)存容量和外存容量之和所決定,其運(yùn)行速度接近于內(nèi)存速度。特征:多次性、對換性、虛擬性、離散性請求分頁式存儲(chǔ)管理(需要硬件支持)是基于分頁式存儲(chǔ)管理的一種虛擬存儲(chǔ)器“請求分頁式”是指當(dāng)程序運(yùn)行中需要某一頁時(shí),再把它從輔助存儲(chǔ)器里調(diào)入內(nèi)存使用,解決了小內(nèi)存與大作業(yè)的矛盾,但會(huì)產(chǎn)生內(nèi)部碎片缺頁中斷是指在指令執(zhí)行期間,若發(fā)現(xiàn)所要訪問
25、的指令或數(shù)據(jù)不在內(nèi)存時(shí),便立即產(chǎn)生和處理缺頁中斷信號(hào),以便能及時(shí)將所缺之頁面調(diào)入內(nèi)存缺頁中斷與一般中斷的區(qū)別缺頁中斷率=缺頁次數(shù)/頁面總數(shù)缺頁中斷是在執(zhí)行一條指令中間時(shí)產(chǎn)生的中斷,并立即去處理,一般中斷則是一條指令執(zhí)行完畢后,當(dāng)發(fā)現(xiàn)有中斷請求時(shí),才去響應(yīng)和處理缺頁中斷處理完成后,仍返回到原指令去執(zhí)行,因?yàn)槟菞l指令并未執(zhí)行;而一般中斷則是到下一條指令去執(zhí)行,因?yàn)樯弦粭l指令已經(jīng)執(zhí)行完畢了影響缺頁中斷次數(shù)的因素:分配給作業(yè)的內(nèi)存塊數(shù)頁面尺寸程序的實(shí)現(xiàn)頁面淘汰(置換)算法:頁面淘汰是由缺頁中斷引起的,但缺頁中斷不見得一定引起頁面淘汰先進(jìn)先出頁面淘汰(置換)算法(FIFO)淘汰最先進(jìn)入內(nèi)存的頁面(3個(gè)內(nèi)
26、存塊都為空,3次缺頁中斷)最近最久未用頁面淘汰(置換)算法(LRU)總是把最長時(shí)間未被訪問過的頁面淘汰出去(需要寄存器和棧)最近最少用頁面淘汰(置換)算法(LFU)總是把當(dāng)前使用的最少的頁面淘汰出去為每個(gè)內(nèi)存中的頁面設(shè)置一個(gè)計(jì)數(shù)器(移位寄存器) 加1最優(yōu)(最佳)頁面淘汰(置換)算法(OPT)把以后不再使用的或最長時(shí)間內(nèi)不會(huì)用到的頁面淘汰出去(理論上,不會(huì)實(shí)現(xiàn))注:對于FIFO頁面淘汰算法,有時(shí)增加分配給作業(yè)的可用內(nèi)存塊數(shù),它的缺頁次數(shù)反而上升,通常稱為異常現(xiàn)象設(shè)備管理“設(shè)備”泛指計(jì)算機(jī)系統(tǒng)中的各種外部設(shè)備,外設(shè)(即主機(jī)以外的其他所有設(shè)備)在眾多的I/O設(shè)備中,并不是所有的設(shè)備都是可以共享的,可
27、以借助于磁盤,把只能獨(dú)享的設(shè)備變?yōu)楣蚕?,這就是所謂的“虛擬設(shè)備”SPOOLing技術(shù)設(shè)備是指計(jì)算機(jī)中用以在機(jī)器之間進(jìn)行傳送和接收信息,完成用戶輸入/輸出(I/O)操作的那些部件。比如磁盤、磁帶、打印機(jī)、顯示器、鼠標(biāo)、鍵盤計(jì)算機(jī)I/O系統(tǒng)的組織結(jié)構(gòu):底層是具體的設(shè)備和硬件接口中間是系統(tǒng)軟件(與設(shè)備相關(guān)軟件、與設(shè)備無關(guān)軟件)用戶程序I/O設(shè)備一般是由執(zhí)行I/O操作的機(jī)械部分和執(zhí)行控制I/O的電子部件組成執(zhí)行I/O操作的機(jī)械部分就是一般的I/O設(shè)備執(zhí)行控制I/O的電子部件稱為設(shè)備控制器或適配器為了能夠使CPU設(shè)備控制器中的各個(gè)寄存器進(jìn)行通信,通常采用“單獨(dú)的I/O空間”和“內(nèi)存映射I/O”兩種方法設(shè)
28、備控制器是CPU與外圍設(shè)備之間的接口,是一個(gè)可編址設(shè)備,每一個(gè)地址對應(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)對設(shè)備的控制設(shè)備驅(qū)動(dòng)程序:設(shè)備處理方式:為每一類設(shè)備設(shè)置一個(gè)進(jìn)程,專門用于執(zhí)行這類設(shè)備的I/O操作在整個(gè)系統(tǒng)中設(shè)置一個(gè)I/O進(jìn)程,專門用于執(zhí)行系統(tǒng)中所有各類設(shè)備的I/O操作不設(shè)置專門的設(shè)備處理進(jìn)程,而只為各類設(shè)置相應(yīng)的設(shè)備驅(qū)動(dòng)程序,供用戶或系統(tǒng)進(jìn)程調(diào)用設(shè)備驅(qū)動(dòng)程序的處理過程將抽象要求轉(zhuǎn)換為具體要求對服務(wù)請求進(jìn)行校驗(yàn),即檢查I/O請求的合法性檢查設(shè)備的狀態(tài)傳送必要的
29、參數(shù)啟動(dòng)I/O設(shè)備工作方式的設(shè)置I/O接口程序:是操作系統(tǒng)中與設(shè)備無關(guān)的軟件,它從上層接收用戶對設(shè)備提出的I/O請求,然后負(fù)責(zé)吧I/O請求轉(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è)備的分類基于設(shè)備的從屬關(guān)系系統(tǒng)設(shè)備(鍵盤、顯示器、打印機(jī)、磁盤驅(qū)動(dòng))用戶設(shè)備基于設(shè)備的分配特性獨(dú)享設(shè)備(打印機(jī))共享設(shè)備虛擬設(shè)備(SPOOLing技術(shù))基于設(shè)備的工作特性輸入/輸出設(shè)備(字符設(shè)備)存儲(chǔ)設(shè)備(塊設(shè)備) 磁盤、磁帶按信息交換的單位塊設(shè)備:用于存儲(chǔ)信息,屬于結(jié)構(gòu)設(shè)備。磁盤、磁帶(以塊為單
30、位傳送信息)字符設(shè)備:以單個(gè)字符為單位來傳送信息。鍵盤設(shè)備管理的目標(biāo)提高外部設(shè)備的利用率為用戶提供便利、統(tǒng)一的使用界面設(shè)備管理的功能提供一組I/O命令進(jìn)行設(shè)備的分配和回收對緩沖區(qū)進(jìn)行管理實(shí)現(xiàn)真正的I/O操作輸入輸出管理步驟用戶在程序中使用系統(tǒng)提供的輸入/輸出命令發(fā)出I/O請求輸入輸出管理程序接受這個(gè)請求“設(shè)備驅(qū)動(dòng)程序”來具體完成所要求的的I/O操作實(shí)現(xiàn)設(shè)備中斷處理程序來處理這個(gè)請求設(shè)備的輸入輸出管理程序由3塊內(nèi)容組成:接受用戶的I/O請求,組織管理輸入輸出進(jìn)行,輸入輸出的善后處理設(shè)備控制:設(shè)備控制塊DCB中存放的是一臺(tái)具體設(shè)備的有關(guān)信息,找到一個(gè)設(shè)備的DCB,就得到了該設(shè)備的特性,各種參數(shù),使
31、用情況等,所以DCB是設(shè)備管理中最重要的一條數(shù)據(jù)結(jié)構(gòu)獨(dú)享設(shè)備中具有排他性,只能采取“靜態(tài)分配”的策略靜態(tài)分配:用戶作業(yè)開始之前,由系統(tǒng)一次分配給該作業(yè)所需的設(shè)備,控制器和通道,不會(huì)發(fā)生死鎖動(dòng)態(tài)分配:在進(jìn)程執(zhí)行過程中進(jìn)行的設(shè)備分配,可能造成死鎖對獨(dú)享設(shè)備采用的分配算法:先來先服務(wù)優(yōu)先級(jí)高者先服務(wù)共享磁盤的調(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)程就可以使用。每一個(gè)時(shí)刻只有一個(gè)作業(yè)用調(diào)度算法“先來先服務(wù)”調(diào)度算法(并不理想)(移臂調(diào)度,減少查找時(shí)間)以I/O請求到達(dá)的先后次序作為磁盤調(diào)度的順
32、序“最短查找時(shí)間”調(diào)度算法把距離磁頭當(dāng)前位置最近的I/O請求作為下一次調(diào)度的對象“電梯”調(diào)度算法(SCAN)總是沿著此案移動(dòng)臂的移動(dòng)方向選擇距離磁頭當(dāng)前位置最近的I/O請求,作為下一次調(diào)度的對象“單向掃描”調(diào)度算法(循環(huán)掃描 CSCAN)總是從0號(hào)柱面開始往里移動(dòng)移動(dòng)臂,遇到有I/O請求就進(jìn)行處理,直到到達(dá)最后一個(gè)請求柱面,然后移動(dòng)臂立即帶動(dòng)磁頭不做任何服務(wù)地快速返回到0號(hào)柱面,開始下一次掃描對I/O設(shè)備的控制方式(數(shù)據(jù)傳輸方式)程序循環(huán)測試方式(程序查詢式)是指用戶進(jìn)程使用start指令啟動(dòng)設(shè)備后,不斷地執(zhí)行test指令,去測試所啟動(dòng)設(shè)備的狀態(tài)寄存器。只有在狀態(tài)寄存器出現(xiàn)了所需要的狀態(tài)后,才
33、停止測試工作,完成輸入/輸出。數(shù)據(jù)寄存器:用來存放傳輸?shù)臄?shù)據(jù)狀態(tài)寄存器:用來記錄設(shè)備當(dāng)前所處狀態(tài)中斷方式所謂“中斷”是一種使CPU暫時(shí)中止正在執(zhí)行的程序而轉(zhuǎn)去處理特殊時(shí)間的操作。引起中斷的時(shí)間稱為中斷源。程序中產(chǎn)生的中斷,由CPU的某些錯(cuò)誤結(jié)果(如,計(jì)算機(jī)溢出)產(chǎn)生的中斷稱為“內(nèi)中斷”,由外部設(shè)備控制器引起的中斷稱為“外中斷”直接存儲(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控制邏輯通道
34、方式通道方式能夠使CPU徹底從I/O中解放出來。CPU進(jìn)行善后處理和啟動(dòng)。通道是一個(gè)獨(dú)立于CPU的,專門用來管理輸入/輸出操作的處理機(jī)。通道是通過執(zhí)行通道程序并與設(shè)備控制器共同實(shí)現(xiàn)對I/O設(shè)備的控制的。它規(guī)定了設(shè)備應(yīng)該執(zhí)行的各種操作的順序。由一系列通道指令所構(gòu)成,CPU對I/O請求只去做啟動(dòng)和善后處理工作,輸入/輸出的管理以及數(shù)據(jù)傳輸?shù)仁乱耍坑赏ǖ廓?dú)立完成。緩沖:原因:緩和CPU與I/O設(shè)備間速度不匹配的矛盾減少對CPU的中斷頻率,放寬對CPU中斷響應(yīng)時(shí)間的限制解決數(shù)據(jù)粒度不匹配的問題提高CPU和I/O設(shè)備之間的并行性緩沖的實(shí)現(xiàn)采用專門的硬件寄存器,比如設(shè)備控制器里的數(shù)據(jù)寄存器,“硬件緩沖
35、”在內(nèi)存儲(chǔ)器中開辟出n個(gè)單元,作為專用的I/O緩沖區(qū),以便存放輸入/輸出的數(shù)據(jù),這種緩沖區(qū)就是“軟件緩沖”根據(jù)緩沖區(qū)的個(gè)數(shù):單緩沖區(qū)、雙緩沖區(qū)、多緩沖區(qū)、緩沖池虛擬設(shè)備通過多道程序技術(shù)可將一臺(tái)物理CPU虛擬為多臺(tái)邏輯CPU,需要硬件的支持。作為后援的硬盤(大容量),具有設(shè)備與CPU并行工作的能力SPOOLing技術(shù)在主機(jī)的直接控制下,實(shí)現(xiàn)以前的脫機(jī)輸入/輸出功能,此時(shí)的外圍操作與CPU對數(shù)據(jù)的處理同時(shí)進(jìn)行,我們把這種在聯(lián)機(jī)情況下實(shí)現(xiàn)的同時(shí)外圍操作的技術(shù)稱為SPOOLing技術(shù),或假脫機(jī)技術(shù)SPOOLing技術(shù)是對脫機(jī)輸入/輸出系統(tǒng)的模擬。SPOOLing系統(tǒng)建立在通道技術(shù)和多道程序技術(shù)的基礎(chǔ)上
36、,以高速隨機(jī)外存(通常為磁盤)為后援存儲(chǔ)器設(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ú)立性軟件操作系統(tǒng)中實(shí)現(xiàn)虛擬設(shè)備的軟件功能模塊由3部分組成預(yù)輸入程序緩輸出程序井管理程序SPOOLing系統(tǒng)由四部分組成輸入井和輸出井在磁盤上開辟出來的兩個(gè)存儲(chǔ)區(qū)域,輸入數(shù)據(jù),輸出數(shù)據(jù)輸入緩沖區(qū)和輸出緩沖區(qū)在內(nèi)存中開辟的兩個(gè)緩沖區(qū)輸入進(jìn)程和輸出進(jìn)程模擬外圍控制機(jī)井管理程序特點(diǎn):提高了I/O的速度將獨(dú)占設(shè)備改造為共享設(shè)備實(shí)現(xiàn)了虛擬設(shè)備的功能文件管理目
37、標(biāo):提高外存儲(chǔ)空間的利用率主要任務(wù):對用戶文件和系統(tǒng)文件進(jìn)行管理,方便用戶使用,并保證文件的安全性文件存儲(chǔ)設(shè)備是以塊為單位進(jìn)行管理的所謂“文件”是指具有完整邏輯意義的一組相關(guān)信息的集合,它是在磁盤上保存信息,而且能方便以后讀取的方法,文件用符號(hào)名加以標(biāo)識(shí),這個(gè)符號(hào)名就被稱為“文件名”文件是指由創(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ù)單位,它描述了對象集文件屬性:文件類型、文件長度、文件的物理位置、文件的建立時(shí)間(最后一次的修改時(shí)間)文件名:在不同
38、的系統(tǒng)之間,對文件名的規(guī)定是不同的。一個(gè)文件名是在創(chuàng)建該文件時(shí)由用戶給出的,操作系統(tǒng)將向用戶提供組成文件名的命名規(guī)則很多操作系統(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í)文件文件被存在大容量的輔助存儲(chǔ)器(外存)中,當(dāng)用戶需要使用時(shí),就通過文件名把相應(yīng)的文件讀到內(nèi)存“文件系統(tǒng)”是指操作系統(tǒng)中與文件管理有關(guān)的那部分軟件
39、,被管理的文件,以及管理文件所需要的數(shù)據(jù)結(jié)構(gòu)(目錄、索引表)的總體對文件的分類按文件的性質(zhì)和用途:系統(tǒng)文件、用戶文件、庫文件按文件中數(shù)據(jù)的形式:源文件、目標(biāo)文件、可執(zhí)行文件按存取控制屬性分類:只執(zhí)行文件、只讀文件、讀寫文件按文件的保護(hù)性質(zhì):只讀文件、讀寫文件、可執(zhí)行文件、不保護(hù)文件按文件的保護(hù)期限:臨時(shí)文件、檔案文件、永久文件按文件的存取方式:順序存取文件、隨機(jī)存取文件按設(shè)備的類型:磁盤文件、磁帶文件、打印文件按文件的物理結(jié)構(gòu):連續(xù)文件、鏈接文件、索引文件按文件的內(nèi)容(組織形式和處理方式):普通文件、目錄文件、特殊文件按文件的邏輯結(jié)構(gòu):流式文件、記錄式文件文件的邏輯結(jié)構(gòu)從用戶使用的角度出發(fā)組織
40、的文件,被稱為是文件的邏輯結(jié)構(gòu),一類是有結(jié)構(gòu)的文件,這是指由一個(gè)以上的記錄構(gòu)成的文件,故又稱為記錄式文件從文件的組織方式來分,可以分為順序文件,索引文件,索引順序文件UNIX操作系統(tǒng)總是以流失作為文件的邏輯結(jié)構(gòu)文件的物理結(jié)構(gòu)文件按不同的組織方式在輔存上存放,就會(huì)得到不同的物理結(jié)構(gòu),文件的物理結(jié)構(gòu)有時(shí)也稱為文件的“存儲(chǔ)結(jié)構(gòu)”文件在輔存(外存)上可以有3種不同的存放方式:連續(xù)存放、鏈接塊存放以及索引表存放對應(yīng)地文件就有3種物理結(jié)構(gòu),分別叫做順序結(jié)構(gòu),鏈接結(jié)構(gòu)和索引結(jié)構(gòu),也叫作連續(xù)文件,串聯(lián)文件,索引文件存放方式連續(xù)存放連續(xù)文件不足之處:必須預(yù)先知道文件的最大長度會(huì)造成磁盤碎片鏈接塊存放串聯(lián)文件不會(huì)
41、因?yàn)榇疟P碎片而浪費(fèi)存儲(chǔ)空間,但使用的指針要占去一些字節(jié),每個(gè)磁盤塊存儲(chǔ)數(shù)據(jù)的字節(jié)數(shù)不再是2的冪,從而降低了系統(tǒng)的運(yùn)行效率索引表存放索引文件文件的存取順序存取隨機(jī)存取磁盤空間的管理磁盤是以塊為單位進(jìn)行分配的磁盤與內(nèi)存之間是以磁盤塊為信息傳輸?shù)膯挝贿x定了塊的大小,還要對它們進(jìn)行管理,即要記住哪些已經(jīng)分配,哪些仍然空閑。常采用的磁盤存儲(chǔ)空間管理方案有:位示圖,空閑塊表,空閑塊鏈文件的操作:創(chuàng)建文件、刪除文件、打開文件、關(guān)閉文件、讀文件、寫文件系統(tǒng)是通過文件的目錄來管理文件的文件目錄也是一種數(shù)據(jù)結(jié)構(gòu),用于標(biāo)識(shí)系統(tǒng)中的文件及其物理地址為每一個(gè)文件開辟一個(gè)存儲(chǔ)區(qū),在它的里面記錄著該文件的有關(guān)信息。我們把該
42、存儲(chǔ)區(qū)稱為“文件控制塊”(FCB) 也是一個(gè)目錄項(xiàng)隨系統(tǒng)的不同,一個(gè)文件的FCB中所包含的內(nèi)容及大小也不盡相同包含內(nèi)容:文件名稱文件在輔存中存放的物理位置文件的邏輯結(jié)構(gòu)文件的物理結(jié)構(gòu)文件的存取控制信息文件管理信息目錄的層次結(jié)構(gòu)如果把所有文件的FCB都登記在一個(gè)文件目錄中,這樣由文件名查文件目錄項(xiàng),直接就能夠找到所需要的文件,那么就成這種文件目錄為一級(jí)目錄結(jié)構(gòu)優(yōu)點(diǎn):簡單,能實(shí)現(xiàn)目錄管理中最基本的功能按名存取缺點(diǎn):查找速度慢,不允許重名,不便于實(shí)現(xiàn)文件共享二級(jí)目錄結(jié)構(gòu):由“主目錄”與“用戶目錄”二級(jí)構(gòu)成,在主目錄(根目錄)中,每個(gè)目錄項(xiàng)的內(nèi)容只是給出文件主名以及它的目錄所在的磁盤地址。在一個(gè)個(gè)用戶
43、目錄中,才是由問價(jià)的呢FCB組成的目錄,用戶目錄,實(shí)際上就是一級(jí)目錄兩級(jí)目錄結(jié)構(gòu)的優(yōu)點(diǎn):提高了檢索目錄的速度在不同的文件目錄中,可以使用相同的文件名不同用戶還可使用不同的文件名訪問系統(tǒng)中的同一個(gè)共享文件缺點(diǎn):若一個(gè)用戶可以擁有很多文件,則查找時(shí)間仍然很長用戶無法對自己的文件進(jìn)行再分類安排樹型目錄結(jié)構(gòu)允許每個(gè)用戶可以擁有多個(gè)目錄,即在用戶目錄的下面可以再分子目錄,子目錄的下面還可以再有子目錄。但每個(gè)文件目錄中,只能有一個(gè)根目錄,每個(gè)文件和每個(gè)目錄都只能有一個(gè)父目錄從根目錄出發(fā)到具體文件所經(jīng)過的各層名字,就構(gòu)成了文件的“路徑名”,從根目錄出發(fā)的這個(gè)路徑名,也稱為文件的“絕對路徑名”。文件的絕對路徑
44、名必須從根目錄出發(fā),且是唯一的,從分隔符開頭在UNIX系統(tǒng)中,路徑名各部分之間是用“/”分隔在MS-DOS系統(tǒng)中,路徑各部分是用“”分隔在MVLTICS系統(tǒng)中,路徑各部分之間是用“”分隔在當(dāng)前目錄下的文件的路徑名,稱為文件的相對路徑名文件的“共享”是指一個(gè)文件可以被多個(gè)授權(quán)用戶共同使用分兩種:任何時(shí)刻只允許一個(gè)用戶使用共享文件允許多個(gè)用戶同時(shí)使用同一個(gè)共享文件,只進(jìn)行讀操作進(jìn)程間的制約關(guān)系在多道程序設(shè)計(jì)環(huán)境下,進(jìn)程程序的執(zhí)行具有并發(fā)性,在相同的前提條件下,兩次執(zhí)行的結(jié)果有可能不相同,使得一個(gè)進(jìn)程對另一個(gè)進(jìn)程的影響無法預(yù)測,在操作系統(tǒng)里把這種由于時(shí)間因素的影響而產(chǎn)生的錯(cuò)誤稱為:“與時(shí)間有關(guān)的錯(cuò)誤
45、”進(jìn)程間具有兩種制約關(guān)系:互斥和同步由于對共享資源的爭奪,導(dǎo)致進(jìn)程之間出現(xiàn)互斥關(guān)系由于對任務(wù)的協(xié)調(diào)工作,導(dǎo)致進(jìn)城之間出現(xiàn)同步關(guān)系把那些可以共享的資源(文件、隊(duì)列、緩沖區(qū)、表格、變量)統(tǒng)稱為共享變量或臨界資源與一個(gè)共享變量(或共享資源)交往的多個(gè)進(jìn)程,為了保證它們各自運(yùn)行結(jié)果的正確性,當(dāng)其中的一個(gè)進(jìn)程正在對該變量(臨界資源)進(jìn)行操作時(shí),就不允許其他進(jìn)程同時(shí)對它操作。進(jìn)程的這種制約關(guān)系被稱為“互斥”注意(互斥進(jìn)程)作為具有互斥關(guān)系的進(jìn)程,它的一部分程序可能用于內(nèi)部的計(jì)算以及內(nèi)部的數(shù)據(jù)處理等,那么只有設(shè)計(jì)共享變量的那一部分程序,才真正需要保證互斥地執(zhí)行,把進(jìn)程程序中“真正需要保證互斥執(zhí)行”的那一段程序(或在每個(gè)進(jìn)程中訪問臨界資源的那段代碼)稱為該進(jìn)程的臨界區(qū)(臨界段)具有互斥關(guān)系的進(jìn)程,并不關(guān)心對方的存在,即使對方不存在,自己也能夠正確地運(yùn)行具有互斥關(guān)系的那些進(jìn)程程序中的臨界區(qū),雖然都是針對同一個(gè)共享變量的程序,但在其上執(zhí)行的操作可以相同也可以不同進(jìn)程的臨界區(qū)是相對于某個(gè)共享變量而言的,不同共享變量的臨界區(qū)之間,不存在互斥關(guān)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工會(huì)采買蛋糕卡合同3篇
- 教育圖書購銷合同
- 政府委托采購合同的變更3篇
- 教育宣傳單設(shè)計(jì)印刷合同3篇
- 教育機(jī)構(gòu)綠化養(yǎng)護(hù)合同3篇
- 提前解除租房合同范本3篇
- 教育培訓(xùn)行業(yè)工作協(xié)議3篇
- 工業(yè)園租賃合同格式打印打印生成3篇
- 排水招投標(biāo)解析3篇
- 文明建設(shè)責(zé)任書3篇
- 人教版三年級(jí)下冊數(shù)學(xué)期中測試卷含答案(新)
- 第24課《穿井得一人》公開課一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì) 統(tǒng)編版語文七年級(jí)上冊
- 提高吸入劑使用正確率品管圈成果匯報(bào)
- 16J914-1 公用建筑衛(wèi)生間
- XX集團(tuán)公司“揭榜掛帥”實(shí)施辦法
- 小學(xué)少先隊(duì)活動(dòng)課贛教三年級(jí)上冊主題一唱響嘹亮的隊(duì)歌勇敢前進(jìn)
- 《穿井得一人》《桑中生李》閱讀練習(xí)及答案
- “大綜合一體化”行政執(zhí)法改革工作自查報(bào)告
- (3)110KV配電裝置安裝單位工程質(zhì)量驗(yàn)收評(píng)定表1
- 課程設(shè)計(jì)之年產(chǎn)90000噸丙酮水連續(xù)精餾塔的設(shè)計(jì)
- 餐飲前臺(tái)餐具與雜件清單
評(píng)論
0/150
提交評(píng)論