版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第四章 計(jì)算機(jī)操作系統(tǒng) 操作系統(tǒng)是配置在計(jì)算機(jī)硬件上的第一層軟件,是控制計(jì)算機(jī)所有操作的軟件。 本章主要講述操作系統(tǒng)概念及構(gòu)成;以點(diǎn)的方式重點(diǎn)講述操作系統(tǒng)中的幾個(gè)基本功能及相關(guān)概念,主要是:進(jìn)程管理、內(nèi)存管理、文件管理、輸入/輸出系統(tǒng)管理;最后介紹幾個(gè)典型的操作系統(tǒng)產(chǎn)品。精選課件4.1 操作系統(tǒng)概念及構(gòu)成4.1.1 操作系統(tǒng)的概念操作系統(tǒng):是管理計(jì)算機(jī)軟硬件資源的程序,同時(shí)它又是用戶與計(jì)算機(jī)硬件的接口。系統(tǒng)程序和應(yīng)用程序操 作 系 統(tǒng)硬 件 層用戶沒(méi)有操作系統(tǒng),應(yīng)用軟件如同空中樓閣,無(wú)法運(yùn)行。 精選課件4.1.2 操作系統(tǒng)的構(gòu)成4.1 操作系統(tǒng)概念及構(gòu)成操作系統(tǒng) 進(jìn)程管理 內(nèi)存管理 文件管理
2、輸入/輸出系統(tǒng)管理 二級(jí)存儲(chǔ)管理用戶接口 聯(lián)網(wǎng)、保護(hù)系統(tǒng)和命令解釋程序系統(tǒng)就是對(duì)CPU的管理。就是如何合理分配和使用內(nèi)存。就是對(duì)文件及文件夾進(jìn)行管理。就是對(duì)外部各種輸入輸出設(shè)備進(jìn)行管理。主要是指對(duì)硬盤(pán)進(jìn)行管理。就是提供對(duì)網(wǎng)絡(luò)管理、對(duì)進(jìn)程工作過(guò)程的保護(hù)及提供用戶與操作系統(tǒng)的接口程序。精選課件4.2.1 操作系統(tǒng)的類別4.2 操作系統(tǒng)類別與計(jì)算環(huán)境批處理系統(tǒng)1多道程序系統(tǒng)2分時(shí)系統(tǒng)3實(shí)時(shí)系統(tǒng)4桌面系統(tǒng)5多處理機(jī)系統(tǒng)6網(wǎng)絡(luò)系統(tǒng)7分布式系統(tǒng)8嵌入式系統(tǒng)9 經(jīng)過(guò)多年的發(fā)展,操作系統(tǒng)多種多樣。早期,操作系統(tǒng)從批處理,多道程序發(fā)展為分時(shí)操作系統(tǒng);另外,為滿足計(jì)算機(jī)處理實(shí)時(shí)事件的需要,就有了實(shí)時(shí)操作系統(tǒng);為適
3、應(yīng)個(gè)人計(jì)算機(jī)系統(tǒng)的需要又出現(xiàn)了桌面操作系統(tǒng);為適應(yīng)并行系統(tǒng)的需要,就有了多處理機(jī)操作系統(tǒng);為滿足網(wǎng)絡(luò)和分布計(jì)算的需要,就有了網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng);此外,還有為支持嵌入式計(jì)算機(jī)的嵌入式操作系統(tǒng)。精選課件4.2.2 計(jì)算環(huán)境 操作系統(tǒng)總是在某種計(jì)算環(huán)境中設(shè)置和使用,就目前來(lái)看計(jì)算環(huán)境可分為以下幾類:4.2 操作系統(tǒng)類別與計(jì)算環(huán)境 1. 傳統(tǒng)計(jì)算環(huán)境 指普通意義下的獨(dú)立或聯(lián)網(wǎng)工作下所形成的計(jì)算環(huán)境。 2.基于Web的計(jì)算環(huán)境 互聯(lián)網(wǎng)的普及使得計(jì)算被延伸到Web環(huán)境。 3.嵌入式計(jì)算環(huán)境 嵌入式計(jì)算機(jī)就是安裝在某些設(shè)備上的計(jì)算部件,其計(jì)算相對(duì)比較簡(jiǎn)單。精選課件4.3.1 進(jìn)程的概念4.3 進(jìn)程
4、管理 什么是進(jìn)程?它與程序有什么區(qū)別? 程序:用戶為完成某一個(gè)特定問(wèn)題而編寫(xiě)的操作步驟。 進(jìn)程:可簡(jiǎn)單地看作是正在執(zhí)行的程序。但是進(jìn)程需要一定的資源來(lái)完成它的任務(wù)(例如CPU時(shí)間、內(nèi)存、文件和I/O設(shè)備) 。 進(jìn)程與程序的區(qū)別在于進(jìn)程是動(dòng)態(tài)的、有生命力的,而程序是靜態(tài)的。一個(gè)程序加載到內(nèi)存,系統(tǒng)就創(chuàng)建一個(gè)進(jìn)程,程序執(zhí)行結(jié)束后,該進(jìn)程也就消亡了。 在計(jì)算機(jī)中,由于多個(gè)程序共享系統(tǒng)資源,就必然引發(fā)對(duì)CPU的爭(zhēng)奪。如何有效地利用CPU資源,如何在多個(gè)請(qǐng)求CPU的進(jìn)程中選擇取舍,這就是進(jìn)程管理要解決的問(wèn)題。精選課件4.3.2 進(jìn)程的狀態(tài)轉(zhuǎn)移新的就緒運(yùn)行終止等待允許中斷退出允許進(jìn)程狀態(tài)及轉(zhuǎn)換圖4.3 進(jìn)
5、程管理如CPU時(shí)間片被用完,迫使進(jìn)程讓出CPU進(jìn)程等待分配CPU進(jìn)程已分配到CPU,正在被執(zhí)行。進(jìn)程正在被創(chuàng)建進(jìn)程已完成進(jìn)程等待一些事件的出現(xiàn) 如進(jìn)程可能要使用某個(gè)I/O設(shè)備而進(jìn)入等待狀態(tài),等待使用相應(yīng)的設(shè)備,當(dāng) I/O完成后進(jìn)程進(jìn)入就緒隊(duì)列。精選課件4.3.3 進(jìn)程控制塊PCB(略)4.3 進(jìn)程管理 為了控制進(jìn)程,操作系統(tǒng)就必須知道進(jìn)程存儲(chǔ)在哪里,以及進(jìn)程的一些屬性。 進(jìn)程控制塊是進(jìn)程實(shí)體的一部分,是操作系統(tǒng)中記錄進(jìn)程的專用數(shù)據(jù)結(jié)構(gòu)。一個(gè)新的進(jìn)程創(chuàng)建時(shí),操作系統(tǒng)就會(huì)為該進(jìn)程建立一個(gè)進(jìn)程控制塊。操作系統(tǒng)根據(jù)進(jìn)程控制塊對(duì)并發(fā)進(jìn)程進(jìn)行控制。精選課件4.3.4 進(jìn)程調(diào)度及隊(duì)列圖4.3 進(jìn)程管理 在某
6、一時(shí)刻,計(jì)算機(jī)的CPU(單核)只能運(yùn)行一個(gè)進(jìn)程,如果存在多個(gè)進(jìn)程,其它進(jìn)程就需要等CPU空閑時(shí)才能被調(diào)度執(zhí)行。 當(dāng)一個(gè)進(jìn)程處于等待或CPU時(shí)間片用完時(shí),操作系統(tǒng)就會(huì)從該進(jìn)程中拿走CPU控制權(quán),然后再交給其它進(jìn)程使用,這就是進(jìn)程的調(diào)度。 進(jìn)程B進(jìn)程A進(jìn)程CCPU時(shí)間進(jìn)程C進(jìn)程B進(jìn)程A精選課件4.3.5 CPU調(diào)度及其準(zhǔn)則4.3 進(jìn)程管理 在設(shè)計(jì)CPU調(diào)度程序時(shí)主要應(yīng)該考慮的準(zhǔn)則包括: (1) CPU使用率。讓CPU盡可能地忙。 (2) 吞吐量。讓CPU在一定時(shí)間內(nèi)完成的進(jìn)程數(shù)盡可能多。 (3) 周轉(zhuǎn)時(shí)間。讓進(jìn)程從提交到運(yùn)行完成的時(shí)間盡可能短。 (4) 等待時(shí)間。讓進(jìn)程在就緒隊(duì)列中等待所花時(shí)間之和
7、盡可能短。 (5) 響應(yīng)時(shí)間。讓進(jìn)程從提交請(qǐng)求到產(chǎn)生第一響應(yīng)之間的時(shí)間盡可能短。精選課件4.3.7 進(jìn)程的同步與互斥4.3 進(jìn)程管理 進(jìn)程的同步就是指相互協(xié)作的進(jìn)程不斷調(diào)整它們之間的相對(duì)速度,以實(shí)現(xiàn)共同有序地推進(jìn)。 換句話說(shuō),在操作系統(tǒng)中,允許多個(gè)進(jìn)程并發(fā)運(yùn)行。然而,有些進(jìn)程之間本身存在某種聯(lián)系,它們?cè)谙到y(tǒng)中需要一種協(xié)作,以保證進(jìn)程能正確有序地執(zhí)行并維護(hù)數(shù)據(jù)的一致性。把數(shù)據(jù)從鍵盤(pán)送入緩沖區(qū)給B發(fā)信號(hào)(緩沖區(qū)已滿)等待B發(fā)回信號(hào)(再送數(shù)據(jù)到緩沖區(qū))A進(jìn)程B進(jìn)程等待A信號(hào)(等待取數(shù)據(jù)并計(jì)算)取緩沖區(qū)中的數(shù)據(jù)進(jìn)行計(jì)算給A發(fā)信號(hào)(緩沖區(qū)數(shù)據(jù)已取走)例:A、B兩進(jìn)程同步工作如下圖(A進(jìn)程負(fù)責(zé)從鍵盤(pán)讀數(shù)據(jù)
8、到緩沖區(qū),B進(jìn)程從緩沖區(qū)取數(shù)據(jù)并計(jì)算。精選課件4.3 進(jìn)程管理 在操作系統(tǒng)中,可能存在著多個(gè)進(jìn)程。而系統(tǒng)中一些資源一次只允許一個(gè)進(jìn)程使用,這類資源被稱為臨界資源。在進(jìn)程中訪問(wèn)臨界資源的那段程序稱為臨界區(qū)。當(dāng)一個(gè)進(jìn)程進(jìn)入臨界區(qū)執(zhí)行時(shí),其它進(jìn)程就不允許進(jìn)入臨界區(qū)執(zhí)行,否則就會(huì)導(dǎo)致錯(cuò)誤結(jié)果。例如: 多個(gè)進(jìn)程在競(jìng)爭(zhēng)使用打印機(jī)時(shí)表現(xiàn)為互斥。 一個(gè)文件可供多個(gè)進(jìn)程共享,其中有一個(gè)進(jìn)程在寫(xiě)操作時(shí),其它進(jìn)程則不允許同時(shí)寫(xiě)或讀,表現(xiàn)為互斥。 由此得出: 多個(gè)進(jìn)程并發(fā)執(zhí)行時(shí),只允許一個(gè)進(jìn)程進(jìn)入臨界區(qū)運(yùn)行,這就是進(jìn)程的互斥。 精選課件在多道程序設(shè)計(jì)中,多個(gè)進(jìn)程可能競(jìng)爭(zhēng)一定數(shù)量的資源。一個(gè)進(jìn)程在申請(qǐng)資源時(shí),如果所申請(qǐng)
9、資源不足,該進(jìn)程就必須處于等待狀態(tài)。如果所申請(qǐng)的資源被其它進(jìn)程占有,那么進(jìn)程的等待狀態(tài)就可能無(wú)法改變,從而形成進(jìn)程之間相互一直等待的局面,這就是死鎖。4.3.8 進(jìn)程的死鎖及處理方法4.3 進(jìn)程管理競(jìng)爭(zhēng)資源引起死鎖 死鎖舉例: 四方街區(qū)的車輛阻塞。每個(gè)方向都希望其它方讓出通道,但誰(shuí)也不能夠讓出。精選課件引起死鎖的四個(gè)必要條件: (1) 互斥:某一資源任一時(shí)刻只能有一個(gè)進(jìn)程獨(dú)占,若另一進(jìn)程申請(qǐng)?jiān)撡Y源則需延遲到該資源釋放為止。 (2) 占有并等待:即該進(jìn)程占有部分資源后還在等待其它資源,而該資源被其它進(jìn)程占有。 (3) 非搶占:某進(jìn)程已占用資源且不主動(dòng)放棄它所占有的資源時(shí),其它進(jìn)程不能強(qiáng)占該資源,
10、只有等其完成任務(wù)并釋放資源。 (4) 循環(huán)等待:在出現(xiàn)死鎖的系統(tǒng)中,一定存在這樣一個(gè)進(jìn)程鏈,其中每個(gè)進(jìn)程至少占有其它進(jìn)程所必需的資源,從而形成一個(gè)等待鏈。4.3 進(jìn)程管理進(jìn)程A進(jìn)程B打印機(jī)CD-ROM 死鎖舉例:進(jìn)程A:獲得CD-ROM使用權(quán),申請(qǐng)打印機(jī)進(jìn)程B:獲得打印機(jī)使用權(quán),申請(qǐng)CD-ROM死鎖:此時(shí)進(jìn)程A、B均被阻塞,無(wú)法運(yùn)行精選課件處理死鎖問(wèn)題的三種方式:(1) 使用協(xié)議預(yù)防和避免死鎖,確保系統(tǒng)從不進(jìn)入死鎖狀態(tài)。(2) 允許系統(tǒng)進(jìn)入死鎖狀態(tài),然后檢測(cè)出死鎖,并加以恢復(fù)。(3) 可忽略進(jìn)程死鎖問(wèn)題,并假裝系統(tǒng)中死鎖從來(lái)不會(huì)發(fā)生。即沒(méi)有必要把精力花在小概率事件上。4.3 進(jìn)程管理處理死鎖優(yōu)
11、先考慮的順序:先預(yù)防和避免再檢測(cè)和恢復(fù)精選課件4.4 內(nèi)存管理 內(nèi)存是現(xiàn)代操作系統(tǒng)的核心,是可被CPU和I/O設(shè)備所共同訪問(wèn)的數(shù)據(jù)倉(cāng)庫(kù)。計(jì)算機(jī)的所有程序運(yùn)行時(shí)都要調(diào)入內(nèi)存。 內(nèi)存管理的主要工作是:為每個(gè)用戶進(jìn)程合理地分配內(nèi)存,以保證各個(gè)進(jìn)程之間在存儲(chǔ)區(qū)不發(fā)生沖突;當(dāng)內(nèi)存不足時(shí),如何把內(nèi)存和外存結(jié)合起來(lái),給用戶提供一個(gè)比實(shí)際內(nèi)存大得多的虛擬內(nèi)存,使得程序能順利執(zhí)行。精選課件4.4.1 用戶程序執(zhí)行與地址映射(了解)4.4 內(nèi)存管理 用戶編寫(xiě)程序在執(zhí)行前,需要多個(gè)處理步驟,然后在內(nèi)存中等待執(zhí)行。當(dāng)然有時(shí)并非每個(gè)步驟都是必需的。源程序編譯器或匯編器目標(biāo)模塊鏈接編輯器加載模塊加載器內(nèi)存中二進(jìn)制內(nèi)存映像
12、其它目標(biāo)模塊動(dòng)態(tài)裝入的系統(tǒng)庫(kù)系統(tǒng)庫(kù)動(dòng)態(tài)鏈接編譯階段加載階段執(zhí)行階段圖4.4 用戶程序多步驟處理說(shuō)明:編譯器和匯編器用于將高級(jí)語(yǔ)言源程序翻譯成二進(jìn)制代碼的機(jī)器語(yǔ)言程序。鏈接器將編譯后不同的程序、函數(shù)庫(kù)文件等連接生成EXE文件 。當(dāng)運(yùn)行EXE文件時(shí),操作系統(tǒng)的加載器讀取EXE文件并將它們加載到內(nèi)存中。預(yù)先編譯好的在調(diào)入內(nèi)存前加載的庫(kù)文件就是靜態(tài)鏈接庫(kù)文件。運(yùn)行時(shí)動(dòng)態(tài)裝入的庫(kù)文件叫動(dòng)態(tài)鏈接庫(kù)文件。 OBJ文件EXE文件精選課件4.4 內(nèi)存管理 1.編譯階段:如果在編譯時(shí)就知道進(jìn)程將在內(nèi)存中的什么位置駐留,那么編譯器就可以直接以生成絕對(duì)地址代碼。 2.加載階段: 不知道進(jìn)程將駐留在什么位置,那么編譯器
13、就必須生成程序的邏輯地址,在加載階段再轉(zhuǎn)變成內(nèi)存的絕對(duì)地址。 3.執(zhí)行階段:如果進(jìn)程在執(zhí)行時(shí)可以從一個(gè)內(nèi)存段移動(dòng)到另一個(gè)內(nèi)存段,那么進(jìn)程的絕對(duì)地址映射工作只能延遲到執(zhí)行時(shí)進(jìn)行。 通常,將指令和數(shù)據(jù)的地址映射成內(nèi)存地址可以發(fā)生在以下三個(gè)執(zhí)行階段。(了解)精選課件4.4.2 物理地址空間與邏輯地址空間 4.4 內(nèi)存管理 幾個(gè)相關(guān)概念物理地址:是計(jì)算機(jī)內(nèi)存單元的真實(shí)地址。 物理地址空間:由物理地址所構(gòu)成的地址范圍。 邏輯地址:經(jīng)編譯后的用戶程序地址,從0開(kāi)始編址。 邏輯地址空間:由邏輯地址所構(gòu)成的地址范圍。 地址映射:用戶程序在運(yùn)行時(shí)要裝入內(nèi)存,這就需要將邏輯地址變換成物理地址,該過(guò)程稱為地址映射,
14、也稱重定位。精選課件用戶編寫(xiě)的源程序是不考慮地址的,源程序經(jīng)編譯后產(chǎn)生邏輯地址。將邏輯地址轉(zhuǎn)換為內(nèi)存中的物理地址是由計(jì)算機(jī)中被稱為內(nèi)存管理單元的硬件設(shè)備來(lái)實(shí)現(xiàn)的,將邏輯地址與內(nèi)存管理單元中存放的內(nèi)存基址相加就得到物理地址。 物理地址Base + X邏輯地址XCPU重定位寄存器Base+內(nèi)存內(nèi)存管理單元4.4 內(nèi)存管理LOAD 1, 50012345LOAD 1, 50012345 0100500700程序A的邏輯地址空間程序A的物理在址空間. . . . . . . . . . . . .5000510055005700精選課件4.4.3 進(jìn)程使用內(nèi)存的交換技術(shù) 為更加有效地使用內(nèi)存,進(jìn)程在不
15、運(yùn)行時(shí),可以暫時(shí)從內(nèi)存移至外存,需要再運(yùn)行時(shí)再重新調(diào)回到內(nèi)存中。也就是說(shuō)內(nèi)存管理程序可將剛剛運(yùn)行過(guò)的進(jìn)程從內(nèi)存中換出以釋放占用的內(nèi)存空間,然后將另一個(gè)要運(yùn)行的進(jìn)程占據(jù)前者釋放的內(nèi)存空間。4.4 內(nèi)存管理進(jìn)程A操作系統(tǒng)未用內(nèi)存區(qū)進(jìn)程A操作系統(tǒng)未用內(nèi)存區(qū)進(jìn)程B進(jìn)程A操作系統(tǒng)未用內(nèi)存區(qū)進(jìn)程B進(jìn)程C未用內(nèi)存區(qū)操作系統(tǒng)未用內(nèi)存區(qū)進(jìn)程B進(jìn)程C未用內(nèi)存區(qū)操作系統(tǒng)未用內(nèi)存區(qū)進(jìn)程B進(jìn)程C進(jìn)程D注:這種交換技術(shù)多用于分時(shí)系統(tǒng)精選課件4.4.4 內(nèi)存分配方案-連續(xù)4.4 內(nèi)存管理進(jìn)程A操作系統(tǒng)未用內(nèi)存區(qū)進(jìn)程C未用內(nèi)存區(qū)在內(nèi)存分配中,常常把內(nèi)存中還沒(méi)有被分配的可用空間稱為孔(hole)。 開(kāi)始時(shí)所有內(nèi)存是一個(gè)大的孔,
16、隨著內(nèi)存分配的進(jìn)行就會(huì)形成許多不連續(xù)的大小不同的孔。在連續(xù)內(nèi)存分配方案中,當(dāng)新進(jìn)程需要內(nèi)存時(shí),就為其尋找合適的孔,實(shí)現(xiàn)內(nèi)存分配。該方案需要為每個(gè)進(jìn)程分配連續(xù)的內(nèi)存物理空間。 精選課件4.4.5 內(nèi)存分配方案-分頁(yè)式4.4 內(nèi)存管理分頁(yè)管理基本思想: 內(nèi)存物理地址空間劃分為若干個(gè)大小相等的塊(頁(yè)框) 進(jìn)程的邏輯地址空間也劃分為同樣大小的塊(頁(yè)面) 內(nèi)存分配時(shí)每個(gè)頁(yè)面對(duì)應(yīng)地分配一個(gè)頁(yè)框,而一個(gè)進(jìn)程所分得頁(yè)框在位置上不必是連續(xù)的。頁(yè)表:操作系統(tǒng)為每個(gè)用戶程序建立一張頁(yè)表,該表記錄用戶程序的每個(gè)邏輯頁(yè)面存放在哪一個(gè)內(nèi)存物理頁(yè)框。7頁(yè)6頁(yè)5頁(yè)4頁(yè)3頁(yè)2頁(yè)1頁(yè)0頁(yè)用戶程序1191076425塊號(hào)76543
17、210頁(yè)號(hào)頁(yè)表11109876543210內(nèi)存頁(yè)面頁(yè)框精選課件pdfCPUpdfdff 00000000f 11111111邏輯地址物理地址頁(yè)表物理內(nèi)存分頁(yè)式內(nèi)存管理從邏輯地址到物理地址的映射 : (了解)頁(yè)號(hào)p頁(yè)內(nèi)地址d(偏移量)注:邏輯地址的表示:4.4 內(nèi)存管理精選課件4.5.1 基本思想4.5 虛擬內(nèi)存方案虛擬內(nèi)存是一個(gè)容量很大的存儲(chǔ)器的邏輯模型,它不是任何實(shí)際的物理存儲(chǔ)器。虛擬內(nèi)存包括物理內(nèi)存和一部分外存(這里所指的外存一般是指硬盤(pán))。 精選課件4.5 虛擬內(nèi)存方案虛擬內(nèi)存:對(duì)于一個(gè)進(jìn)程來(lái)講,如果僅將當(dāng)前要運(yùn)行的幾個(gè)頁(yè)面裝入內(nèi)存便可以開(kāi)始運(yùn)行,而其余頁(yè)面可暫時(shí)留在磁盤(pán)上,需要時(shí)再調(diào)入
18、內(nèi)存,并且調(diào)入時(shí)也不占用新的內(nèi)存空間,而是對(duì)原來(lái)運(yùn)行過(guò)的頁(yè)面進(jìn)行置換。這樣,就可以在計(jì)算機(jī)有限的內(nèi)存中同時(shí)駐留多個(gè)進(jìn)程。而對(duì)用戶來(lái)講感覺(jué)到系統(tǒng)提供了足夠大的物理內(nèi)存,而實(shí)際上并非真實(shí)的,這就是虛擬內(nèi)存。 精選課件4.5.2 頁(yè)面請(qǐng)求與頁(yè)面置換算法4.5 虛擬內(nèi)存方案 在虛擬內(nèi)存技術(shù)中,進(jìn)程運(yùn)行時(shí)并沒(méi)有將所有頁(yè)面裝入到內(nèi)存,在運(yùn)行過(guò)程中進(jìn)程會(huì)不斷地請(qǐng)求頁(yè)面,如果訪問(wèn)的頁(yè)面已在內(nèi)存,就繼續(xù)執(zhí)行下去;但如果要訪問(wèn)的頁(yè)面尚未調(diào)入內(nèi)存,便請(qǐng)求操作系統(tǒng)將所缺頁(yè)面調(diào)入內(nèi)存,以便進(jìn)程能繼續(xù)運(yùn)行,這個(gè)過(guò)程叫頁(yè)面請(qǐng)求。 如果請(qǐng)求頁(yè)面調(diào)入內(nèi)存時(shí),分配給該進(jìn)程的頁(yè)框已用完,就無(wú)法立即裝入所請(qǐng)求頁(yè)面。此時(shí),必須將進(jìn)程中
19、的某個(gè)頁(yè)面從內(nèi)存的頁(yè)框調(diào)出到磁盤(pán)上,再?gòu)拇疟P(pán)上將所請(qǐng)求的頁(yè)面調(diào)入到內(nèi)存該頁(yè)框中,這個(gè)過(guò)程叫頁(yè)面置換。 精選課件4.6.1 文件的概念4.6 文件管理文件:保存在外部存儲(chǔ)設(shè)備上的相關(guān)信息的集合。 文件命名:文件主名+擴(kuò)展名只讀:只允許授權(quán)用戶進(jìn)行讀操作。 讀寫(xiě):只允許授權(quán)用戶進(jìn)行讀和寫(xiě)的操作。 文檔:允許任何用戶進(jìn)行讀寫(xiě)操作。 隱藏:不允許用戶直接看到文件名。 文件存取屬性:精選課件4.6 文件管理文件系統(tǒng):是對(duì)文件進(jìn)行操作和管理的軟件,是用戶與外存之間的接口。該系統(tǒng)將所有文件組織成目錄結(jié)構(gòu)保存在外存,一個(gè)文件對(duì)應(yīng)其中的一個(gè)目錄條,目錄條記錄了文件名、文件位置、文件大小、創(chuàng)建時(shí)間等信息。 操作系
20、統(tǒng)對(duì)文件的基本操作包括:創(chuàng)建文件、文件寫(xiě)、文件讀、文件重定位、文件刪除、文件截短、文件復(fù)制、重命名、更改屬性等。精選課件4.6.2 文件的物理結(jié)構(gòu)和邏輯結(jié)構(gòu)文件的邏輯結(jié)構(gòu)無(wú)結(jié)構(gòu)文件有結(jié)構(gòu)文件流式文件索引順序文件順序文件索引文件4.6 文件管理 文件結(jié)構(gòu)分物理和邏輯結(jié)構(gòu)。其中物理結(jié)構(gòu)是文件在外存上的存儲(chǔ)組織形式,它與具體的存儲(chǔ)設(shè)備有關(guān)。文件邏輯結(jié)構(gòu)是指用戶能直接感受到的文件組織結(jié)構(gòu),它與具體的存儲(chǔ)設(shè)備無(wú)關(guān)。精選課件(1) 無(wú)結(jié)構(gòu)文件main( ) int a, b, sum; scanf(%d %d, &a, &b); sum=a+b; printf(sum=%d, sum); 4.6 文件管理
21、(2) 有結(jié)構(gòu)文件學(xué)號(hào)姓名性別電話郵箱地址0001張為華男0002趙國(guó)迎男0003韓瑩瑩女51685633hyy 可以看成是由無(wú)結(jié)構(gòu)的字符序列組成的文件。是帶有結(jié)構(gòu)的、性質(zhì)相同的記錄的集合。精選課件 順序文件:文件所包含的一系列記錄按照某種順序依次連續(xù)存儲(chǔ)。順序文件是按記錄進(jìn)入文件的先后順序存放、其邏輯順序和物理順序一致的文件。 4.6 文件管理 索引文件:由主文件和索引表構(gòu)成。可實(shí)現(xiàn)快速訪問(wèn)。 按輸入記錄的先后次序建立數(shù)據(jù)區(qū)和索引表。 全部記錄輸入完畢后對(duì)索引表進(jìn)行排序,排序后的索引表和主文件一起就形成了索引文件。精選課件 索引順序文件:順序文件和索引文件特點(diǎn)的結(jié)合。主文件是按主關(guān)鍵字有序排
22、列的,將主文件的所有記錄分組,每組記錄是連續(xù)的,不同組記錄是分散的。索引表中為每組的首記錄建立一索引項(xiàng),組與組之間按關(guān)鍵字大小有序排列,組內(nèi)記錄按順序查找。4.6 文件管理鍵值邏輯地址An qiBao linChen mi索引表姓名年齡性別等An qiAn taBao linChen mi精選課件4.6.3 文件的訪問(wèn)方式1. 順序訪問(wèn)方式4.6 文件管理 主要適合于對(duì)順序文件的訪問(wèn)。其訪問(wèn)的位置是由指針定位的。讀操作是讀取指針?biāo)甘疚恢玫膬?nèi)容,并自動(dòng)將指針向后移動(dòng),以指示下一次讀的位置。而對(duì)寫(xiě)操作,所寫(xiě)的內(nèi)容總是添加到文件的尾部。 一切存儲(chǔ)在順序存儲(chǔ)設(shè)備(如磁帶)上的文件,都只能是順序文件,
23、所以順序訪問(wèn)方式是基于磁帶的模型。該訪問(wèn)方式不僅適合順序存儲(chǔ)設(shè)備(如磁帶),對(duì)直接存儲(chǔ)設(shè)備(如磁盤(pán))也適合。 精選課件2. 直接訪問(wèn)方式4.6 文件管理 直接訪問(wèn)也稱隨機(jī)訪問(wèn),它指的是允許跳躍式地隨意存取文件中的任何記錄,而不需要任何順序限制。直接訪問(wèn)是最為常見(jiàn)和高效的文件訪問(wèn)方式。磁盤(pán)是隨機(jī)存儲(chǔ)設(shè)備,所以直接訪問(wèn)方式是基于磁盤(pán)的模型。 3.索引訪問(wèn)方式 在進(jìn)行文件訪問(wèn)時(shí),首先對(duì)索引文件按關(guān)鍵字進(jìn)行檢索,查找到指向數(shù)據(jù)記錄的指針,根據(jù)該指針實(shí)現(xiàn)對(duì)具體數(shù)據(jù)記錄的訪問(wèn)。 精選課件4.6.4 文件的目錄結(jié)構(gòu)4.6 文件管理 通常,一個(gè)磁盤(pán)至少應(yīng)包含一個(gè)分區(qū),每個(gè)分區(qū)用來(lái)保存文件和目錄結(jié)構(gòu) 。 文件目
24、錄的組成:每個(gè)文件有一個(gè)文件控制塊FCB,它是文件存在的標(biāo)志,存放了為管理文件所需的所有有關(guān)信息。把所有的文件控制塊組織在一起,就構(gòu)成了文件目錄,每個(gè)文件控制塊就是其中的一個(gè)目錄項(xiàng)。精選課件文件區(qū)根目錄區(qū)FAT2FAT1引導(dǎo)區(qū)DOS盤(pán)卷根目錄下各文件的目錄項(xiàng)FAT615152323-161523 FORMAT之后,磁盤(pán)的盤(pán)卷結(jié)構(gòu)如下:以簇為分配單位。1簇=2n 扇區(qū)子目錄文件內(nèi)容首簇號(hào)6長(zhǎng)度=3文件名my文件控制塊的有序集合12扇區(qū)0扇區(qū)1-2扇區(qū)3-4扇區(qū)5-11扇區(qū)精選課件4.6 文件管理 文件的目錄系統(tǒng)可以組織成單層目錄結(jié)構(gòu)、雙層目錄結(jié)構(gòu)、樹(shù)型目錄結(jié)構(gòu)、無(wú)環(huán)路目錄結(jié)構(gòu)和通用圖目錄結(jié)構(gòu)。
25、樹(shù)型目錄結(jié)構(gòu)是目前使用最為廣泛的一種目錄結(jié)構(gòu)。這種目錄結(jié)構(gòu)在邏輯上的構(gòu)成是一棵樹(shù),子目錄是樹(shù)枝,而文件是樹(shù)葉。精選課件4.7.1 I/O設(shè)備和主要術(shù)語(yǔ)4.7 輸入輸出系統(tǒng)管理 每臺(tái)計(jì)算機(jī)都配備了許多外部設(shè)備,它們的性能和操作方式都不一樣。操作系統(tǒng)對(duì)設(shè)備(即輸入/輸出系統(tǒng))管理的主要目標(biāo)是方便用戶使用外部設(shè)備,提高CPU和設(shè)備的利用率。 I/O設(shè)備與計(jì)算機(jī)通信的連接點(diǎn)被稱為端口。 用于操作端口、總線和設(shè)備的一組電子器件,是設(shè)備與總線的連接裝置。 1.端口(I/O設(shè)備端口) 2.控制器(I/O設(shè)備控制器)精選課件 中斷的概念:中斷是現(xiàn)代計(jì)算機(jī)中CPU處理外部突發(fā)事件的一個(gè)重要技術(shù)。它能使CPU在運(yùn)
26、行過(guò)程中對(duì)外部事件發(fā)出的中斷請(qǐng)求及時(shí)地進(jìn)行處理, 處理完成后又立即返回?cái)帱c(diǎn),繼續(xù)進(jìn)行CPU原來(lái)的工作。根據(jù)中斷源的不同,可以把中斷分為: 正在執(zhí)行的程序異常和隨機(jī)事件被中斷處返回處執(zhí)行中斷服務(wù)程序中斷請(qǐng)求中斷硬中斷軟中斷外部中斷內(nèi)部中斷如:鍵盤(pán)中斷、打印機(jī)中斷等如突然掉電、除數(shù)為零等程序運(yùn)行時(shí)其它程序?qū)λ闹袛嗑x課件 1、IRQ(Interrupt Request)(線) IRQ即中斷請(qǐng)求線。計(jì)算機(jī)中有許多設(shè)備(例如聲卡、硬盤(pán)等)需要定期中斷CPU,讓CPU為其做一些特定的工作。這些設(shè)備在中斷請(qǐng)求線上把請(qǐng)求中斷的信號(hào)發(fā)給CPU。所以每個(gè)設(shè)備只能使用自己獨(dú)立的中斷請(qǐng)求線(PCI總線、USB總線
27、上的設(shè)備可共享)。一般微機(jī)共有16條中斷請(qǐng)求線與各種外設(shè)相連接,(每個(gè)中斷線有一個(gè)標(biāo)號(hào)也就是中斷號(hào))。 2、DMA(Direct Memory Access)(芯片) 計(jì)算機(jī)與外設(shè)之間的聯(lián)系一般通過(guò)兩種方法:一是通過(guò)CPU控制來(lái)進(jìn)行數(shù)據(jù)的傳送;二是在芯片控制下進(jìn)行數(shù)據(jù)的傳送。在DMA方式下,外設(shè)利用DMA通道直接將數(shù)據(jù)寫(xiě)入或讀出存儲(chǔ)器,而基本不用CPU參與,系統(tǒng)的速度會(huì)大大增加。 3、I/O端口(Input/Output)(地址)就是計(jì)算機(jī)外設(shè)與CPU連接的接口。每個(gè)端口都有自己唯一的一個(gè)端口號(hào),這個(gè)端口號(hào)稱為地址。每一個(gè)和CPU通信的外設(shè)都有不同的I/O地址,通常在PC機(jī)內(nèi)部一共有1024個(gè)
28、地址。 精選課件4.7.2 輸入/輸出控制方式4.7 輸入輸出系統(tǒng)管理 (1) 程序控制方式 早期計(jì)算機(jī)采用的方式。CPU向設(shè)備控制器發(fā)出一條I/O指令啟動(dòng)設(shè)備進(jìn)行一個(gè)字節(jié)的輸入或輸出,然后CPU就等待I/O設(shè)備進(jìn)行數(shù)據(jù)傳送,直到一個(gè)字節(jié)傳送完畢后CPU再繼續(xù)處理下一個(gè)字節(jié)的輸入或輸出。 CPU絕大部分時(shí)間都用于循環(huán)等待及測(cè)試I/O是否完成,造成CPU資源的極大浪費(fèi)。CPU和外圍設(shè)備只能串行工作。 CPU通過(guò)端口對(duì)外設(shè)進(jìn)行控制的方式有以下幾種: (2) 中斷驅(qū)動(dòng)方式 首先由CPU向相應(yīng)設(shè)備的控制器發(fā)出一條I/O命令,然后CPU立即返回繼續(xù)執(zhí)行原來(lái)的任務(wù),設(shè)備控制器則按照命令的要求去控制I/O設(shè)
29、備工作。這時(shí)CPU與I/O設(shè)備并行工作。 這種方式CPU的利用率較高。但這種方式的缺點(diǎn)是在一次數(shù)據(jù)傳送過(guò)程中,發(fā)生中斷次數(shù)較多(每傳一個(gè)字節(jié)就要請(qǐng)示求中斷),這將耗去大量CPU處理時(shí)間。 精選課件4.7 輸入輸出系統(tǒng)管理 (3) 直接存儲(chǔ)器訪問(wèn)方式 引入DMA控制器,在其控制下,以數(shù)據(jù)塊為單位完成設(shè)備與內(nèi)存間的數(shù)據(jù)交換,當(dāng)數(shù)據(jù)塊傳送完畢時(shí)才需要CPU干預(yù)。該方式CPU的利用率高。 (4) 通道控制方式 通道控制方式是DMA的發(fā)展,它把對(duì)每一塊數(shù)據(jù)的讀寫(xiě)變成對(duì)一組數(shù)據(jù)塊的讀寫(xiě),可以進(jìn)一步減少CPU的干預(yù)。更大程度地提高了系統(tǒng)資源的利用率。精選課件4.7.3 I/O緩沖管理現(xiàn)代操作系統(tǒng)中,I/O設(shè)
30、備與CPU(實(shí)際指內(nèi)存)交換數(shù)據(jù)時(shí),需要使用緩沖技術(shù)。也就是為I/O設(shè)備設(shè)置緩沖區(qū)暫存數(shù)據(jù),等到數(shù)據(jù)積累到一定程度時(shí),再做批量處理。 引入緩沖: (1) 緩和CPU與I/O設(shè)備間速度不匹配的矛盾; (2) 減少對(duì)CPU中斷頻率; (3) 提高CPU與I/O設(shè)備間的并行性。4.7 輸入輸出系統(tǒng)管理精選課件4.7.4 設(shè)備驅(qū)動(dòng)程序4.7 輸入輸出系統(tǒng)管理 設(shè)備驅(qū)動(dòng)程序與具體設(shè)備有關(guān),用戶安裝好硬件后還要再安裝驅(qū)動(dòng)程序,計(jì)算機(jī)才能識(shí)別和使用該設(shè)備。每個(gè)外部設(shè)備都有相應(yīng)的設(shè)備驅(qū)動(dòng)程序,它也是硬件的身份識(shí)別標(biāo)志,負(fù)責(zé)完成設(shè)備具體的各種動(dòng)作(輸入/輸出操作)。 一旦為I/O設(shè)備安裝了驅(qū)動(dòng)程序,那么應(yīng)用程序
31、在使用I/O設(shè)備時(shí),就不必關(guān)心設(shè)備的特性、I/O控制方式,這樣就實(shí)現(xiàn)了應(yīng)用程序與設(shè)備的無(wú)關(guān)性。 精選課件 4.8.1 Unix4.8 典型操作系統(tǒng) Unix是一個(gè)通用、交互式、分時(shí)多用戶并支持網(wǎng)絡(luò)的操作系統(tǒng),是可以運(yùn)行在各種機(jī)型(從微機(jī)到巨型機(jī)在內(nèi))上的通用操作系統(tǒng)。目前主要用于網(wǎng)絡(luò)服務(wù)器、大中小型機(jī)。 缺點(diǎn):軟件少,價(jià)格貴,難掌握。 4.8.2 DOS DOS是單用戶、單任務(wù)和字符界面的操作系統(tǒng),主要為16位微型計(jì)算機(jī)而設(shè)計(jì),屬于淘汰產(chǎn)品。 精選課件4.8.3 Windows4.8 典型操作系統(tǒng)優(yōu)點(diǎn):界面圖形化、操作便捷、 采用多任務(wù)機(jī)制、支持網(wǎng)絡(luò)功能、 出色的多媒體功能、硬件更容易使用、 具有眾多應(yīng)用程序的支持。 微軟:世界最強(qiáng)大公司之一,90年代蓬勃興起,但產(chǎn)品處于二、三流之間。它以人們喜歡占便宜的心里,采取允許人們盜版的方式迅速擴(kuò)張,短時(shí)間占
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度火鍋加盟店知識(shí)產(chǎn)權(quán)保護(hù)合同
- 二零二五年度2025版旅游度假村運(yùn)營(yíng)管理服務(wù)合同范本4篇
- 二零二五版工程車輛運(yùn)輸節(jié)能減排服務(wù)合同2篇
- 2025年度特種用途面包車租賃合同范本4篇
- 二零二五版季度銷售獎(jiǎng)杯采購(gòu)與市場(chǎng)調(diào)研與數(shù)據(jù)分析合同3篇
- 二零二五年度農(nóng)藥市場(chǎng)調(diào)研與分析合同范本
- 二零二五年度旅行社導(dǎo)游服務(wù)合同3篇
- 2024葡萄酒電商平臺(tái)物流配送與售后服務(wù)合同范本3篇
- 臨時(shí)運(yùn)輸代理合同范本2024
- 2025年度綠植花卉企業(yè)慶典活動(dòng)租賃合同3篇
- 2024年供應(yīng)鏈安全培訓(xùn):深入剖析與應(yīng)用
- 飛鼠養(yǎng)殖技術(shù)指導(dǎo)
- 壞死性筋膜炎
- 整式的加減單元測(cè)試題6套
- 股權(quán)架構(gòu)完整
- 山東省泰安市2022年初中學(xué)業(yè)水平考試生物試題
- 注塑部質(zhì)量控制標(biāo)準(zhǔn)全套
- 銀行網(wǎng)點(diǎn)服務(wù)禮儀標(biāo)準(zhǔn)培訓(xùn)課件
- 二年級(jí)下冊(cè)數(shù)學(xué)教案 -《數(shù)一數(shù)(二)》 北師大版
- 晶體三極管資料
- 石群邱關(guān)源電路(第1至7單元)白底課件
評(píng)論
0/150
提交評(píng)論