




已阅读5页,还剩74页未读, 继续免费阅读
(计算机应用技术专业论文)基于windows+ce的支持tmo的中间件研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南交通大学硕士研究生学位论文第1 页 摘要 时间一消息触发对象( t m o ) 结构方案是传统面向对象设计和实现技术在语 义上的巨大扩展,它允许系统设计者精确的设定高层的分布式计算对象的数据 成员和方法成员的时间特性。t m 0 能应用于硬、软实时系统,实时仿真系统和通 用并发系统的设计和开发。本文设计和实现了一个基于w i n d o w sc e 操作系统的 支持t m o 的中间件( t m o s m c e ) 。论文主要内容如下: 1 介绍了t m o 模型的结构、主要特点、以及支持t m o 的操作系统的特殊要 求。分析了w i n d o w sc e 操作系统的核心特性,研究了w i n d o w sc e 开发过程中 的一些重要技术。同时也对中间件技术进行了介绍。 2 设计了t m o s m c e 的体系结构和内部线程结构。采用两级的调度策略来管 理t m o s m c e 内部的线程。有效的利用超时参数调用w a i t f o r s i n g l e o b j e c ta p i 函数来构建时间片分片机制。在微软消息队列( m s m q ) 的基础上设计消息通信 系统。 3 通过访问系统提供的高性能计数器实现精确计时。实现了一个能保证t m o 的方法被及时激活,并能够处理t m o 超时的调度器。在m s m q 的基础上实现了消 息通信系统。建立全局时间资源,为计算节点的分布式对象提供时间服务。建 立了一个叫做t m o f c ( t m o 基础类库) 的a p i 函数库,该函数库为编程人员提供 了友好的c + + 类和函数的集合。 4 介绍了基于t m o s m c e 的应用的设计准则和设计方法。详细描述了基于 t m o s m c e 的应用系统的初始化过程。采用自顶向下的系统设计方法,设计和实现 了一段地面汽车交通网的t m o 结构仿真。 关键词:时间触发,消息触发,中间件,w i n d o w sc e 西南交通大学硕士研究生学位论文第1 i 页 a b s tt a c t t h et i m e t r i g g e r e dm e s s a g e t r i g g e r e do b j e c t ( t m o ) s t r u c t u r i n gs c h e m e i sas e m a n t i e a l l yp o w e r f u le x t e n s i o no ft h ec o n v e n t i o n a lo b j e c to r i e n t e d d e s i g na n di m p l e m e n t a t i o nt e c h n i q u e sw h i c ha ll o w st h es y s t e md e s i g n e r t oa c c u r a t e l ys p e c i f yt i m i n gc h a r a c t e r i s t i c so fd a t aa n df u n c t i o n c o m p o n e n t so fh i g h l e v e ld i s t r i b u t e dc o m p u t i n go b j e c t s i tc a nb eu s e d i nt h ea p p l i c a t i o n so fh a r da n ds o f tr e a l t i m es y s t e m s ,r e a l t i m e s i m u l a t i o n s ,a n dg e n e r a lc o n c u r r e n ts y s t e m s i nt h i sp a p e r ,am i d d l e w a r e s u p p o r t i n gt b a s e d o nw i n d o w sc eo p e r a t i n gs y s t e m ( t m o s m c e ) i sd e s i g n e d a n di m p l e m e n t e d t h i sp a p e rc o n c e n t r a t e so nt h ea s p e c t sa sf o l i o w s : 1 i n t r o d u c i n gt h et m o ss t r u c t u r i n gs c h e m e ,i t sm a j o rf e a t u r e sa n d i t sr e q u i r e m e n t so nt h es u p p o r t i n go p e r a t i n gs y s t e m i ti sa n a l y z e dt h e k e r n e lf e a t u r e so fw i n d o w sc eo p e r a t i n gs y s t e m ,s t u d i e ds o m ei m p o r t a n t t e c h n i q u e sr e l a t e dt ot h eb a s i cd e v e l o p m e n tp r o c e s sb a s e do nw i n d o w sc e a n di n t r o d u c e dm i d d l e w a r et e c h n i q u e si nt h i sp a p e r 2 d e s i g n i n gt h ea r c h i t e c t u r ea n dt h ei n t e r n a lt h r e a ds t r u c t u r eo f t m o s m c e t h et w o 一1 e v e ls c h e d u l i n gp o l i c yi sa d o p t e dt o m a n a g e t h e t h r e a d sw i t h i nt m o s m c e t h et i m e o u tp a r a m e t e ri se f f e c t i v e l yu s e dt oc a l l t h ea p iw a i t f o r s i n 9 1 e o b j e c tt ob u i l dat i m e s l i c i n gm e c h a n i s m m e s s a g e c o m m u n i c a t i o ns y s t e mi sd e s i g n e db a s e do nm i c r o s o f t m e s s a g eq u e u e ( m s m q ) 3 i m p l e l i l e n t i n gp r e c i s ec o u n t e rb ya c c e s s i n gt h eh i g h p e r f o r m a n c e c o u n t e rp r o v i d e db yt h es y s t e m as c h e d u l e ri s d e s i g n e dt oa s s u r et h e o n t i m ea c t i v a t i o no ft m om e t h o d sa n dd e a lw i t ht h et i m e o u to ft m om e t h o d s m e s s a g ec o m m u n i e a t i o ns y s t e mi si m p l e m e n t e db a s e do nm s m q t h eg l o b a l t i m ef o rd i s t r i b u t e do b j e c t st os u p p l yt h et i m es e r v i c ei se s t a b l i s h e d w i t h i nc o m p u t i n gn o d e s aa p il i b r a r yn a m e dt m o f c ( t m of u n d a t i o nc l a s s ) i sc r e a t e d w h i c hc o n s i s t so fac o l l e c t i o no fs p e c i f i cc + 十c l a s s e sa n d f u n c t i o n st op r o v i d eaf r i e n d l yi n t e r f a c ef o rp r o g r a m m e r 4 i n t r o d u c i n gt h er u l e sa n dw a y so f t h e a p p l i c a t i o nb a s e do nt m o s m c e v a r i o u ss t e p si n v o l v e di ni n i t i a l i z a t i o no ft h ea p p l i c a t i o ns y s t e mb a s e d 西南交通大学硕士研究生学位论文第1 | i 页 o nt m o s m c ei sd e p i c t e di ns o m ed e t a i l t h et o p d o w ns y s t e m a t i ce x p a n s i o n m e t h o d o l o g yi sa d o p t e dt od e s i g na n di m p l e m e n t a f r e e w a ya u t o m o b i l e t r a f f i cs i m u l a t o rf a c ilit a r e db yt h et m os t r u c t u r i n g k e y w o r d s :t i m e t r i g g e r e d ,m e s s a g e t r i g g e r e d ,m i d d l e w a r e ,w i n d o w sc e 西南交通大学硕士研究生学位论文第1 页 第1 章绪论 1 1 基于w i n d o w so e 的支持t m o 的中间件研究意义 在传统的实时应用领域,人们一直使用过程性语言。随着实时软件的规模 和复杂性迅速增长以及分布式计算环境的出现,人们迫切需要新的软件开发方 法。由于面向对象技术在非实时领域取得了巨大的成功,使得面向对象的实时 计算成为了一个研究热点。 将面向对象方法应用于实时领域的研究开始于上世纪8 0 年代末,目前正处 于发展时期。主要研究领域包括:实时对象模型与建模语言,实时对象a p i ,实 时o r b ,实时i 0 子系统,实时移动a g e n t 等。”。 时间一消息触发对象( t i m e t r i g g e r e dm e s s a g e t r i g g e r e d ,t m o ) 模型是 在上世纪9 0 年代为设计和实现经济、可靠的实时系统而建立的一种面向对象模 型。它将传统面向对象模型中的服务方法分成时间触发方法和消息触发方法, 通过对时间触发方法设定时间特性来指定和控制方法的运行,因此它支持可分 布的实时和非实时应用。 为了支持基于t m o 的实时系统的高效、可靠设计,需要建立相应的软硬件 支撑平台。建立这种软硬件支撑平台一般有两种方式:一是在硬件平台上开发 全新的操作系统;二是在现有的商业平台上开发支持t m o 模型的中间件。显然, 利用现有的商业平台开发支持t m o 模型的中间件是一种既快速又经济的方式。 w i n d o w sc e n e t 是微软开发,并具有强大通信能力的通用嵌入式操作系统, 它已经广泛应用于家用电器、移动设备、工业控制、航空航天、交通运输以及 军事武器等领域“3 ,因此,开展基于w i n d o w sc e 的支持t m o 的中间件研究,对 于构建新一代的基于有线和无线的实时分布式系统具有较高的价值。 1 2 基于w in d o w so e 的支持t m o 的中间件研究现状 自从t m o 模型提出以后,人们就开始构建一些支持t m o 模型的引擎“”来帮 助开发工业控制、军事武器等领域的实时分布式应用系统,而在这些应用领域 的实践,则更进一步验证了t m o 模型在构建可分布的实时系统方面的潜力促 进了人们对于开发支持t m o 的引擎研究。 随着商业操作系统和软件技术的发展,对于支持t m o 的引擎研究逐渐转移 到支持t m o 的中间件研究上。目前,基于商业操作系统平台的支持t m o 的中间 西南交通大学硕士研究生学位论文第2 页 件研究已经取得了一些成果。“”1 。随着这些成果的进一步完善,相信很快就能 够利用这些中间件产品构建新一代的通信与移动计算系统,电视会议系统,智 能交通系统等。 尽管支持t m o 的中间件的研究已经取得了许多的成果,但是对于基于 w i n d o w sc e 的支持t m o 的中间件研究相对较晚“”,目前还没有成熟的产品。 1 3 论文的主要内容 基于支持t m o 的中间件研究现状,跟踪最新的研究趋势,在对t h l 0 模型的 充分理解的基础上,利用w i n d o wc e 操作系统特性,设计和实现了基于w i n d o w s c e 的支持t m o 的中间件。论文的主要内容如下: ( 1 ) 研究了t 模型的结构、特点。 ( 2 ) 对w i n d o w sc e 操作系统进行了分析,对w i n d o w sc e 开发过程中的几 个关键问题进行了研究。 ( 3 ) 设计了基于w i n d o w sc e 的支持t m o 的中间件。 ( 4 ) 实现了基于w i n d o w sc e 的支持t m o 的中间件。 ( 5 ) 示例了利用t m o s m c e 进行应用系统开发的过程。 西南交通大学硕士研究生学位论文第3 页 第2 章基于w in d o w sc e 的支持t m o 的中间件 相关技术研究 本章主要介绍与论文研究相关的技术,包括:时间一消息触发对象模型; w i n d o w sc e 操作系统的特点,基于w i n d o w sc e 的嵌入式平台的定制和裁剪;中 间件技术的发展和现状等。 2 1 时间一消息触发对象模型 2 1 1 时间一消息触发对象模型结构及特点 t m o 模型是传统面向对象模型的自然扩展,是为设计和实现经济、可靠的实 时系统而建立的具有固定语法结构和执行语义的模型“2 。“1 。 图2 - i 为t m o 模型结构,一个t m o 主要由四个部分组成:( 1 ) o d s s e c t i o n : 对象数据存储( o b j e c t d a t a s t o r e ) 部分;( 2 ) e a c s e c t i o n :访问外部对象 通道( e n v i r o n m e n tr c c e s s c a p a b i l i t y ) 部分,包括远程对象方法调用,逻辑 通信信道和i o 设备接口;( 3 ) s p m - s e c t i o n :自发方法( s p o n t a n e o u s m e t h o d ) 部分;( 4 ) s v m - s e c t i o n :服务方法( s e r v i c e m e t h o d ) 部分。 i ( 圆圆, i - - - - | 。- - - , 箨蒜鬻善 j l - 鬯兰l _ x 、 一目r e s e r v a t i o nq j 图2 - lt m o 模型结构 t m o 模型的主要特点概括如下: ( 1 ) 分布式计算组件 西南交通大学硕士研究生学位论文第4 页 t m o 模型的设计理念是任何一个实时计算系统都将采取t m o 网络的形式,网 络中的多个t m o 之间通过客户对象方法调用服务对象提供的服务方法的方式进 行通信。客户对象方法可以采取非阻塞方式向服务对象方法提出服务请求。 ( 2 ) 明确区分两类方法 t m o 包括两种类型的方法:时间触发方法和消息触发方法。时间触发方法就 是由定时器触发的方法。时间触发方法是在设计阶段设置方法的运行时间特性 ( 如:开始运行时问,运行周期,运行次数,运行时延等) ,在对象生命周期内 由高精度的定时器按照其时间特性精确调度的方法。消息触发方法就是传统的 服务方法,在对象生命周期内它由客户请求消息触发运行,并没有精确的时间 要求。所以,在t m o 模型中,按照有无精确的时间要求将传统面向对象模型中 的方法分成了时间触发方法和消息触发方法。 ( 3 ) 基本并发限制( b a s i cc o n c u r r e n c yc o n s t r a i n t ,b c c ) b c c 规则要求被外部客户消息触发的s v m 仅仅是在它和s p m 的潜在冲突不可 能发生时才允许被激活。也就是说,只有当一个s v m 的可占用的时间段足够大, 以致于它的运行不会同其它s p m 的运行时段重叠时,它才被允许运行。不过b c c 并不适用于s p m 的并发运行,也不适用于s v m 的并发运行。b c c 规则可以避免 s p m 和s v m 之间的并发冲突,这样就保证了s v m 不会干扰s p m 的运行,减少了系 统设计者在保证t m o 的定时服务能力方面的工作量。 2 1 。2 候选操作系统所需的特性 支持t m o 的中间件的候选操作系统必须具有下列的特性: 1 高精度定时器中断 时间触发任务不仅存在于t m o 应用中,而且也存在于支持t m o 的中间件内 部的各种操作中。时间到达通知必须准确并且定时器信号从产生到相关的计算 任务激活的时间迟延必须小到个可以接受的范围内。因此,候选操作系统不 仅要提供一个持续运行的时间指示器( 如:实时时钟) ,而且要有一个具有足够 精度、信号时延可接受的间隔定时器。 不同的操作系统的实时时钟具有不同的时间粒度。因为具体的应用领域的 精确度要求不同,所以在为具体的应用领域选择平台时,实时时钟的时间粒度 是一个需要考虑的主要因素。 2 实时线程支持 一般来讲,实时线程是指具有下列特点的线程: 西南交通大学硕士研究生学位论文第5 页 ( 1 ) 在访问个资源时的时延不应该超过预先设定的固定限制; ( 2 ) 运行时仅能够被内核中的线程支撑机构所中断,不能被其它线程强占或 中断; ( 3 ) 当一个实时线程产生一个系统服务调用时,被调用的系统服务函数继承 调用它的线程的实时特性。 2 2w i n d o w sc e 2 2 1w in d o w so e 的发展历史 在个人电脑时代,人们设计一种可以随身携带的设备,这个设备的最先产 品状态之一是掌上电脑。掌上电脑的出现极大的改变了人们的生活、工作习惯、 很多人彻底的抛弃了传统的计算器、记事本、电话薄,在一些地方( 美国硅谷) , 掌上电脑的普及率甚至超过了移动电话,成为人们工作生活的必需物品。掌上 电脑p a l m 的巨大成功,自然引起了微软公司的注意,微软公司内部开始了 “p o r t a b l ep cs o l u t i o n ”项目,该项目的名字曾经有多个,如p u l s a r ( 脉冲 星) ,w i n p a d 和p e g a s u s ( 飞马) ,最后更名为w i n d o w sc e ,w i n d o w sc e 发展非 常迅速,9 6 年1 1 月推出1 0 ,9 7 年4 月1 0 1 ,9 7 年1 1 月2 0 ,9 8 年1 月2 0 i , 9 8 年8 月2 i 2 1 i ,9 9 年6 月2 1 2 ,0 0 年4 月3 0 ,0 1 年9 月p o c k e tp c 、 p o c k e tp c 2 0 0 2 ,0 2 年1 月w i n d o w sc e n e t 4 0 ,0 3 年w i n d o w sc e n e t 4 1 ,0 4 年w i n d o w sc e n e t 4 2 ,目前已经发展到w i n d o w sc e 5 0 。w i n d o w sc e 是一个全 新的操作系统,只需要5 0 0 k 的r a m 就可以把系统全部装下。最新版的w i n d o w sc e 只需要2 0 0 k 的运行空间。w i n d o w sc e 是模块化的,o 叫厂家可以加入自己所需 的任何模块“”。 2 2 2w in d o w sc e 的核心特性 1 内存特性 w i n d o w sc e n e t 提供了灵活的内存访问机制,使系统中不同类型的应用程 序可以充分的使用系统提供的r a m 、r o m 以及闪存,并有选择的有效利用处理器 提供的虚存、保护等功能。内存管理可以分为三个部分:物理页面管理,主要 负责跟踪系统的物理内存的使用情况,为换页程序抓取可用的物理页面,释放 不使用的物理页面等;虚存管理。主要管理系统的地址映射,页面的换进换出 等;堆管理,主要管理进程空间内部的动态内存释放与回收,以支持程序的动 态数据结构。 西南交通大学硕士研究生学位论文第6 页 w i n d o w sc e 在使用内存方面做了些限制,以实现更高效的存储管理。这些 限制包括:大量的系统保留空间,这些地址空间实际上经常不映射到任何物理 页面;系统进程数最多只有3 2 个,每个进程的实际可使用的内存空间受限制 ( 3 2 m ) 有固定的进程共享内存;有r 0 5 c 【地址的映射等。 由于限定了进程空间的大小和进程的数目,内存布局变得相对简单,系统 提供3 3 个s l o t ( 内存槽) 供这些进程使用,其中s l o t0 是全局的共享内存, 底部的一些s l o t 由重要的系统进程使用,核心部分的s t a t i cv i r t u a l a d d r e s s e s 部分专门用来映射r o m 、外设等资源。n k s l o t 是n k e x e 的进程空间, n k e x e 是一个核心态进程,包括了操作系统核心的代码。对物理内存相对比较 紧缺的系统来说,进程空间和进程数目的限制能力将能有效地缓解内存系统可 能的压力。例如,某个应用系统限制6 个进程,那么系统映射中将永远不会用 到多于7 个的s l o t ,系统傲地址映射,将可以不必关心别的部分。 2 调度 w i n d o w sc e 是一个可抢占的多任务的操作系统,它采用基于优先级的时间 片轮转方法进行调度。 3 实时能力 w i n d o w sc e 的实时性有如下的一些特点。6 ”。”3 : 高达2 5 6 个优先级数,更小粒度的控制嵌入式系统的调度机制和应用程序 的执行速度。 定时器精确到1 毫秒。 拥有独立于线程时间片的系统定时器,可以独立于系统定时器为每个单独 的线程定义时间片。 具有嵌套式中断支持。 具有优先级反转处理。 对信号量的支持。 具有超低的中断服务例程和中断服务线程延迟( 对于w i n d o w sc e n e t4 2 在使用p e n t i u m1 6 6m h z 处理器时,i s r 延迟平均为2 8 毫秒,i s t 延迟平均为 1 7 9 毫秒) 。 4 设备驱动程序 w i n d o w sc e n e t 集成了大量的设备驱动程序,它们作为系统特性而存在, 在p l a t f o r m b u i i d e r 中可以方便地从一个特定的平台配置中加入或者删除。这 些驱动程序涵盏的面很广,包括了大多数常见的设备类中的典型产品,例如u p n p 西南交通大学硕士研究生学位论文第7 页 驱动程序,n e 2 0 0 0 兼容性网卡、标准触摸屏等。 w i n d o w sc e n e t 的另一个显著特性是系统提供类驱动程序模型以及实现的 类驱动程序,例如i e e e l 3 9 4 火线设备类型驱动程序,开发者只要根据模型实现 驱动的底层部分就可以一种具体的1 3 9 4 设备。这些类驱动程序模型为应用程序 的公共接口提供了可能性,典型的应用模型就是d i r e c t x 接口,应用开发者可 以通过d i r e c t x 接口高效率地访问设备驱动程序和硬件。 5 高级电源管理 高级电源管理是作为设备管理模块的一个部分实现的,在w i n d o w sc e n e t 设备管理部分中,电源管理器提供了一个符合a c p i 标准的电源管理的基本接口, 并使用设备管理的事件传递机制处理相关的电源事件。实际电源管理的实现者 则是电源管理驱动程序( 它实现电源管理接口) 和每种具体的设备驱动程序中 的电源管理例程。 2 2 3 嵌入式系统支持 1 高度模块化,系统可配置 嵌入式操作系统的一大特点即可裁减、可配置,w i n d o w sc e n e t 的这一特 性很明显,它具有一个很小的核n k ,基本只实现调度、内存管理和核心a p i , 他们构成了一个整体,其余大部分功能都在单独的模块中实现。例如文件系统 ( f i l e s y s e x e ) ,图形用户界面( g w e s e x e ) ,设备管理( d e v i c e e x e ) ,服务 管理( s e r v i c e s e x e ) 等,同时在这些大的模块内部,良好的结构也支持更细 粒度的模块化。在w i n d o w sc e n e t 中,每一个功能模块可以称之为个特性 ( f e a t u r e ) 。这些特性可能是独立的也可能有一些依赖关系,比如w i n 3 2 a p i 中 有一组函数专门支持轻量级线程( f i n e r ) ,这也是一个特性,有很多应用模块 例如多媒体应用和数据库服务就依赖于这个特性,w i n d o w sc e n e t 专门提供了 开发工具管理这些特性,并且可以跟踪这些关系,于是,开发者可以通过一定 的手段选择一些特性进行组合,生成一个开发用的原型系统,雨背后的模块组 织、编译、装配等工作可以由这些工具完成。 系统的配置可以在p l a t f o r mb u i i d e r 中完成。通过往系统配置中增加或删 除特性,之后就是用系统创建工具实现这个配置,使之成为一个可实际运行的 系统镜像。这个镜像包括了操作系统的核心、内存中的文件系统、存储的程序 和文档、系统配置文件、注册表数据库等。整个创建过程可以分成4 个阶段: c e s y s g e n 、b s p 、b u i l d r e l 、m a k e i m g 。c e s y s g e n 阶段是通过c e b u i l d b a t 和 西南交通大学硕士研究生学位论文第b 页 s y s g e n b a t 两个脚本控制,主要依据项目配置产生基本的系统配置文件,它们 主要处理四类文件,b i b 文件说明需要打包迸镜像文件的w i n d o w sc e 文件;d a t 文件系统描述,例如某个程序文件的存储位置;d b 文件是w i n d o w sc e n e t 对象 存储数据库描述;r e g 文件是系统注册表文件,整个处理过程可以看成对以上几 个文件的预处理过程,做的主要工作就是将系统的这类文件的模板变换成符合 系统需求的形式,好像一个过滤器。b s p 这一阶段w i n d o w sc e n e t 工具系统将 编译链接被包含在特性中的任何的b s p 驱动程序以及o a l 源代码,这一阶段系 统会使用两类文件确定需要哪些源代码和库文件,系统配置( 需要编译哪些模 块) 和m a k e f i l e ( 编译哪些代码,使用什么样的规则编译) 。后者和一般的m a k e 系统使用的m a k e f i l e 不一样,它包含两个文件d i r s 和s o u r c e s ,前者给出了代 码位置,后者则是针对每一个文件的编译规则。b u i l d r e l 这一阶段的工作主要 是拷贝,将那些已经编译好的东西以及系统必须的各种文件拷贝到一个特定的 目录下,这些内容即构成一个操作系统镜像文件的基本内容。m a k e i m g 构造镜像 文件是要做三件事。第一步,将前面生成的配置文件按类别分别组合成一个主 配置文件,名字分别为:c e b i b ( b i b ) ,i n i t o b j d a t ( d a t ) ,i n i t d b i n i ( d b ) , r e g i n i t i n i ( r e g ) 。第二步,从新装配所有可执行文件的资源,以适应当前的 语言配置。第三步,对镜像内部进行布局,例如构造一个只有一个根的文件系 统,链接装配所有就位可执行程序( 当镜像被拷贝到内存的特定位置后就可以 执行的程序) ,影响r o m 中的程序到文件系统的w i n d o w s 目录下。最后生成操作 系统的镜像文件n k b i n 。 2 系统易于向其他硬件平台迁移。 多平台支持是嵌入式系统的一个重要特色,一般来说,多系统支持需要在 两个层面实现:1 ) 系统体系结构,这主要是对处理器的支持,实现包括编码差 异和指令系统定向,前者包括映射系统的中断机制、特权指令映射、存储管理 机制映射、i 0 系统映射,后者则由编译系统自动完成;2 ) 目标计算机组成, 这主要靠驱动程序来实现。在w i n d o w sc e n e t 中,两部分的大部分内容被包括 在一个称之为o a l ( o e ma d a p t a t i o nl a y e r ) 的硬件隔离层中,依次对应为c s p ( c p us u p p o r tp a c k a g e ) 和b s p ( b o a r ds u p p o r tp a c k a g e ) 。w i n d o w sc e n e t 支持的处理器家族主要包括a r m 系列、i n t e lx 8 6 系列、m i p s 系列以及s h 系列, 因为涉及到编译系统的不同和操作系统内核的稳定性,一般开发商将很难增加 新的处理器支持,他们只改变c s p 中相对独立的支持,例如引导程序。对应用 系统来说,系统迁移是实现b s p ,使得系统可以支持专门用于该系统的底板以及 西南交通大学硕士研究生学位论文第9 页 相关的设备。 2 2 4w in d o w so e 的开发工具 开发工具是w i n d o w sc e n e t 的重要组成部分“,实际上也是这个系统得以 在商业上成功的重要因素,主要因为它的易用和功能的强大与完善。 1 p i a t f o r mb u ij d o r p l a t f o r mb u i l d e r 用于构造基于w i n d o w sc e 操作系统的嵌入式平台,辅助 开发某一个特定硬件平台的w i n d o w sc e 操作系统和基本应用环境。 2 w i n d o w so ea p p ii c a t i o nf r a m e w o r k s 这个工具的核心是e m b e d d e dv i s u a lc + + ,它具有和v i s u a lc + + 6 基本相同 的特性,包括对m f c 、a t l 以及c 洲d c o m 的支持、应用程序向导、编译调试等 多种功能。 3 e m u l a t o r e m u l a t o r 是桌面w i n d o w s 系统上的一个应用程序,它可以运行经过特定编 译处理( e m u l a t o r 本身也可以被看作一个独立的平台) 的w i n d o w sc e n e t 系统。 e m u l a t o r 提供了相当多的硬件特性模拟,例如显示、声音、u s b 接口、网络等。 它和p l a t f o r mb u i i d e r 以及e m b e d d e dy i s u a lc + + 均可集成在一起,通过k i t l 可调适器相连充当目标平台。这样,开发者可以脱离实际硬件开发、调试、测 试基于w i n d o w sc e n e t 的应用,当硬件平台和基本操作系统环境建造完成后, 这个应用几乎不用修改就可以很好的工作。 2 2 5w in d o w so e 平台定制和裁剪 由于微软提供了良好的平台向导和帮助,这里不对基于w i n d o w sc e 的平台 的定制和裁剪过程进行详细叙述,仅对该过程中的几个关键问题进行说明”。 1 建立开发环境 图2 - 2 为典型的w i n d o w sc e 开发环境。“。在这个环境中包括:域名服务器, 以太网h u b ,开发主机和目标机。开发主机和目标机位于同个局域网内,串行 电缆提供调试信息。对于开发主机和目标机作如下要求: ( 1 ) 开发主机 操作系统:w i n d o w s2 0 0 0p r o f e s s i o n a l + s p 3 或者w i n d o w sx pp r o f e s s i o n a l 。 应用软件:p l a t f o r m b u i i d e r 4 。0 以上,e m b e d d e dv i s u a lc + + 4 。0 以上。 ( 2 ) 目标机: 网卡r t l 8 1 3 9 或者其它被w i n d o w sc e 支持的网卡。 西南交通大学硕士研究生学位论文第10 页 显卡,声卡也是要被w i n d o w sc e 支持。 开发主机目标机 图2 - 2 典型开发环境 2 创建w in d o w s0 e 操作系统的主要步骤 调试 平台 c o n f i g u r ep l a t f o r m 定制和裁剪平台 n 下载到目标设备 平台完成否? 上y 输s d k n b u i l d 操作系统镜像 定制露标设备否? y 开发o a l 、b s p 、 b o o tl o a d e r 图2 q 3 创建平台过程示意图 图2 - i 3 描述了采用p l a t f o r mb u i l d e r 创建一个基于w i n d o w sc e 平台的过 程。创建一个基于m i c r o s o f tw i n d o w sc e n e t 的操作系统,必须完成下面几个 主要步骤:( 1 ) 选择一个标准的开发板( s d b ) 作为模板,创建一个w i n d o w s c e 的平台。( 2 ) 使用各选的工程及目录中列举的特色,对平台进行定制。( 3 ) 编 译并b u i l d 镜像文件( i m a g e ) ,并将它下载到s d b 。采用在p l a t f o r mb u i l d e r 西南交通大学硕士研究生学位论文第11 页 集成开发环境中的d e b u g 工具调试平台。( 4 ) 为特定的目标设备创建一个b o o t l o a d e r 以及板级支持包( b s p ) 。( 5 ) 用新的b s p 重新编译( r e b u i l d ) 操作系统 镜像,并将它下载进入目标设备,调试这个平台。( 6 ) 当平台创建完毕的时候, 输出软件开发包( s d k ) ,以便在开发平台应用程序时使用。 2 自动载入应用程序 很多设备需要在操作系统启动时,自动载入自己的应用程序“。有的 w i n d o w sc e 系统本身就没有标准的w i n d o w sc e 界面,更需要自动加载自己的应 用程序作为设备启动的界面。需要在操作系统启动时加载的文件一般放在注册 表的键 h k e y l o c a l _ m a c h i n e i n i t 下面,例如: h k e yl o c a l m a c h i n e i n i t “l a u n c h 5 0 ”= 。e x p l o r e re x e ” “d e p e n d 5 0 = h e x :1 4 ,0 0 ,l e ,0 0 这些文件是系统启动时运行的程序”其中l a u n c h 后的数字越小则运行越早; d e p e n d 的值说明这个程序要依赖前面的哪些程序。一般有l a u n c h l o s h e l l e x e 、l a u n c h 2 0d e v i c e e x e 、l a u n c h 3 0g w h s e x e 、l a u n c h 5 0e x p l o r e r e x e 四个模块需要启动。 以上这些模块都是标准的用户级进程。因此可以在这个阶段添加自己的应 用程序,也可以在d e v i c e e x e 之后g w e s e x e 之前启动一个任意的应用程序 a p p e x e 。但是该应用程序必须没有调用g w e s e x e 和e x p l o r e r e x e 中定义的图 形和w i n d o w s 资源管理器的功能,否则该应用程序不能正常运行。e x p l o r e r e x e 是c e 标准的s h e l l ,在其之前和之后启动一个具有标准用户接口的应用程序时 都会出现问题。e x p l o r e r e x e 并不能处理在其之前创建的可见的,顶级的窗口 应用。由于e x p l o r e r e x e 装载之后需要执行某些特定的初始化操作,因此在其 后随即启动的带有用户接口的应用也不能正常执行。但在其之前和之后可以启 动没有用户接口的应用程序,例如通信监控程序。 e x p l o r e r e x e 执行之后,启动过程从注册表切换到文件系统。在初始化完 桌面和任务栏窗口之后,它会在目录w i n d o w s s t a r t u p 中寻找任何可以执行的 应用程序或其快捷方式。因此可以把需要开机癌动的应用或其快捷方式放在该 目录中。方法如下: 在p l a t f o r m d a t 文件中加入一下程序: d i r e c t o r y ( “w i n d o w s s t a r t u p ”) : 一f i l e ( “s a m p l e e x e ”,”w i n d o w s s a m p l e e x e ”) 西南交通大学硕士研究生学位论文第12 页 其中:路径“w i n d o w s s t a r t u p ”代表启动菜单; 路径“w i n d w o s p r o g r a m s ”代表程序菜单。 3 w in d o w so e 操作系统的下载 w i n d o w sc e 操作系统可以通过网口,或并口进行下载。,这两种连接类型 的差别如表2 - 1 所述。由于网络传输性能稳定、速度快,所以一般采用网络方 式进行下载。 进行下载之前,需要通过p l a t f o r mb u i i d e r 附带的应用程序,制作张用 于启动c e p c 目标机的d o s 启动盘( 在开发机上完成) 。并修改启动盘上的自动 批处理文件和系统配置文件。 表2 1 网络下载和串、并行口下载之间的差别 下载方式网络串、并口 下载速度较快较慢 硬件要求目标机需c e 支持的网卡串口、并口 网口下载映像文件,串并口下载映像文件,串口传 信息通道 口传递调试信息递调试信息 对于网络下载方式,c e p c 的自动批处理文件和系统配置文件修改涉及到 i r q ,i o 口,i p 的设置。网卡中断号和i 0 地址号可以手动设置,也可以自动 设置。如果都设为0 则会自动进行设置。网卡i p 可以使用静态i p ,也可以使用 动态i p 。 设置好网卡后,在p l a t f o r mb u i l d e r 中正确设置远程服务。重新以网络方 式启动c e p c ( 目标机) ,目标设备名便会自动出现在新设备框内,选中新设备后, 点击下载( d o w n l o a d ) o 然后重新以网络方式启动目标机,当目标机启动以后, 就可以进行操作系统下载了。 4 w ;n d o w so e 操作系统自启动 当w i n d o w sc e 操作系统下载完成以后,将d o s 启动盘上的内容拷贝到存储 器上,然后对存储器上的自动批处理文件和系统配置文件进行修改,修改完成 以后,从存储器启动目标机,就成功实现了该n i i b i n 文件的自启动“。 对于自动批处理文件的修改,只需增加一行即可: l o a d e e p en k b i n 也可以以带参数方式启动 其中:l o a d c e p c 是一个m s d o s 程序,它是一种b o o tl o a d e r 。b o o tl o a d e r 的 主要工作是加载c e 平台( n k b i n ) ,将n k b i n 解压后的所有文件加载到内存, 然后将c p u 的控制权交给c e 内核,c e 内核执行初始化工作,运行n k 实现操作 西南交通大学硕士研究生学位论文第13 页 系统内核功能、运行d e v i c e 管理常用的设备驱动程序、运行f i l e s y s 加载文件 系统、运行g w e s 管理图形窗口事件子系统等等。l o a d c e p c 的几个常用的参数说 明见图2 一 4 。 b :指定串口的波特率。例如b :1 9 2 0 0 c ;指定串口的端日。l 指”c o m i :
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年教育心理学基础考试卷及答案
- 2025年高中会考试题及答案
- 2025年安全工程师安全生产法安全生产监督管理职责的部门工作人员的违法行为考试试题(附答案)
- 2025年度GCP培训考核试题(含答案)
- 2025年预防接种接种资质培训试题(附答案)
- 中考生物重点知识点归纳与解析
- 幼教机构教师培训课程大纲
- 中职数学函数教学资源开发
- 软件测试用例设计与管理要点
- 2025年中国电动干手机行业市场全景分析及前景机遇研判报告
- 脊柱骨科课件教学
- 物业服务培训课件大纲
- 2025至2030中国原果浆行业项目调研及市场前景预测评估报告
- 2025年秋季学期“1530”安全教育记录表
- YYT 1244-2014 体外诊断试剂用纯化水
- DB32-T 4063-2021建筑工程施工质量鉴定标准-(高清现行)
- 3养殖水环境及控制(1)ppt课件
- 小学一年级新生学籍注册模版
- 竖井滑模施工组织设计
- 最新青岛版(六年制)四年级上册数学《 1.5 求近似数》PPT课件
- 城市夜景照明设计规范JGJ T 163-2008
评论
0/150
提交评论