XPe開發初體驗(一)XPe概述
XP Embedded是微軟Windows Embedded產品線中非常重要的一環,不過比起大名鼎鼎的Windows Embedded CE,XPe顯得過於低調了。在接下來的一段時間裡,我希望能夠用六篇的篇幅來描述一下XPe的整個開發過程。這個系列文章主要是針對有Windows程式設計經驗,但是沒有嵌入式開發經驗的開發者,提供一些概念和開發過程的初步介紹。
XP Embedded是一個基於Windows XP Professional版本的元件化作業系統。普通的XP 作業系統是針對個人電腦,而XPe是針對一些特殊的應用場景推出的嵌入式作業系統。比如,電子資訊亭、ATM、自動售貨機和POS機,以及各種需要定製的工控機。XPe只支援x86架構CPU,與普通XP版本的最大區別是可以定製,針對不同的應用場景選取不同的元件組成不同的XPe目標平臺,從而能夠極大地減少對儲存空間的佔用率。而且因為這些嵌入式裝置在通常情況下,是不需要進行軟體安裝的,將作業系統平臺和應用軟體進行定製之後,會極大減少大規模部署的工作量。
XPe的元件包括驅動程式、服務和應用程式等。因為XPe是基於XP Professional的作業系統,所以XPe支援Win32 API,為XP開發的應用程式可以執行在XPe平臺上,不過前提是支援應用程式的元件必須被新增到XPe平臺中。除了Win32 API外,XPe還支援.NET Framework程式。.NET Framework也是XPe的元件之一,只要新增到XPe平臺中,.NET程式就可以執行了。
XPe目前的版本號是Windows XP Embedded SP2 Feature Pack 2007,除了普通的XP功能外,XPe的SP2 Feature Pack 2007中還新增了EWF、FBWF等功能,以適應嵌入式裝置的特殊要求。
微軟目前提供XP Embedded的測試版,我們可以在下面的連結中下載XPe測試版:
http://www.microsoft.com/windows/embedded/eval/trial.mspx
下載XPe之後,還需要獲取XPe註冊碼,在下列連結中進行註冊:
http://www.microsoft.com/windows/embedded/eval/getregistration.mspx
安裝過程在這裡我們不再多說,接下來介紹一下XPe的開發環境。由於不涉及到程式碼的編譯,XPe的開發環境並不是一個整合開發環境(IDE),主要包括下列部分:
u Target Designer
目標設計器,用於設計針對目標裝置的作業系統平臺。該工具用於選擇加入到目標平臺中的元件,進行依賴檢查,然後編譯成目標平臺。
u Target Analyzer
目標分析器,用於分析目標裝置的工具。該工具用於獲取目標裝置的資訊,我們可以使用WinPE來執行該工具。
u Component Designer
元件設計器,用於設計自定義元件的工具。該工具可以將應用程式、驅動程式等設計成XPe可以使用的元件。
u Component Database Manager
元件資料庫管理器,用於管理元件物件庫中的元件。由於元件都被儲存在一個SQL Server資料庫中,所以,在自定義元件建立完成後,需要使用元件資料庫管理器來將這個元件匯入到資料庫中。
以上工具都是XPe開發中需要使用的工具,在開發套件中,還有一些非常有用的小工具。我們將在之後的章節,根據具體使用情況來介紹。
下一節中,我們將從最小化的XPe平臺——MiniLogon入手,來介紹XPe的開發流程。
11月14日下午2點30分,我也會有一場Webcast《XP Embedded開發初體驗》:
講座內容:
XP Embedded是什麼?能夠用來做什麼?如何去做?本次講座針對這些問題,採用一個剛進入嵌入式領域開發者的視角來回答這些問題。我們將為大家解釋Xpe的應用領域、常用功能和開發環境,並使用Virtual PC作為目標環境,搭建一個Xpe的平臺。從而讓大家瞭解Xpe的開發其實不是那麼複雜。
在這場講座中,我也會用一個具體的DEMO來演示如何進行一個簡單的XPe平臺開發的過程。
相關文章
- Electron開發初體驗
- 小程式開發初體驗
- lzg_ad:XPE中的RemoteProcedureCall(RPC)Locator服務無法啟動REMRPC
- 微信小程式開發初體驗微信小程式
- 小程式雲開發初體驗
- Flutter(六)之Flutter開發初體驗Flutter
- 跨平臺開發Flutter初體驗Flutter
- 1.week 獨立開發初體驗
- .NET MAUI 安卓應用開發初體驗UI安卓
- 小熊派4G開發板初體驗
- Vue外掛開發初體驗——(懶載入)Vue
- Kotlin 初體驗(引) 用kotlin開發安卓Kotlin安卓
- 小程式 網易雲課堂雲開發初體驗
- vuejs 初體驗— Chrome 外掛開發實錄VueJSChrome
- 跨平臺開發之React Native初體驗React Native
- js隨堂初體驗(一)JS
- Android開發學習之路--React-Native混合開發初體驗AndroidReact
- 04 - 06 Flutter開發初體驗 & Widget 生命週期Flutter
- Django 專案配置初體驗(一)Django
- 微信小程式之:雲開發初體驗--致我的第一個小程式微信小程式
- 物件導向(軟體開發概述)物件
- Windows Embedded CE 6.0開發初體驗(六)平臺定製Windows
- Angular 初體驗Angular
- http初體驗HTTP
- AQS初體驗AQS
- golang 初體驗Golang
- OpenCV 初體驗OpenCV
- Nuxt 初體驗UX
- indexedDB 初體驗Index
- laravel初體驗Laravel
- Flutter初體驗Flutter
- jQuery初體驗jQuery
- ollama 初體驗
- Electron初體驗
- 使用者測評:G2L開發板初體驗
- Windows Embedded CE 6.0開發初體驗(五)構建CE平臺Windows
- Agora Flat:線上教室的開源初體驗Go
- 初體驗之開源Git服務GogsGitGo