【正文】
– 檢查方法:進行檢查時,從根目錄開始查找,每當(dāng)在目錄中遇到該索引結(jié)點號時,便在計數(shù)器表中相應(yīng)文件的表項上加 1。 – 方法:利用軟件的方法,構(gòu)成一個計數(shù)器表:每個盤塊號占用一個表項;每個表項中包含兩個計數(shù)器,分別用作空閑盤塊計數(shù)器和數(shù)據(jù)盤塊計數(shù)器。 方法二:為新修改的文件重新建立幾個拷貝,并用新拷貝取代原來的舊拷貝。同樣也必須保證其數(shù)據(jù)一致性。 第四章 存儲器管理 重復(fù)數(shù)據(jù)的數(shù)據(jù)一致性問題 – 為了保證數(shù)據(jù)的安全性,通常將關(guān)鍵數(shù)據(jù)或數(shù)據(jù)結(jié)構(gòu)復(fù)制多份,分別存儲在不同的地方。而共享鎖則允許多個事務(wù)對相應(yīng)對象執(zhí)行讀操作。事務(wù) Ti訪問某對象之前,必須首先獲得某對象的互斥鎖。 – 這種特性,稱為順序性。找到這樣的事務(wù)后,再返回去搜索事務(wù)記錄表,便可找到第一個檢查點記錄,恢復(fù)例程便從該檢查點開始,返回搜索各個事務(wù)的記錄,并利用 redo和 undo過程對它們進行處理。 第四章 存儲器管理 檢查點 1. 檢查點 (Check Points)的作用 – 引入檢查點的主要目的:是使對事務(wù)記錄表中事務(wù)記錄的清理工作經(jīng)常化。故又稱為運行記錄 (Log)。 ?為使夭折的事務(wù)不會引起數(shù)據(jù)的不一致性,必須將該事務(wù)內(nèi)剛被修改的數(shù)據(jù)恢復(fù)成原來的情況。 第四章 存儲器管理 事務(wù) 1. 事務(wù)的定義 – 事務(wù) ——是用于訪問和修改各種數(shù)據(jù)項的一個程序單位。 第四章 存儲器管理 1) 雙機熱備份模式 如圖 629所示,在這種模式的系統(tǒng)中,備有兩臺服務(wù)器,兩者的處理能力通常是完全相同的,一臺作為主服務(wù)器,另一臺作為備份服務(wù)器。 第四章 存儲器管理 3. 基于集群技術(shù)的容錯功能 為進一步增強服務(wù)器的并行處理能力和可用性 , 采用了多臺 SMP服務(wù)器來實現(xiàn)集群系統(tǒng)服務(wù)器 。 第四章 存儲器管理 圖 627 磁盤鏡像示意 磁盤控制器主機通道磁盤驅(qū)動器第四章 存儲器管理 2) 磁盤雙工 (Disk Duplexing) 為防止磁盤驅(qū)動器和磁盤控制器發(fā)生故障 , 將兩臺磁盤驅(qū)動器分別接到兩個磁盤控制器上 , 同樣使這兩臺磁盤機鏡像成對 。若重寫后兩者仍不一致,則認為該盤塊有缺陷,此時,便將應(yīng)寫入該盤塊的數(shù)據(jù),寫入到熱修復(fù)重定向區(qū)中。 一般主要采取以下兩個補救措施: (1) 熱修復(fù)重定向:系統(tǒng)將磁盤容量的一部分 (例如2%~ 3%)作為熱修復(fù)重定向區(qū),用于存放當(dāng)發(fā)現(xiàn)磁盤有缺陷時的待寫數(shù)據(jù),并對寫入該區(qū)的所有數(shù)據(jù)進行登記,以便于以后對數(shù)據(jù)進行訪問。 1) 雙份目錄和雙份文件分配表 ? 為了防止文件目錄和文件分配表 FAT被破壞,可在不同的磁盤上或在磁盤的不同區(qū)域中,分別建立 (雙份 )目錄表和FAT。 (2) 通過磁盤容錯技術(shù)來防止由磁盤部分的故障所造成的文件不安全性 。 影響文件安全性的主要因素有三: (1) 人為因素 , 即由于人們有意或無意的行為 , 而使文件系統(tǒng)中的數(shù)據(jù)遭到破壞或丟失 。 因此 , 在每次訪問共享文件時 , 都可能要多次地讀盤 。這樣的鏈接方法被稱為符號鏈接 (Symbolic Linking)。 第四章 存儲器管理 圖 625 基于索引結(jié)點的共享方式 W a n g用戶文件目錄T e s t rL e e用戶文件目錄T e s t rc o u n t = 2文件物理地址索引結(jié)點T e s t第四章 存儲器管理 在索引結(jié)點中還應(yīng)有一個鏈接計數(shù) count,用于表示鏈接到本索引結(jié)點 (亦即文件 )上的用戶目錄項的數(shù)目。 回收:到 (100)時,將空閑盤塊棧中內(nèi)容放入新到的回收塊中,將該回收塊作為棧底。最后一組的盤塊數(shù)應(yīng)為 99。 第四章 存儲器管理 (2) 文件區(qū)中的所有空閑盤塊被分成若干個組 , 例:將每 100個盤塊作為一組 。 : 第四章 存儲器管理 四 . 成組鏈接法 1. 空閑盤塊的組織 (1) 空閑盤塊號棧用來存放當(dāng)前可用的一組空閑盤塊的盤塊號 (最多含 100個號 ), 以及棧中尚有的空閑盤塊號數(shù) N。 (3) 修改位示圖, 令 map[ i,j] =1。 (3) 如果在目錄表的相應(yīng)目錄項中的文件名與指定文件名并不匹配 , 則表示發(fā)生了 “ 沖突 ” , 此時須將其 Hash值再加上一個常數(shù) (該常數(shù)應(yīng)與目錄的長度值互質(zhì) ), 形成新的索引值 , 再返回到第一步重新開始查找 。 Hash方式不支持使用通配符的模式匹配查找功能 ,此時還是需要利用線性查找方式 。 第四章 存儲器管理 二 . 目錄結(jié)構(gòu) 1. 單級目錄結(jié)構(gòu) : 整個文件系統(tǒng)只建立一張目錄表。 (1) 基本信息類 : ① 文件名 ; ② 文件物理地址 : 順序文件: 鏈接文件: 索引文件: ③ 文件邏輯結(jié)構(gòu) ; 起始塊號、塊數(shù) 起始塊號 索引表首址 ④ 用戶名: 文件主、核準用戶、用戶組等 ⑤ 文件長度: ⑥ 文件類型: 第四章 存儲器管理 (2) 存取控制信息類 文件主的權(quán)限;核準用戶的權(quán)限;一般用戶的權(quán)限。 (2) 提高對目錄的檢索速度。 第四章 存儲器管理 文件目錄管理 ? 一個文件的說明信息稱為該文件的 目錄 。 ? 鏈接文件 克服了連續(xù)文件的不足之處 , 但文件的隨機訪問系統(tǒng)開銷較大 。 同理 , 地址項 iaddr(12)作為三次間接地址 , 其所允許的文件最大長度可達 4 TB。 這時 , 用地址項 iaddr(11)提供二次間接地址 。圖中的一次間址塊也就是索引塊 , 系統(tǒng)將分配給文件的多個盤塊號記入其中 。 第四章 存儲器管理 (2) 一次間接地址 。 第四章 存儲器管理 圖 613 混合索引方式 m o d eo w n e r s ( 2 )t i m e s t a m p s ( 3 )s i z eb l o c k c o u n ti . a d d r ( 0 )i . a d d r ( 1 )d i r e c t b l o c k ss i n g l e i n d i r e c td o u b l e i n d i r e c tt r i p l e i n d i r e c td a t ad a t ad a t ad a t a……d a t ad a t a………d a t ad a t ad a t ad a t a第四章 存儲器管理 (1) 直接地址 。文件較小時浪費外存空間(還需為小文件建索引塊) ?( 2)當(dāng)文件較大時,索引塊太多,查找速度減慢 – 解決:當(dāng)索引太大時,則需建立多級索引 第四章 存儲器管理 圖 611 索引分配方式 1 2305 6 7491011813 14 151217 181916212223202526272429 303128c o u n tf i l e 塊 序 號j e e p 19目錄91611025- 1- 1- 119第四章 存儲器管理 ?二、多級索引 – 兩級索引: 當(dāng)文件太大,其索引塊太多時,為這些索引塊再建立一級索引,稱為第一級索引,即系統(tǒng)再分配一個索引塊,作為第一級索引的索引塊,將第一塊、第二塊 …… 等索引塊的盤塊號填入到此索引表中。 第四章 存儲器管理 索引分配 1. 鏈接分配方式雖然解決了連續(xù)分配方式所存在的問題 , 但又出現(xiàn)了另外兩個問題 , (1) 不能支持高效的直接存取 。 第四章 存儲器管理 FAT 和 NTFS 技術(shù) NTFS NTFS使用 64位磁盤地址;可以很好支持長文件名,單個文件名限制在 255個字符內(nèi),全路徑名最長為 32767字符;具有系統(tǒng)容錯功能,提供數(shù)據(jù)一致性。 第四章 存儲器管理 FAT 和 NTFS 技術(shù) FAT16:每個表項 16位 在 FAT16中,每個簇中可以有的盤塊數(shù)可為 13 64 FAT16和 FAT32都不支持長文件名。 FAT12: (每個表項占 12bit) 1)每個分區(qū)中都配有兩張文件分配表 FAT1和 FAT2,在 FAT的每個表項中存放下一個盤塊號,而將文件的第一個盤塊號放在自己的 FCB中。 – 特點:只適合于順序訪問,對隨機訪問效率低,可靠性差。 ( 2)可隨機存取 主要缺點: ( 1)要求有連續(xù)的存儲空間,因 此必須事先知道文件的最大長度。 圖 66 Hash文件的邏輯結(jié)構(gòu) fH a s h 函數(shù)目 錄 表鍵值第四章 存儲器管理 文件的物理結(jié)構(gòu) 文件在存儲介質(zhì)上的存儲方式。 換言之 , 記錄鍵值本身就決定了記錄的物理地址 。假定在每個記錄前用一個字節(jié)指明該記錄的長度,則 ?????10iiii iLA第四章 存儲器管理 ?由變長記錄組成的順序文件不容易直接存取,因此,為其建立一有序的索引表。 第四章 存儲器管理 順序文件的另一個缺點是 , 如果想增加或刪除一個記錄也比較困難 。 ?二、對順序文件的讀 /寫操作(圖 ) ?定長記錄順序文件:例:順序讀 ?易于定位,甚至可隨機讀取。 第四章 存儲器管理 順序文件 ?一、邏輯記錄的排序 ?( 1) 串結(jié)構(gòu) :按記錄生成的先后順序連續(xù)排列的邏輯結(jié)構(gòu) 。 2. 文件的物理結(jié)構(gòu) 第四章 存儲器管理