31
WCI330 WCI330 嵌嵌嵌 嵌嵌嵌 XP XP 嵌嵌嵌嵌 嵌嵌嵌嵌 嵌嵌 嵌嵌 嵌嵌嵌 嵌嵌嵌 嵌嵌嵌嵌嵌嵌嵌 嵌嵌嵌 嵌嵌嵌嵌嵌嵌嵌 嵌嵌嵌 嵌嵌 嵌嵌嵌 嵌嵌嵌嵌 () 嵌嵌 嵌嵌嵌 嵌嵌嵌嵌 ()

WCI330 嵌入式 XP 高级技术

  • Upload
    marv

  • View
    115

  • Download
    0

Embed Size (px)

DESCRIPTION

WCI330 嵌入式 XP 高级技术. 凌宁 系统工程师 亚洲区嵌入式系统事业群 微软(中国)有限公司. 嵌入式 XP 的高级技术. 嵌入式 XP 简介 SDI 操作系统镜像格式和支持工具 镜像克隆和重新封装 大规模生产近乎相同的镜像 远程启动 允许通过 PXE 技术从服务器启动镜像 设备更新代理( Device Update Agent ) 轻量级服务客户端 WinPE 可启动 “ XP ” 的安装平台 Enhanced Write Filter 保护操作系统分区 CD-Boot - PowerPoint PPT Presentation

Citation preview

Page 1: WCI330 嵌入式 XP 高级技术

WCI330WCI330嵌入式嵌入式 XPXP 高级技术高级技术

凌宁凌宁系统工程师系统工程师亚洲区嵌入式系统事业群亚洲区嵌入式系统事业群微软(中国)有限公司微软(中国)有限公司

Page 2: WCI330 嵌入式 XP 高级技术
Page 3: WCI330 嵌入式 XP 高级技术

嵌入式嵌入式 XPXP 的高级技术的高级技术

嵌入式嵌入式 XPXP 简介简介SDISDI

操作系统镜像格式和支持工具操作系统镜像格式和支持工具镜像克隆和重新封装镜像克隆和重新封装

大规模生产近乎相同的镜像大规模生产近乎相同的镜像远程启动远程启动

允许通过允许通过 PXEPXE 技术从服务器启动镜像技术从服务器启动镜像设备更新代理(设备更新代理( Device Update AgentDevice Update Agent ))

轻量级服务客户端轻量级服务客户端WinPEWinPE

可启动“可启动“ XP”XP” 的安装平台 的安装平台 Enhanced Write FilterEnhanced Write Filter

保护操作系统分区保护操作系统分区CD-BootCD-Boot

““El Torito” El Torito” 技术的实现可以让操作系统在只读媒体上运行技术的实现可以让操作系统在只读媒体上运行

Page 4: WCI330 嵌入式 XP 高级技术

嵌入式嵌入式 XPXP 简介简介

构件化的构件化的 Windows XPWindows XP 专业版 专业版 和专业版和专业版 XPXP 同样的二进制代码同样的二进制代码完全支持完全支持 Win32Win32 和和 SP1.net APISP1.net API

同样的补丁支持同样的补丁支持支持所有支持所有 WindowsWindows 平台的设备驱动平台的设备驱动给开发者提供最好的工具给开发者提供最好的工具

Page 5: WCI330 嵌入式 XP 高级技术

嵌入式嵌入式 XPXP 的构件的构件

XMLXML 描述的构件描述的构件1000 1000 多个操作系统构件多个操作系统构件9000 9000 多个设备驱动多个设备驱动减少构件之间的依赖性减少构件之间的依赖性

每个构件所包含的内容每个构件所包含的内容文件或其他的资源文件或其他的资源设置,并且提供设置,并且提供 DHTMLDHTML 的配置的配置 UIUI注册状态注册状态依赖性依赖性帮助文档帮助文档

Page 6: WCI330 嵌入式 XP 高级技术

嵌入式嵌入式 XPXP 开发概述开发概述Target Target

DesignerDesignerComponent Component

DesignerDesigner

XPe XPe Component Component

DatabaseDatabase

ApplicationApplicationBinariesBinaries

App, App, OS and EEFOS and EEFComponentsComponents

Target Target AnalyzerAnalyzerHardwareHardware

DefinitionDefinition

Application Application ComponentsComponents

OSOSImageImage

