版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第8章 文件管理,8.1 文件和文件系統(tǒng)(重點) 8.2 文件的邏輯結(jié)構(gòu)(重點) 8.3 文件目錄(重點) 8.4 文件共享 8.5 文件保護,8.1 文件和文件系統(tǒng)(重點),文件、記錄和數(shù)據(jù)項 文件名和類型 文件系統(tǒng)的層次結(jié)構(gòu) 文件操作,1. 文件、記錄和數(shù)據(jù)項,文件系統(tǒng)的管理功能 通過把它所管理的程序和數(shù)據(jù),組織成一系列文件的方法來實現(xiàn)的。 文件 指具有文件名的若干相關(guān)元素的集合,元素通常是記錄。 記錄 一組有意義的數(shù)據(jù)項的集合。,1. 文件、記錄和數(shù)據(jù)項,三級數(shù)據(jù)組成 基于文件系統(tǒng)的概念,可以把數(shù)據(jù)組成分為數(shù)據(jù)項、記錄和文件三級。,數(shù)據(jù)項及類型 基本數(shù)據(jù)項:這是用于描述一個對象的某種屬性
2、的字符集,是數(shù)據(jù)組織中可以命名的最小邏輯數(shù)據(jù)單位,又稱為字段。 組合數(shù)據(jù)項:是由若干個基本數(shù)據(jù)項組成的,簡稱組項。 基本數(shù)據(jù)項除了數(shù)據(jù)名外,還應(yīng)有數(shù)據(jù)類型。因為基本項僅是描述某個對象的屬性,根據(jù)屬性的不同,需要用不同的數(shù)據(jù)類型來描述。,記錄 是一組相關(guān)數(shù)據(jù)項的集合,用于描述一個對象在某方面的屬性。 關(guān)鍵字(key): 惟一能標(biāo)識一個記錄的數(shù)據(jù)項。通常,只需用一個數(shù)據(jù)項作為關(guān)鍵字。,文件 由創(chuàng)建者所定義的、具有文件名的一組相關(guān)元素的集合。在文件系統(tǒng)中是一個最大的數(shù)據(jù)單位,它描述了一個對象集。 文件屬性: 文件類型 文件長度 文件的物理位置 文件的建立時間,2.文件名和類型,文件名和擴展名 文件名
3、:在不同的系統(tǒng)之間,對文件名的規(guī)定是不同的,在一些老的系統(tǒng)中,名字的長度受到限制。 擴展名:擴展名是添加在文件名后面的若干個附加字符,又稱為后綴名,用于指示文件的類型,是文件名中的重要組成部分。在大多數(shù)系統(tǒng)中,是用圓點“.”將文件名和擴展名分開的,2.文件名和類型,文件類型 按用途分類:系統(tǒng)文件、用戶文件、庫文件。 按文件中數(shù)據(jù)的形式分類:源文件、目標(biāo)文件、可執(zhí)行文件。 按存取控制屬性分類:只執(zhí)行文件、只讀文件、讀寫文件。 按組織形式和處理方式分類:普通文件、目錄文件、特殊文件。,3. 文件系統(tǒng)的層次結(jié)構(gòu),文件系統(tǒng)的模型,對象及其屬性 文件管理系統(tǒng)管理的對象有:文件、目錄和磁盤(磁帶)存儲空間
4、。,對對象操縱和管理的軟件集合 對文件存儲空間的管理; 對文件目錄的管理; 文件的邏輯地址轉(zhuǎn)換為物理地址的機制; 對文件讀和寫的管理; 對文件的共享與保護等功能。 現(xiàn)代OS通常都采取了層次組織結(jié)構(gòu)實現(xiàn)這些功能。,文件系統(tǒng)的接口 文件系統(tǒng)提供了一組使用和操作文件和記錄的手段,以方便用戶使用文件系統(tǒng)。通常向用戶提供兩種類型的接口:命令接口和程序接口。,4. 文件操作,最基本的文件操作 創(chuàng)建文件 刪除文件 讀文件 寫文件 設(shè)置文件的讀/寫位置等。,4. 文件操作,文件的“打開”和“關(guān)閉”操作 為了避免多次重復(fù)地檢索目錄,節(jié)省檢索開銷,提高對文件的操作速度,將指定文件名文件的屬性,從外存拷貝到內(nèi)存打開
5、文件表的一個表目中,在用戶和指定文件之間,建立起一個連接。以后,用戶可直接通過該連接訪問該文件,從而避免了對該文件的再次檢索。 當(dāng)用戶已不再需要對該文件實施相應(yīng)的操作時,可利用“關(guān)閉”(close)系統(tǒng)調(diào)用來關(guān)閉此文件,斷開此連接,OS將會把該文件,從打開文件表中的表目上刪除掉。,8.2 文件的邏輯結(jié)構(gòu),文件邏輯結(jié)構(gòu)的類型 順序文件 索引文件 索引順序文件 直接文件和哈希文件,文件組織的兩種觀點,用戶觀點(邏輯結(jié)構(gòu)) 研究的是用戶思維中的抽象文件,也叫邏輯文件。其目的是為用戶提供一種結(jié)構(gòu)清晰、使用簡便的邏輯組織。用戶按此去存儲、檢索和加工處理有關(guān)文件信息。 實現(xiàn)觀點(物理結(jié)構(gòu)) 研究的是存儲在
6、物理設(shè)備介質(zhì)上的實際文件,即物理文件。其目的是選擇一些性能良好、設(shè)備利用率高的物理結(jié)構(gòu)。系統(tǒng)按此和外部設(shè)備打交道,控制信息的傳輸。,8.2.1文件邏輯結(jié)構(gòu)的類型,有結(jié)構(gòu)文件 又稱為記錄式文件,根據(jù)記錄的長度分為:定長記錄和變長記錄。 根據(jù)文件的組織方式,進一步分為:順序文件、索引文件、索引順序文件 無結(jié)構(gòu)文件 又稱為流式文件,如源程序等,8.2.2 順序文件,順序文件 它是指由一系列記錄,按照某種順序排列所形成的文件。,1.順序文件的排列方式 串結(jié)構(gòu):記錄通常是按存入時間的先后進行排序,各記錄之間的順序與關(guān)鍵字無關(guān)。對串結(jié)構(gòu)文件進行檢索是比較費時的。 順序結(jié)構(gòu):由用戶指定一個字段作為關(guān)鍵字,文
7、件中的所有記錄就可以按關(guān)鍵字來排序。順序結(jié)構(gòu)文件可有更高的檢索速度和效率,2.順序文件的優(yōu)缺點 優(yōu)點: 適應(yīng)用于對諸記錄進行批量存取的場合; 對順序文件的存取效率是所有邏輯文件中最高的;也只有順序文件才能被存儲在磁帶上,并能有效地工作。 缺點: 在交互應(yīng)用的場合,順序文件所表現(xiàn)出來的性能就可能很差;如果想增加或刪除一個記錄,都比較困難。,3.記錄尋址 隱式尋址,顯示尋址方式 該方式可用于對定長記錄的文件,實現(xiàn)直接或隨機訪問。,8.2.3 索引文件,1.按關(guān)鍵字建立索引 為變長記錄文件建立一張索引表,對主文件中的每個記錄,在索引表中設(shè)有一個相應(yīng)表項,用于記錄該記錄的長度L,以及指向該記錄的指針(
8、指向該記錄在邏輯地址空間的首址)。 由于索引表是按關(guān)鍵字排序的,是一個定長記錄的順序文件,這樣就把對變長記錄順序文件的順序檢索,轉(zhuǎn)變?yōu)閷ΧㄩL記錄索引文件的隨機檢索,從而加快對記錄檢索的速度,能實現(xiàn)直接存取。,2.具有多個索引表的索引文件 不同的用戶,為了不同的目的,希望能按不同的屬性(或不同的關(guān)鍵字)來檢索一條記錄。 為實現(xiàn)此要求,需要為順序文件建立多個索引表,即為每一種可能成為檢索條件的域(屬性或關(guān)鍵字),都配置一張索引表。在每一個索引表中,都是按相應(yīng)的一種屬性或關(guān)鍵字進行排序。這樣用戶也就可以根據(jù)自己的需要,用不同的關(guān)鍵字來進行檢索。,8.2.4 索引順序文件,1.索引順序文件的特征 保留
9、了順序文件的關(guān)鍵特征,即記錄是按關(guān)鍵字的順序組織起來的。 增加了兩個新特征: 引入了文件索引表,通過該表可以實現(xiàn)對索引順序文件的隨機訪問; 另一個是增加了溢出文件,用它來記錄新增加的、刪除的和修改的記錄。,2.一級索引順序文件,一級索引建立方法 將變長記錄順序文件中的所有記錄,分為若干個組; 為順序文件建立一張索引表,并為每組中的第一個記錄,在索引表中建立一個索引項,其中含有該記錄的關(guān)鍵字和指向該記錄的指針。 性能評價 檢索效率S比順序文件約提高N /2倍。,3. 兩級索引順序文件,對于一個非常大的文件,為找到一個記錄而須查找的記錄數(shù)目仍然很多,為了進一步提高檢索效率,可以為順序文件建立多級索
10、引,即為索引文件再建立一張索引表,從而形成兩級索引表。,8.2.5 直接文件和哈希文件,1.直接文件 可根據(jù)給定的關(guān)鍵字,直接獲得指定記錄的物理地址,即關(guān)鍵字本身就決定了記錄的物理地址。這種由關(guān)鍵字到記錄物理地址的轉(zhuǎn)換,被稱為鍵值轉(zhuǎn)換。 2.哈希(Hash)文件 利用Hash函數(shù)(或稱散列函數(shù)),可將關(guān)鍵字轉(zhuǎn)換為相應(yīng)記錄的地址。,8.3 文件目錄,文件控制塊和索引結(jié)點 簡單的文件目錄 樹形目錄結(jié)構(gòu) 目錄查詢技術(shù),對目錄管理的要求,(1) 實現(xiàn)“按名存取”,即用戶只須向系統(tǒng)提供所需訪問文件的名字,便能快速準(zhǔn)確地找到指定文件在外存上的存儲位置。 (2)提高對目錄的檢索速度,通過合理地組織目錄結(jié)構(gòu)的
11、方法,可加快對目錄的檢索速度,從而提高對文件的存取速度。 (3)文件共享,在多用戶系統(tǒng)中,應(yīng)允許多個用戶共享一個文件。 (4)允許文件重名,系統(tǒng)應(yīng)允許不同用戶對不同文件采用相同的名字,以便于用戶按照自己的習(xí)慣給文件命名和使用文件。,8.3.1 文件控制塊和索引結(jié)點,1.文件控制塊FCB(File Control Block) 為了能對一個文件進行正確的存取,為文件設(shè)置的用于描述和控制文件的數(shù)據(jù)結(jié)構(gòu)。文件管理程序可借助于文件控制塊中的信息,對文件施以各種操作。 文件控制塊的有序集合(文件與文件控制塊一一對應(yīng)),一個文件控制塊就是一個文件目錄項。 通常,一個文件目錄也被看作是一個文件,稱為目錄文件
12、。,FCB包含的信息,(1)基本信息類:文件名、文件物理位置、文件邏輯結(jié)構(gòu)、文件的物理結(jié)構(gòu)。 (2)存取控制信息類:文件主的存取權(quán)限、核準(zhǔn)用戶的存取權(quán)限以及一般用戶的存取權(quán)限。 (3)使用信息類:文件的建立日期和時間、文件上一次修改的日期和時間、當(dāng)前已打開該文件的進程數(shù)、是否被其它進程鎖住、文件在內(nèi)存中是否已被修改但尚未拷貝到盤上等。,2.索引結(jié)點,(1)索引結(jié)點的引入 文件目錄通常是存放在磁盤上的,可能要占用大量的盤塊。在查找目錄的過程中,需要多次啟動磁盤。 實際上,在檢索目錄文件的過程中,只用到了文件名,而其它信息在不需調(diào)入內(nèi)存。 為此,如UNIX系統(tǒng),便采用了把文件名與文件描述信息分開的
13、辦法,亦即,使文件描述信息單獨形成一個稱為索引結(jié)點的數(shù)據(jù)結(jié)構(gòu),簡稱為i結(jié)點。,(2)磁盤索引結(jié)點 存放在磁盤上的索引結(jié)點,每個文件有惟一的一個磁盤索引結(jié)點。 內(nèi)容: 文件主標(biāo)識符、文件類型、文件存取權(quán)限、文件物理地址、文件長度、文件連接計數(shù)、文件存取時間等。,(3)內(nèi)存索引結(jié)點 存放在內(nèi)存中的索引結(jié)點,當(dāng)文件被打開時,要將磁盤索引結(jié)點拷貝到內(nèi)存的索引結(jié)點中,便于以后使用。 內(nèi)容: 索引結(jié)點編號、狀態(tài)、訪問計數(shù)、文件所屬文件系統(tǒng)的邏輯設(shè)備號、鏈接指針等。,8.3.2 簡單的文件目錄,1.單級文件目錄 為所有文件建立一個目錄文件。 優(yōu)點:簡單且能實現(xiàn)目錄管理的基本功能按名存取。 缺點:查找速度慢、
14、不允許重名、不便于實現(xiàn)文件共享,2.兩級文件目錄 為改變一級目錄文件目錄命名沖突,并提高對目錄文件檢索速度而將目錄分為兩級:一級稱為主文件目錄,給出用戶名,用戶子目錄所在的物理位置;二級稱為用戶文件目錄,給出該用戶所有文件的FCB。 優(yōu)點:解決了文件的重名問題和文件共享問題,提高搜索速度,查找時間降低。 缺點:不太適合大量用戶和大量文件的大系統(tǒng),增加了系統(tǒng)開銷。,8.3.3 樹形結(jié)構(gòu)目錄,1.樹形目錄 多級目錄結(jié)構(gòu)也稱樹形目錄,產(chǎn)生于UNIX操作系統(tǒng),巳被現(xiàn)代操作系統(tǒng)廣泛采用。 優(yōu)點:層次結(jié)構(gòu)清晰,便于管理和保護;有利于文件分類;解決重名問題;提高文件檢索速度;能進行存取權(quán)限的控制。 缺點:查
15、找一個文件按路徑名逐層檢查,由于每個文件都放在外存,多次訪盤影響速度。,2.路徑名 在樹形目錄結(jié)構(gòu)中,從根目錄到任何數(shù)據(jù)文件,都只有一條惟一的通路。在該路徑上從樹的根(即主目錄)開始,把全部目錄文件名與數(shù)據(jù)文件名,依次地用“/”連接起來,即構(gòu)成該數(shù)據(jù)文件的路徑名。系統(tǒng)中的每一個文件都有惟一的路徑名。 3.當(dāng)前目錄 為了提高文件檢索速度,文件系統(tǒng)向用戶提供了一個當(dāng)前正在使用的目錄,稱為當(dāng)前目錄(也稱工作目錄或值班目錄)。,4.目錄操作 (1)創(chuàng)建目錄 (2)刪除目錄 (3)改變目錄 (4)移動目錄 (5)鏈接(Link)操作 (6)查找,8.3.4 目錄查詢技術(shù),1.線性檢索法 線性檢索法又稱為
16、順序檢索法。在單級目錄中,利用用戶提供的文件名,用順序查找法直接從文件目錄中找到指名文件的目錄項。在樹型目錄中,用戶提供的文件名是由多個文件分量名組成的路徑名,此時須對多級目錄進行查找。,圖8-12 查找/usr/ast/mbox的過程示意圖,2.Hash方法 如果我們建立了一張Hash索引文件目錄,便可利用Hash方法進行查詢,即系統(tǒng)利用用戶提供的文件名,并將它變換為文件目錄的索引值,再利用該索引值到目錄中去查找,將顯著地提高檢索速度。,8.4 文件共享,1.基于有向無環(huán)圖實現(xiàn)文件共享 2.利用符號鏈接實現(xiàn)文件共享,文件共享形式與目的,定義 一個文件被多個用戶或程序使用 共享形式 被多個用戶
17、使用,由存取權(quán)限控制; 被多個程序使用,但各用自己的讀寫指針; 被多個程序使用,但共享讀寫指針; 多個用戶用相同或不同的名字來訪問同一文件。 目的 節(jié)省時間和存儲空間,減少了用戶工作量; 進程間通過文件交換信息。,1. 基于有向無循環(huán)圖實現(xiàn)文件共享,利用索引結(jié)點,2. 利用符號鏈接實現(xiàn)文件共享,利用符號鏈接的基本思想 共享某文件時,創(chuàng)建一新文件,并加到用戶目錄中,該文件僅包含被鏈接文件F的路徑名,稱該鏈接方法為符號鏈接。該方式中,只有文件才擁有指向其索引結(jié)點的指針,其它共享的用戶只有該文件的路徑名。 優(yōu)點:方便地鏈接任一文件(用路徑名) 缺點:訪問共享文件時開銷大(多次讀盤,消費盤空間),每一
18、共享文件都要增加一文件名(因路徑名各不相同)。,8.5 文件保護,保護域 訪問矩陣 訪問矩陣的修改 訪問矩陣的實現(xiàn),影響文件安全性的主要因素 (1)人為因素:人們有意或無意的行為,會使文件系統(tǒng)中的數(shù)據(jù)遭到破壞或丟失; (2)系統(tǒng)因素:由于系統(tǒng)的某部分出現(xiàn)異常情況,而造成數(shù)據(jù)的破壞或丟失,特別是作為數(shù)據(jù)存儲主要介質(zhì)的磁盤,一但出現(xiàn)故障,會產(chǎn)生難以估量的影響; (3)自然因素:隨著時間的推移,存放在磁盤上的數(shù)據(jù)會逐漸消失。,為了確保文件系統(tǒng)的安全性,可采取的措施 (1)通過存取控制機制,防止由人為因素所造的文件不安全性; (2)采取系統(tǒng)容錯技術(shù),防止系統(tǒng)部分的故障所造成的文件的不安全性; (3)建
19、立后備系統(tǒng),防止由自然因素所造成的不安全性。本節(jié)主要介紹第一方面的措施存取控制機制。,1.訪問權(quán) 為了對系統(tǒng)中的對象加以保護,應(yīng)由系統(tǒng)來控制進程對對象的訪問。 把一個進程能對某對象執(zhí)行操作的權(quán)力,稱為訪問權(quán)。 每個訪問權(quán)可以用一個有序?qū)Γ▽ο竺瑱?quán)集)來表示,例如,某進程有對文件F1執(zhí)行讀和寫操作的權(quán)力,則可將該進程的訪問權(quán)表示成(F1,R/W)。,2.保護域 為了對系統(tǒng)中的資源進行保護,而引入了保護域的概念,保護域簡稱為“域”?!坝颉笔沁M程對一組對象訪問權(quán)的集合,進程只能在指定域內(nèi)執(zhí)行操作。這樣,“域”也就規(guī)定了進程所能訪問的對象和能執(zhí)行的操作。,3.進程和域間的靜態(tài)聯(lián)系 在進程和域之間,可
20、以一一對應(yīng),這意味著,在進程的整個生命期中,其可用資源是固定的,我們把這種域稱為“靜態(tài)域”。 在這種情況下,進程運行的全過程都是受限于同一個域,這將會使賦予進程的訪問權(quán)超過了實際需要。,4.進程和域間的動態(tài)聯(lián)系方式 在進程和域之間,也可以是一對多的關(guān)系。在此情況下,可將進程的運行分為若干個階段,其每個階段聯(lián)系著一個域,這樣便可根據(jù)運行的實際需要,來規(guī)定在進程運行的每個階段中所能訪問的對象。 我們把這種一對多的聯(lián)系方式稱為動態(tài)聯(lián)系方式,在采用這種方式的系統(tǒng)中,應(yīng)增設(shè)保護域切換功能,以使進程能在不同的運行階段,從一個保護域切換到另一個保護域。,8.5.2 訪問矩陣,1.基本的訪問矩陣,2.具有域切
21、換權(quán)的訪問矩陣,8.5.3 訪問矩陣的修改,1.復(fù)制權(quán) 可利用復(fù)制權(quán),將在某個域中所擁有的訪問權(quán)(access(i,j)擴展到同一列的其它域中,亦即,為進程在其它的域中也賦予對同一對象的訪問權(quán)(access(k,j),如圖所示。,2.所有權(quán) 人們不僅要求能將已有的訪問權(quán)進行有控制的擴散,而且同樣需要能增加某種訪問權(quán),或者能刪除某種訪問權(quán)。此時,可利用所有權(quán)(O)來實現(xiàn)這些操作。見圖8-23,如果在access(i,j)中包含所有訪問權(quán),則在域Di上運行的進程,可以增加或刪除其在j列上任何項中的訪問權(quán)。,3.控制權(quán) 復(fù)制權(quán)和所有權(quán)都是用于改變矩陣內(nèi)同一列的各項訪問權(quán)的,或者說,是用于改變在不同域中運行的進程對同一對象的訪問權(quán)。 控制權(quán)則可用于改變矩陣內(nèi)同一行中(域中)的各項訪問權(quán),亦即,用于改變在某個域中運行進程對不同對象的訪問權(quán)。如果在access(i,j)中包含了控制權(quán),則在域Di中運行的進程可以刪除在域Dj中運行進程對各對象的任何訪問權(quán)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 服裝制作工安全培訓(xùn)效果水平考核試卷含答案
- 鐵合金濕法冶煉工保密水平考核試卷含答案
- 水解設(shè)備搪砌工崗前安全培訓(xùn)考核試卷含答案
- 獸用中藥制劑工安全文明知識考核試卷含答案
- 銀行綜合柜員班組協(xié)作能力考核試卷含答案
- 搪瓷制品制造工道德評優(yōu)考核試卷含答案
- 光纖著色并帶工操作知識競賽考核試卷含答案
- 糧庫中控工安全規(guī)程評優(yōu)考核試卷含答案
- 接插件零件制造工成果轉(zhuǎn)化強化考核試卷含答案
- 印染染化料配制工安全生產(chǎn)知識評優(yōu)考核試卷含答案
- 國家安全生產(chǎn)十五五規(guī)劃
- 代位追償培訓(xùn)課件
- 2024內(nèi)蒙古畜牧業(yè)溫室氣體減排策略與路徑研究報告
- 醫(yī)院培訓(xùn)課件:《醫(yī)務(wù)人員不良執(zhí)業(yè)行為記分管理辦法》
- DJG330521-T 102-2024 企業(yè)能級工資集體協(xié)商工作評價規(guī)范
- 物體打擊事故培訓(xùn)課件
- 豬場產(chǎn)房技術(shù)員述職報告
- 數(shù)據(jù)分析崗位轉(zhuǎn)正匯報
- 2025年港口碼頭安全隱患排查計劃
- STEAM教育與高中地理教學(xué)融合的活動設(shè)計研究
- 基礎(chǔ)設(shè)施以工代賑項目可行性研究報告
評論
0/150
提交評論