- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Session 2: Testing Windows CE .NET Alan Page, Microsoft 概述 系统架构 NK.EXE FILESYS.EXE DEVICE.EXE GWES.EXE SERVICES.EXE Thread Migration Windows CE 系统架构 NK.EXE NK.LIB + OAL.LIB = NK.EXE 内核是硬件体系结构无关但是是处理器相关的 OAL越小越好 微软提供了预先编译的 NK.LIB 库文件 NK.lib的大多数代码都是公开的 通过高级代码共享,可以得到更多代码 提供: 内存管理 调度管理 系统调用转发 实现了一些基本的Win32函数 Protected Server Libraries (PSL) 实现API的系统函数 把操作系统的功能放在多个进程的机制 PSL Calls run through the Kernel (NK.EXE) 不对最终用户开放 你不能创建一个PSL GWES.EXE 图形窗口事件系统 (GWES) 管理所有的图形界面处理以及用户输入 桌面的 USER32 + GDI32 作为一个单独的进程 DEVICE.EXE 设备管理器 电池驱动已经被从GWES中拿走了 大多数功能都放在了devmgr.dll中。 提供所有的与驱动相关的函数实现 在启动的时候通过注册表加载驱动程序 Services.EXE 所有服务的宿主进程 与Device.exe分开 FTP, TELNET, HTTPD (Web), UPnP, SMB, 其它… 用户可以添加服务 提供命令行工具来启动、关闭服务 提供API管理服务 文件系统 所有与文件系统相关的函数都在 FileSys.exe中实现 单根 “\”, 没有像“C:\”一样的盘符 有三个组件: 对象存储 存储管理器 ROM 文件系统 文件系统概述 目标存储 被 FileSys.exe管理的一个堆 包括: Registry Database RAM文件系统 RAM 文件系统通常位于根目录 Ex : “\myfile.txt” 存在于RAM中 ROM 文件系统 被映射成“\Windows” 目录 “\Windows” 目录中所有的文件都是只读的 通常是nk.bin或nk.nb0中的文件 存储管理 负责: Storage device driver Partition device driver File System device driver File System filter 线程迁移 概述 进程 线程 虚拟内存 Windows CE 内核特征 多进程 可以支持最多32个进程 多线程 支持256个线程优先级 Fibers 只能被应用程序手工调度的执行单元 同步对象 Critical Sections, Mutexes, Semaphores, Events, Message Queues 内存模型 Virtual memory, Code sections Paged, No backing store for Data sections 进程 静态上下文,线程的容器 进程不被执行,线程被执行 系统中同时最多只能有32个进程: 对大多数嵌入式系统来说都已经足够。推荐用多线程而不是多进程 迎合一些体系结构的支持 Windows CE 使用与 Windows XP一样的加载/卸载模型 (与其它桌面Window一样) 支持命令行程序 但是与桌面Win32 API不一样 调用 CreateProcess() 启动进程 线程 Win32的执行的单元 按照优先级调度 高优先级的线程会抢占低优先级的线程 同样的优先级使用Round-Robin算法 默认的时间片是 100毫秒,OEM可以在OAL中重新设置 线程调度 线程A拥有最高的优先级,他会一直执行直到结束或阻塞 线程B和C使用Round-Robin算法运行 在round-robin 每个线程都运行一个固定的时间,叫做时间片 优先级数字越小,优先级越高 线程优先级分布图(例) 优先级反转 Avoid priority inversion by keeping all threads waiting for same resource at the same priority Thread API 线程创建 CreateThread – 创建一个普通优先级的线程 线程优先级 GetThreadPriority – 当前线程的优先级 SetThreadPriority – 改变当前线程的优先级 (251) CeGetThreadPriority – 得到实时线程的优先级 CeSetThreadPriority – 改变实时线程的优先级 线程睡眠 S
您可能关注的文档
- 大学生心理健康教育说课.ppt
- 大学生心理健康第五讲.ppt
- 大学生心理健康教育人格障碍.ppt
- 大学生心理健康第六讲.ppt
- 大学生心理健康考试复习.ppt
- 大学生心理健康课.ppt
- 大学生心理健康辅导.ppt
- 大学生恋爱心理主题班会.ppt
- 大学生恋爱观调查报告.ppt
- 大学生手机使用情况调查报告.pptx
- 专题06 经济体制(我国的社会主义市场经济体制)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题11 世界多极化与经济全球化-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 专题03 经济发展与社会进步-5年(2020-2024)高考1年模拟政治真题分类汇编(浙江专用)(解析版).docx
- 专题09 文化传承与文化创新-5年(2020-2024)高考1年模拟政治真题分类汇编(北京专用)(原卷版).docx
- 5年(2020-2024)高考政治真题分类汇编专题08 社会进步(我国的个人收入分配与社会保障)(原卷版).docx
- 专题07 探索世界与把握规律-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 5年(2020-2024)高考政治真题分类汇编专题06 经济体制(我国的社会主义市场经济体制)(原卷版).docx
- 专题11 全面依法治国(治国理政的基本方式、法治中国建设、全面推进依法治国的基本要求)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题17 区域联系与区域协调发展-【好题汇编】十年(2015-2024)高考地理真题分类汇编(解析版).docx
- 专题01 中国特色社会主义-5年(2020-2024)高考1年模拟政治真题分类汇编(原卷版).docx
文档评论(0)