OSOSImageImage

Page 7: WCI330 嵌入式 XP 高级技术

SDISDI

SDISDI 是一个嵌入式是一个嵌入式 XPXP 镜像的可携带文件镜像的可携带文件格式格式

虚拟磁盘(虚拟磁盘( Virtual disk driveVirtual disk drive ))磁盘镜像备份(磁盘镜像备份( .sdi.sdi 文件)文件)分区,格式化,可启动分区,格式化,可启动

建造,编辑和展开镜像建造,编辑和展开镜像SDI LoaderSDI Loader

GUIGUI 工具工具创造,挂上(创造,挂上( mountingmounting )) , , 取下取下(( dismountingdismounting ) 作为磁盘的) 作为磁盘的 SDISDI 文件文件

SDI ManagerSDI Manager命令行工具:操作命令行工具:操作 OfflineOffline SDISDI 文件文件

Page 8: WCI330 嵌入式 XP 高级技术

SDI SDI 的用途的用途

管理大量的可启动镜像管理大量的可启动镜像Target Designer builds into Target Designer builds into mounted drives mounted drives

远程启动的操作系统镜像格式远程启动的操作系统镜像格式NTLDRNTLDR 对对 SDISDI 镜像的支持镜像的支持Remote Boot managerRemote Boot manager 允许对允许对 MACMAC 地地址进行址进行 SDISDI 镜像配置镜像配置

Page 9: WCI330 嵌入式 XP 高级技术

SDI SDI 文件格式 文件格式

PartitionPartitionBlobBlob

PartitionPartitionBlobBlob

LoaderLoaderBlobBlob

LoaderLoaderBlobBlob

Boot BlobBoot BlobBoot BlobBoot Blob

HeaderHeaderHeaderHeader • SDI Signature• Boot Offset and Length• Extensible (4K)

• SDI Signature• Boot Offset and Length• Extensible (4K)

• Boot program STARTROM.COM• Real mode executable file• Call NTLDR.exe

• Boot program STARTROM.COM• Real mode executable file• Call NTLDR.exe

• Loader Program NTLDR.exe• Mounts Partition Blob as RAMDISK• Boots into RAMDISK

• Loader Program NTLDR.exe• Mounts Partition Blob as RAMDISK• Boots into RAMDISK

• Target runtime image • Post FBA XPe Image• Target runtime image • Post FBA XPe Image

Disk BlobDisk BlobDisk BlobDisk Blob

Page 10: WCI330 嵌入式 XP 高级技术

镜像克隆和重新封装镜像克隆和重新封装

在同样的硬件平台上大量部署在同样的硬件平台上大量部署Run-timeRun-time 镜像必须配置不同的序列号,镜像必须配置不同的序列号, MACMAC 地址,地址,SIDSID 等等

包含系统克隆构件(包含系统克隆构件( System Cloning System Cloning ComponentComponent ))

分两步走分两步走 :: 重新封装和克隆重新封装和克隆允许在允许在 FBAFBA 中配置中配置允许在建造后手工安装应用允许在建造后手工安装应用

利用利用 SDISDI 技术部署重新封装的镜像技术部署重新封装的镜像

Page 11: WCI330 嵌入式 XP 高级技术

远程启动远程启动

概述概述通过网络启动一个嵌入式的设备通过网络启动一个嵌入式的设备针对针对 POSPOS 的方案的方案针对无盘设备针对无盘设备

系统要求系统要求嵌入式嵌入式 Windows XP run-timeWindows XP run-time 镜像镜像设备支持设备支持 BIOS PXE, TCP/IPBIOS PXE, TCP/IP 网络网络Windows 2000Windows 2000 或以上服务器并带有或以上服务器并带有 DHCP, PXEDHCP, PXE和和 TFTPTFTP 服务。服务。

Page 12: WCI330 嵌入式 XP 高级技术

远程启动方案远程启动方案

方案方案在在 POSPOS 类的设备里面部署类的设备里面部署

无盘系统无盘系统 , , 不需要保存状态不需要保存状态功能单一功能单一

由第三方进行扩展由第三方进行扩展SDISDI 镜像镜像 , , 启动到启动到 RAM DiskRAM Disk用用 RBS ManagerRBS Manager 配置远程启动服务器配置远程启动服务器

