ARM Cortex-A8/A9开发板 | ARM11开发板ARM11开发套件 | ARM9开发板ARM9开发套件 | 飞思卡尔I.MX28I.MX6开发板 |
tiny210/mini210开发板 | mini6410开发板/套餐 | Tiny6410开发板无线套件 | mini2440开发板/套餐 | micro2440开发板带核心板 | 友善开发板配件 模块 | QQ2440 V3 SBC-2410X |
FL2440 OK2440-IV V4 | OK2440-III OK2440V3 | TE2440-II TE2440V2 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | 开发板配件 模块和其他 |
Xilinx开发板/fpga开发套件 | altera开发板/fpga开发套件 | 基于FMC FPGA/DSP子卡 |
BeagleBoard原厂开发板 | PandaBoard原厂开发板 |
TI DM3730 DevKit8500D | TI系列 omap3530开发板 | ATMEL系列 开发板 | Samsung系列 开发板 | 开发板配件-仿真器 模块 | NXP LPC3250 mini3250 |
Tiny210 三星S5PV210 | Mini210/Mini210s开发板 | Tiny4412开发板Cortex-A9 | Tiny6410开发板 ARM11 | mini2440开发板 ARM9 | micro2440开发板 ARM9 | mini6410开发板 ARM11 | 友善ARM开发板配件 模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
FL2440 OK2440-IV V4 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | OK210/-A Cortex-A8 | TE2440-II TE2440V2 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | ARM开发板配件 模块等 |
Real6410开发板/套餐 | Real210开发板/Real2410 | WIFI GPS GPRS模块摄像头 |
Xilinx开发板/开发套件KIT | Altera开发板/开发套件KIT | 配套模块 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | 最小系统模块类(初学者勿选) | 开发工具 仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
DM3730/AM3715/AM3359 | OMAP3530AM1808AM3517 | 飞思卡尔Cortex-A9开发板 | ATMEL系列ARM开发板 | NXP LPC3250 LPC1788 | Samsung系列ARM开发板 | STM32系列F207/F407 | ARM开发板配件-仿真器 模块 |
Realv210 S5PV210开发板 | Real6410开发板 ARM11 | WIFI GPS GPRS模块摄像头 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | ARM小系统模块(初学勿选) | 开发工具 ARM仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
Exynos4412开发板A9四核 | UT-S5PV210 S5PC100 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 |
Xilinx开发板 FPGA开发套件 | altera开发板 FPGA开发套件 | FMC模块 配件 下载线 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
s3c2410 ARM9 FS2410 | s3c2440开发板 ARM9 | s3c44B0开发板 ARM7 | s3c6410 2450 2443/13 | PXA270 PXA320 PXA255 | Atmel 9200 9261 9G20 | Philips NXP开发板YL-LPC | FS-EP9315开发板ARM9 | LCD液晶屏TFT真彩/触摸屏 | ARM仿真器/仿真调试工具 | ARM开发板配套ARM核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯开发板UP-DRAGON-I | 物联网教学科研设备 | EDA/FPGA/SOPC教学科研 |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | YC-ePC-A系列人机界面 | Mars-EDA套件CPLD FPGA | 触摸屏LCD 摄像头 WI-FI模块 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器/仿真系统 | DSP开发板/DSP试验箱 | DaVinci系列多媒体平台 | Xilinx FPGA大学计划产品 | SEED教学实验系统 | FPGA/DSP FPGA开发板 | TI原厂开发板套件/CCS软件 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
广嵌实验室项目产品 | GEC2440/GEC6410开发板 |
泰克Tektronix示波器 | 普源RIGOL示波器 | USB虚拟示波器 |
UT-S5PC100 UT-S5PV210 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 | 开发板模块wifi gps等 |
EMA OMAP3530开发板 | EMA OMAP 3530核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx Altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯系列 UP-DRAGON-I |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | 触摸屏LCD 摄像头 WI-FI模块 | Mars-EDA套件CPLD FPGA | ePC系列工控一体机ARM9 A8 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器 | DSP开发板 | DSP实验箱 | Xilinx FPGA大学计划产品 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
ARM开发板S3C6410等 | Cortex-A8/ARM11仿真器 | ADSP Blackfin开发板 | FPGA Spartan-3E开发板 |
GEC2410开发套件ARM9 | GEC2440开发套件ARM9 |
泰克 示波器 |
嵌入式 Windows XP 代码基
嵌入式 Windows XP 和 Windows XP 都是在 Microsoft Windows NT 和 Windows 2000 的同一稳定代码基上生成的。该代码基提供了受保护的内存模型和抢先式多任务 — 这两者都促进了系统稳定性。从这一经过检验的代码基开始,从根本上而言,嵌入式 Windows XP在从内核级别开始的各个级别上都是可靠的。
Windows XP 桌面操作系统和嵌入式 Windows XP 操作系统之间的差别在于:嵌入式 Windows XP 被模块化为多个组件。了解嵌入式 Windows XP的组件化机制是部署可靠的嵌入式 Windows XP 生成的关键所在。
嵌入式Windows XP 生成的概念
嵌入式 Windows XP 的生成 概念与嵌入式操作系统(如 Windows CE .NET)不同。对于嵌入式 Windows XP 而言,生成 意味着收集为支持目标设备中需要的功能所需的二进制文件、注册表项和其他资源。对于 Windows CE .NET 而言,生成 意味着实际重新编译和链接 OS 与应用程序。
软件工程设计准则
开发人员可以利用多个可能对可靠性产生重大影响的软件工程设计准则。
选择供应商
嵌入式 Windows XP 的一个主要优点是开发人员可以使用现成的基于 x86 的硬件作为他们的客户端设备。这一便利可以节省时间和金钱。但是,从可靠性观点来看,开发人员需要了解设备硬件是决定设备可靠性的关键因素。同样,开发人员需要仔细选择提供其他软件驱动程序或应用程序的第三方供应商。开发人员应该在以下五个方面评估他们的供应商:
? 供应商硬件能否满足或超过目标系统要求(即,Intel Pentium II 或更高等级的 CPU、ACPI PnP 基本输入/输出系统 (BIOS) 支持、外围设备组件互联 (PCI) 2.0 或更高等级的支持、5 MB 的存储媒体、64 MB 的 RAM)?
? 该硬件供应商是否注重质量?该供应商的质量过程是什么?该供应商是否参与了 Microsoft 的 Windows Hardware Quality Lab (WHQL) 计划?
? 软件供应商是否对它们的软件驱动程序或应用程序进行担保?
? 这些供应商是否提供及时的技术支持?
? 如果硬件或软件的专用部件只有一个供应商并且出现了技术问题,那么该供应商能够以多快的速度做出反应?
开发方法
在开始之前遵循一套开发方法(包括编写软件需求文档)可以间接提高最终生成的可靠性。生成嵌入式 Windows XP 映像是一个选择和配置组件的过程。例如,借助于概述了最终用户将如何配置目标设备的需求文档,开发人员可以选择正确的组件以启用正确的功能。借助于概述了如何制造目标设备的需求文档,开发人员在配置嵌入式 Windows XP 生成时可以适应生产流程。
嵌入式Windows XP 技术支持
嵌入式 Windows XP 开发工具 Embedded Studio 易于使用,但如果开发人员具有可用的技术支持网络,则可以节省时间(并减少加班时间)。Microsoft 在该 Microsoft Web 站点中为嵌入式 Windows XP 支持非常强大的开发人员社区。开发人员可以在该站点中利用新闻组、技术文章、知识库和其他资源。此外,可以从许多公司(如 BSQUARE)购买嵌入式 Windows XP 技术支持软件包。
嵌入式 Windows XP 开发过程
Microsoft 的 Web 站点详细说明了嵌入式 Windows XP 开发过程和工具。这些步骤在第 1 页上的图 1 中进行了概述,分别为:分析硬件、创作组件、配置生成和部署映像。本部分不在这里重复相同的信息,而是针对开发人员可用来确保更为可靠的嵌入式Windows XP 生成的每个步骤提供专门的提示。
开始之前提示 #1:加载 XP Pro 和应用程序
开发人员为确保可靠的生成而进行的最佳时间投入是,在开始的时候,在自己的 x86 目标设备上安装 Windows XP Professional(桌面操作系统)。通过安装和运行 XP Professional 和指定的应用程序,可以提供有关硬件、驱动程序和应用程序的可靠性的基准。通过这种运用基准化的方法,开发人员可以在嵌入式 Windows XP 的可能源发生生成错误时将硬件、驱动程序二进制文件和应用程序在外。
分析硬件提示 #2:了解目标分析器
目标分析器的两个程序 — 目标分析器专业版 (TAP.exe) 和目标分析器 (TA.exe) 互为补充。TAP.exe 是一种要求在目标设备上安装 Windows 2000 或 Windows XP 的 Microsoft Win32 应用程序。如果开发人员无法使用 TAP.exe,则可以选择运行目标分析器 (TA.exe) — 它在 DOS 环境中运行。TA.exe 只检测 ACPI、USB、1394、SCSI、PCMCIA 和 ISA 的存在(与存在和设备相对)。此外,TA.exe 可以为硬件抽象层 (HAL) 产生最佳推测,并且不检测软件枚举设备。在使用 TA.exe 时,开发人员可能需要其他来源以便说明目标设备体系结构。
配置生成提示 #3:节省原型化时间
通过 Target Designer,开发人员可以生成操作系统映像以便进行测试,而无须对该操作系统进行授权。该映像将在 90 到 180 天内有效,然后该映像将“蓝屏”。如果开发团队已经选择了嵌入式 Windows XP ,并且已经为贸易展或重要客户开发了原型,则该团队应该考虑使用产品许可证。这可以避免出现以下情况:即,在一段时间(例如四个月)以后的某个周末,因为演示版“蓝屏”而找来某位工程师进行紧急处理。
配置生成提示 #4:Target Designer 中的可见性设置
Target Designer 使开发人员可以设置可见性阈值,该值指示组件在配置过程中是否可见。使用可见性级别,可以减少开发人员必须处理的组件的数量。开发人员应该知道,当他们调试生成并且认为缺少某个组件时,他们应该确认它的可见度设置。
配置生成提示 #5:Target Designer 中的依赖项检查
在配置嵌入式 Windows XP 生成时,Target Designer 不断地检查冗长的依赖项链。每个组件都具有它自己的需要和依赖项。如果选中了 Auto-resolve dependencies 复选框,则 Target Designer 会自动解决组件之间的依赖项问题。该自动化技术的弊端是:生成可能变得超过开发人员所希望的大小,并且不会提供有关哪些组件被添加以满足依赖项的可见度。开发人员需要了解提高生成过程的速度并使用自动化依赖项检查与最大限度地减小映像之间的折衷。
部署映像提示 #6:使用系统克隆工具
在制造过程中,当准备将在多个设备上复制的生产映像时,开发人员应该包括系统克隆工具组件。如果每个设备分别经历独立的 First Boot Agent (FBA) 过程,则无需该克隆组件。但是,FBA 过程非常费时,并且对制造环境不利。
测试的作用
可以使用多个测试实用工具,以协助进行嵌入式 Windows XP 调试。使用 PC Magazine (http://www.pcmag.com) 提供的 InCtrl5,开发人员可以获取系统的前后快照。FileMon 是一种免费提供的工具,它可以实时显示文件系统活动,包括程序使用了哪些文件(包括动态链接库 (DLL) 和配置文件)。RegMon 也可从 Sysinternals (http://www.sysinternals.com) 获得,它显示了哪些应用程序正在访问注册表。Microsoft 在它的 Platform SDK 中提供了 Dependency Walker 实用工具,它可以帮助开发人员确保为应用程序或驱动程序包含所有需要的 DLL。
小结
该白皮书探讨了开发人员可以重点关注以确保更加可靠的嵌入式 Windows XP 生成的四个方面。这些方面包括:了解嵌入式 Windows XP 的由来;使用可靠的软件工程设计准则;通过使 Windows XP Professional 在目标设备上运行来启动项目以及其他一些可以提高可靠性的生成提示;以及将使用多个方便的测试实用工具进行测试结合到开发过程之中。但愿刚刚接触嵌入式 Windows XP 的开发人员能够在这些主题中找到一些忠告,以减缓其嵌入式 Windows XP 学习曲线,并且帮助他们早日将可靠的产品投放市场。
博航网 www.broadon.net 版权所有
京ICP备10051899号-2 京公网安备110108006479号