一个小时成为Windows Embedded CE 6.0开发者

Slides:



Advertisements
Similar presentations
Web Role 的每台虚机运行有 IIS ,用于处理 Web 请求 Worker Role 用于运行后台进程 Cloud Service 是什么? 支持多层架构的应用容器 由多个 Windows 虚拟机集群构成 集群有两种类型: Web 和 Worker Cloud Service 做什么 进行应用的自动化部署.
Advertisements

应用技术 陕西华辉科技有限公司.
泛舆情管理平台 ——助力媒体业务创新 新模式 新格局 创新盈利增长点 2/26/2017 1:59 AM 屈伟: 创始人,总裁
中国银行业前置端操作系统移植研究.
3/3/ :01 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
请点击以下链接下载WinHEC的演讲材料
借助公有云实现游戏的弹性运营 Shaun Fang (方兴) Azure开发技术顾问
Windows Hyper-V与集群共享卷
请点击以下链接下载WinHEC的演讲材料
1. 设定愿景,确定业务场景 Microsoft Corporation
广东省广州市花都区教育局教研室 汤少冰 优化评估方式, 促进中学英语的教与学 广东省广州市花都区教育局教研室 汤少冰
張書源 Microsoft MVP MCT 趨勢科技 技術經理 網酷科技 資深顧問 集英信誠 資深顧問
Excel VBA视频教程 课程介绍-什么是VBA
Office 2013 全新功能介紹 台灣微軟 Office 大使 楊承恩 Marcus Microsoft Office
講師姓名:黃信嘉、黃振宇 職稱:微軟技術支援副理 公司名稱:台灣微軟 課程代碼:WCL305
四川省集体林权流转平台 中国西部林权交易网
全国信息技术标准化技术委员会 (SAC/TC28)工作交流
Windows 10 混合现实 Mingfei Yan 高级项目经理
Benjamin Armstrong 高级项目经理 微软
W371 如何使网络设备更好的和Windows Vista工作
MBL 340 Tablet PC SDK:在您的应用程序中使用数字墨水
資料檔案的安全性管理 羅英嘉 2007年4月.
今天很高兴能够利用Web Cast和大家讲解嵌入式XP的新增功能。
什麼是電子軟體下載 Electronic Software Download (ESD).
OFC 302 InfoPath2007新特性及解决方案.
最新 Windows Server 徽标 要求和计划
Windows Mobile 轻松接轨GPS
Microsoft Office SharePoint Server 2007 事件追蹤與專案管理
SOLUTIONACCELERATORS Windows Vista Hardware Assessment 1
MSG 321 统一消息架构和PBX集成.
朝雲端專業DBA邁進: 深入剖析 Windows Azure SQL Database 完整資料庫管理、雲端報表建立、建置分散式雲端資料庫
利用最新Hyper-V Replica 功能達成Hyper-V 災難備援機制
Windows Server 2008 NAP整合802.1x網路安全控管
互聯網安全資訊 助您達至更安全的網上體驗.
服務啟用、導入流程、 郵件移轉步驟簡介 Microsoft Office 12/2/2018
MBL 325 开发跨平台的 Windows Mobile应用程序
MBL 327 Windows Mobile开发中的异构系统集成
Cameron Brodeur Program Manager US-Device & Storage PM
构建 Windows TV Tuner 产业 生态环境的重要观点
微软新一代云计算 面向企业的 Office 365 客户培训大纲
1/2/ :39 PM 讀經 以弗所書 4:31-32 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may.
使徒行傳 21:17-23章「保羅的見證(一)」 引言 預言保羅為主的名受許多的苦難的實現
SVR 352 扩展Windows Server 终端服务在企业中的应用
2/24/2019 5:40 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Exchange 2007 系統部署 -- 儲存預測與測試
教师课堂教学能力提升培训 ---“互联网+教育”考勤小测验 Plickers 洛阳理工学院
Microsoft SQL Server 2008 報表服務_設計
利用 ASP.NET MVC 提升您的 Web 應用程式


橫跨電腦、手機與軟體的全方位端點管控解決方案
请点击以下链接下载WinHEC的演讲材料
呂政周 精誠恆逸教育訓練處 資深講師 Windows PowerShell 呂政周 精誠恆逸教育訓練處 資深講師
使用WPF创建Windows应用和Web应用
水深之處 Launch Out into the Deep
4/30/2019 7:40 AM 約翰福音 15:9;17:20-23 加拉太書 6:1-2 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
DEV 343 VS2005超快速开发方案/EEP2006控件包.
5/4/2019 4:42 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
使徒行傳 24-26章 [ 保羅的見證(二)] 徒9:15 “  主 對 亞 拿 尼 亞 說 、 你 只 管 去 . 他 是 我 所 揀 選 的 器 皿 、 要 在 外 邦 人 和 君 王 並 以 色 列 人 面 前 、 宣 揚 我 的 名 。 ”]
TechEd /6/ :36 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Windows 徽标计划工具:综述与发展趋势
5/5/2019 7:06 PM 两跨框架梁截面配筋图的绘制 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may.
顧武雄 台灣微軟特約資深講師 Exchange 2007 管理工具活用秘訣 Entry Slide
百万亿次超级计算机诞生记 姓名 Xiangyu Ye 职务 微软中国技术中心资深HPC顾问 公司 微软中国
5/15/2019 姓名: 公司名称: 云赛空间BP模板 Now let’s take a look at who we are, what we’re doing and why we’re doing it in China... This is an image of a technology.
DEV 343 VS2005超快速开发方案/EEP2006控件包.
MGT 213 System Management Server的昨天,今天和明天
Bob Combs Lead Program Manager Microsoft Corporation
Ron Jacobs 高级技术专员 Microsoft
Windows Workflow Foundation CON 230
Presentation transcript:

