2.07.2007

TFAT - Transation safe FAT

TFAT 是 MS為CE 所設計的file system,因為FAT的特性真的太差了,用在有power interrupt 的embedded device實在不適合,但是MS的AP 又highly relay on FAT,所以就開發這個 api 和 FAT相容,但是lower level 模仿新款filesystem的TFAT 檔案系統。

在 platfombuilder的help 中可以找到 (Thanks Loyal) 有關TFAT的說明:
Transation-Safe FAT
TFAT只能保證 disk 的File Allocation Table和實際目錄一致,不能保證每次File API : WriteFile, CloseHandle時會寫入完整的file (或完全不寫入)。
以往的FAT 系統如果File Allocation Table和實際目錄內容不一致,整個file system 就不能用了,TFAT就是為了避免這樣的情形發生所發展的。

TFAT 系統將原來的整批寫入改為許多小筆資料的寫入(device 的atomic block write),所以寫入速度會比原來的FAT系統慢,但是讀取速度幾乎是一樣的。

TFAT的效能可以調整 - 利用registry。
增加速度的方法大約是使用Cache (加大cache),Enalble WriteBack ... 可以參考Platformbuilder TFAT Registry Setting 該項說明。

? 這個是patent喔,在這裡可以看到,他是一項專利。
也大略描述了一下TFAT的內部機制:"將修改的block寫到新的,未使用的block中,而不直接修改原block" 以防止修改中途被中斷,影響整體資料的完整性。

這不就是journal file system ? 幾百年前的技術,都已經到第N代了,TFAT還可以申請專利 ?
自己連一下,這是後來寫的 : TFAT Overview

沒有留言: