




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、Windows Embedded CE 6.0 New FeaturesYing LiDeveloper EvangelistMicrosoft (China) Co., Ltd.v-Page 2 我們的議程我們的議程 Windows CE的11年發(fā)展史: 1996 2007 Windows Embedded CE 6.0的關鍵特性 內(nèi)核和驅(qū)動器的體系結(jié)構(gòu) 開發(fā)及相應的工具 應用場景Page 3 Set-top boxesWindows MobileSmartphoneWindows MobilePocket PC PhoneWindowsAutomotivePortable Media Ce
2、nterVoIP phonesMobilehandheldsGatewaysRetail Point-of-SaleWindows-based terminalsMedical devicesEntertainment devicesHealth MonitoringWearableDevicesAuxiliaryDisplaysRemote ControlsSensor NetworksIncreasing functionalityDecreasing hardware requirements微軟嵌入式系統(tǒng)的布局微軟嵌入式系統(tǒng)的布局Page 4 SP1 2.11SP2 2.12McKen
3、dric 4.2Tomatin NMD FPAlderWindows CE 1.0Birch Windows CE 2.0Cedar Windows CE 3.0Talisker Windows CE .NET 4.0Macallan Windows CE 5.0Yamazaki CE 6.0Jameson 4.1Windows CE的發(fā)展歷程的發(fā)展歷程Page 5 行業(yè)趨勢行業(yè)趨勢設備設備 設備的聯(lián)網(wǎng)需求持續(xù)增長(在家里,在工作時,在戶外) OEM在自己的嵌入式設備中集成許多越來越復雜的應用 設備需要和其他設備和技術能更好的在一起工作開發(fā)者開發(fā)者 設備在消費者手里的生命周期正越來越短 開發(fā)者
4、要在時間減少的同時做更多的開發(fā) 根據(jù)應用場景的不同設備的差異越來越大 我們希望在硬件和軟件平臺上的投資能在多個產(chǎn)品中用到12 monthsPage 6 CE 6.0: 什么保留了下來?什么保留了下來? 32位多任務操作系統(tǒng) 內(nèi)存占用少 組件化 硬實時 處理器體系結(jié)構(gòu) ARM, x86, SH4, MIPS 開發(fā)選項 Win32, .NET CF, MFC, ATL, . 共享源碼 10年支持策略Page 7 CE 6.0關鍵特性關鍵特性 比Windows CE 5.0更多的特性 最新的開發(fā)工具 下一代內(nèi)核 應用程序兼容性 增強的健壯性和安全性 用戶模式驅(qū)動器模式 增加了許多新特性CE 6.0操
5、作系統(tǒng)操作系統(tǒng)Page 9 Windows CE 5.0內(nèi)存模式內(nèi)存模式 虛擬內(nèi)存映射 Kernel有2GB 所有進程共享2GB虛擬內(nèi)存映射 被分成32MB “slots” 32個進程的限制 每一個進程分配一個32MB的slot 總共只有32個slots可供分配 共享內(nèi)存 用戶空間的上半部分是共享內(nèi)存 能被所有進程讀寫Page 10 Windows CE 5.0內(nèi)存模式內(nèi)存模式 32個進程所有進程共享2GB虛擬內(nèi)存2 GB內(nèi)核空間內(nèi)核空間Execution slot 和共享和共享DLL slot共享內(nèi)存KernelSlot 0 ExecutionSlot 1 ROM DLLsSlot 2 Sl
6、ot 3 Device.exeSlot 4 GWES.exeSlot 5 Services.exeSlot 31Slot 32:Slot 6虛擬內(nèi)存管理器的運作虛擬內(nèi)存管理器的運作方式?jīng)Q定了固定進程方式?jīng)Q定了固定進程slot模式模式(所有的所有的slots都在這里都在這里)進程進程Slots占據(jù)占據(jù)VM的低位的低位2GB空間,這就使得每空間,這就使得每個進程有固定的大小以個進程有固定的大小以適合適合32個進程數(shù)量。個進程數(shù)量。CE 5.0Slot 97 Nk.exePage 11 Windows CE 5.0 Application Memory Map0000 00000000 0000Re
7、ad only data03FF FFFF03FF FFFFCodeRead write datareservedROM Based DLLsResourcesStack (reserved space) Heap (reserved space)Free virtual spaceApplication Specific SpaceROM DLL space0200 00000200 0000DLL Space (Constant for all applications)non-ROM DLLsPage 12 Windows CE 5.0系統(tǒng)體系結(jié)構(gòu)系統(tǒng)體系結(jié)構(gòu)Page 13 CE 6.0
8、新內(nèi)核介紹新內(nèi)核介紹 每個進程都有2GB的虛擬內(nèi)存 32K進程 統(tǒng)一內(nèi)核 關鍵的OS組件都移到了kernel空間 改進的系統(tǒng)性能 增強的安全性和健壯性 高度的向后兼容性Page 14 Windows Embedded CE 6.0內(nèi)核模式內(nèi)核模式進程代碼內(nèi)存映射文件用戶DLLsKernel.GWESDrivers. . . . . . . . 32K進程每個進程都有2GBVM新的新的VM管理器不再以進管理器不再以進程程slot模式來進行操作模式來進行操作(您可以隨需創(chuàng)建內(nèi)存您可以隨需創(chuàng)建內(nèi)存)新的虛擬內(nèi)存管理器新的虛擬內(nèi)存管理器給每個進程分配給每個進程分配2GB的的VMCE 6.02 GB內(nèi)核
9、空間內(nèi)核空間32 processesSingle2 GB VMfor allprocessesExecution slot and shared DLL slotSharedmemoryKernelSlot 0 ExecutionSlot 1 ROM DLLsSlot 2 Slot 3 Device.exeSlot 4 GWES.exeSlot 5 Services.exeSlot 31Slot 32:Slot 6Enforced fixed process slot model due to the way virtual memory manager worked(All slots we
10、re always there)Process slots occupied lower 2GB VM, this enforced a fixed size per process to fit 32 processesCE 5.0Slot 97 Nk.exePage 15 User Virtual Memory SpaceUser Space 2 GigabytesEach process has its own mappingR/W for OS componentsRead only for user processRAM Backed MapfilesMapped at fixed
11、location for better backwards compatibilityAll DLLs code and dataSame mapping across all processesData pages are unique physical pagesCode pages are sharedExecutable code and dataVM Allocation Mapfiles0 x000000000 x400000000 x80000000Page 16 Kernel Virtual Memory SpaceKernel Space2 GigabytesFixed ma
12、pping independent of user spaceAll XIP DLLs in kernelCached access to physical memoryUncached access to physical memoryRam & ram registryKernel Virtual MemoryShared by all kernelServers and driversSystem Trap Area0 xFFFFFFFF0 x80000000Page 17 新的新的OS布局布局 把關鍵的驅(qū)動程序,文件系統(tǒng)和圖形窗口管理器移動到內(nèi)核 益處 極大的減少了這些組件間的
13、系統(tǒng)調(diào)用開銷 減少了所有從用戶空間到內(nèi)核空間的調(diào)用的開銷 增加了基本OS服務間的代碼共享Page 18 CE 6.0系統(tǒng)體系結(jié)構(gòu)系統(tǒng)體系結(jié)構(gòu)Services ManagerUM DriverManager用戶用戶模式模式 內(nèi)核內(nèi)核模式模式Page 19 驅(qū)動程序驅(qū)動程序 將支持兩種類型的驅(qū)動程序 追求性能的內(nèi)核模式 追求健壯性的用戶模式 移植現(xiàn)有驅(qū)動器只需極少的工作量 每個驅(qū)動器只需1-3天的工作量 驅(qū)動程序的整體結(jié)構(gòu)保持不變 主要改變的是驅(qū)動器訪問客戶內(nèi)存的方式 已經(jīng)沒有了SetKMode 和SetProcPermissions方法Page 20 用戶模式的驅(qū)動程序用戶模式的驅(qū)動程序 由ud
14、evices.exe來裝載 大多數(shù)API和內(nèi)核模式一樣 沒有權限訪問內(nèi)核的數(shù)據(jù)結(jié)構(gòu)和內(nèi)存(無SetkMode) 例子 擴展總線,例如USB 鍵盤和觸摸屏 性能要求不是很嚴的驅(qū)動程序可以考慮移到用戶模式 被調(diào)用次數(shù)比較少但是做得工作比較多Page 21 內(nèi)核模式的驅(qū)動程序內(nèi)核模式的驅(qū)動程序 驅(qū)動程序經(jīng)由device.dll加載到內(nèi)核空間 對內(nèi)核的數(shù)據(jù)結(jié)構(gòu)和內(nèi)存有完全的訪問權限 能夠使用的APIs沒有改變內(nèi)核模式的驅(qū)動程序不能顯示UI使用CeCallUserProc來調(diào)用用戶模式下的DLL網(wǎng)絡Page 22 CE 6.0支持的支持的BSPs系列BSPKernel是否包括源碼?ARMIntel Ma
15、instone III (C-Step)ARMv4iYesDevice EmulatorARMv4iYesBoardARMv4iYesTI OMAP 2420 (ARM v6 core)ARMv4iYesMIPSNEC Rockhopper SG2 Vr5500MIPSII & II_FP , MIPSIV & IV_FPYesSH4Renesas AspenSH4Yesx86x86 (CEPC)X86YesPage 23 OAL的變化的變化 把OAL從內(nèi)核分離了出來 OAL 變成了“NK.EXE” Kernel代碼變成了“Kernel.DLL” 可以獨立升級 整體的OAL結(jié)構(gòu)
16、仍然不變 OEM功能不變 OAL/Kernel的接口經(jīng)由共享結(jié)構(gòu)Page 24 Windows CE 5.0 OAL的設計的設計KernelOALRTCCache libraryInterrupt libraryIOCTL libraryStartup libraryRTClibraryKITLlibraryOS TimerlibraryTimersCachesSerialportEthernetportUSBportNk.exePage 25 kernel.dllnk.exeRTCCache libraryInterrupt libraryIOCTL libraryStartup libra
17、ryRTClibraryOS TimerlibraryTimersCachesSerialportEthernetportUSBportNKGLOBALKITL IOCTLOEMGLOBALNKStub.libWindows Embedded CE 6.0 OAL的設計的設計Page 26 CE 6.0增強的安全特性增強的安全特性 新安全基礎構(gòu)架新安全基礎構(gòu)架 允許我們在將來構(gòu)建更好的安全模式 用戶和內(nèi)核模式空間的分離 與安全開發(fā)生命周期與安全開發(fā)生命周期(SDL)的一致性的一致性 在整個操作系統(tǒng)中實現(xiàn)了深度防護戰(zhàn)略 安全的C運行時庫 SafeSEH PREfast工具Page 27 應用程序
18、兼容性應用程序兼容性 應用程序應用程序 應用程序二進制兼容性是主要目標 良好的應用程序(Win32兼容的)幾乎不需要有任何改動 托管應用程序已經(jīng)從操作系統(tǒng)中抽象出來了(平臺調(diào)用服務問題-P/Invoke) 如果應用程序使用CE特定的技巧則可能有問題 使用“CEAppCompat”工具來評估兼容性問題 全球就緒全球就緒 操作系統(tǒng)組件支持14種語言 跨語言和地區(qū)的深度功能測試改進了我們的操作系統(tǒng)全球支持特性Page 28 CE 6.0 API上的變化上的變化 一些APIs移動到內(nèi)核空間 例如: InterruptInitialize*, InterruptDone*, ReadRegistryFr
19、omOEM* 一些APIs不復存在 例如: SetKMode, CEZeroPointer, RemoteHeapAlloc, SetProcPermissions 一些APIs不被鼓勵使用 例如: RegisterDevice, Create, IsAPIReady* Exposed to user mode drivers through kernel reflectorCE 6.0工具工具Page 30 Page 31 CE 6.0的開發(fā)工具的開發(fā)工具C# / VB.NET.NET CompactFramework 2.0C/C+ Win32 Windows Embedded CE 6.
20、0 Operating SystemNative Applications .NET ApplicationsVisual Studio 2005PlatformBuilderPage 32 Platform BuilderConfigurationBuildDownloadDevice UnderDevelopment Device EmulationDebugBSP(OAL, Boot Loader, Drivers)Export SDKEmbedded Visual C+Visual Studio 2005Standard SDK OEM ISV開發(fā)一個開發(fā)一個Windows CE設備設
21、備Page 33 編譯器編譯器來自來自Visual Studio 2005的附加值的附加值基于Visual Studio 2005的編譯器益處: 改進的C+語言一致性 改進的庫 CRT ATL MFC 改進的運行時安全檢測Page 34 Compilers Visual Studio 2005 Compilers (v8) Improved conformance Improved code generation Supports safe SEH for security compliance Secure CRT Allows pluggable C Run-Time support Pl
22、uggable Floating Point support PREfast support for ARM, MIPS, x86 and SH4Visual Studio CompilersPage 35 集成開發(fā)環(huán)境集成開發(fā)環(huán)境(IDE)編輯器和視圖編輯器和視圖 Bib和Reg編輯器Intellisense語法突出圖形化Reg文件編輯器 Catalog編輯器創(chuàng)建和編輯Catalog XML文件 運行時鏡像觀測器nk.bin文件的靜態(tài)分析工具Page 36 診斷診斷USB下載服務下載服務 描述:增加了通過USB下載到一個設備上去的能力 益處:使得下載到各種新設備上去成為可能Page 37 C
23、reate a new OS ImageAdd an ApplicationShow new Platform Builder FeaturesShow app developmentCE 6.0 DemoPage 38 Page 39 Page 40 Page 41 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT. 2006 Microsof
24、t Corporation. All rights reserved.Page 42 “In the Box”共享源碼“In the Box”任何人都可以獲得 代碼: 樣本代碼(例如:驅(qū)動程序) “Private”(例如:100%的kernel代碼) 權利*: 參考 調(diào)試 修改 共享Premium共享源碼只對符合條件的國家內(nèi)的合格OEMs和合作伙伴通過安全網(wǎng)站開放 代碼: “Premium” (例如:網(wǎng)絡) 權利*:Premium Derivatives 參考 調(diào)試Premium Redistribution 參考 調(diào)試 修改* Rights are defined and subject t
25、o conditions described in each specific license agreement.CE 6.0共享源碼項目共享源碼項目This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT. 2006 Microsoft Corporation. All rights reserved.Page 43 比Windows CE 5.0的
26、源碼量增加了56%.新內(nèi)核100%共享源碼管理進程,線程和內(nèi)存為Windows Embedded CE 6.0重新設計了內(nèi)核源碼訪問能幫助使用那些最好的內(nèi)核功能驅(qū)動程序管理器裝載設備驅(qū)動器和他們的接口源碼訪問能幫助調(diào)試 硬件文件系統(tǒng)管理讀和寫文件源碼訪問能幫助改進文件系統(tǒng)的性能許多設備驅(qū)動程序USB ActiveSync/Modem之類的驅(qū)動程序, USB fn Printer , WiFi 驅(qū)動還有許多其它的驅(qū)動程序通過源碼訪問,通過修改已有的驅(qū)動程序可以為類似的外圍設備快速開發(fā)出一個新的驅(qū)動程序 Windows Embedded CE 6.0的新特性的新特性Page 44 Microsoft Windows CE Test Kit (CETK)Windows CETK is the tool we use to validate quality in Windows CEWorks on both retail and development devicesShips with CE 6.0Ported to new CE 6.0 kernelNew design and architecture to extend the kit beyond its current capabilitiesMove towards integrating the
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 社區(qū)活躍度的預算與投資合同
- 全職員工離職說明
- 數(shù)據(jù)庫技術COMPUTER87課件
- 鐵路市場營銷集中性市場營銷策略課件
- 雙總線冗余供電方式盧凱霞時間年月課件
- 中醫(yī)特色護理課件
- 中醫(yī)關于水腫的課件
- 高空電力作業(yè)安全合同
- 養(yǎng)生保健品經(jīng)銷合同范本
- 北京市東城區(qū)2024屆高三下學期一模歷史試題 含解析
- 林海雪原考試題和答案
- 2025年中國華電集團有限公司招聘筆試參考題庫含答案解析
- 中醫(yī)適宜技術-中藥熱奄包
- 語文版一年級下冊語文閱讀理解練習(15篇)
- 動火作業(yè)檢查清單
- 鋼管樁沉樁兩種工藝方法
- 滲透試驗報告
- 吊車包月租賃合同完美參考
- 亞馬遜品牌授權書(英文模板)
- 螺桿壓縮機知識(課堂PPT)
- 鑄件砂芯清理—水爆清砂
評論
0/150
提交評論