Windows XP Embedded中的FBWF初探
FBWF(File Based Write Filter),基于文件的寫保護過濾:
FBWF是微軟在Windows XP Embedded FP2007及以后版本的XPE開發工具中推出的最新寫保護技術。在FBWF開啟的狀態下,如果有寫入操作,FBWF將重定向寫操作到內存上的一個區域中,我們通常稱之為覆蓋層。覆蓋層類似于原始磁盤的一個投影,對原始磁盤做的任何寫操作都將映射到覆蓋層中,而我們看到的最終文件內容則是原始磁盤和覆蓋層的總和。當覆蓋層被刪除的時候,例如重新啟動計算機,原始磁盤上的數據將保持不變。從下圖中我們可以看到FBWF重定向寫操作的過程:
FBWF和EWF的對比:
FBWF和EWF技術都是以寫入過濾為目的的磁盤和文件保護技術。所不同的是EWF保護的是某一個或者某幾個磁盤分區,它可操作的最小單位是磁盤分區。而FBWF保護的最小單位則是文件,也就是說我們可以設置一個磁盤分區上的某一個或者某幾個文件夾可以寫入,而該磁盤分區上的其他文件夾則是只讀狀態。在大多數情況下,FBWF由于其靈活性,是更好的選擇。然而,只有EWF能夠完全的支持NTFS文件格式,以下幾項NTFS的特性就是僅在EWF中支持而不能在FBWF中支持的:
- 文件鎖定及解鎖
- NTFS中的文件ID
- Reparse points
- 文件配額
- Hard links
- Opportunistic lock
- 文件加密
另外,只有使用EWF的狀態下,才可以使用Hibernate Once Resume Many (HORM) - 一次休眠,多次啟動。而如果啟用了FBWF,HORM則不可用。
同時,FBWF也不能夠提供以下的EWF功能:
- 支持多個覆蓋層
- 支持基于磁盤的(DISK)的覆蓋層模式
- 不需要重啟,立即提交覆蓋層內容和禁用 (-commitanddisable -live)
當然,FBWF技術也有很多優點。
FBWF的優勢:
像EWF一樣,FBWF將對一個或多個卷提供寫保護操作, 并將針對這些卷的寫操作重定向到基于內存的覆蓋層中。但是因為FBWF提供了文件級的寫保護操作,而不同于EWF提供的分區級的寫保護操作,它提供了一些EWF中沒有的特性:
【編輯推薦】