针对针对 MACMAC 地址分配镜像地址分配镜像 , , 启动程序等启动程序等扩展能力是基于支持扩展能力是基于支持 NTLoaderNTLoader 镜像格式的镜像格式的SDISDI 镜像镜像

Page 13: WCI330 嵌入式 XP 高级技术

远程启动方案架构远程启动方案架构

ClientsClients

DHCP ServerDHCP Server

Redirection ServiceRedirection ServiceBoot ServiceBoot ServiceTFTP ServiceTFTP Service

Page 14: WCI330 嵌入式 XP 高级技术

设备更新代理(设备更新代理( Device Update Device Update AgentAgent ))

针对小容量设备的轻量级管理方案针对小容量设备的轻量级管理方案最小的依赖性最小的依赖性灵活的命令集以适应广泛的应用方案灵活的命令集以适应广泛的应用方案

Page 15: WCI330 嵌入式 XP 高级技术

主要的主要的 DUADUA 方案方案

更新应用或者应用数据更新应用或者应用数据部署部署 QFEsQFEs 或者系统更新或者系统更新部署新部件或者设备驱动部署新部件或者设备驱动自动清理和管理任务自动清理和管理任务

Page 16: WCI330 嵌入式 XP 高级技术

DUADUA 特性特性

执行当地或者远程的命令文件执行当地或者远程的命令文件 (Push vs. (Push vs. Pull)Pull)

灵活的调度(灵活的调度( jitter and polling jitter and polling optionsoptions ))可在可在 Target DesignerTarget Designer 里面配置里面配置广泛的命令集广泛的命令集

Page 17: WCI330 嵌入式 XP 高级技术

DUADUA 命令文件的执行命令文件的执行

获得命令文件后立即执行获得命令文件后立即执行按顺序执行命令按顺序执行命令每条命令都可以指定错误模式每条命令都可以指定错误模式错误会在错误会在 Event LogEvent Log 中记录中记录

Page 18: WCI330 嵌入式 XP 高级技术

DUA DUA 安全考虑安全考虑

提供带验证的提供带验证的 HTTPSHTTPS ,作为安全传输的,作为安全传输的选择选择命令文件不是明文文本命令文件不是明文文本所拉(所拉( PullPull )文件的位置必须是安全的)文件的位置必须是安全的有必要的时候最好同时使用其他的安全措有必要的时候最好同时使用其他的安全措施,譬如施,譬如 VPN, VPN, 加密,加密, IP filtering…IP filtering…

Page 19: WCI330 嵌入式 XP 高级技术

DUADUA 架构架构

Device Update Script

(.DUS file)

TranslatorTranslatorTranslatorTranslatorValidate Validate and and TokenizeTokenize

Command File (.DUP)

XPE Device

Device Update AgentDevice Update AgentDevice Update AgentDevice Update Agent

Server

HTTP/HTTPSHTTP/HTTPS

Update Update Web ServerWeb Server

Local Local File StorageFile Storage

Development Environment

Page 20: WCI330 嵌入式 XP 高级技术

DUA DUA 使用经验使用经验

在确定的配置下测试和部署在确定的配置下测试和部署制定更新计划制定更新计划– – 时间安排,负载分时间安排,负载分配,配, httphttp 要求要求命令文件执行完毕后应该更新命令文件执行完毕后应该更新 PullPull 的服务的服务器。器。服务器最好不要发布重定向服务器最好不要发布重定向

Page 21: WCI330 嵌入式 XP 高级技术

WinPEWinPE

WinPEWinPE 是一个是一个 Windows XPWindows XP预安装环境预安装环境轻量级用于服务的轻量级用于服务的 OSOS嵌入式嵌入式 XP SP1 CD1XP SP1 CD1 是一个可启动的是一个可启动的 WinPEWinPE在过程中部署在过程中部署 LicenseLicense

在目标硬件上开发的时候在目标硬件上开发的时候启动启动 WinPEWinPE 并运行目标设备分析程序(并运行目标设备分析程序( Target Target Analyzer)Analyzer)启动启动 WinPEWinPE 并且拷贝镜像并且拷贝镜像

部署的时候部署的时候远程启动远程启动 //远程安装远程安装 WinPEWinPEBootstrap SDI ManagerBootstrap SDI Manager安装和启动远程镜像到硬盘或者安装和启动远程镜像到硬盘或者 RAMDiskRAMDisk

