【正文】
中相應(yīng)的目錄項(xiàng)是空的 , 則表示系統(tǒng)中并無指定文件 。 (2) 可刪除非空目錄 。 當(dāng)目錄 (文件 )不空時(shí) , 不能將其刪除 , 而為了刪除一個(gè)非空目錄 , 必須先刪除目錄中的所有文件 , 使之先成為空目錄 , 后再予以刪除 。 這樣 , 把從當(dāng)前目錄開始直到數(shù)據(jù)文件為止所構(gòu)成的路徑名 , 稱為相對(duì)路徑名 (relative path name);而把從樹根開始的路徑名稱為絕對(duì)路徑名 (absolute path name)。 此時(shí)各文件所使用的路徑名 , 只需從當(dāng)前目錄開始 , 逐級(jí)經(jīng)過中間的目錄文件 , 最后到達(dá)要訪問的數(shù)據(jù)文件 。 基于這一點(diǎn) , 可為每個(gè)進(jìn)程設(shè)置一個(gè) “ 當(dāng)前目錄 ” ,又稱為 “ 工作目錄 ” 。 當(dāng)一個(gè)文件系統(tǒng)含有許多級(jí)時(shí) , 每訪問一個(gè)文件 , 都要使用從樹根開始直到樹葉 (數(shù)據(jù)文件 )為止的 、 包括各中間結(jié)點(diǎn) (目錄 )名的全路徑名 。 例如 , 在圖 618 中用戶 B為訪問文件 J, 應(yīng)使用其路徑名 /B/F/J來訪問 。 在該路徑上從樹的根 (即主目錄 )開始 , 把全部目錄文件名與數(shù)據(jù)文件名 , 依次地用 “ /”連接起來 , 即構(gòu)成該數(shù)據(jù)文件的路徑名 (path name)。 (3) 不同用戶還可使用不同的文件名來訪問系統(tǒng)中的同一個(gè)共享文件 第六章 文件管理 3. 多級(jí)目錄結(jié)構(gòu) (1) 目錄結(jié)構(gòu) 圖 618 多級(jí)目錄結(jié)構(gòu) A B CF E D13A B D2 G A4A C56 710 11J N K12 J M K13 A H F1415 16b17 18 19 20 21a8 9第六章 文件管理 (2) 路徑名 。 設(shè)置有分別指向空閑鏈表和散列隊(duì)列的指針。 指示 i (3) 訪問計(jì)數(shù)。 第六章 文件管理 文件控制塊和索引結(jié)點(diǎn) 1. 文件控制塊 (1) 基本信息類 ① 文件名 ; ② 文件物理位置 ; ③ 文件邏輯結(jié)構(gòu) ; ④ 文件的物理結(jié)構(gòu) (2) 存取控制信息類 (3) 使用信息類 圖 614 MSDOS的文件控制塊 文件名擴(kuò)展名屬性備用時(shí)間日期第一塊號(hào)盤塊數(shù)第六章 文件管理 2. 索引結(jié)點(diǎn) 1) 索引結(jié)點(diǎn)的引入 圖 615 UNIX的文件目錄 文件名 索引結(jié)點(diǎn)編號(hào) 文件名 1 文件名 2 … … 第六章 文件管理 2) 磁盤索引結(jié)點(diǎn) (1) 文件主標(biāo)識(shí)符 (2) 文件類型 (3) 文件存取權(quán)限 (4) 文件物理地址 (5) 文件長(zhǎng)度 (6) 文件連接計(jì)數(shù) (7) 文件存取時(shí)間 第六章 文件管理 3) 內(nèi)存索引結(jié)點(diǎn) (1) 索引結(jié)點(diǎn)編號(hào)。 (3) 文件共享。 第六章 文件管理 目 錄 管 理 (1) 實(shí)現(xiàn)“按名存取”。 在采用二次間址方式時(shí) , 文件最大長(zhǎng)度可達(dá)4 GB。 該方式的實(shí)質(zhì)是兩級(jí)索引分配方式 。 當(dāng)文件長(zhǎng)度大于 4 MB+40 KB時(shí) (一次間址與 10個(gè)直接地址項(xiàng) ), 系統(tǒng)還須采用二次間址分配方式 。 在一次間址塊中可存放 1K個(gè)盤塊號(hào) , 因而允許文件長(zhǎng)達(dá) 4 MB。 這種方式的實(shí)質(zhì)就是一級(jí)索引分配方式 。 對(duì)于大 、 中型文件 , 只采用直接地址是不現(xiàn)實(shí)的 。 假如每個(gè)盤塊的大小為 4 KB, 當(dāng)文件不大于 40 KB時(shí) , 便可直接從索引結(jié)點(diǎn)中讀出該文件的全部盤塊號(hào) 。 為了提高對(duì)文件的檢索速度 , 在索引結(jié)點(diǎn)中可設(shè)置 10個(gè)直接地址項(xiàng) , 即用 iaddr(0)~iaddr(9)來存放直接地址 。 (2) FAT需占用較大的內(nèi)存空間。 第六章 文件管理 鏈接分配 1. 隱式鏈接 圖 68 磁盤空間的鏈接式分配 251 2 305 6 7491011813 14 151217 18 191621 22 23202526272429 30 3128f i l e s t a r t e n dj e e p 9 25目錄101 116第六章 文件管理 2. 顯式鏈接 圖 69 顯式鏈接結(jié)構(gòu) 012345物理塊號(hào)2F C B F A T0451第六章 文件管理 6E O F11105E O F0123456789F A TF C B A4F C B B9圖 610 MSDOS的文件物理結(jié)構(gòu) 第六章 文件管理 索引分配 1. 鏈接分配方式雖然解決了連續(xù)分配方式所存在的問題 , 但又出現(xiàn)了另外兩個(gè)問題 , (1) 不能支持高效的直接存取 。 (1) 要求有連續(xù)的存儲(chǔ)空間。 第六章 文件管理 2. 哈希 (Hash)文件 圖 66 Hash文件的邏輯結(jié)構(gòu) fH a sh 函數(shù)目錄表鍵值第六章 文件管理 外存分配方式 連續(xù)分配 1 2 305 6749 10 11813 14151217 18 191621 22 232025 26 2724l i s t29 30 3128m a i lc o u n tf i l e s t a r t l e n g t hc o u n t 0 2tr 14 3m a i l 19 6l i s t 28 4f 6 2目錄trf圖 67 磁盤空間的連續(xù)分配 第六章 文件管理 2. 連續(xù)分配的主要優(yōu)缺點(diǎn) (1) 順序訪問容易。 這種由記錄鍵值到記錄物理地址的轉(zhuǎn)換被稱為鍵值轉(zhuǎn)換 (Key to address transformation)。假定在每個(gè)記錄前用一個(gè)字節(jié)指明該記錄的長(zhǎng)度,則 ?????10iiii iLA第六章 文件管理 索引號(hào)0長(zhǎng)度 m 指針 p t rm01 m1…i mi…索引表R0R1…Ri…邏輯文件圖 64 索引文件的組織 第六章 文件管理 索引順序文件 鍵A n Q iB a o R o n gC h e n L i n邏輯地址 姓 名A n Q iA n K a n g其它屬性B a o R o n g?邏輯文件圖 65 索引順序文件 第六章 文件管理 直接文件和哈希文件 1. 直接文件 對(duì)于直接文件 , 則可根據(jù)給定的記錄鍵值 , 直接獲得指定記錄的物理地址 。 第六章 文件管理 索引文件 對(duì)于定長(zhǎng)記錄