最近在公司接触了嵌入式的wes7系统,wes7和wes2009是组件化的windows系统,除具有最新版的windows功能之外还具有适用于嵌入式系统的一些嵌入式功能,如例如EWF,FBWF。

FBWF是微软在Windows XP Embedded FP2007及以后版本的XPE开发工具中推出的最新写保护技术。在FBWF开启的状态下,如果有写入操作,FBWF将重定向写操作到内存上的一个区域中,我们通常称之为覆盖层。
AD:
FBWF(File Based Write Filter),基于文件的写保护过滤.FBWF是微软在Windows XP Embedded FP2007及以后版本的XPE开发工具中推出的最新写保护技术。在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中没有的特性:
 
透明的文件和目录管理 
可选择的写入操作 
可选择的提交和恢复操作 
改进的基于内存的覆盖层使用
 

FBWF和EWF的对比的更多相关文章

  1. How to enable/disable EWF

    date: 2015/2/18 Enhanced Write Filter (or EWF) is a component of Windows XP Embedded and Windows Emb ...

  2. RAMOS和SSD对比

    http://bbs.pcbeta.com/forum.php?mod=redirect&goto=findpost&ptid=1786284&pid=48341400RAMO ...

  3. Ignite性能测试以及对redis的对比

    测试方法 为了对Ignite做一个基本了解,做了一个性能测试,测试方法也比较简单主要是针对client模式,因为这种方法和使用redis的方式特别像.测试方法很简单主要是下面几点: 不作参数优化,默认 ...

  4. IIC驱动移植在linux3.14.78上的实现和在linux2.6.29上实现对比(deep dive)

    首先说明下为什么写这篇文章,网上有许多博客也是介绍I2C驱动在linux上移植的实现,但是笔者认为他们相当一部分没有分清所写的驱动时的驱动模型,是基于device tree, 还是基于传统的Platf ...

  5. [原] KVM 环境下MySQL性能对比

    KVM 环境下MySQL性能对比 标签(空格分隔): Cloud2.0 [TOC] 测试目的 对比MySQL在物理机和KVM环境下性能情况 压测标准 压测遵循单一变量原则,所有的对比都是只改变一个变量 ...

  6. arcgis api for js入门开发系列六地图分屏对比(含源代码)

    上一篇实现了demo的地图标绘模块,本篇新增地图地图分屏对比模块,截图如下(源代码见文章底部): 对效果图的简单介绍一下,在demo只采用了两分屏对比,感兴趣的话,可以在两分屏的基础上拓展,修改css ...

  7. 嵌入式&iOS:回调函数(C)与block(OC)回调对比

    学了OC的block,再写C的回调函数有点别扭,对比下区别,回忆记录下. C的回调函数: callBack.h 1).定义一个回调函数的参数数量.类型. typedef void (*CallBack ...

  8. C#跨平台手机应用开发工具Xamarin尝试 与Eclipse简单对比

    Xamarin 支持使用C#开发基于Android.IOS.WindowsPhone应用开发,最大特点C#+跨平台,详细说明问度娘. 安装 研究 想体验研究的点击查看页面 Xamarin For Vi ...

  9. 几款主流 NoSql 数据库的对比

    最近小组准备启动一个 node 开源项目,从前端亲和力.大数据下的IO性能.可扩展性几点入手挑选了 NoSql 数据库,但具体使用哪一款产品还需要做一次选型. 我们最终把选项范围缩窄在 HBase.R ...

随机推荐

  1. JS保留两位小数 四舍五入函数

    js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数. <script language="javascript"> document.write(& ...

  2. (DP6.1.2.1)UVA 147 Dollars(子集和问题)

    /* * UVA_147.cpp * * Created on: 2013年10月12日 * Author: Administrator */ #include <iostream> #i ...

  3. 12.1 文档相关 Webbrowser 该文档已被修改,是否保存修改结果

       附件:http://files.cnblogs.com/xe2011/Webbrowser_Document_IsModified.rar   该文档已被修改,是否保存修改结果?是:保存修改结果 ...

  4. 手动配置Ubuntu Linux系列3-缺省网关和主机名

    上一篇讲到[原创]手动配置Ubuntu Linux的DHCP客户端,这里再说一下配置静态IP地址的方法.   仍然是编辑 interfaces文件.   $ sudo vi /etc/network/ ...

  5. iOS之深入了解控制器View的加载

    前言 在面试中,面试官可能会问这样的问题,loadView有什么作用,它与viewDidLoad有何区别 首先我们得知道,控制器view是通过懒加载的方式进行加载的,即用到的时候再加载. loadVi ...

  6. JAVA_FastJson

    package com.qf.mobiletrain01; import java.util.List; import com.alibaba.fastjson.JSON; class Student ...

  7. CentOS 6.x安装gcc 4.8/4.9/5.2

    1.gcc 4.8 cd /etc/yum.repos.d wget http://people.centos.org/tru/devtools-2/devtools-2.repo -gcc -bin ...

  8. C#总结3

    第四章:文件管理 File类:      对于File类,里面的方法都是静态方法,就是直接可以用FIle来“.”: 记几个方法吧:File.Copy(string filename1,string f ...

  9. 关于SWT中的布局Layout

    组件装在容器里,那么这些组件是如何布局的呢?在这之前所有的例子都是使用setBounds来 进行绝对坐标的定位的. 在实际应用过程中大都是采用布局管理器的方式来布局容器中的组件. 布局管理器定义了组件 ...

  10. 关于git reset和git revert之前的区别

    很多时候,git新手容易误操作,比如,在levelIISZ-1.4.dev分支下,运行了git pull idc cpp-1.0的结果,这样做麻烦很大,经常导致maven项目格式不正确,这个时候,可以 ...