Page 22: WCI330 嵌入式 XP 高级技术

Enhanced Write FilterEnhanced Write Filter 技术技术

保护文件系统保护文件系统永久保存永久保存

需要设备存储的支持需要设备存储的支持 (( 硬盘硬盘 , flash ram, , flash ram, 等等 .).)

非永久保存非永久保存重定向磁盘写操作到内存重定向磁盘写操作到内存

覆盖(覆盖( OverlayOverlay )的作)的作用用

支持多层保护和支持多层保护和““ undo”undo”

多卷支持多卷支持

DiskDisk

Overlay 1Overlay 1

Overlay 2Overlay 2

Overlay 3Overlay 3

Page 23: WCI330 嵌入式 XP 高级技术

EWF – EWF – 工作原理工作原理

Page 24: WCI330 嵌入式 XP 高级技术

EWFEWF 的构成的构成

EWFEWF 构件构件在在 run-timerun-time 镜像中支持镜像中支持 EWFEWF 技术技术包括对包括对 EWFEWF 的配置的配置

EWF NT LoaderEWF NT Loader 构件 构件 (EWF NTLDR)(EWF NTLDR)如果需要从如果需要从 EWFEWF 所保护的可写介质启动的话,所保护的可写介质启动的话,就必须包含着个构件(譬如硬盘)就必须包含着个构件(譬如硬盘)如果从如果从 CDCD 启动,就不需要启动,就不需要

EWF EWF 管理控制台(管理控制台( EWF Manager EWF Manager ConsoleConsole ))这个构件可以让最终客户在设备上面重新配置这个构件可以让最终客户在设备上面重新配置EWFEWF 。。

Page 25: WCI330 嵌入式 XP 高级技术

配置配置 EWFEWF

设计阶段设计阶段在在 Target DesignerTarget Designer 中间设置中间设置

Run-TimeRun-Time 阶段阶段利用利用 EWF Manager ConsoleEWF Manager Console

Page 26: WCI330 嵌入式 XP 高级技术

CD-BootCD-Boot

允许嵌入式允许嵌入式 XPXP 从从 CDCD 启动启动嵌入式嵌入式 XPXP 对对 El ToritoEl Torito 的实现的实现只允许一个可启动的分区只允许一个可启动的分区可启动分区必须是第一个分区可启动分区必须是第一个分区

Enhanced Write Filter (non-Enhanced Write Filter (non-persistent) persistent) 在在 SessionSession 中存储信息中存储信息

支持只读介质的使用支持只读介质的使用使用使用 CD-ROMCD-ROM 作为系统作为系统重定向磁盘写操作到内存或者其他的存储介质重定向磁盘写操作到内存或者其他的存储介质不支持永久性不支持永久性 EWFEWF

Page 27: WCI330 嵌入式 XP 高级技术

OS Footprint: OS Footprint: 配置案例配置案例

167167Information ApplianceInformation Appliance138138Advanced STBAdvanced STB119119Home GatewayHome Gateway114114Web ServerWeb Server111111NASNAS100100Retail Point of SaleRetail Point of Sale92.392.3KioskKiosk75.475.4WBTWBT58.858.8Basic STBBasic STB42.842.8Simple – WinLogonSimple – WinLogon11.311.3Simple – MinLogonSimple – MinLogon3.723.72Minimal KernelMinimal Kernel

镜像大小 镜像大小 (( 未压缩未压缩 ))设备方案设备方案

Page 28: WCI330 嵌入式 XP 高级技术

应用应用

嵌入式嵌入式 XPXP 的应用也都是的应用也都是 WindowsWindows 的应的应用用

Target Win32/.net fxTarget Win32/.net fx

基于基于 PCPC 的开发和测试的开发和测试基于构件的安装基于构件的安装

编辑构件,而不是安装编辑构件,而不是安装构件是服务和分发的单位构件是服务和分发的单位

Page 29: WCI330 嵌入式 XP 高级技术

硬件平台硬件平台

嵌入式嵌入式 XPXP 的设备都是基于标准的的设备都是基于标准的 PCPC 硬件硬件X86 CPUX86 CPU

标准或者缩减的主板标准或者缩减的主板PCPC 的外设和驱动程序的外设和驱动程序

Page 30: WCI330 嵌入式 XP 高级技术

讨论讨论

Page 31: WCI330 嵌入式 XP 高级技术