ewf

提供保护卷以防止写入的手段

EWF (Enhanced Write Filter)提供了一种保护卷以防止写入的手段。这使操作系统(OS) 可以从只读媒体(如 CD ROM、写保护硬盘或闪存)中启动。所有对受到 EWF保护的卷进行的写入都被重定向到覆盖。这些写入被缓存在覆盖中并且作为卷的一部分提供。这会产生该卷可写的表象。覆盖可能存在于磁盘或随机访问内存(RAM) 中。如果需要,可以将覆盖中存储的数据提交给受保护的卷。

覆盖类型
Microsoft Windows XP Embedded with Service Pack 1 (XPE w/SP1) 中支持两个基本类型 EWF 覆盖。
首先是基于磁盘的覆盖,它将所有写入操作重定向到硬盘上的不同分区。如果需要,可以将覆盖分区中存储的数据提交到受保护的卷。对于单个卷,可能存在多个磁盘覆盖,并且这些覆盖可能分层。通过这一机制,可以为磁盘创建多个检查点。您可以剥离覆盖层以便还原到以前的视图。这可以通过 EWF 管理器应用程序进行控制(有关详细信息,请参阅下面的“EWF 管理器应用程序”部分)。XPE w/SP1 每卷最多支持 9 个覆盖。
第二种类型的覆盖是基于 RAM 的覆盖。基于 RAM 的覆盖将所有写入操作重定向到内存。通常,当计算机关闭或重新启动时,该数据会丢失。XPE w/SP1 能够使该数据在关机后继续存在。但是,如果计算机不是正常关机,则数据会丢失。每个卷只能配置 1 个 RAM 覆盖。
下表概述了每个覆盖类型的优缺点:
基于磁盘的覆盖 基于 RAM 的覆盖
优点
1.保护磁盘上的数据以避免被改变或破坏
2.提供磁盘内容的多个快照
3.允许将磁盘写入操作提交到受保护的卷
4.还原到以前的覆盖级别
5.保护磁盘上的数据以避免被改变或破坏
6.启用无状态操作
7.使 XPE 能够在没有持久性存储的系统上运行
缺点
1.要求对驱动器进行分区以容纳覆盖分区
2.需要额外的系统开销,可能影响某些设备上的性能
3.需要额外的内存,以存储在覆盖中缓存的数据
4.当系统重新启动时,数据丢失
磁盘覆盖
下列步骤详细说明了如何配置映像以支持 EWF 磁盘覆盖:
1.在目标设计器中,向映像中添加 Enhanced Write Filter 组件。如果您要保护启动卷,则还需要包含 EWF NTLDR 组件。
2.配置设备的设置,并选择 DISK 作为覆盖类型。在“EWF Volume Configuration”中,选择受保护的卷的数量和覆盖级别。根据您希望在覆盖中具有的空间量,设置分区大小。确保为每个受保护的卷输入磁盘号和分区号。还应该选中 Start EWF Enabled复选框。有关所有字段的说明,请参阅 Windows XP Embedded 文档。
3.配置、生成映像并将其部署到设备。需要对驱动器进行分区,以便在驱动器上的扩展分区中具有可用的空闲空间。这将由 EWF 用来在磁盘覆盖中存储数据。因此,它需要足够大以便容纳您的数据。例如,要使受保护的卷可以使用 100 MB 的覆盖,该分区必须起码为 100 MB。
注 如果扩展分区不存在,并且您具有的主分区少于四个,则将需要在驱动器上保留未分区的空间。
4.启动设备,在 FBA 期间,EWF 将基于注册表中的设置配置本身创建并格式化 EWF 分区。
覆盖
下列步骤详细说明了如何配置映像以支持 EWF RAM 覆盖:
1.在目标设计器中,向映像中添加 Enhanced Write Filter 组件。
2.配置设备的设置,将 EWF 分区大小设置为 0,并且选择 RAM 作为覆盖类型。在“EWF Volume Configuration”中,选择受保护的卷的数量。将覆盖级别的数量设置为 1,将分区大小设置为 0。确保为每个受保护的卷输入磁盘号和分区号。而且,选中 Start EWF Enabled复选框。有关所有字段的说明,请参阅 Windows XP Embedded 文档。
3.配置、生成映像并将其部署到设备。您需要将驱动器分区,以便在该驱动器上的扩展分区中至少具有 32 KB 的可用空闲空间(有关详细信息,请参阅上一部分中的附注)。该空间将被 EWF 用于在前后两次启动之间存储 RAM 覆盖的配置数据。
4.启动设备。在 FBA 期间,EWF 将基于注册表中的设置配置本身。它将创建一个最小的EWF分区来存储它的配置信息。
应用
EWF 管理器应用程序是一个用于管理设备上的 EWF 的控制台实用工具,。它是一个可以添加到配置中的可选组件。它使您可以控制 EWF 操作。您可以通过发出以下命令来检查 EWF 状态:
Ewfmgr
EWF 管理器显示类似于以下内容的结果:
Overlay Configuration
Volume Size 2048030208
Segments 8192
Segment Size 249856
Free segments 8192
Max Levels 3
Max Protected Volumes 1
Protected Volumes 1
Overlay volume percent full 0.00
Protected volumes
您可以检查 EWF 卷和覆盖的状态,启用/禁用 EWF,设置检查点,以及提交和回滚更改。所有非状态命令都在下一次重新启动时生效。有关每个命令及其用法的详细信息,请参阅 Windows XP Embedded 文档。
使用问题
EWF 在 FBA 过程中向 FBAlog.txt 文件报告错误。在 FBA 已经完成之后,可以分析该文件,以了解有关 EWF 的状态的详细信息。检查该信息,以确保 EWF 能够创建分区、创建正确的覆盖类型以及保护所需的卷。
创建 EWF 分区时失败
最常见的错误之一是在创建 EWF 分区时失败。请确保在具有不到四个主分区驱动器上,具有处于扩展分区中的可用空闲空间或者未分区的空间。EWF 将从该空间创建分区以存储配置信息。就磁盘覆盖而言,该分区还将存储写入受 EWF 保护的卷的任何数据。这分区或许可以在磁盘管理器中看到;但是,它将不具有驱动器号。
不停地重新启动
当 FBA 试图在已经包含以前的 EWF 分区的系统上配置 EWF 分区时,可能发生不停地重新启动这种情况。这通常发生在开发场所中 — 在这里,反复使用同一系统进行开发和测试。要解决该问题,请清除 EWF 分区。这可以用以下命令完成:
Etprep /delete
写入 EWF 分区时出错
在写入受到 EWF保护的分区时,可能得到以下错误信息:
Delayed Write Failed. Windows was unable to save all data for the file
在用完 EWF 分区中的空间时,会发生这种情况。增加 EWF 分区的大小(基于磁盘的覆盖)或者安装额外的内存(基于 RAM 的覆盖)将有助于避免该问题。
成功技巧
下列主题讨论了一些与存储和磁盘卷有关的问题。
EWF 通常需要由一些持久性存储进行支持
大多数 EWF 配置必须将一些存储分配给 EWF。即使对于 RAM 覆盖而言,也是如此。这是因为 EWF驱动程序需要在前后两次启动之间存储配置数据。对于磁盘覆盖而言,该数据存储在覆盖分区中。对于 RAM 覆盖而言,必须提供少量未分区的空间(大约 32 KB)。
对于只有单个受保护卷的 RAM 覆盖而言,存在例外。在这种情况下,EWF 分区可能在 FBA 完成之后删除。这是为了适应诸如 El Torito 和从闪存中启动之类的情况。在这种情况下,设置被存储在注册表中。
EWF 只支持由受保护的卷报告的可用空间数量
在基于磁盘和基于 RAM 的覆盖中,EWF 只支持由基础的、受保护的卷报告的数据量的写入操作。无论系统可用的空闲磁盘或 RAM 的数量如何,都是如此。这是因为 EWF 假设数据可能必须在基础卷中持续保存。
从基于磁盘的覆盖所保护的 EWF 卷中启动要求使用 EWF NTLDR
在从由基于磁盘的覆盖所支持的、受到 EWF 保护的卷中启动时,必须使用 EWF NTLDR。使用该组件而不是标准的 NT 加载程序 (NTLDR)。在从由基于 RAM 的覆盖所支持的受保护卷中启动时,不需要使用 EWF NTLDR。从 El Torito CD 启动时不需要使用 EWF NTLDR。
EWF 只支持基本磁盘
EWF 组件只能使用基本磁盘。动态磁盘不受支持。
小结
Enhanced Write Filter 为嵌入式开发人员提供了一种灵活的工具,以便防止卷被写入。这使 OS 和其他需要读写媒体的软件无须修改即可操作。它的灵活性使其可以在多种情况下使用,这包括从闪存、CD ROM 和只读磁盘中启动。
全国各地天气预报查询

