标题：FBWF
基本信息
简介Windows® XP Embedded Service Pack 2 Feature Pack 2007（以下简称FP2007）推出了一个新的嵌入式特性（EEF），它被称之为File Based Write Filter（FBWF）。这个新的嵌入式特性提供了实体状态设备的无状态保护，并有新的以及提高的维护性特征。通过Target Designer能够很轻松地对其进行配置，同时，它也能够通过FP2007提供的命令行工具或者应用程序编程接口（API）进行动态的配置。 
在嵌入式世界里，设备将允许使用FBWF来为操作系统提供更好的弹性和可靠性，它还为操作系统提供无状态的操作并消除损耗。这些功能主要通过对缓存写入的再定向来完成。缓存可以被认为是存储介质上的一个覆盖图，在这张图形上归纳了磁盘上的内容以及在随机存储器当中的缓存覆盖图，并将他们组合成为一个新的复合视图。当系统重新启动的时候，随机存取存储器（RAM）的覆盖图被清空了，这时操作系统处于原来的状态。我们可以通过下面的这张图表来理解复合视图缓存当中被修改的文件以及新建的文件： 增强的写入过滤器（EWF）是另外一个由Windows XP Embedded提供的写入过滤器，它通过截取对扇区级别的调用来完成写入过滤功能。保护扇区级别的功能让EWF拥有了控制整个文件系统的能力，并通过对扇区的保护达到保护文件系统的目的。然而，EWF盲目地过滤所有对扇区的读写操作，不能直接对文件进行保护。由于FBWF正是针对文件级别设计的，它能够智能地针对文件、文件夹或者任何文件系统数据结构进行过滤，有效地达到了保护文件系统的目的。 
现在，为了将对文件系统的保护提高到文件级别，开发人员需要告诉FBWF哪些文件或文件夹是需要被保护的，以及哪些是不需要保护的。我们通过一个被称之为“写入列表”的表格来完成这项功能。这张表格允许FBWF绕开目录以及保护卷对文件的控制，通过FBWF直接在磁盘存储介质上进行操作。假设一个用户频繁地下载和保存视频文件，那么设备的存储介质目录将会被配置为“可写入的”，并允许文件在系统重新启动后仍然可以被访问。一些典型的可写入列表包括日志文件和系统事件文件。 
FBWF另外一个有用的特性是能够实时提交文件。当操作系统正在运行当中，文件可以被提交到磁盘上的。假设IT部门的主管需要每月更新其数据库中的病毒特性信息。这种情况下，数据库文件往往被保存在磁盘上，并对其进行保护。当数据库更新后，这些病毒特性信息并不能被实时地提交，除非一开始就启用FBWF。这个过程不需要重新启动系统，也无需事先将更新的内容放进可写入列表当中。 
综述综上所述，FBWF的写入保护在嵌入式设备上是文件级别的，这一点不同于增强的写入过滤器（EWF）对嵌入式设备存储器的扇区级别保护。这一点让FBWF可以在新的应用场景下工作，比如针对服务应用文件或是系统文件的保护，而不用对整个磁盘进行盲目保护。
FBWF命令行操作
教程开始菜单—〉运行输入CMD，打开命令提示符。之后需要的输入命令
1.查看FBWF的状态Fbwfmgr
//查看FBWF的状态。
也可以使用
Fbwfmgr /displayconfig
//查看FBWF的状态。
成功返回：
File-based write filter configuration for the current session:
//当前FBWF状态。
filter state: enabled.
// FBWF现在处在开状态。
overlay cache data compression state: enabled.
//压缩覆盖缓存：开启。
解释一下FBWF拦截的数据放在缓冲区中即覆盖缓存
overlay cache threshold: 1024 MB.
// 覆盖缓存区大小：1024MB。
overlay cache pre-allocation: disabled.
// 覆盖缓存预分配：关闭。开启后会预先分配FBWF的覆盖缓存。
size display: virtual mode.
// 覆盖缓存：虚拟模式。FBWF具有两种模式实际模式和虚拟模式，在虚拟模式下覆盖缓存的可用容量=被写保护驱动器显示的可用容量。
例如C驱动器被写保护，当前（虚拟模式，系统运行）C驱动器还有128MB的可用空间即表示覆盖缓存还有128MB可用。
protected volume list:
\Device\HarddiskVolume1
//当前受写保护的驱动器，这里用驱动器号表示
HarddiskVolume1=C：
HarddiskVolume2=D：
……
注意：有时候不是按顺序排的。例如：HarddiskVolume3=D：
例如
write through list of each protected volume:
\Device\HarddiskVolume1:
\Documents and Settings\Administrator\Local Settings\Temp
\Documents and Settings\Administrator\Local Settings\Temporary InternetFiles
\Documents and Settings\Administrator\My Documents
\Documents and Settings\Administrator\桌面
\Documents and Settings\All Users\My Documents
\Documents and Settings\All Users\桌面
\RegfData
\WINDOWS\TEMP
\userdata
//FBWF的豁免写保护列表。在列表中的文件或文件夹不受写保护。\Device\HarddiskVolume3: (none)表示整个驱动器（HarddiskVolume3）又受到写保护。
注意：\RegfData文件如果存在在C：下不要将其从豁免写保护列表中手动删除和添加。同样不要尝试添加和删除\fbwf.cfg
File-based write filter configuration for the next session: 
//下次启动系统（系统重起后）FBWF状态。
filter state: disabled.
// FBWF在下次启动被关闭。
2. FBWF的开启和关闭开启：
FbwfMgr /enable
成功返回：
File-based write filter will be enabled on the next reboot.
关闭：
FbwfMgr /disable
成功返回：
File-based write filter will be disabled on the next reboot.
注意：两条命令都重起后生效
3添加删除驱动器添加：
FbwfMgr /addvolume \Device\HarddiskVolume3 
//添加\Device\HarddiskVolume3 添加驱动器到FBWF豁免写保护列表，默认列表为空（该驱动器将受到FBWF保护）
也可以这样写
FbwfMgr /addvolume D:
//添加D：驱动器到FBWF豁免写保护列表
正常返回：
Volume \Device\HarddiskVolume3 will be protected after the next reboot.
或者
Volume d: will be protected after the next reboot.
错误返回：
Volume cannot be added. Filter is not enabled for the next session.
//下次FBWF为关闭状态,开启才能使用。
删除：
FbwfMgr /removevolume \Device\HarddiskVolume3 1
//从FBWF豁免写保护列表删除HarddiskVolume3 驱动器 （该驱动器将不再受到FBWF保护）
也可以这样写
FbwfMgr /removevolume d: 1
//从FBWF豁免写保护列表删除d: 驱动器
注意本命令有一个开关
1代表：重起后删除该驱动器豁免写保护列表。
0代表：重起后不删除该驱动器豁免写保护列表。
正常返回：
Volume \Device\HarddiskVolume3 will not be protected after the next reboot.
或者
Volume d: will not be protected after the next reboot.
错误返回：
Volume cannot be added. Filter is not enabled for the next session.
//下次FBWF为关闭状态,开启才能使用。
注意：两条命令都是重起后生效，并且下次重起FBWF为开启状态才能执行。
4.添加文件夹4. 向FBWF豁免添加文件夹。
添加文件夹：
FbwfMgr /addexclusion \Device\HarddiskVolume1 \Temp
//将Device\HarddiskVolume1\Temp 文件夹添加进FBWF豁免写保护列表。
也可以这样写：
FbwfMgr /addexclusion c: \Temp