一个小时成为Windows Embedded CE 6.0开发者 9/13/2017 1:58 AM 一个小时成为Windows Embedded CE 6.0开发者 凌宁 资深技术推广经理 微软(中国)有限公司 © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

议程 Windows CE背景知识 Windows Embedded CE的体系结构 Windows CE的实时性 工具和应用程序开发 疑问和解答

创建CE 6.0操作系统映像 配置操作系统映像,然后构建… 稍后我们会再回过头来看构建结果 9/13/2017 1:58 AM 演示 创建CE 6.0操作系统映像 配置操作系统映像,然后构建… 稍后我们会再回过头来看构建结果 © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Talisker Windows CE .NET 4.0 Alder Windows CE 1.0 11/1996 Cedar Windows CE 3.0 4/2000 Macallan Windows CE 5.0 8/2004 Tomatin NMD FP CE 6.0 R2 SP1 2.11 SP2 2.12 Jameson 4.1 McKendric 4.2 Birch Windows CE 2.0 11/1997 Talisker Windows CE .NET 4.0 1/2002 Yamazaki Windows CE 6 H2/2006

什么是CE 6.0? Windows Embedded CE 6.0不是 Windows Embedded CE 6.0是… Windows Mobile 6.0 (基于CE 5.0) Windows Embedded CE 6.0是… 32位、实时、多任务操作系统 组件化设计(CE 6.0中大约有700个组件) 作为一系列组件发布 使用Platform Builder 6.0配置映像 体积灵活 体积大小与选择的组件多少相关 广泛的CPU支持 可以支持x86、ARM、MIPS和SH4

