生成可靠的Windows XP Embedded 平臺(tái)
嵌入式 Windows XP 代碼基
本文引用地址:http://butianyuan.cn/article/201610/305881.htm嵌入式 Windows XP 和 Windows XP 都是在 Microsoft Windows NT 和 Windows 2000 的同一穩(wěn)定代碼基上生成的。該代碼基提供了受保護(hù)的內(nèi)存模型和搶先式多任務(wù) — 這兩者都促進(jìn)了系統(tǒng)穩(wěn)定性。從這一經(jīng)過(guò)檢驗(yàn)的代碼基開(kāi)始,從根本上而言,嵌入式 Windows XP在從內(nèi)核級(jí)別開(kāi)始的各個(gè)級(jí)別上都是可靠的。
Windows XP 桌面操作系統(tǒng)和嵌入式 Windows XP 操作系統(tǒng)之間的差別在于:嵌入式 Windows XP 被模塊化為多個(gè)組件。了解嵌入式 Windows XP的組件化機(jī)制是部署可靠的嵌入式 Windows XP 生成的關(guān)鍵所在。
嵌入式Windows XP 生成的概念
嵌入式 Windows XP 的生成 概念與嵌入式操作系統(tǒng)(如 Windows CE .NET)不同。對(duì)于嵌入式 Windows XP 而言,生成 意味著收集為支持目標(biāo)設(shè)備中需要的功能所需的二進(jìn)制文件、注冊(cè)表項(xiàng)和其他資源。對(duì)于 Windows CE .NET 而言,生成 意味著實(shí)際重新編譯和鏈接 OS 與應(yīng)用程序。
軟件工程設(shè)計(jì)準(zhǔn)則
開(kāi)發(fā)人員可以利用多個(gè)可能對(duì)可靠性產(chǎn)生重大影響的軟件工程設(shè)計(jì)準(zhǔn)則。
選擇供應(yīng)商
嵌入式 Windows XP 的一個(gè)主要優(yōu)點(diǎn)是開(kāi)發(fā)人員可以使用現(xiàn)成的基于 x86 的硬件作為他們的客戶(hù)端設(shè)備。這一便利可以節(jié)省時(shí)間和金錢(qián)。但是,從可靠性觀(guān)點(diǎn)來(lái)看,開(kāi)發(fā)人員需要了解設(shè)備硬件是決定設(shè)備可靠性的關(guān)鍵因素。同樣,開(kāi)發(fā)人員需要仔細(xì)選擇提供其他軟件驅(qū)動(dòng)程序或應(yīng)用程序的第三方供應(yīng)商。開(kāi)發(fā)人員應(yīng)該在以下五個(gè)方面評(píng)估他們的供應(yīng)商:
? 供應(yīng)商硬件能否滿(mǎn)足或超過(guò)目標(biāo)系統(tǒng)要求(即,Intel Pentium II 或更高等級(jí)的 CPU、ACPI PnP 基本輸入/輸出系統(tǒng) (BIOS) 支持、外圍設(shè)備組件互聯(lián) (PCI) 2.0 或更高等級(jí)的支持、5 MB 的存儲(chǔ)媒體、64 MB 的 RAM)?
該硬件供應(yīng)商是否注重質(zhì)量?該供應(yīng)商的質(zhì)量過(guò)程是什么?該供應(yīng)商是否參與了 Microsoft 的 Windows Hardware Quality Lab (WHQL) 計(jì)劃?
軟件供應(yīng)商是否對(duì)它們的軟件驅(qū)動(dòng)程序或應(yīng)用程序進(jìn)行擔(dān)保?
這些供應(yīng)商是否提供及時(shí)的技術(shù)支持?
如果硬件或軟件的專(zhuān)用部件只有一個(gè)供應(yīng)商并且出現(xiàn)了技術(shù)問(wèn)題,那么該供應(yīng)商能夠以多快的速度做出反應(yīng)?
開(kāi)發(fā)方法
在開(kāi)始之前遵循一套開(kāi)發(fā)方法(包括編寫(xiě)軟件需求文檔)可以間接提高最終生成的可靠性。生成嵌入式 Windows XP 映像是一個(gè)選擇和配置組件的過(guò)程。例如,借助于概述了最終用戶(hù)將如何配置目標(biāo)設(shè)備的需求文檔,開(kāi)發(fā)人員可以選擇正確的組件以啟用正確的功能。借助于概述了如何制造目標(biāo)設(shè)備的需求文檔,開(kāi)發(fā)人員在配置嵌入式 Windows XP 生成時(shí)可以適應(yīng)生產(chǎn)流程。
嵌入式Windows XP 技術(shù)支持
嵌入式 Windows XP 開(kāi)發(fā)工具 Embedded Studio 易于使用,但如果開(kāi)發(fā)人員具有可用的技術(shù)支持網(wǎng)絡(luò),則可以節(jié)省時(shí)間(并減少加班時(shí)間)。Microsoft 在該 Microsoft Web 站點(diǎn)中為嵌入式 Windows XP 支持非常強(qiáng)大的開(kāi)發(fā)人員社區(qū)。開(kāi)發(fā)人員可以在該站點(diǎn)中利用新聞組、技術(shù)文章、知識(shí)庫(kù)和其他資源。此外,可以從許多公司(如 BSQUARE)購(gòu)買(mǎi)嵌入式 Windows XP 技術(shù)支持軟件包。
嵌入式 Windows XP 開(kāi)發(fā)過(guò)程
Microsoft 的 Web 站點(diǎn)詳細(xì)說(shuō)明了嵌入式 Windows XP 開(kāi)發(fā)過(guò)程和工具。這些步驟在第 1 頁(yè)上的圖 1 中進(jìn)行了概述,分別為:分析硬件、創(chuàng)作組件、配置生成和部署映像。本部分不在這里重復(fù)相同的信息,而是針對(duì)開(kāi)發(fā)人員可用來(lái)確保更為可靠的嵌入式Windows XP 生成的每個(gè)步驟提供專(zhuān)門(mén)的提示。
開(kāi)始之前提示 #1:加載 XP Pro 和應(yīng)用程序
開(kāi)發(fā)人員為確保可靠的生成而進(jìn)行的最佳時(shí)間投入是,在開(kāi)始的時(shí)候,在自己的 x86 目標(biāo)設(shè)備上安裝 Windows XP Professional(桌面操作系統(tǒng))。通過(guò)安裝和運(yùn)行 XP Professional 和指定的應(yīng)用程序,可以提供有關(guān)硬件、驅(qū)動(dòng)程序和應(yīng)用程序的可靠性的基準(zhǔn)。通過(guò)這種運(yùn)用基準(zhǔn)化的方法,開(kāi)發(fā)人員可以在嵌入式 Windows XP 的可能源發(fā)生生成錯(cuò)誤時(shí)將硬件、驅(qū)動(dòng)程序二進(jìn)制文件和應(yīng)用程序在外。
分析硬件提示 #2:了解目標(biāo)分析器
目標(biāo)分析器的兩個(gè)程序 — 目標(biāo)分析器專(zhuān)業(yè)版 (TAP.exe) 和目標(biāo)分析器 (TA.exe) 互為補(bǔ)充。TAP.exe 是一種要求在目標(biāo)設(shè)備上安裝 Windows 2000 或 Windows XP 的 Microsoft Win32 應(yīng)用程序。如果開(kāi)發(fā)人員無(wú)法使用 TAP.exe,則可以選擇運(yùn)行目標(biāo)分析器 (TA.exe) — 它在 DOS 環(huán)境中運(yùn)行。TA.exe 只檢測(cè) ACPI、USB、1394、SCSI、PCMCIA 和 ISA 的存在(與存在和設(shè)備相對(duì))。此外,TA.exe 可以為硬件抽象層 (HAL) 產(chǎn)生最佳推測(cè),并且不檢測(cè)軟件枚舉設(shè)備。在使用 TA.exe 時(shí),開(kāi)發(fā)人員可能需要其他來(lái)源以便說(shuō)明目標(biāo)設(shè)備體系結(jié)構(gòu)。
配置生成提示 #3:節(jié)省原型化時(shí)間
通過(guò) Target Designer,開(kāi)發(fā)人員可以生成操作系統(tǒng)映像以便進(jìn)行測(cè)試,而無(wú)須對(duì)該操作系統(tǒng)進(jìn)行授權(quán)。該映像將在 90 到 180 天內(nèi)有效,然后該映像將“藍(lán)屏”。如果開(kāi)發(fā)團(tuán)隊(duì)已經(jīng)選擇了嵌入式 Windows XP ,并且已經(jīng)為貿(mào)易展或重要客戶(hù)開(kāi)發(fā)了原型,則該團(tuán)隊(duì)?wèi)?yīng)該考慮使用產(chǎn)品許可證。這可以避免出現(xiàn)以下情況:即,在一段時(shí)間(例如四個(gè)月)以后的某個(gè)周末,因?yàn)檠菔景?ldquo;藍(lán)屏”而找來(lái)某位工程師進(jìn)行緊急處理。
配置生成提示 #4:Target Designer 中的可見(jiàn)性設(shè)置
Target Designer 使開(kāi)發(fā)人員可以設(shè)置可見(jiàn)性閾值,該值指示組件在配置過(guò)程中是否可見(jiàn)。使用可見(jiàn)性級(jí)別,可以減少開(kāi)發(fā)人員必須處理的組件的數(shù)量。開(kāi)發(fā)人員應(yīng)該知道,當(dāng)他們調(diào)試生成并且認(rèn)為缺少某個(gè)組件時(shí),他們應(yīng)該確認(rèn)它的可見(jiàn)度設(shè)置。
配置生成提示 #5:Target Designer 中的依賴(lài)項(xiàng)檢查
在配置嵌入式 Windows XP 生成時(shí),Target Designer 不斷地檢查冗長(zhǎng)的依賴(lài)項(xiàng)鏈。每個(gè)組件都具有它自己的需要和依賴(lài)項(xiàng)。如果選中了 Auto-resolve dependencies 復(fù)選框,則 Target Designer 會(huì)自動(dòng)解決組件之間的依賴(lài)項(xiàng)問(wèn)題。該自動(dòng)化技術(shù)的弊端是:生成可能變得超過(guò)開(kāi)發(fā)人員所希望的大小,并且不會(huì)提供有關(guān)哪些組件被添加以滿(mǎn)足依賴(lài)項(xiàng)的可見(jiàn)度。開(kāi)發(fā)人員需要了解提高生成過(guò)程的速度并使用自動(dòng)化依賴(lài)項(xiàng)檢查與最大限度地減小映像之間的折衷。
部署映像提示 #6:使用系統(tǒng)克隆工具
在制造過(guò)程中,當(dāng)準(zhǔn)備將在多個(gè)設(shè)備上復(fù)制的生產(chǎn)映像時(shí),開(kāi)發(fā)人員應(yīng)該包括系統(tǒng)克隆工具組件。如果每個(gè)設(shè)備分別經(jīng)歷獨(dú)立的 First Boot Agent (FBA) 過(guò)程,則無(wú)需該克隆組件。但是,F(xiàn)BA 過(guò)程非常費(fèi)時(shí),并且對(duì)制造環(huán)境不利。
測(cè)試的作用
可以使用多個(gè)測(cè)試實(shí)用工具,以協(xié)助進(jìn)行嵌入式 Windows XP 調(diào)試。使用 PC Magazine (http://www.pcmag.com) 提供的 InCtrl5,開(kāi)發(fā)人員可以獲取系統(tǒng)的前后快照。FileMon 是一種免費(fèi)提供的工具,它可以實(shí)時(shí)顯示文件系統(tǒng)活動(dòng),包括程序使用了哪些文件(包括動(dòng)態(tài)鏈接庫(kù) (DLL) 和配置文件)。RegMon 也可從 Sysinternals (http://www.sysinternals.com) 獲得,它顯示了哪些應(yīng)用程序正在訪(fǎng)問(wèn)注冊(cè)表。Microsoft 在它的 Platform SDK 中提供了 Dependency Walker 實(shí)用工具,它可以幫助開(kāi)發(fā)人員確保為應(yīng)用程序或驅(qū)動(dòng)程序包含所有需要的 DLL。
小結(jié)
該白皮書(shū)探討了開(kāi)發(fā)人員可以重點(diǎn)關(guān)注以確保更加可靠的嵌入式 Windows XP 生成的四個(gè)方面。這些方面包括:了解嵌入式 Windows XP 的由來(lái);使用可靠的軟件工程設(shè)計(jì)準(zhǔn)則;通過(guò)使 Windows XP Professional 在目標(biāo)設(shè)備上運(yùn)行來(lái)啟動(dòng)項(xiàng)目以及其他一些可以提高可靠性的生成提示;以及將使用多個(gè)方便的測(cè)試實(shí)用工具進(jìn)行測(cè)試結(jié)合到開(kāi)發(fā)過(guò)程之中。但愿剛剛接觸嵌入式 Windows XP 的開(kāi)發(fā)人員能夠在這些主題中找到一些忠告,以減緩其嵌入式 Windows XP 學(xué)習(xí)曲線(xiàn),并且?guī)椭麄冊(cè)缛諏⒖煽康漠a(chǎn)品投放市場(chǎng)。
評(píng)論