(计算机应用技术专业论文)移动终端应用运行环境的研究、设计与实现.pdf_第1页
(计算机应用技术专业论文)移动终端应用运行环境的研究、设计与实现.pdf_第2页
(计算机应用技术专业论文)移动终端应用运行环境的研究、设计与实现.pdf_第3页
(计算机应用技术专业论文)移动终端应用运行环境的研究、设计与实现.pdf_第4页
(计算机应用技术专业论文)移动终端应用运行环境的研究、设计与实现.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机应用技术专业论文)移动终端应用运行环境的研究、设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

移动终端应用运行环境的研究、设计与实现 摘要 为了支持在移动终端上越来越丰富的数据业务,移动终端上应用 运行环境也越来越复杂。但是不论应用运行环境有多复杂,它都可以 根据所支持的应用程序执行指令方式不同进行分类。_ 类可以称为 “直接的”应用运行环境,移动终端操作系统就是属于这一类。在这 类环境下,应用程序直接运行在操作系统之上,执行的指令是与具体 硬件环境相关的二进制码。另一类可以称为“抽象的”应用运行环境, 在这里,应用程序在运行时执行的是独立于具体硬件平台的抽象指 令,j a v a 虚拟机就属于这类应用运行环境,j a v a 应用程序在运行时 执行的是与具体平台无关的字节码指令。参照这一标准,笔者对各种 主流的移动终端应用运行环境进行了分类和深入的研究。 本文首先对作为“直接的”应用运行环境的移动终端操作系统展开 了讨论,这其中包括普通终端操作系统( n u c l e u sp l u s 、p s o s ) 和智 能终端操作系统( s y m b i a n 、p a l mo s 、h i n u x ) 。通过比较这些操作系 统在体系结构,功能特性和应用接口方面的差异和共性,提出了操作 系统抽象层的概念和设计。操作系统抽象层是对不同操作系统应用开 发接口的抽象,它向上对应用程序提供统一形式的抽象接口,向下调 用具体操作系统的a p i 来实现其抽象接口,实现了应用程序代码的一 次编写,多处编译的目标。 接下来是对抽象的移动终端应用运行环境的研究,这里以嵌入式 j a v a 虚拟机、b r e w ,w i p i 这三种“抽象的”应用运行环境进行比较研 究,从其应用开发接口,到其组织架构,再到其运行机制进行了深入 的剖析。最后,笔者根据对多种“抽象的”应用运行环境的理解,设 计并实现了一个基于寄存器的、精简指令的虚拟机系统,它可以作为 一个“抽象的”应用运行环境运行在多种移动终端操作系统之上。它 具备精简、小巧的特点,很适合于在资源受限的环境下运行。更重要 的是,它给出了一类“抽象的”应用运行环境的设计雏形,只要在 此基础进行增强,就可以最终开发出功能强大的、跨平台的应用运行 环境产品。 关键词移动终端操作系统抽象层虚拟机指令 r e s e a r c h d e s i g na n di m p l e m e n t a t i o no fa p p e x e c u t i n ge n v i r o n m 哐n t s0 fm o b i l et e r m n q a l s a b s t r a c t w i t ht h ed a t as e r v i c e o nm o b i l ei n t e r n e t d e v e l o p i n g t h e a p p l i c a t i o ne x e c u t i n ge n v i r o n m e n t so nm o b i l e t e r m i n a lb e c o m em o r e a n dm o r ec o m p l e x b u tn om a t t e rh o wc o m p l e xt h e ya r e ,w ec a l l c l a s s i f yt h e me a s i l yb yt h ew a y w h i c ha na p pr u n si t si n s t r u c t i o n s o n e o ft h ec l a s s e si sc a l l e d t h e ”d i r e c t ”e x c u t i n g e n v i r o n m e n t t h e o p e r a t i n gs y s t e m so nm o b i l et e r m i n a lc a r lb ec l a s s i f i e di n t ot h i s o n e t h ei n s t r u c t i o n so ft h ea p p sr u n n i n go no p e r a t i n gs y s t e m sc a nb e e x e c u t e dd i r e c t l yb yt h ec p uo ft h et e r m i n a l s ot h ei n s t r u c t i o n so f t h i sk i n dd e p e n do nt h eh a r d w a r ee n v i r o n m e n t s t h eo t h e rc l a s sc a nb e c a l l e dt h e ”a b s t r a c t ”e x c u t i n ge n v i r o n m e n t s t h ej a v av i r t u a lm a c h i n e i sag o o de x a m p l eo ft h i se n v i r o n m e n t s t h ee x c u t i n gc o d e so fj a v a a d d r l l nt h el n s t r u c t i o n si n d e p e n d e n tw i t ht h en a t i v eh a r d w a r e ,w h i c h a r en a m e db y t ec o d e s a tt h i s ,j a v av i r t u a lm a c h i n ep r o v i d e sa n a b s t r a c tl a y e rb e t w e e nt h ea p pa n dt h eo p e r a t i n gs y s t e m i nt h i st h e s i s , t h ea u t h o rm a k e sad e e ps t u d yo ft h ec u r r e n tp o p u l a re x e c u t i n g 一 - 一一 e n v i r o m n e n t s ,d e s i g n e da n dd e v d o p e d an e w e x e c u t i n ge n v i r o n m e n t s o f t w a r eo fm o b i l et e r m i n a l a tt h eb e g i n n i n go ft h er e s e a r c h ,t h e o p e r a t i n gs y s t e m s o fm o b i l et e r m i n a la r ed i s c u s s e d t h et h e s i s i n c l u d e st h ep l a i nt e m i n a ls y s t e m ss u c ha sn u c l e u sp l u sa n dp s o s , a n dt h es o c a l l e d i n t e l l i g e n t t e r m i n a l o p e r a t i n gs y s t e m s s u c ha s s y m b i a n ,w i n d o w sc e a n dl i n u x t h ea u t h e rs u m su pt h ed i f f e r e n c e s a n dt h ec o m m o n n e s s e so ft h e s es y s t e m si nf r a m e w o r ka n df u n c h o n c h a r a c t e r s a st h eh a r v e s to ft h i sr e s e a r c hw o r k ,ad e s i g no ft h e o p e r a t i n gs y s t e m a b s t r a c t l a y e r c o m e s0 u t ih eo p e r a t i n gs y s t e m a b s t r a c tl a y e ri sas o f t w a r el a y e rw h i c hs h i e l d st h ed i f f e r e n c e so f t h e o p e r a t i n gs y s t e m sb e l o w , a n ds u r p o r tt h eu p p e ra p pw i t h u n i v e r s a l a b s t r a c ti n t e r f a c e s s oi fa l la p pi sc o d e du p o n t h i sa b s t r a c tl a y e ro n e t i m e i tc a bb ec o m p i l e da n dr u ne v e r y w h e r ew i t h o u ta n yc h a n g e 4 i h e i m p o r t a n tp a r to f t h i st h e s i si sa b o u tt h es e c o n dc l a s so ft h ee x e c u t i n g e n v i r o n m e n t s t h ea b s t r a c te x e c u t i n ge n v i r o n m e n t 1 nt h i sp a r t ,t h e a u t h o rm a k e sr e s e a r c ho nd i f f e r e n t k i n d so fa p pm i d d l e w a r e so n 1 1 m o b i l et e r m i n a l s ,s u c ha sj a v av i r t u a lm a c h i n e ,b r e wa n dw i p i a t l a s t ,as o f t w a r eo fa b s t r a c te x e c u t i n ge n v i r o n m e n ti sg i v e nw h i c hi sa s i m p l i f i e d i n s t r u c t i o nv i r t u a l m a c h i n e a l t h o u g hi t c a nn o tp r o v i d e s u f f i c i e n tf u n c t i o n sa sj a v an o w , s t r o n ge x e c u t i n ge n v i r o n m e n to i l t h eb e l o wn a t i v ee n v i r o n m e n t s b u ti tg i v e sar u d i m e n t a lf r a m eo fa m o b i l et e r m i n a lw h t i c hc a ns h i e l d k e yw o r d s :m o b i l e t e r m i n a l ,o p e r a t i n gs y s t e m ,i n s t r u c t i o n , a b s t r a c tl a y e r , v i r t u a lm a c h i n e i i i 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导f 进行的研究工作 及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中 所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研 究成果,也不包含为获得北京邮电大学或其他教育机构的学位或 证书而使用过的材料。与我一同工作的同志对本研究所做的任何 贡献均己在论文中作了明确的说明并表示了谢意。 中请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名: 饵可 日期: 埘、3 、“ 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论 文的规定,即:研究生在校攻读学位期间论文工作的知识产权单 位属北京邮电大学。学校有权保留并向国家有关部门或机构送交 论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公 布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此 规定) 保密论文注释:本学位论文属于保密在年解密后适用本授 权书。非保密论文注释:本学位论文不属于保密范围,适用本授 权书。 本人签名:碑可 导师签名: 日期:2 f 、3 、影 日期: 些墨坚堡尘堂堡主塑堕茎整垫竺塑壁旦堡堑墅望堕堕窒:堡生量壅垫 第一章绪论 1 1 研究的背景和意义 所谓移动终端应用运行环境,就是保证移动终端上的应用程序得以运行的一 个执行环境,它提供了程序在执行时候所需要的一切资源。对p c 来说,应用运 行环境的角色由操作系统来扮演,目前占据主流位置的运行环境是w i n d o w s 、 l i n u x 等操作系统:而对移动终端来说,事情却不这样简单,目前主流的应用运 行环境即包括各种操作系统,如s y m b i a n 、w i n d o w s c e 、l i n u x 等,也包括各种 可运行在操作系统之上的中间环境,如j a v a 平台,b r e w ,w i p i 等。 移动终端上应用运行环境之所以这样复杂原因如下: 其一是业务发展的需要。众所周知,计算机产生的原因是为了实现复杂的计 算,而移动终端开始只是为了完成单一的通话功能,从这点来说,移动终端天生 并不是用柬支持复杂计算的。但是后来随着芯片主频和集成度的不断提高,市场 需求的不断增长,移动终端所支持的数据业务越来越丰富,除了语音通讯外,它 还必须支持数据库、互联网络、数字娱乐、图形图像、音频视频等多种多样的复 杂应用,这样,支持这些业务的应用运行环境也越来越复杂。从这点来说,应用 运行环境是随着业务的发展而逐渐复杂化,多样化的。 另一个原因是市场的多元化。在移动终端领域,多个主流设备制造商“势均 力敌”,并不像在p c 领域那样由i n t e l w i n d o w s “统天下”,这也导致了移动终 端应用运行环境的多样性。目前的应用运行环境包括了多种操作系统,应用中间 件,嵌入式实时系统等,不同的终端设备制造商会根据自己终端的特点选择不同 的应用运行环境,或者干脆使用多种技术方案的结合。 应用运行环境的多样性必然会成为移动终端数据业务发展的障碍。对应用开 发者来说,实现同样功能的应用程序若想运行在不同的运行环境下,不得不针对 每种环境重写代码;对运营商来说,对于相同的业务,必须针对多种应用环境提 供不同支持;而对于终端用户来说,如果自己所使用的终端应用运行环境与想下 载的应用类型不匹配,就只能放弃下载。由此可见移动终端应用运行环境的多元 性萨是终端设备制造商,移动运营商所面临的重要问题。 笔者在攻读硕士期问参与了多项移动终端软件丌发项目,对主流的移动终端 应用运行环境进行了研究。通过比较不同环境之间的共性和差异,得出了使用指 令执行方式的不同来对应用运行环境进行分类的有效方法,进而使用这种方法将 复杂多样的应用运行环境分为两类,对各类中典型的应用运行环境进行深入剖 析。通过长期的研究和实践,笔者总结出两种非常有效的应用跨平台的解决方案, 在文章中分别给出了这两种方案的设计思想,最后设计并实现了一个支持应用跨 平台的应用环境软件。 笔者工作的意义在于: 1 、得出一种行之有效的分类方法,通过这个方法将目前主流的多种移动 垫京邮电大学硕士学位论文移动终端应用运行环境的研究、设计与实现 应用运行环境进行分类研究,总结了它们的共性和差异: 总结出解决应用跨平台问题的两种基本设计思想,即操作系统抽象层 和虚拟机,并给出设计框架: 设计并实现了一个应用运行环境软件m y v m ,它具备指令精简、小巧 的优点,很适于在资源受限的设备上实现应用程序“次编写,多处 运行”的目标。它日前虽然不具备复杂的功能,但却给出了个功能 强大、高效的应用运行环境的技术雏形。 1 2 移动终端应用运行环境综述 12 1 概述 目前的移动终端可分为三类: 一是以语爵为主的手机也即低端手机,芯片组都是围绕一个单一的基带处理 器搭建的,该处理器执行电信和其它应用任务,且集成度会进步提高,比如 t l 已宣布推出单芯片的手机方案。 另一个是增值业务手机,也叫多功能手机( f e a t u r ep h o n e ) ,是目前需求量最 大的手机。这些系统是围绕一个功能强大的基带搭建起来的,这个基带有一个与 之配套的应用协处理器。基带承担m m s 和相关应用等主要功能,协处理器则执 行视频处理等需要人量运算的功能。未来的发展趋势是,当协处理器支持的功能 变得普及并成为标准配置后,这个协处理器将会集成到基带中。这类手机没有高 度复杂的操作系统。目前这类手机的功能差别很大,实现方案也很不一样。” 可将前两类归结为普通终端,对应于以下介绍的智能终端。 第三类是智能手机,即高端手机,曾被定义为“拥有操作系统并支持第三方 应用的手机”。这类手机中应用处理器成为系统的主机,而g s m g p r s 等通信 m o d e m 则成为实现连接功能的外设之一,此外还有其它通信舛设比如w l a n , 蓝牙,u s b 等。智能手机通常要采用复杂的嵌入式操作系统如p o c k e tp c 、 s m a r t p h o n e 、s y m b i a n 以及l i n u x 等,这是“移动办公”的典型理想工具。并且, 智能手机多备有较大显示屏( 2 2 8 英寸) ,具有文字处理方面的功能。 下面将分别介绍这几种终端的体系结构。 1 22移动终端硬件结构 12 21普通终端结构单处理器双内核架构 普通终端的业务主要为话音,其硬件结构主要由射频模块( r f ) 和基带处理 模块两部分组成,其中基带部分又分为模拟基带( a b b ) 和数字基带( d b b ) 两部 分。劓频模块( r f ) 主要负责射频信号的滤波、放大、调制解调等功能。这种 终端的硬件结构框图如图1 1 所示。 a b b 部分主要完成诸如模拟话音数字化、数字话音模拟化,以及将数字控 制信号转变为模拟控制信号( 如功率放大器的控制电压形成) 等等工作。 j ! 塞塑皇查堂堡主堂位论亳移动终端应用运行环境的研究、设计与实现 d b b 部分包括数字信号处理器( d s p ) 、微控制器( m c u ) 、存储器( m e m ) 和硬件逻辑( l o g i c ) 等。其中m c u 一般采用a r m 7 处理器,负责完成应用层 ( 如人机界面m m i ) 、网络层和数据链路层的处理,控制移动终端的外围电路( 键 盘、显示屏等) 连接,以及整个通信协议栈的实现,倾向于系统控制;d s p 数据 运算功能强大,主要用于完成物理层、数据链路层的处理,负责话音信号的处理 ( 编解码) ,倾向于数字基带信号的处理;m e m 包括r o m 和r a m ,存储器的 大小对终端性能影响很大;l o g i c 部分主要指外围的一些电路,包括键盘控制电 路、显示电路、各种外部接口电路等等。 这种基带芯片上集成a r m 7 + d s p 的结构最早是由t i 提出的,称为双内核 结构,可以避免传统的单内核设计功耗太大的缺点,对于一些运算量大的实时处 理,例如图象、视频、音频数据,可以采用d s p 进行,实现低功耗:对于通信、 外设控制等功能,则使用m c u 实现,从而在功耗和应用的复杂度之间建立了良 好的平衡,整体的构架可以保证低功耗。 a u d i ot e s td e b u gd a t a 图1 1 普通终端硬件结构一一数字基带双内核架构 1 2 22智能终端结构一双处理器架构 从最初的第代模拟手机到第二代的g s m 数字手机,再到目前的g p r s 和 c d m a 手机,整个过程仅仅用了2 0 年的时间。近两年来,单纯具有通话功能的 手机已逐渐退出主流市场,取而代之的则是具有彩屏、m p 3 、摄像头、多媒体短 信等功能的智能手机。实现这些功能,不仅需要嵌入式操作系统和丰富软件的支 持,而且需要强大的处理器和特殊的硬件系统结构的支撑。整个手机的硬件组成 部分中,已往基带部分的重要地位被应用处理模块所代替,并趋于采用双c p u 的架构。 这种架构中双c p u 形成移动智能终端中的两个子系统:通信子系统和应用 子系统,如图1 2 所示。其中通信子系统适应各种无线接口协议标准,选择适当 的移动通信网络,建立和维持网络连接,实现话音和数据通信;应用子系统负责 管理存储器、外围设备、外部接口等系统资源,运行应用程序,提供用户界面, 此外还包括终端的电源管理。应用子系统通过a t 指令与通信子系统进行控制和 交互。 北京邮电大学硕士学位论文移动终端应用运行环境的研究、设计与实现 a n t e n n a i 应刚处 基带处 理器 习 r ft r x 理器 外同电 f p a 路 l f ;j 卜一 l1 图卜2 智能终端硬件结构一双处理器架构 通信孑系统处理器即c c p u ,它保留了普通手机中的数字基带部分,即 m c u + d s p 的结构。m c u 实现高层协议,d s p 完成基带功能。 应用处理系统器a c p u 采用了可执行应用软件的嵌入式操作系统,并加载 多种协议以提供各种业务,如视频业务使用的m p e g 一4 ,音频业务使用的m p 3 , l p 电话使用的v o i p ,以及j p e g 2 0 0 0 等。丰富功能的实现离不开先进的应用处 理器,目前的主流应用处理器时脉超过2 0 0 m i t z ,通常都整合了a r m 核心、视讯 加速器、各种接口控制器、内存以及显示驱动等电路。 通过对比可以看出,智能手机和普通手机的不同点在于智能手机在基带部分 添加了一颗应用处理器( a p p l i c a t i o np r o c e s s o r ) ,同时将原先受基带处理器控制 的液晶显示器、键盘、s i m 卡等外挂到应用处理器上。不仅如此,应用处理器还 可以增添蕊爿:、红外、摄像头、u s b 和s d m m c c f 卡等众多接口。在这种硬 件体系结构卜,基带处理器只处理话音信号,而其他的功能则全部交给应用处理 器。 智能手机的概念不仅仅是手机+ p d a 那样简单,目前的智能手机方案已经能实 现很多通常在桌面计算机中才涉及的性能和功能,包括高传真立体声效、3 d 图 形效果、d v d 效果的视讯播放以及具有丰富体验的多媒体游戏等。目前的主流智 能手机定位在“手机+ 个人娱乐中心+ 个人信息中心”。 实现这些丰富功能的核心组件是具有强大处理能力和高度整合的应用处理 器。1 0 0 0 m i p s 以上的处理能力是必要的。同时,应用业务处理系统的c p u 需要 专门的高性能操作系统,该操作系统必须同时适应实时业务和非实时业务的要 求。 目前的主流应用处理器大多数采用了a r m 系列处理器核心,但都根据自有 技术进行了最佳化和整合,并推出独特的处理器架构,如i n t e l 的x s c a l e 和t i 的o m a p 2 ,丌发商基于相同处理器架构能很容易地实现产品换代开发,能很方 便地应用原有的开发成果。方案供货商在推出应用处理器的同时还提供完整的参 考设计和设计平台,如t i 的t c s 和f r e e s c a l e ( 其前身是m o t o r o l a 半导体部) 的 i n n o v a t i v ec o n v e r g e n c e 系列平台。此外,为加速开发商产品开发并提高其方案的 竞争力,每个方桑都有大量的第三方厂商提供完善的技术支持,可阻提供从硬件 系统设计到软件整合的完整方案。 1 ,2 3移动终端软件结构 由于移动终端数据处理能力的增强,对整个系统的软硬件资源要求不断提 4 三! 里塑皇查堂堡主堂壁堡塞 垫垫竺塑堕旦至堑! 堑塑婴塞:墼盐兰塞婴 高,系统资源越来越丰富,移动终端己不再是传统意义上的移动电话,除了简单 的话音通信功能外,它还具备数据通信和数据计算功能。如此强大而复杂的硬件 资源势必需要管理,因此单独的移动终端操作系统也就应运而生,它主要完成诸 如进程、内存、外部设备等系统资源的调度和管理,并为上层应用软件平台提供 服务,在操作系统之上可以执行各种各样的应用程序。另外,在操作系统之上, 还可以有处于中间件位置的应用运行环境,如j a v a b r e w 等,它们的出现解决 了应用的跨平台问题,支持更加复杂的上层业务应用。 移动终端的软件体系结构可简单的由下图表示: r 一 f竺! ! 震i j硬件设备i 圉1 2 移动终端逻辑体系结构简图 1 24应用运行环境分类 在移动终端的体系结构图中,可以看出目前移动终端应用运行环境是多种多 样的,但是无论应用运行环境如何复杂,它都可以按照所支持应用程序执行指令 的方式刁i 同,被归纳为如下的两种情况: 1 一种情况是,运行环境支持的应用程序是以处理器本身的机器码为指令。 这种情况f ,处理器和操作系统就荚同构成了应用运行环境,处理器提 供了一种执行指令的机制,c p u 把编码为数值形式的指令从内存中取出, 并根据指令完成相应的动作,操作系统则实现了这个运行环境的策略部 分,决定了一个任务何时、何地以及如何发生。这种应用运行环境可以 称为“直接的”应用运行环境。如图中的操作系统。 2 另一种情况是,应用程序执行的不是由物理处理器提供的指令。这种情 况下,需要一个完全由软件提供的运行环境来执行程序的指令。它是一 个计算机的一个软件程序,它会像真正的处理器那样取出并执行程序指 令。但与“直接的”应用运行环境的区别在于指令执行过程发生在软件 级而不是硬件级,它最终还是要通过下层软件环境与真实的硬件交互。 因此,这种运行环境可以称为“抽象的”应用运行环境,它运行在基本 运行环境之上,并对上层应用提供抽象的统一的接口。如图中的 j a v a b r e w w i p l 等。 本将按照上述分类,分别对移动终端的应用运行环境进行研究总结。上述第 二种情况,即“抽象的”应用运行环境为本文研究的重点a j ! 塞塑皇查堂堡主堂位论j 生移动终端应用运行环境的研究、设计与实现 1 3 论文期间所做的工作 存攻读钡 :期蚓,笔者在实验室课题组中完成了一些与移动终端应用运行环 境相关的项目,本文是笔者在攻读硕士期间所完成主要研究工作的总结。 相关的i 贞目包括: 2 0 0 4 0 6 2 0 0 4 1 0 基于中国移动网络游戏平台的j a v a 手机游戏 我的工作:完成三款手机游戏的设计和开发。 2 0 0 4 0 5 - 2 0 0 4 0 9通用无线应用开发平台的研究 我的工作 :完成对嵌入式应用抽象运行、丌发环境的研究工作。 2 0 0 4 11 2 0 0 4 0 4j a v a 虚拟机移植研究 我的t 作 : 完成j a v a 虚拟机运行机制、移植优化解决方案的研究。 2 0 0 3 0 4 2 0 0 4 1 0 基于w i p i ( 无线应用互操作平台) 的电子商务软件 我的工作 :参与完成基于w i p t ( w i r e l e s s h l t e m e tp l a t f o r mf o r i n t e r o p e r a b i l i t y ) a p i 的应用程序开发和研究。 1 4 论文的组织 论文共l 章,分为如卜十三部分内容: 第部分:绪论。 第一章:对论文的研究背景和研究意义进行介绍,对移动终端应用运行 耶境进行了概括和分类,同时介绍了笔者在攻读硕士期间所做的工作。 第二部分:对“直接的”移动终端应用运行环境进行研究。 第一章:对目前主流的移动终端操作系统进行了比较研究;通过实际的 项目介绍了一种对操作系统进行抽象的技术:操作系统抽象层。 第i 部分:对“抽象的”移动终端应用运行环境进行研究,并给出了一种应用运 行环境m y v m 的设计和实现。这部分是全文的重点,包含三章。 第三章:以嵌入式j a v a 虚拟机、b r e w 、w i p i 为主要对象,对“抽象的” 移动终端应用运行环境的抽象机制进行比较研究。 第四章:虚拟机的设计与实现:对解决应用跨平台的技术思想进行总结, 分析未来的趋势,设计并实现了一个精简指令的应用运行环境软件,这 也是这部分的重点。 第五章:对全文进行总结,并提出了下一步的改进工作计划。 些盈型型型塑塑型苎塑塑垒! - 一 鳌垫竺堂壅旦壅堡堡垫塑堑壅:丝盐量塞堡 第二章 “直接的”应用运行环境移动终端操作系统 研究 2 1 概述 在计算机体系结构中,应用程序并不直接和硬件打交道,而是通过操作系统 来完成对硬件设备的各种调用,操作系统为应用提供了基本的运行环境。移动终 端沿用了这一基本的体系结构,直接运行在移动终端操作系统上的应用程序都具 备一个共同特点,即它们所执行的指令都是底层具体硬件所能够识别的,为了研 究方便,笔者将操作系统称为“直接的”应用运行环境。 本章将研究目前主流的移动终端操作系统,包括主流的普通终端实时系统和 智能终端操作系统,研究其内部运作机制,论证它们的主要特点,比较不同操作 系统之i 可的区别。最后,通过实际的项目,介绍了种对操作系统进行抽象的技 术操作系统抽象层。 2 2 普通终端操作系统比较 目前市场上主流的普通终端操作系统主要有n u c l e u sp l u s 、p s o s y s t e m 两 种,以下是对这两种操作系统在体系架构、功能特性及开发环境等方面韵分析与 比较。 2 2 1n u c i e u sp l u s 2 2 1 1 概述 n u c l e u sp l u s 是由a c c e l e r a t e d t e c h n o l o g y i n c ( a t i ) 公司推出的、专为实 时嵌入式应用设计的一个抢先式多任务操作系统内核,其9 5 的代码是用 a n s i c 写成的,因此非常便于移植并能够支持大多数类型的处理器。从实现角 度来看,n u c l e u sp l u s 是一组c 函数库。应用程序代码与核心函数库连接在一 起,生成一个目标代码,下载到目标板的r a m 中或直接烧录到目标板的r o m 中执行。在典型的目标环境中,n u c l e u s p l u s 核心代码区一般不超过2 0 k 字节 大小。 2 2 ,1 2n u c i e u sp l u s 的体系结构 n u c t e u sp l u s 操作系统主要由内核、文件系统、网络支持、图形框架以及 j a v a 兼容运行环境等功能模块组成。其体系结构如图所示: 北京邮电大学硕士学位论文移动终端应用运行环境的研究、设计与实现 1 q 面q 画d 匝) q 画) 亘d 面d ( i 巫_ ) 正) ( 回( 圃) ( :圃 兰圆 q 回画3 匦) 匝) c 巫d ( 回匦d 叵二) ( j a v a 兼容运行环境 ) 申申甲 r 内核 、) l 嵌入式目标平台 , 图21n u c l e u s p l u s 操作系统的体系结构 22 1 3n u c l e u sp i u s 的功能特性 内核 n u c l e u s 实时多任务内核是n u c l e u s 的核心技术,也是所有n u c l e u s 产品的基 础平台。它除了完成普通内核功能,如:任务管理、任务调度、任务问通信、定 时器及中断等 文件系统 n u c l e u s 文件系统允许用户在任何嵌入式存储设备上存储及恢复数据。它执 行火多数桌面操作系统所使用的标准f a t l 6 和f a t 3 2 磁盘格式。它支持长文件 名以及大容量的磁盘。为了在多任务系统中应用,n u c l e u s 文件系统得到了相应 的优化,著且提供了更加的实时特性。 图形框架 n u c l e u sg r a f i x 是a t i 公司开发的、用于创建用户界面的软件产品,它是 专门为嵌入式系统而设计的。n u c l e u sg r a f l x 支持像窗口、按纽、字体以及其 它的允许用户创建桌面风格的专业界面的控制功能。n u c l e u sg r a f i x 还可自由 地放缩以适应用户定制嵌入式系统界面的不同需求。 垫京邮电大学硕士学位论文移动终端应用运行环境的研究、设计与实现 网络支持 n u c l e u s p l u s 的网络支持功能主要体现在支持t c p i p 协议栈、网络管理以及 支持与i n t e r n e t 网络连接 2 2 2 i概述 p s o s y s t e m ( 简称p s o s ) 是集成系统有限公司( i n t e g r a t e ds y s t e m s ) 研发的产 品,它是一个由标准组件组成的、可扩展可裁减的嵌入式实时操作系统,包含单 处理器支持模块( p s o s + ) ,多处理器支持模块( p s o s + m ) ,文件管理器模块 ( p h i l e ) ,t c p i p 通讯包( p n a ) ,图形界面,j a v a ,h r r p 等。p s o s y s t e m 功能模 块完全独立,开发者可根据应用要求扩展系统功能和存储容量。 p s o s y s t e m 的主要缺点在于其上下文切换时间长,实时性不强,采用的集成 开发环境s n i f f p l u s 与产品兼容性不好,部分关键功能无法使用。 2 222o s o s 操作系统的体系结构 p s o s 操作系统主要由单处理器支持模块( p s o s + ) 、多处理器支持模块 ( p s o s + m ) 、文件管理器模块( p h i l e + ) 、t c p 1 p 通讯包( p n a + ) 、库管理器( p l m + ) 等功能模块组成。p s o s 操作系统是以p s o s + 多任务内核为核心,其它模块化的 软件组件及函数库均为标准的构造块,能够按照需要插入到内核之中。其体系结 构如图所示: ( ! ! ! :堡呈 ) 甲 p 甲 回舌高吾固固固 图2 - 2p s o s 操作系统的体系结构 2 2 23p s o s 操作系统的功能特性 p s o s + 实时内核 p s o s y s t e m 操作系统内核p s o s + n n 稳, g 、可靠以及体积小等特点。p s o s + 负责任务的管理与调度、任务问通信、内存管理、实时时钟管理、中断服务;可 北京邮电大学硕士学位论文移动终端应用运行环境的研究、设计与实现 以动念生成或删除任务、内存区、消息队列、信号灯等系统对象:实现了基于优 先级的、选择可抢占的任务调度算法,提供了可选的时间片轮转调度,并且采用 互斥法防止优先级倒转。p s o sk e r n e l 还提供了任务建问通信机制及同步、互斥 手段,如消息、信号灯、事件、异步信号等。p s o s 操作系统在k e r n e l 层中将与 具体硬件有关的操作放在一个模块中,对系统服务层以上屏蔽了具体的硬件特 性,从而使得p s o s 很方便地从支持i m e l8 0 x 8 6 系列转到支持m c 6 8 x x x 系列, 并且在系统服务层上对不同应用系统不同用户提供标准的软件组件如p n a + 、 p h i l e + 等。 p h i l e + 文件系统管理器 p h i l e + 提供了文件系统管理和对块存储设备的管理。用户可以通过它有效 地访问各种不同的存储设备,包括本地盘和网络盘。文侔系统支持包括c d r o m 设备、m s d o s 兼容的文件系统,和p s o s y s t e m 特有的快速文件系统。 p n a + t c p i p 协议栈 在网络支持方面,p s o s 除了支持t c p p 协议栈外,还支持一些其它的通信 m 议,如:l a n 、w a n 、p p p 、s l i p 、h d l c 、n a t ( 网络地址转换1 、f t p 、t f t p 、 r a r p 、d h c p 、s n m p 等。 p r p c + j 丞程调用库 d r p c + 软件模块支持o n c s u n 远程过程调用( r p c ) 以及外部数据表示 ( x d r ) 规范,它允许开发人员使用c 过程调用范例刨建分布式应用程序。p r p c + 可以被用来与p s o s y s t e m 文件管理器p h i l e + 进行连接以支持n f s 客户端及服 务器端协议。 p r e p c + 标准c ,c + + 库 p r e p c + 是一个完全可重入的标准c 函数库,它包括了超过1 0 0 个通常使用 的c 函数库。p r e p c + 还是一个标准的c 抖类库,p s o s y s t e m 通过此c + 十类库实 现了与基于c + + 的应用程序的无缝集成。完全可重入i o s t r e a m s 函数库为 p s o s y s t e m 提供了额外的c + + 支持。i o s t r e a m s 函数库可与p s o s + 及c + + 类库紧 密的集成在起,从而支持所有的文件以及标准数据流i o 。 任务 p s o s 系统中任务包括系统任务和用户任务两类。关于用户任务的划分并没 有一个固定的法则,划分太多将导致任务间的切换过于频繁,系统开销太大,划 分太少义会导致实时性和并行性下降,从而影响系统的效率。一般说来,功能模 块a 与功能模块b 是分开为两个任务还是合为一个任务可以从是否具有时间相 关性、优先性、逻辑特性和功能耦合等几个方面考虑。 2 3 智能终端操作系统比较 目前,市场上t 流的智能终端操作系统有s y m b i a n 、w i n d o w s c e 、p a l m o s 、 l i n u x 四种,以下是对这四种操作系统在体系架构、功能特性方面的分析与比较a 北京邮电大学硕士学位论文移动终端应用运行环境的研究、设计与实现 2 3 1 1概述 s y m b i a n 是个由诺基亚、摩托罗拉、爱立信、三菱和p s i o n 共同投资成立 的合资企业。该公司成立的目的是为了设计开发一种能够应用于移动终端及类似 的移动通讯终端产品之上的、具有强大支持能力和开放性的操作系统,并通过这 个系统的应用,推动高端智能移动电话及类似的终端产品尽快的进入大众消费领 域。s y m b i a n 操作系统就是为达成以上目的、由这个合资企业拥有并开发的产品, 此操作系统对移动通讯终端产品进行了最优化设计。 23 1 2 s y m b i a n0 s 的体系结构 s y m b i a n 操作系统包括多任务内核,通信的中介,数据管理和图形,g u i 框 架的低层,应用程序引擎。s y m b i a n 支持在同一核心操作系统上进行灵活的u i 设计。 s y m b i a n 平台是一个开放的平台,各个部分都提供了大量的a p i 供第三方用 户进行玎发。内核部分通过用户库提供接口、系统服务器通过客户接口提供a p 、 各种中问件也提供了大量的接口。其主要组成部分如图所示: 图2 - 3s y m b i a n 操作系统的体系结构 2 3 1 3s y 抽i a no s 的功能特性 基础模块 基础模块为s y m b i a n 操作系统的其它组件提供了程序设计框架,它提供了一 个抽象的概念以利于实现跨平台、跨资源的设计,从而使其向新型硬件平台移植 j ! 塞塑皇查堂堡主堂位论亳移动终端应用运行环境的研究、设计与实现 的工作变得更加容易。基础模块确保了s y m b i a n 操作系统的健壮性、运行性能及 有效的电源管理,而这一切对于移动电话来讲都是必需的。基础模块中用户可见 的部分主要包括用户库和文件服务器。 设备驱动程序:基础模块可为常用硬件设备提供驱动程序。 内核和用户库:内核运行于特权模式,拥有设备驱动,执行调度策略和电源 管理,为自己分配内存和用户模式进程( 无特权) 。它在a r m 上运行。内核为 实现用户侧服务器功能( 例如:网络、电话技术协议栈和文件系统) 而执行消息 传递框架。用户库是最低级别的用户模式代码,它为用户模式代码提供库函数, 并控制内核的接入。 文件服务器:文件服务器提供了文件系统的共享接入,能够隐藏客户端服务 器体系结构的客户端接口,以及动态挂载文件系统插件。r o m 文件系统被构建 于文件服务器内。 通信支持 电话技术:电话技术子系统为客户提供了多模a p i 。那些抽象的蜂窝网络包 括g s m 、g p r s 、e d g e 、c d m a ( i s 9 5 ) 及3 g p p 2 c d m a 2 0 0 0l x ,并且已为3 g p p w c d m a 做好了准备,这使得手机制造商在不同的移动电话标准问移植s y m b i a n 操作系统变得更加容易。多模电话抽象技术是s y r n b i a n 操作系统与其它操作系统 兼容从而提供先进的数据服务的关键所在。 通信基础设施:通信基础设施子系统为通信和网络提供了关键的框架和系统 服务。包括:通信数据库管理器、套接字服务器与客户端a p i 、网络接口管理器、 串行通信服务器、h t t p 及w a p 协议栈。 个人区域网络连接:个人区域网络连接可以通过蓝牙、串口、u s b 、红外 ( i r d a ) 及以太网设备的支持而得以实现。 多媒体支持 多媒体框架:多媒体框架( m m f ) 为多媒体数据处理提供了一种

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论