Windows CE 5.0的内存模型 Active Process Active Process Active Process 内核 大内存区 供内存映射文件使用 进程的地址空间被限制为32MB 保留区域 Active Process` Active Process Active Process 应用程序空间 Active Process

Windows CE 5.0的内存模型 2 GB 内核空间 对所有进程单一的2GB用户地址空间 为其它进程准备的31个Slot 内核 大内存区 对所有进程单一的2GB用户地址空间 Slot 32 Slot 31 : : Slot 7 为其它进程准备的31个Slot Slot 6 Slot 5 Slot 4 Slot 3 Slot 2 Slot 1 – ROM DLLs 当前进程的Slot Slot 0 – 当前进程

Windows CE 6.0的内存模型 . . . . . . 2 GB 内核空间 每个进程2 GB 用户空间 32 K 个进程 内核 文件系统 GWES 驱动程序 2 GB 内核空间 进程代码 用户虚拟空间 . . . . . . 每个进程2 GB 用户空间 32 K 个进程

CE 6.0内核简介 每个进程2GB虚拟内存空间 32K个进程 统一的内核 系统效率提高 安全性和稳定性增强 应用程序高度兼容 操作系统关键组件移到了内核中 系统效率提高 安全性和稳定性增强 应用程序高度兼容

应用程序虚拟地址空间 进程的空间 每个进程1 GB 共享的系统堆 255 MB 用户空间 2 GB 每个进程有自己独立的地址空间映射 0x80000000 共享的系统堆 255 MB 被用作OS/应用程序的交互 用户空间 2 GB 每个进程有自己独立的地址空间映射 基于RAM的映射文件 256 MB RAM Backed Mapfiles 共享的用户DLL 512 MB 所有DLL的代码和数据 0x40000000 进程的空间 每个进程1 GB 可执行的代码和数据 虚拟内存申请 0x00000000

OS DLLs (Coredll, Winsock, CommCtrl, …) CE 6的体系结构 Applications Applications Shell 应 用 程 序 Applications 服务管理器 用户态驱动 管理器 用户态 服务 用户态驱动 OS DLLs (Coredll, Winsock, CommCtrl, …) Kernel.DLL KCoredll.DLL FileSys.DLL GWES.DLL Device.DLL 内核态 NK.EXE 内核态驱动 引导程序 硬 件

驱动程序 支持两种类型的驱动 移植现有的CE 5.0驱动易如反掌 驱动的总体架构与以前一致 内核模式驱动有更高的效率 用户模式驱动有更好的稳定性 移植现有的CE 5.0驱动易如反掌 每个驱动程序大约需要1~3天 驱动的总体架构与以前一致 主要的改动是驱动如何访问客户内存 不再支持SetKMode和SetProcPermissions 提供CEAppCompat工具检查现有驱动的兼容性

实时性:Win CE的测试结果 使用如下配置测试响应时间 Windows CE实时性测试结果 三星SMDK2410开发板 200 MHZ的ARM,16 x 16的Cache Windows CE 5.0并带有图形界面 播放WMV视频 Windows CE实时性测试结果 ISR启动 IST启动 最 小 1.2 µs 31.7 µs 平 均 3.3 µs 67.2 µs 最 大 13.3 µs 103.0 µs 时间单位是微秒(µs)

实时性测试工具—ILTiming与OSBench 基于软件的实时性测试工具 测试ISR和IST延迟 ISR延迟:从IRQ到ISR开始的时间 IST延迟:从ISR结束到IST开始的时间 OSBench 内核调度性能测试 可以测试完成某些内核任务的时间,例如— 得到或释放临界区 创建Semaphone或Mutex 调用系统API

线程优先级分类 Windows CE 6有256个级别的优先级 优先级0最高,优先级255最低 旧的8个优先级(3.0以前)被映射到新优先级的最低的8个级别上 默认的优先级是252 SetThreadPriority = 251 OEM可以保留优先级0到248 优先级 描述 0 ~ 96 高于驱动程序的实时优先级 97 ~ 152 默认被CE的驱动程序使用 153 ~ 247 低于驱动程序的实时优先级 248 ~ 255 非实时优先级

中断处理的体系结构 IST延迟 ID 线程 IST ISR1 ISRN OAL ISR 延迟 ISR 内核 ISR 设置事件 硬件 允许优先级更高的中断 除了ID都允许 所有

中断初始化(驱动/IST) // Create the Event OAL ISR1 ISRN ISR ID Kernel Set Event // Create the Event gIntEvent = CreateEvent( NULL, // Security FALSE, // Manual reset FALSE, // Init as not signaled NULL // No Named Events ); // Create a thread that waits for signaling gThreadInt = CreateThread( NULL, // Security 0, // Default ThreadInt,// Interrupt Thread NULL, // No Parameters CREATE_SUSPENDED,// Suspended &dwThreadID // Thread Id); // Initilialize the Interrupt gSysInterruptNum = KernelIoControl( IOCTL_HAL_TRANSLATE_IRQ, &gIRQNum, sizeof(DWORD), &gSysIntNum, sizeof(DWORD), NULL ); InterruptInitialize( gSysIntNum, // From Map gIntEvent, // Global Event NULL, // Not Used (DWORD)NULL // Not Used ) ) // Get the thread going ResumeThread( gThreadInt ); ISR HW All Higher Enabled All Except ID All

中断服务线程IST DWORD WINAPI ThreadInt( LPVOID lpvParam ) { OAL ISR1 ISRN ISR ID Kernel ISR Set Event DWORD WINAPI ThreadInt( LPVOID lpvParam ) { // The magic thread waits for the event. while( gRun ) // Wait until we have been signaled interrupt WaitForSingleObject( gIntEvent, INFINITE ); // Increment the counter gInterruptCount ++; // Run your logic here // Reset the interrupt InterruptDone( gSysIntNum ); } return 0; HW All Higher Enabled All Except ID All

Kernel Tracker 查看进程、线程与中断之间的交互 跟踪中断 优先级反转 线程状态,例如:运行、阻塞、睡眠等

CE 6.0的开发工具 应用程序开发 操作系统开发 VS 2005/2008 VS 2005 + PB 配置 构建 下载 调试(源代码) 测试(CETK) 应用集成 远程工具: Call Profiler, Performance Monitor, Registry Editor, CeDebugX Zoomin, Remote Kernel Tracker

创建CE 6.0操作系统映像 部署和运行构建的操作系统映像 9/13/2017 1:58 AM 演示 创建CE 6.0操作系统映像 部署和运行构建的操作系统映像 © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

总 结 应用于大量有趣的设备 实时、体积小、模块化的嵌入式操作系统 支持多种处理器体系结构 应用程序开发简易(框架、编程语言) GPS导航、机器人、手机、生产控制、医疗等等 实时、体积小、模块化的嵌入式操作系统 支持多种处理器体系结构 应用程序开发简易(框架、编程语言) 非常好用的开发工具!

疑问和解答

参考资源 Windows Embedded MSDN Windows Embedded Windows Mobile http://msdn.microsoft.com/embedded Windows Embedded http://www.microsoft.com/windowsembedded Windows Mobile http://www.microsoft.com/windowsmobile 微软Windows Embedded CE中文论坛: http://forums.microsoft.com/china/ShowForum.aspx?ForumID=1873&SiteID=15

© 2008 Microsoft Corporation. All rights reserved © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.