对于USB、CF、DOM这类flash介质的存储设备来说,频繁的写操作一来会减慢系统的整体响应速度,二来会降低该存储设备的使用寿命。然而,flash存储设备在嵌入式领域中有着广泛的使用,因此,Microsoft公司在其XPE系统里加入了EWF功能,来解决这个矛盾。
EWF提供了存储器写入保护功能,它可以将写入信息自动映射到内存或某个存储空间内,以实现数据写入与存储器寿命或文件保护的自动协调。
EWF功能在XPE SP1中具有内存覆盖和磁盘覆盖两种保护模式。内存覆盖模式使用简单,缺点是系统运行中所做的任何修改,都映射在内存里,断电后都会被清除。磁盘覆盖可以保存写入的信息,不受断电的影响,缺点是需要保留一个分区空间以及稍占用一点系统性能。
具体设置:
1、在目标设计器中,向映像中添加 Enhanced Write Filter 组件。
2、覆盖设备的设置。
内存覆盖:将EWF Partition Size设置为 0,并且Overlay Type选择RAM。
磁盘覆盖:设置EWF Partition Size,并且Overlay Type选择DISK。
在“EWF Volume Configuration”中,选择受保护的卷的数量。将覆盖级别的数量设置为1。而且,选中 Start EWF Enabled复选框。如此即可。
系统运行时,EWF功能可通过诸如以下命令来关闭、打开,重启系统后生效:ewfmgr c: -disable、ewfmgr c: -enable、ewfmgr c: -comiet
Microsoft另提供了EWF API,以方便用户完成某些特定的写入操作。