1. 程式人生 > >第八章 磁碟儲存器的管理(一)——外存的組織方式【物理結構】

第八章 磁碟儲存器的管理(一)——外存的組織方式【物理結構】

組織方式有以下幾種:
(一)連續組織方式
順序結構,盤塊挨著按順序排
1.要求為每個檔案分配一組相鄰接的盤塊
2.保證了邏輯檔案中的記錄順序與儲存器中檔案佔用盤塊順序的一致性。
優點:
順序訪問容易;順序訪問速度快
缺點:
會產生許多外部碎片;不利用動態修改;容易造成浪費。

(二)連結組織方式【不連續】
可以為每一個檔案分配一組不相鄰的盤塊,設定連結指標,將同屬於一個檔案的多個離散盤塊連結成一個連結串列,這樣形成的檔案稱為連結檔案。會有連結成本。
優點:
離散分配,消除外部碎片,提高利用率
同時適用於檔案的動態增長;修改容易
1.隱式連結
在這裡插入圖片描述
連結資訊隱含記錄在盤塊資料中;
每個盤塊拿出若干位元組,記錄指向下一盤塊號的指標。
問題:只能順著盤塊讀取,可靠性低
2.顯示連結
在這裡插入圖片描述


記錄盤塊連結的指標顯示地記錄為一張連結表,所有已分配的盤塊號都記錄在其中,稱檔案分配表,為了提高檔案系統訪問速度,FAT一般常駐記憶體
【難道不是FAT一開始在外存,一開機後文件目錄進記憶體了嗎】

FAT技術
表項個數=盤塊個數=容量/盤塊大小
表項大小,決定於盤塊數量編號需要的位數=12 位;
FAT表大小 = 表項個數 * 表項大小
FAT32規定每簇4KB(即8個512B的盤塊),該格式能管理的單個最大磁碟空間為2^32*4KB=2TB。

(三)索引組織方式
1.單級索引
索引形式適合大檔案
中、小型檔案,只需若干連結即可。若用索引分配方式,用一個盤塊存放少量索引資訊反而不適用。
下圖中,1是資料盤塊,19是索引盤塊
在這裡插入圖片描述


2.多級索引
若檔案較大,存放索引表也需要多個盤塊(索引盤塊)。,索引盤塊亦需要按順序管理起來,若索引盤塊數量較少用指標連結的方式即可;若索引盤塊較多,需對索引盤塊也採用索引方式管理,形成多級索引。

在這裡插入圖片描述
多級索引下的檔案大小
若兩級索引,盤塊1KB,盤塊號佔4位元組
一個盤塊可存放的盤塊號數有多少個
1KB/4B = 210/4 = 28 = 256(個)
二級索引下的檔案可分配的最大盤塊數
256 * 256 =26×210=64 K(個)
檔案最大長度為64K(個)1KB=64MB
若盤塊大小為4KB,單級索引允許檔案最大長度為4MB(4K/4
4KB),二級索引則檔案最大可達4GB(1K1K4KB)。