上海市

  • 市辖区
  • 云南省

  • 临沧市
  • 云南省

  • 丽江市
  • 云南省

  • 保山市
  • 云南省

  • 大理白族自治州
  • 云南省

  • 德宏傣族景颇族自治州
  • 云南省

  • 怒江傈僳族自治州
  • 云南省

  • 文山壮族苗族自治州
  • 云南省

  • 昆明市
  • 云南省

  • 昭通市
  • 云南省

  • 普洱市
  • 云南省

  • 曲靖市
  • 云南省

  • 楚雄彝族自治州
  • 云南省

  • 玉溪市
  • 云南省

  • 红河哈尼族彝族自治州
  • 云南省

  • 西双版纳傣族自治州
  • 云南省

  • 迪庆藏族自治州
  • 内蒙古自治区

  • 乌兰察布市
  • 内蒙古自治区

  • 乌海市
  • 内蒙古自治区

  • 兴安盟
  • 内蒙古自治区

  • 包头市
  • 内蒙古自治区

  • 呼伦贝尔市
  • 内蒙古自治区

  • 呼和浩特市
  • 内蒙古自治区

  • 巴彦淖尔市
  • 内蒙古自治区

  • 赤峰市
  • 内蒙古自治区

  • 通辽市
  • 内蒙古自治区

  • 鄂尔多斯市
  • 内蒙古自治区

  • 锡林郭勒盟
  • 内蒙古自治区

  • 阿拉善盟
  • 北京市

  • 市辖区
  • 吉林省

  • 吉林市
  • 吉林省

  • 四平市
  • 吉林省

  • 延边朝鲜族自治州
  • 吉林省

  • 松原市
  • 吉林省

  • 白城市
  • 吉林省

  • 白山市
  • 吉林省

  • 辽源市
  • 吉林省

  • 通化市
  • 吉林省

  • 长春市
  • 四川省

  • 乐山市
  • 四川省

  • 内江市
  • 四川省

  • 凉山彝族自治州
  • 四川省

  • 南充市
  • 四川省

  • 宜宾市
  • 四川省

  • 巴中市
  • 四川省

  • 广元市
  • 四川省

  • 广安市
  • 四川省

  • 德阳市
  • 四川省

  • 成都市
  • 四川省

  • 攀枝花市
  • 四川省

  • 泸州市
  • 四川省

  • 甘孜藏族自治州
  • 四川省

  • 眉山市
  • 四川省

  • 绵阳市
  • 四川省

  • 自贡市
  • 四川省

  • 资阳市
  • 四川省

  • 达州市
  • 四川省

  • 遂宁市
  • 四川省

  • 阿坝藏族羌族自治州
  • 四川省

  • 雅安市
  • 天津市

  • 市辖区
  • 宁夏回族自治区

  • 中卫市
  • 宁夏回族自治区

  • 吴忠市
  • 宁夏回族自治区

  • 固原市
  • 宁夏回族自治区

  • 石嘴山市
  • 宁夏回族自治区

  • 银川市
  • 安徽省

  • 亳州市
  • 安徽省

  • 六安市
  • 安徽省

  • 合肥市
  • 安徽省

  • 安庆市
  • 安徽省

  • 宣城市
  • 安徽省

  • 宿州市
  • 安徽省

  • 池州市
  • 安徽省

  • 淮北市
  • 安徽省

  • 淮南市
  • 安徽省

  • 滁州市
  • 安徽省

  • 芜湖市
  • 安徽省

  • 蚌埠市
  • 安徽省

  • 铜陵市
  • 安徽省

  • 阜阳市
  • 安徽省

  • 马鞍山市
  • 安徽省

  • 黄山市
  • 山东省

  • 东营市
  • 山东省

  • 临沂市
  • 山东省

  • 威海市
  • 山东省

  • 德州市
  • 山东省

  • 日照市
  • 山东省

  • 枣庄市
  • 山东省

  • 泰安市
  • 山东省

  • 济南市
  • 山东省

  • 济宁市
  • 山东省

  • 淄博市
  • 山东省

  • 滨州市
  • 山东省

  • 潍坊市
  • 山东省

  • 烟台市
  • 山东省

  • 聊城市
  • 山东省

  • 菏泽市
  • 山东省

  • 青岛市
  • 山西省

  • 临汾市
  • 山西省

  • 吕梁市
  • 山西省

  • 大同市
  • 山西省

  • 太原市
  • 山西省

  • 忻州市
  • 山西省

  • 晋中市
  • 山西省

  • 晋城市
  • 山西省

  • 朔州市
  • 山西省

  • 运城市
  • 山西省

  • 长治市
  • 山西省

  • 阳泉市
  • 广东省

  • 东莞市
  • 广东省

  • 中山市
  • 广东省

  • 云浮市
  • 广东省

  • 佛山市
  • 广东省

  • 广州市
  • 广东省

  • 惠州市
  • 广东省

  • 揭阳市
  • 广东省

  • 梅州市
  • 广东省

  • 汕头市
  • 广东省

  • 汕尾市
  • 广东省

  • 江门市
  • 广东省

  • 河源市
  • 广东省

  • 深圳市
  • 广东省

  • 清远市
  • 广东省

  • 湛江市
  • 广东省

  • 潮州市
  • 广东省

  • 珠海市
  • 广东省

  • 肇庆市
  • 广东省

  • 茂名市
  • 广东省

  • 阳江市
  • 广东省

  • 韶关市
  • 广西壮族自治区

  • 北海市
  • 广西壮族自治区

  • 南宁市
  • 广西壮族自治区

  • 崇左市
  • 广西壮族自治区

  • 来宾市
  • 广西壮族自治区

  • 柳州市
  • 广西壮族自治区

  • 桂林市
  • 广西壮族自治区

  • 梧州市
  • 广西壮族自治区

  • 河池市
  • 广西壮族自治区

  • 玉林市
  • 广西壮族自治区

  • 百色市
  • 广西壮族自治区

  • 贵港市
  • 广西壮族自治区

  • 贺州市
  • 广西壮族自治区

  • 钦州市
  • 广西壮族自治区

  • 防城港市
  • 新疆维吾尔自治区

  • 乌鲁木齐市
  • 新疆维吾尔自治区

  • 伊犁哈萨克自治州
  • 新疆维吾尔自治区

  • 克孜勒苏柯尔克孜自治州
  • 新疆维吾尔自治区

  • 克拉玛依市
  • 新疆维吾尔自治区

  • 博尔塔拉蒙古自治州
  • 新疆维吾尔自治区

  • 吐鲁番市
  • 新疆维吾尔自治区

  • 和田地区
  • 新疆维吾尔自治区

  • 哈密市
  • 新疆维吾尔自治区

  • 喀什地区
  • 新疆维吾尔自治区

  • 塔城地区
  • 新疆维吾尔自治区

  • 巴音郭楞蒙古自治州
  • 新疆维吾尔自治区

  • 昌吉回族自治州
  • 新疆维吾尔自治区

  • 自治区直辖县级行政区划
  • 新疆维吾尔自治区

  • 阿克苏地区
  • 新疆维吾尔自治区

  • 阿勒泰地区
  • 江苏省

  • 南京市
  • 江苏省

  • 南通市
  • 江苏省

  • 宿迁市
  • 江苏省

  • 常州市
  • 江苏省

  • 徐州市
  • 江苏省

  • 扬州市
  • 江苏省

  • 无锡市
  • 江苏省

  • 泰州市
  • 江苏省

  • 淮安市
  • 江苏省

  • 盐城市
  • 江苏省

  • 苏州市
  • 江苏省

  • 连云港市
  • 江苏省

  • 镇江市
  • 江西省

  • 上饶市
  • 江西省

  • 九江市
  • 江西省

  • 南昌市
  • 江西省

  • 吉安市
  • 江西省

  • 宜春市
  • 江西省

  • 抚州市
  • 江西省

  • 新余市
  • 江西省

  • 景德镇市
  • 江西省

  • 萍乡市
  • 江西省

  • 赣州市
  • 江西省

  • 鹰潭市
  • 河北省

  • 保定市
  • 河北省

  • 唐山市
  • 河北省

  • 廊坊市
  • 河北省

  • 张家口市
  • 河北省

  • 承德市
  • 河北省

  • 沧州市
  • 河北省

  • 石家庄市
  • 河北省

  • 秦皇岛市
  • 河北省

  • 衡水市
  • 河北省

  • 邢台市
  • 河北省

  • 邯郸市
  • 河南省

  • 三门峡市
  • 河南省

  • 信阳市
  • 河南省

  • 南阳市
  • 河南省

  • 周口市
  • 河南省

  • 商丘市
  • 河南省

  • 安阳市
  • 河南省

  • 平顶山市
  • 河南省

  • 开封市
  • 河南省

  • 新乡市
  • 河南省

  • 洛阳市
  • 河南省

  • 漯河市
  • 河南省

  • 濮阳市
  • 河南省

  • 焦作市
  • 河南省

  • 省直辖县级行政区划
  • 河南省

  • 许昌市
  • 河南省

  • 郑州市
  • 河南省

  • 驻马店市
  • 河南省

  • 鹤壁市
  • 浙江省

  • 丽水市
  • 浙江省

  • 台州市
  • 浙江省

  • 嘉兴市
  • 浙江省

  • 宁波市
  • 浙江省

  • 杭州市
  • 浙江省

  • 温州市
  • 浙江省

  • 湖州市
  • 浙江省

  • 绍兴市
  • 浙江省

  • 舟山市
  • 浙江省

  • 衢州市
  • 浙江省

  • 金华市
  • 海南省

  • 三亚市
  • 海南省

  • 三沙市
  • 海南省

  • 儋州市
  • 海南省

  • 海口市
  • 海南省

  • 省直辖县级行政区划
  • 湖北省

  • 十堰市
  • 湖北省

  • 咸宁市
  • 湖北省

  • 孝感市
  • 湖北省

  • 宜昌市
  • 湖北省

  • 恩施土家族苗族自治州
  • 湖北省

  • 武汉市
  • 湖北省

  • 省直辖县级行政区划
  • 湖北省

  • 荆州市
  • 湖北省

  • 荆门市
  • 湖北省

  • 襄阳市
  • 湖北省

  • 鄂州市
  • 湖北省

  • 随州市
  • 湖北省

  • 黄冈市
  • 湖北省

  • 黄石市
  • 湖南省

  • 娄底市
  • 湖南省

  • 岳阳市
  • 湖南省

  • 常德市
  • 湖南省

  • 张家界市
  • 湖南省

  • 怀化市
  • 湖南省

  • 株洲市
  • 湖南省

  • 永州市
  • 湖南省

  • 湘潭市
  • 湖南省

  • 湘西土家族苗族自治州
  • 湖南省

  • 益阳市
  • 湖南省

  • 衡阳市
  • 湖南省

  • 邵阳市
  • 湖南省

  • 郴州市
  • 湖南省

  • 长沙市
  • 甘肃省

  • 临夏回族自治州
  • 甘肃省

  • 兰州市
  • 甘肃省

  • 嘉峪关市
  • 甘肃省

  • 天水市
  • 甘肃省

  • 定西市
  • 甘肃省

  • 平凉市
  • 甘肃省

  • 庆阳市
  • 甘肃省

  • 张掖市
  • 甘肃省

  • 武威市
  • 甘肃省

  • 甘南藏族自治州
  • 甘肃省

  • 白银市
  • 甘肃省

  • 酒泉市
  • 甘肃省

  • 金昌市
  • 甘肃省

  • 陇南市
  • 福建省

  • 三明市
  • 福建省

  • 南平市
  • 福建省

  • 厦门市
  • 福建省

  • 宁德市
  • 福建省

  • 泉州市
  • 福建省

  • 漳州市
  • 福建省

  • 福州市
  • 福建省

  • 莆田市
  • 福建省

  • 龙岩市
  • 西藏自治区

  • 山南市
  • 西藏自治区

  • 拉萨市
  • 西藏自治区

  • 日喀则市
  • 西藏自治区

  • 昌都市
  • 西藏自治区

  • 林芝市
  • 西藏自治区

  • 那曲市
  • 西藏自治区

  • 阿里地区
  • 贵州省

  • 六盘水市
  • 贵州省

  • 安顺市
  • 贵州省

  • 毕节市
  • 贵州省

  • 贵阳市
  • 贵州省

  • 遵义市
  • 贵州省

  • 铜仁市
  • 贵州省

  • 黔东南苗族侗族自治州
  • 贵州省

  • 黔南布依族苗族自治州
  • 贵州省

  • 黔西南布依族苗族自治州
  • 辽宁省

  • 丹东市
  • 辽宁省

  • 大连市
  • 辽宁省

  • 抚顺市
  • 辽宁省

  • 朝阳市
  • 辽宁省

  • 本溪市
  • 辽宁省

  • 沈阳市
  • 辽宁省

  • 盘锦市
  • 辽宁省

  • 营口市
  • 辽宁省

  • 葫芦岛市
  • 辽宁省

  • 辽阳市
  • 辽宁省

  • 铁岭市
  • 辽宁省

  • 锦州市
  • 辽宁省

  • 阜新市
  • 辽宁省

  • 鞍山市
  • 重庆市

  • 重庆市

  • 市辖区
  • 陕西省

  • 咸阳市
  • 陕西省

  • 商洛市
  • 陕西省

  • 安康市
  • 陕西省

  • 宝鸡市
  • 陕西省

  • 延安市
  • 陕西省

  • 榆林市
  • 陕西省

  • 汉中市
  • 陕西省

  • 渭南市
  • 陕西省

  • 西安市
  • 陕西省

  • 铜川市
  • 青海省

  • 果洛藏族自治州
  • 青海省

  • 海东市
  • 青海省

  • 海北藏族自治州
  • 青海省

  • 海南藏族自治州
  • 青海省

  • 海西蒙古族藏族自治州
  • 青海省

  • 玉树藏族自治州
  • 青海省

  • 西宁市
  • 青海省

  • 黄南藏族自治州
  • 黑龙江省

  • 七台河市
  • 黑龙江省

  • 伊春市
  • 黑龙江省

  • 佳木斯市
  • 黑龙江省

  • 双鸭山市
  • 黑龙江省

  • 哈尔滨市
  • 黑龙江省

  • 大兴安岭地区
  • 黑龙江省

  • 大庆市
  • 黑龙江省

  • 牡丹江市
  • 黑龙江省

  • 绥化市
  • 黑龙江省

  • 鸡西市
  • 黑龙江省

  • 鹤岗市
  • 黑龙江省

  • 黑河市
  • 黑龙江省

  • 齐齐哈尔市