iT邦幫忙

DAY 16
3

檔案系統的設計與效能系列 第 16

檔案系統的設計與效能 - FFS/UFS

FFS(Fast File System)普遍的用在Unix作業系統中,所以又稱為UFS(Unix File System)。
FFS(Fast File System)普遍的用在Unix作業系統中,所以又稱為UFS(Unix File System)。FFS的設計包含有superblock、block bitmap、i-node bitmap、以及計錄i-node的array結構。FFS在partition的開頭保留幾個block作為boot block之用,superblock中的magic number可以用來辨識檔案系統。在FFS的volume中,數個cylinder(disk track)會組成cylinder group,每個cylinder group包含有:superblock的備份、cylinder group的資訊、i-node的資訊、檔案的attributes以及data block的個數。

FFS 之所以有fast的稱號,在於他對performance作了改善,FFS引進了cylinder(disk track) group的觀念,並且將相關的data block與metadata放在同一個cylinder group中。理論上,這樣的話目錄中的資料(包括metadata)都會放在相鄰的cylinder group中,如此可以漸少因為目錄資料分散所造成的斷裂問題**(fragmentation)**。

FFS 同時也將檔案系統的block大小有1K增加到8K,如此更適合較大的檔案與磁碟,也增進了存取的速度。但是這對小檔案來說,較大的block容易形成浪費,所以FFS設計了tail merging或稱為block suballocation的技術,將數個檔案所剩下的剩餘block空間結合起來,形成單一個fragment block以供利用。

FFS/UFS 允許高達8 ZB(ZB=1024*1024*1024*1024 GB)的檔案與volume。

系列文章


上一篇
檔案系統的設計與效能 - NTFS
下一篇
檔案系統的設計與效能 - Ext2
系列文
檔案系統的設計與效能32

尚未有邦友留言

立即登入留言