




已阅读5页,还剩58页未读, 继续免费阅读
(计算机软件与理论专业论文)minigui在嵌入式操作系统tkernel上的分析与移植.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着嵌入式系统的快速发展,在一些信息家电中,例如p d a 、机顶盒、d v d v c d 播放机等,图形用户界面( g u i ) 越来越受到人们的重视。 m i n i g u i ( m i n ig r a p h i c a lu s e ri n t e r f a c e ) 最初是一个自由软件项目,其目标是为 基于l i n u x 的实时嵌入式系统提供一个轻量级的图形用户界面支持系统,可以运行 在任何一种具有线程支持的p o s i x 兼容系统上。t r o n ( t h er e a l - t i m eo p e r a t i n g s y s t e mn u c l e u s ) 是日本开发的拥有自主知识产权的操作系统标准,以其为基础的 t - k e r n e l 是当前比较流行的,源码开放的嵌入式操作系统。m i n i g u i 和t - k e r n e l 的 结合,构成了具有优秀图形界面和实时响应功能的嵌入式软件开发平台。 本文首先通过对嵌入式系统基本原理和构成,特别是t - k e r n e l 操作系统理论的 学习和研究,了解t - k e r n e l 操作系统的原理机制,然后分析m i n i g u i 的体系结构, 对m i m g u i 的源代码进行深入的研究和理解,其中重点对比分析了任务和线程的实 现方法和调度规则以及t - k e r n e l 对p o s i x 标准接口的支持。通过对线程及线程库 实现机制的研究,并结合m i n i g u i ( m i n ig r a p h i c a lu s e ri n t e r f a c e ) 在嵌入式操作系统 t - k e r n e l 上的移植,引入了任务( t a s k ) 与线程( t h r e a d ) 一一映射模式,提出了移 植方案。在此基础上,整理归类与移植相关的程序代码,搭建c o d e w a r r i o rf o r a r m 集成开发环境,进行移植源代码编写和编译等工作,最终实现了满足实时应 用的基于t - k e r n e l 的p o s i x 线程库,完成了m i n i g u i 在t - k e r n e l 上移植,并通过 编写和执行测试程序,验证了该线程库能够满足嵌入式实时系统的要求。 关键词:t - k e r n e l ;嵌入式操作系统;p o s i x 线程库:m i n i g u l a b s t r a c t w i t ht h eq u i c kd e v e l o p i n go fe m b e d e dr t o s ( r e a lt i m eo p e r a t i n gs y s t e m ) ,t h e g u ii sg e t t i n gm o r ea t t e n t i o ni nt h ea r e ao fi n f o r m a t i o na p p l i a n c e ,s u c ha sp d a ,s t b , d v d v c d ,e c t m i n i g u ii saf r e es o f t - w a r ep r o j e c t t h ea i mo ft h ep r o j e c ti st os u p p l yal i g h tg u i s u p p o r ts y s t e m ,w h i c h c a np r a c t i c a l l yr u no na n yp o s i xc o m p a t i b l es y s t e m t h e t - k e r n e li sav e r yp o p u l a ra n do p e ns o u r c ee m b e d d e do s ,b a s eo nt r o n ( t h e r e a l - t i m eo p e r a t i n gs y s t e mn u c l e u s ) ,t h ej a p a n e s ee o ss t a n d a r d 1 1 1 ec o m b i n a t i o no f t h e s et w os y s t e m ,c o m p o s i n gag o o dg r a p h i c a li n t e r f a c ea n dr e a l t i m er e s p o n s ef u n c t i o n o fe m b e d d e ds o f t w a r ed e v e l o p m e n tp l a t f o r m t i l i sp a p e rf i r s tt h r o u g hs t u d y i n ga n dr e s e a c h i n gt h et h e o r yo ft - k e r n e lo p e r a t i n g s y s t e mt ou n d e r s t a n di t sp r i n c i p l em e c h a n i s m ,a n dt h e na n a l i z et h ea r c h i t e c t u r eo f m i n i g u it oc o m p r e h e n dt h es o u r c ec o d ei n - d e p t ha n da n a l y s i sc o m p a r a t i v e l yt h e i m p l e m e n t a t i o no ft a s ka n dt h r e a da n dt h e i rs c h e d u l i n gr u l e s ,e s p e c i a l l yi nt h es u p p o r tt o p o s i x ( p o r t a b l eo p e r a t i n gs y s t e mi n t e r f a c e ) o nt - k e r n e l c o m b i n i n gw i t ht h e m i g r a t i o no fm i n i g u io nt - k e r n e la n da n a l y z i n gt h et h r e a d sl i b r a r yt h o r o u g h l y , w e i n t r o d u c eo n e - - t o - o n em o d e lo nr e l a t i o n s h i pb e t w e e nt a s ka n dt h r e a da n dp r o p o s e t r a n s p l a n tp r o g r a m m e i nt h ee n d ,w er e a l i z et h er e a lt i m ep o s i xt h r e a dl i b r a r ya n d c o m p l e t et h et r a n s p l a n to fm i n i g u io nt - k e r n e l ,t e s ta n dv e r i f yt h es a t i s f a c t i o nt ot h e r e q u i r e m e n to fe m b e d d e da n dr e a lt i m es y s t e mb yc o m p i l i n ga n dr u n n i n gt h et e s t p r o g r a m k e y w o r d s :t - k e r n e l ;e m b e d e dr t o s ;p o s i xt h r e a dl i b r a r y ;m i n i g u l 学位论文独创性声明 本人声明,所呈交的学位论文系本人在导师指导下独立完成的研究成果。文中 依法引用他人的成果,均已做出明确标注或得到许可。论文内容未包含法律意义上 已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申请的论文或成 果。 本人如违反上述声明,愿意承担由此引发的一切责任和后果。 论文作者签名: 讽阀j 日期:2 0 0 8 年5 月1 2 日 学位论文知识产权权属声明 本人在导师指导下所完成的学位论文及相关的职务作品,知识产权归属学校。 学校享有以任何方式发表、复制、公开阅览、借阅以及申请专利等权利。本人离校 后发表或使用学位论文或与该论文直接相关的学术论文或成果时,署名单位仍然为 青岛大学。 本学位论文属于: 保密口,在年解密后适用于本声明。 不保密 ( 请在以上方框内打“4 ) 论文作者签 导师签名: 名:砷、 荔符 ( 本声明的版权归青岛大学所有, 日期:2 0 0 8 年5 月1 2 日 日期:j 口啄年r 月lv 日 未经许可,任何单位及任何个人不得擅自使用 6 l 第一章引言 1 1 研究背景及意义 第一章引言 嵌入式系统是指为控制信息家电、手持设备和无线设备等机器组装起来的微型 计算机系统。常见的嵌入式操作系统有:r t l i n u x 、w i n c e 、p a l m o s 、u c o s i i 、 v x w o r k s 、t - k e r n e l 等。 由于硬件条件的限制,一些信息家电( 如p d a 、机顶盒、d v d v c d 播放机等) 所提供的用户界面都非常简单,很少有漂亮的图形用户界面。随着嵌入式系统的发 展,许多嵌入式g u i ( g r a p h i c su s e ri n t e r f a c e ) 应运而生,例如:m i n i g u i 、o p e n g u l 、 q t e m b e d d e d 等。嵌入式实时操作系统结合轻量级的g u i ,界面美观,极大方便了 用户使用,并且满足了嵌入式系统对实时性、可靠性和占用资源少的要求。 t - k e r n e l 是由t r o n ( t h er e a l t i m eo p e r a t i n gs y s t e mn u c l e u s ) 发展而来,t r o n 是日本东京大学坂村健博士于1 9 8 4 年提出的嵌入式操作系统规范,目的是想构筑 一种理想的计算机结构,实现新的计算体系即“普遍存在的计算环境”( u b i q u i t o u s c o m p u t i n g a r c h i t e c t u r e ) 。t 引擎( t - e n g i n e ) 是由标准化硬件结构与标准开源实时 操作系统核心t - k e r n e l 组成的嵌入式系统的开放式标准开发平台【l 】,它通过标准扩 展( s t a n d a r de x t e n s i o n ) 中间件,已经实现了比较完整的g u l 支持,但费用较高,因 此迫切需要实现t - k e r n e l 对开源g u i 的支持。 目前,源码开放的轻量级的g u i 大多是基于l i n u x 操作系统的,向支持p o s i x 线程标准接口的嵌入式操作系统移植比较简单,只需调整一下配置即可。而向t r o n 标准的嵌入式操作系统移植,由于接口不兼容,实现起来相对较难。 为了解决上述问题,本文结合完成m i n i g u i 在t r o n 标准嵌入式操作系统 t - k e r n e l 上的移植,对照任务和线程,提出采用一一映射模式实现基于t - k e r n e l 的 p o s i x 线程库,并给出了线程库的模块结构和实现方法。 1 1 1 嵌入式g u i 图形用户界面( g u i ) 是用图形的方式,借助菜单、按钮等标准界面元素和鼠 标操作,帮助用户方便地向计算机系统发出指令,启动操作,并将系统运行的结果 同样以图形方式显示给用户。图形用户界面画面生动、操作简单,省去了字符界面 用户必须记忆各种命令的麻烦,深受广大用户喜爱和欢迎,已经成为目前几乎所有 应用软件的既成标准口刳。它具有以下特点: 1 、增强了软件系统的数据输入能力: 青岛大学硕士学位论文 2 、对输入输出对象的表示,从按名或按序号指定,扩展为用符号表示; 3 、图形方式下的输入和输出密切相关; 4 、具有数据驱动能力; 5 、具有潜在并行性; 6 、用户界面的复杂度和灵活性可以大大增强。 近来的市场需求显示,越来越多的嵌入式系统,包括p d a 、机项盒、d v d v c d 播放机、w a p 手机等系统均要求提供全功能的w e b 浏览器,这包括h t m l4 0 的 支持,j a v a s c r i p t 的支持甚至包括j a v a 虚拟机的支持,而这一切均要求有一个高性 能、高可靠的g u i 的支持1 7 j 。 另外一个迫切需要轻量级g u i 的系统是工业实时控制系统,这些系统一般建立 在标准p c 平台上,硬件条件相对嵌入式系统要好,但对实时性的要求非常高,并 且比起嵌入式系统来说,对g u i 的要求也更耐8 】;这些系统一般不希望建立在庞大 累赘的,非常消耗系统资源的操作系统和g u i 之上,比如w i n d o w s 或x w i n d o w ; 这些系统大部分建立在d o s 等系统上,并且采用比较简单的手法实现g u i ,但是 在出现l i n u x 系统之后尤其在r t - l i n u x 系统出现之后,开始采用r t - l i n u x 作为操 作系统,但g u i 仍然是一个问题,x w i n d o w 太过庞大和臃肿,因此,这些系统对 轻型g u i 的需求更加突出【2 训。 嵌入式系统往往是一种订制设备,它对g u i 的需求也各不相同,有的系统只 要求一些图形功能,而有些系统要求完备的g u l 支持,因此,g u i 也必须是可订制 的【9 】。综上所述,嵌入式系统对g u i 的基本要求应包括轻型、占用资源少、高性能、 高可靠性以及可配置【2 】。在软件工作者的努力下,一批l i n u x 的g u i 系统便应运而 生,主要包括:紧缩的x w i n d o w 、m i n i g u i 、m i c r o w i n d o w s 、o p e n g u l 、q t e m b e d d e d ,生出 守o 1 1 2 嵌入式操作系统 嵌入式操作系统e o s ( e m b e d d e do p e r a t i n g s y s t e m ) 是一种用途广泛的系统软 件,过去它主要应用于工业控制和国防系统领域。e o s 负责嵌入系统的全部软、硬 件资源的分配、调度工作,控制协调并发活动;它必须体现其所在系统的特征,能 够通过装卸某些模块来达到系统所要求的功能。目前,己推出一些应用比较成功的 e o s 产品系列。随着h :l t e r n e t 技术的发展、信息家电的普及应用及e o s 的微型化 和专业化,e o s 开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系 统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具 有较为突出的特点【3 】。e o s 是相对于一般操作系统而言的,它除具备了一般操作系 统最基本的功能,如任务调度、同步机制、中断处理、文件功能等外【3 1 1 ,还有以下 2 第一章引言 特点: 1 。可装卸性。开放性、可伸缩性的体系结构。 2 强实时性。e o s 实时性一般较强,可用于各种设备控制当中。 3 统一的接口。提供各种设备驱动接口。 4 操作方便、简单、提供友好的图形g u i ,图形界面,追求易学易用。 5 提供强大的网络功能,支持t c p i p 协议及其它协议,提供统一的m a c ( m e d i a a c c e s sc o n t r 0 1 ) 访问层接口,为各种移动计算设备预留接口。 6 强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这 就要负责系统管理的e o s 具有较强的稳定性。嵌入式操作系统的用户接口一般 不提供操作命令,它通过系统调用命令向用户程序提供服务。 7 固化代码。在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统 计算机的r o m 中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作 系统的文件管理功能应该( 做到) 容易拆卸。 8 更好的硬件适应性,也就是良好的移植性。 常见的嵌入式系统有:l i n u x 、u c l i n u x 、w i n c e 、p a l m o s 、s y m b i a n 、e c o s 、 u c o s i i 、v x w o r k s 、p s o s 、n u c l e u s 、t h r e a d x 、t - k e r n e l 等。 1 2m i n i g u i 北京飞漫软件技术有限公司开发的m i n i g u i ( h t t p :w w w m i n i g u i c o r n ) ,是面 向实时嵌入式系统的轻量级图形用户界面支持系统。 m i n i g u i 定义为“针对嵌入式设备的、跨操作系统的图形界面支持系统 ,属 于一种“嵌入式图形中间件”软件产品1 。目前,m i l l i g u i 已得到了国内最大的民 营通信设备制造商、中国最大的电视机生产商、t d s c d m a 终端方案供应商和全 球最大的处理器生产厂商的认可及使用,而在诸如工业仪表、医疗仪器、军工等行 业,更有众多行业领先厂商选择m i n i g u i 开发他们的嵌入式产品。与此同时, m i n i g u i 也得到了海外嵌入式设备开发商的认可,并远销到韩国、日本、台湾、马 来西亚、北美、欧洲等地区。2 0 0 5 年8 月,韩国k s p 公司成为飞漫软件全线产品 的第一个海外代理。m i n i g u i 业已成为嵌入式图形中间件领域的工业事实标准。 飞漫软件除了遵循g p l ( g e n e r a lp u b l i cl i c e n s e ) 汹1 条款发布m i n i g u i 的某 些版本( m i n i g u i v l 3 3 以及m i n i g u i s t r v l 6 2 ) 之外,还为商业用户提供m i n i g u i 增值版产品以及其他关键应用软件产品。 1 、m “g u i 的起源和发展 m i n i g u i 的开发起始于1 9 9 8 年底,到现在已历经八年的时间。最初,m i n i g u i 3 青岛大学硕士学位论文 仅仅为了能够在l i n u x 上显示中文而开发,但目前,m i n i g u i 已发展为一个跨操作 系统的嵌入式图形支持系统。从诞生开始,m i n i g u i 就不断得到实际项目和产品的 应用,同时新的项目也提出了更多技术需求,于是m i i l i g u i 就一步步发展成为跨操 作系统的嵌入式图形中间件产品。 1 9 9 8 年1 2 月,飞漫软件创始人魏永明开始开发m i n i g u i 并在一个数控系统中 得到应用。2 0 0 0 年3 月,联想h a p p y l i n u x1 0 发行版采用m i n i g u i 开发其安装程 序。这时,m i n i g u i 已形成了一个较为完整的嵌入式图形用户界面支持系统。2 0 0 0 年4 月到2 0 0 2 年9 月,m i n i g u i 作为中国为数不多的几个自由软件项目之一,继 续以自由软件的形式进行开发和维护。 2 0 0 2 年9 月,m i n i g u i 的主要开发者成立了北京飞漫软件技术有限公司,尝试 自由软件的商业化运作模式,并于2 0 0 3 年5 月发布了m i n i g u i1 2 6 版本;于2 0 0 3 年9 月发布了m i n i g u i1 3 0 版本。 2 0 0 3 年1 0 月,m i n i g u i 完成了到u c l i n u x 和e c o s 操作系统的移植。至此, m i n i g u i 成为一个跨平台的嵌入式图形用户界面支持系统。 目前,m i n i g u i 已发展到2 0 3 1 6 9 版本3 ,支持l i n u x u c l i n u x ,v x w o r k s ,e c o s , u c o s i i ,p s o s ,t h r e a d x ,n u c l e u s ,o s e 等操作系统,也可以在w i n 3 2 平台上运行。 飞漫软件基于自由软件的商业化模式也获得了初步的成功。 从最初的数控系统到目前流行的智能手持终端设备,m i n i g u i 已经应用于许多 产品领域。m i n i g u i 最主要的应用领域大致可分为三类: ( 1 ) 中高端手机、w i f i 手机、p d a 类产品。图1 1 为采用e c o s 操作系统,基于m i n i g u i 开发的高端智能手机的应用程序面。 匿玎辅# v o 蚶l :b a 麓鬈 2 0 0 孓1 2 3 01 1 0 0 驻i h e | o 2 0 0 3 1 2 2 917 :3 0t 气 b i n h d # l vp ar 2 0 0 3 1 2 。2 91 6 :0 7 既 n e wr a i1 w o ys t a t i o n 一“ 图1 1m i n i g u i 开发的高端智能手机的应用程序界面习 ( 2 ) 数字媒体及机项盒类产品。图1 2 是基于m i n i g u i 开发的机顶盒浏览器产品以 及由飞漫软件开发的法律政务查询终端产品。 4 第一章引言 一 14 2 m ” 一 。m t日 熬;熬零冀曩曩烹皇黪黑翼烹u 器 曩曩_ 囊孽要 豫毒:鬣? :鬈嚣嚣j 嚣嚣。,一j * :。黧: 一蛾躺,麓挚囔谶 警:= 乏。,。黑? :。,黛自自躲“自埘* t ,锋竹 一4 簟哺* ,q 日a 帮2 。篓戮攀翟:戮。鬻:= :“o :,:2 :等黔l 缨嘲 图1 2 基于m i n i g u i 开发的机顶盒浏览器产品以及法律政务查询终端产品【5 】 ( 3 ) 工业仪表及控制系统。图1 3 是基于l i n u x 和m i n i g u i 操作系统开发的数控系 统、工业仪表及医疗仪器的界面。 图1 3 基于l i n u x 和m i n i g u l 操作系统开发的的界面【5 】 2 、m i n i g u i 的系统优势 将现代窗口和图形技术引入嵌入式设备的m i n i g u i ,是一个非常适合于实时嵌 入式设备的高效、可靠、可定制、小巧灵活的图形用户界面支持系统,其主要优点 是:支持多种嵌入式操作系统,具备优秀的可移植性;可伸缩的系统架构,易于扩 展;功能丰富,可灵活剪裁;小体积高性能间的最佳平衡;广泛的应用领域等。 ( 1 ) 可伸缩性强 m i n i g u i 丰富的功能和可配置特性,使得它既可运行于c p u 主频只有6 0 m h z 的低端产品中,亦可运行于高端嵌入式设备中,并使用m i n i g u i 的高级控件风格及 皮肤界面等技术,创建华丽的用户界面。 m i n i g u l 的跨操作系统特性,使得m i n i g u l 可运行在最简单的嵌入式操作系统 之上,如u c o s i i ,也可以运行在具有现代操作系统特性的嵌入式操作系统之上, 如l i n u x ,而且m i n i g u i 为嵌入式l i n u x 系统提供了完整的多窗口图形环境。 这些特性,使得m i n i g u l 具有非常强的可伸缩性。可伸缩性是m i n i g u i 从设 计之初就考虑且不断完善而来的。这个特性使得m i n i g u i 可应用于简单的行业终 端,也可应用于复杂的消费类电子产品。 ( 2 ) 轻型、占用资源少 m i n i g u l 是一个定位于轻量级的嵌入式图形库,对系统资源的需求完全考虑到 了嵌入式设备的硬件情况,如m i n i g u i 库所占的空间最小可以裁剪到5 0 0 k 左右, 5 青岛大学硕士学位论文 对目前的嵌入式设备来说,满足这一条件是绰绰有余的。 此外,测试结果表明,m i n i g u i 能够在c p u 主频为3 0m h z ,仅有4 mr a m 的 系统上正常运行( 使用u c l i n u x 操作系统) ,这是其他针对嵌入式产品的图形系统所 无法达到的。 ( 3 ) 高性能、高可靠性 m i n i g u i 良好的体系结构及优化的图形接口,可确保最快的图形绘制速度。在 设计之初,充分考虑到了实时嵌入式系统的特点,针对多窗口环境下的图形绘制开 展了大量的研究及开发,优化了m i n i g u i 的图形绘制性能及资源占用。m i n i g u i 在大量实际系统中的应用,尤其在工业控制系统的应用,证明m i n i g u i 具有非常好 的性能。 ( 4 ) 可配置性 为满足嵌入式系统各种各样的需求,必须要求g u i 系统是可配置的。与l i n u x 内核类似,m i n i g u i 也实现了大量的编译配置选项,通过这些选项可指定m i n i g u i 库中包括哪些功能或不包括哪些功能。大体说来,我们可以在如下儿个方面对 m i m g u i 进行定制配置: 指定m i n i g u i 要运行的操作系统。 指定生成基于线程的m i n i g u i p h r e a d s 运行模式还是基于进程的m i n i g u i p r o c e s s e s 运行模式,或者只是最简单的m i n i g u i s t a n d a l o n e 运行模式。 指定需要支持的g a l 引擎和队l 引擎,以及引擎相关选项。 指定需要支持的字体类型。 指定需要支持的字符集。 指定需要支持的图像文件格式。 指定需要支持的控件类。 指定控件的整体风格,是经典( c l a s s i c ) 风格、平面( f l a t ) 风格还是时尚 ( f a s h i o n ) ) r i i , 格。 这些配置选项大大增强了m i n i g u i 的灵活性,对用户来讲,可针对具体的应用 需求量体裁衣,开发最适合产品需求的应用软件。 ( 5 ) 功能支持: 1 1 窗1 3 系统 在m i n i g u i 中窗口组织为层次体系结构的形式。根窗1 3 作为所有窗1 3 的祖先, 除了根窗口以外的所有窗口都有父窗口,每一个窗口都可能有子窗口、兄弟窗口、 祖先窗口和子孙窗口等。在同一级的窗口可以重叠,但是某个时刻只能有一个窗口 输出到重叠区域1 。m i n i g u i 中有三种窗口类型:主窗口、对话框和控件窗口( 子 窗口) 。主窗口通常包括一些子窗口,这些子窗口通常是控件窗口,也可以是自定 6 第一章引言 义窗口类。应用程序还会创建其它类型的窗口,例如对话框和消息框。对话框本质 上就是主窗口,应用程序一般通过对话框提示用户进行输入操作。 2 1 字体及国际化 m i n i g u i 提供了对点阵字体及矢量字体的支持,到目前为止,m i n i g u i 已经实 现了对r b f 和v b f 字体( 这是m i n i g u i 定义的两种点阵字体格式) ,以及t r u e t y p e 和a d o b et y p e l 等字体的支持。同时m i n i g u i 还提供了对q p f ( q tp r e r e n d e r e d f o n t s ) 字体的支持。m i n i g u i 还可以对点阵字体进行自动放大处理,并可针对电视 等特殊显示设备实现防锯齿功能。 3 ) 输入设备的支持 m i n i g u l 支持各种通用的鼠标设备,对触摸屏的支持也非常出色,并针对触摸 屏的校正为用户提供了校正接口。 4 ) 输入法 输入法是m i n i g u i 为支持中文、韩文、日文等多字节字符集而引入的机制,和 w i n d o w s 系统下的输入法类似,输入法通常以顶层窗口的形式出现,并截获系统中 的按键信息,经过适当的处理,将翻译之后的字符发送到当前活动窗口。m i n i g u i 提供了多种输入法的支持,其中包括内码、全拼、智能拼音、五笔及自然码等输入 法。 1 3 论文研究内容与组织结构 本文的前期研究工作有:分析单片机教学实验板,了解嵌入式实时系统的原理 和实现;阅读m i n i g u i 和t - k e r n e l 资料和源代码,了解嵌入式操作系统和嵌入式图 形用户界面的特点,并分别深入分析了有代表性的嵌入式操作系统t - k e r n e l 和嵌入 式图形用户界面m i n i g u i 。在前期研究工作的基础上,通过对线程及线程库实现机 制的研究,提出了任务( t a s k ) 与线程( t h r e a d ) 一一映射模式,为实现m i n i g u i 在t - k e r n e l 上的移植,给出了输入抽象层、图形抽象层、硬件驱动和在嵌入式操作 系统t - k e r n e l 上实现p o s i x 线程库的移植方案;在此基础上,整理归类与移植相 关的程序代码,搭建c o d e w a r r i o rf o ra r m 集成开发环境,进行移植源代码 编写和编译等工作,实现了针对m i n i g u i 嵌入式图形用户界面的移植,并完成了移 植代码烧写和加载工作;最终实现了满足实时应用的基于t - k e r n e l 的p o s i x 线程 库,完成了m i n i g u i 在t - k e r n e l 上移植,并通过编写和执行测试程序,验证了该线 程库能够满足嵌入式实时系统的要求。 本文的组织结构如下: 第一章引言:介绍嵌入式系统及嵌入式图形用户界面,以及m i n i g u i 的起源与 7 青岛大学硕士学位论文 发展和它的技术优势一多线程。 第二章,概述了t r o n 技术和t - e n g i n e 的软件构成; 对t - k e r n e l 任务状态和 调度规则进行了分析;论述了通讯机制及其所使用的同步模型;最后介绍了内存管 理、数据类型及相关名词。 第三章m i n i g u i 的移植分析:分析了m i n i g u i 的体系结构,包括分层设计、 多线程、运行模式以及通讯机制中的消息传递和微客户微服务器结构;讨论移植相 关性、技术支持并提出了移植方案。 第四章线程库及其实现:介绍了多线程的并发性、调度规则和同步机制以及 线程的三种实现机制;分析了多线程模型,提出采用一一映射模式实现基于t - k e r n e l 的p o s i x 线程库:给出了线程库的实现算法。 第五章移植系统性能测试:介绍了调试环境;根据移植系统的具体应用编写了 测试程序;按照测试流程执行测试程序、并给出相应的测试结果演示。 最后是总结与展望:对论文工作进行总结分析,并提出下一步的发展。 8 第二章嵌入式操作系统t - k e r n e l 第二章嵌入式操作系统t k e r n e l t r o n 是日本开发的拥有自主知识产权的操作系统。开发之初就设想除用于计 算机外,还将它用于机械控制与通信控制设备上。最近的t r o n 已开始广泛应用到 手机、网络家电等领域。尽管在日本的电脑市场上,其他国家开发的o s 占了很大 份额,但说起以小型设备为主的市场,却有不少在使用日本自主开发的 o h t r o n ”。随着“泛在( u b i q u i t o u s ) ”社会( 作者译为:可随时随地处理信息 的社会) 【2 5 j 的到来,t r o n 越来越受到人们的关注。 t r o n 于1 9 8 4 年由东京大学教授坂村健倡导,t r o n 协会( 总部:东京) 目 前正在着手制订包括c p u ( 中央处理器) 与运行环境在内的标准。t r o n 使用开放 标准,谁都可以自由开发这种o s 的嵌入软硬件。而且,它主要用作设备上的“预嵌 入o s ”。此外,它还有在特定时间内完成指定目标处理的“实时处理o s ”功能,具 有w i n d o w s 没有的快速处理的优点。这样,它可用于汽车引擎控制等。 由于拥有这些优点,t r o n 被越来越多的公司采用。去年6 月,n e c 、日立等 2 2 家著名电子产品制造商联合宣布将基于t r o n 来开发网络家电设备的软硬件。 从配备的设备上数量来看,t r o n 比w i n d o w s 还要普及得广。n t rd o c o m o 的许 多手机机型都采用了t r o n 。丰田汽车也在其“p r a d o ”与“皇冠”等车型上使用t r o n 来控制引擎运行。当n e c 、日立等公司积极推进t r o n 使其成为网络家电的o s 标 准的同时,索尼与松下电器产业却于去年1 2 月宣布,将基于免费0 s - 一l i n u x 来 联合开发a v 音响设备的o s 。尽管w i n d o w s 席卷了电脑市场,但在网络家电领域, 围绕o s 主导权的争夺今后将会更加激烈。 t r o n 系列目前包括面向嵌入式系统的i t r o n 、面向j a v a 实现的j t r o n 、用 于较大型系统如p c 和p d a 的b t r o n 和针对通信系统的c t r o n 。 i t r o n 已成为日本电子产业现行的基础架构。在带有微处理器的嵌入式系统 中,6 0 以上采用了t r o n 操作系统。其他的系统要么不带有操作系统,要么使用 专有操作系统,而后者通常也是在i t r o n 的基础上发展而来。因此目前在日本, 嵌入式系统中大约有8 0 的操作系统都使用了i t r o n 。 2 1 t - k e r n e l 和t - e n g i n e t - e n g i n e 是指开发嵌入式设备的软件和硬件所需的标准开发平台。预先将硬件、 操作系统、基本中间件和开发环境等规范加以标准化,并在此基础上提高运行的软 件,特别是中间件和设备驱动程序的互换性、移植性和复用性,提高嵌入式设备及 9 青岛入学硕十学位论文 其控制的开发效率,缩短开发时间,降低开发成本,这就是t - e n g i n e 工程的目标。 t - e n g i n e 工程除了利用“t - k e r n e l ”的名称将相当于过去i t r o n 功能的标准实 时o s 的规范加以标准化外,同时也将开发评价嵌入式设备原型的硬件规范( 有标 准t - e n g i n e 插件板和i _ t t - e n g i n e 插件板两种) 、相当于微机b i o s 的t - m o n i t o r 规范、 文件系统等基本中问件的规格和开发环境接口的规格( 源代码的描述形式、目标格 式、全局函数名称和变量名称的命名法等) 进行了标准化1 3 0 。 另外,t - e n g i n e 的硬件可作为最终产品的开发评价插件板和原型使用,但一般 t - e n g i n e 的硬件不是直接作为最终产品使用的。基于t - e n g i n e 的最终产品一般用来 重新制作硬件。这时,拆掉不需要的设备,多数是改变为更小的电路插件板,或作 为面向一般消费者的商品而装在小体积的外壳中。把这样基于t - e n g i n e 的应用产品 称为“t - e n g i n e 设备 。当然t - e n g i n e 设备并不受t - e n g i n e 工程所规定的标准规格 所约束。在t - e n g i n e 设备中,硬件的规格是可选的,有时对t - k e m e l 或中间件也可 以去掉不需要的功能或进行调整与定制。 2 1 1 t - e n g i n e 的软件构成 t - e n g i n e 的软件构成是以t - k e r n e l 为核心的层次结构,如图2 1 所示。 下面对各层逐一加以说明: 1 t m o n i t o r 图2 1t - e n g i n e 的软件构成 1 0 第二章嵌入式操作系统t - k e r n e l t m o n i t o r 的主要功能是提供硬件初始化及系统启动、异常、中断处理和基本 调试功能,是作为启动实时o s 核心及支援调试的软件。 t e n g i n e 接通电源( 系统复位) 时,首先启动t m o n i t o r 。t m o n i t o r 对必要的 硬件进行初始化后,启动t k e r n e l 。 2 t k e r n e l t k e r n e l 是在标准t e n g i n e 、一一e n g i n e 上运行的标准实时操作系统核心软件。 其优点是:第一,对外部要求的高速应答即实时性能;第二,可以通过动态资源管理 功能及统一源码原则等,实现在t k e r n e l 上构筑的中间件及应用软件的高度兼容 性。 3 t k e r n e l 的各种扩展 为了提供更广泛功能的o s 的扩展部分,分为“自身扩展部分 n a t i v ee x t e n s i o n 与“移植扩展部分”p o r t e de x t e n s i o n 两种。自身扩展部分包括有t k e r n e l t e ( t i n y e x t e n s i o n ) 、t k e m e l s e ( s t a n d a r de x t e n s i o n ) 和t - k e r n e l e e ( e n t e r p r i s ee x t e n s i o n ) 三种。移植扩展部分是将已有的中间件及k e r n e l 移植到t k e r n e l 上的部分。现在 已经开发出或者正在开发的有以下一些系统:w i n d o w sc e n e 聊k e r n e l 、 t - w i r e l e s s 、t - j a v a 、t - l i n u x 、t i n t e g r a t o r 等。 4 标准设备驱动 用来兼容每个t - e n g i n e 机器的软件。在t - e n g i n e 上搭载的标准的驱动程序, 规定了标准的a p i 规范。另外,为了便于开发新设备以及专用设备的驱动软件,还 将公开设备驱动的参考代码。 5 中间件 中间件是指在t k e r n e l 上运行的各种中间件,包括各种网络用的协议堆栈、文 件系统、日语处理、假名汉字变换、e t r o n 相关的安全软件、g u i 、声音处理、j a v a 等。为了保证中间件的兼容性,这些可以组合的中间件信息根据t f o r m a t 在 t e n g i n e 计划的数据库中集中管理,并根据t l i c e n s t 的规定,利用t d i s t 体系广泛 传播配发。 6 开发环境 在t - e n g i n e 基础结构规范中,不对开发环境进行标准化。但为了确保软件的兼 容性,有必要规定源代码及二进制代码的标准规范形式。因此,关于源代码及对象 代码的形式,规定以g c c 中的内容为准。 2 1 2t - k e r n e l 的特性 t - k e r n e l 是t r o n 的最新版本,具备增强的网络功能。t - k e r n e l 与i t r o n 的 基本架构完全相同,但通过升级增强了处理器对网络环境的处理。最终,所有的嵌 青岛大学硕十学位论文 入式微处理器都会具备网络接入功能。例如,电视机的遥控器可以利用装备了t r o n 操作系统的微控制器连接到网络,这样就能够控制其他设备的操作,例如像控制电 视机开关那样控制电灯或空调的开关。 在将设备联接至网络的过程中,安全问题至关重要。如果安全无法得到足够保 障,那么系统就无法投入实际使用。因此,我们必须建立一个具有最高安全等级的 全新平台,而这是传统嵌入式操作系统所不具备的。 t - k e r n e l 泛指t - k e r n e l 操作系统( t - k e m e i o s ) 、t - k e r n e l 系统管理( t - k e r n e l s m ) 和t - k e r n e l 调试支持( t k e n l e l d s ) 。有时只把t - k e r n e l 操作系统称为t - k e r n e l 【3 8 】 o 1 主要功能: t - k e r n e l 操作系统( t - k e m e i o s ) 提供了下列功能: ( 1 ) 任务控制功能 ( 2 ) 任务间同步通信功能 ( 3 ) 内存管理功能 ( 4 ) 异常中断控制功能 ( 5 ) 时间管理功能 ( 6 ) 子系统管理功能 t - k e r n e l 系统管理( t - k e r n e l s m ) 提供了下列功能: ( 1 ) 系统内存管理功能 ( 2 ) 地址空间管理功能 ( 3 ) 设备管理功能 ( 4 ) 中断管理功能 ( 5 ) i o 端口访问支持功能 ( 6 ) 电源管理函数功能 ( 7 ) 系统配置信息管理功能 t - k e r n e l 调试支持( t - k e n l e l d s ) 提供了下列功能: ( 1 ) 内核内部状态查询 ( 2 ) 执行跟踪 2 基本术语 ( 1 ) 任务t a s k 和调用任务i n v o k i n g t a s k 并行程序执行的基本逻辑单元称为“任务”。一个任务的程序是顺序执行的; 而不同任务的程序却是并行执行的。此处的并行是通过内核控制任务间的时间共享 来实现的。 1 2 第二章嵌入式操作系统t - k e r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工企业合同范本
- 介绍投标居间合同范本
- 工程承包定金合同范本
- 租插间合同范本
- 住宅租赁合同范本
- 教育加盟合作合同范本
- 医院保洁工作合同范本
- 农村邻里合同范本
- 车展租车合同范本
- 新车质保合同范本
- 五大神电力华煤炭公司劳动定员统一标准
- WB/T 1036-2006菱镁制品用玻璃纤维布
- 【词汇】高中英语新教材词汇总表(共七册)
- 北京市各县区乡镇行政村村庄村名明细
- 笔迹、指纹鉴定申请书
- 长沙市历年中考数学试卷,2014-2021年长沙中考数学近八年真题汇总(含答案解析)
- 【英语】人教版英语八年级英语下册阅读理解专题复习练习(含解析)
- 《植物生理学》课件第四章+植物的呼吸作用
- 2022年出差管理制度员工出差管理制度
- 工作责任心主题培训ppt课件(PPT 26页)
- 完整解读新版《英语》新课标2022年《义务教育英语课程标准(2022年版)》PPT课件
评论
0/150
提交评论