




已阅读5页,还剩62页未读, 继续免费阅读
(机械制造及其自动化专业论文)基于j2me的地理信息数据采集系统研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着信息化技术的不断发展,手机及其它移动无线设备的网络互联正在改变着人类的生活和 工作方式。目前大部的手机系统是个封闭的系统,然而j 2 m e 技术在j a v a 手机上的应用使手机 系统逐渐成为一个开放的系统,用户可以根据需要来定制自己的系统。 论文研究了一种基于j 2 m e 的地理信息数据采集系统,分模块实现了整个系统。本系统由两 部分组成:手机客户端与服务器端手机客户端完成各种信息数据的采集及无线传输,服务端响 应手机客户端完成相应数据的接收及存储功能。 首先论文详细阐述了开发移动应用软件的基础理论一j 2 她的主要功能和体系结构,重点在 j a v a 语言的特点及与j 2 m e 相关的基本概念:c l d c 配置( c o n n e c t e dl i m i t e dd e v i c ec o n f i g u r a t i o n ) 和m i d p 简表( m o b i l el n f o r m a t i o d e v i c e sp f o f i l e ) 等规范的描述,并对j 2 9 e 与b r e w 、w a p 做了 比较说明。 其次,根据论文的主要任务和内容,给出了系统总体构成及解决方案、系统流程,探讨了系 统实现需要的关键技术以及需要解决的问题。 最后,根据系统总体构成及解决方案进行了移动客户端m 1 d p 的设计。手机客户端是数据采 集的前端设备。完成数据的采集、解析、存储及无线发送等。论文使用了多项技术实现了手机客 户端,如:j 2 m e 高级界面a p i 、j 2 m e 低级界面a p i 、r m s 、j r s 8 2 、j s r 1 3 5 和j 2 m e 通用联 网框架g c f 等。服务器完成数据的接收存储,使用s e r v l e t 、j d b c - o d b c 桥等技术,构建了个 数据库完成数据的存储功能。 论文基于j 2 m e 的手机软件这- - o j 新思路与地理信息数据采集相结合,让最新的j 2 m e 技术 在科学研究及人们的日常生活中充分发挥作用。 关键字:j 2 m e ,j a v a 手机,手机客户端,j s r 8 2 ,j s r 1 3 5 a b s t r a 【c t w i t ht h ed e v e l o p m e n to fi n f o r m a t i o ns o c i e t y , i ti sc h a n g i n gp e o p l e sm e t h o do fl i v ea n dw o r kt h a t m o b i l et e l e p h o n e sa n do t h e rm o b i l ew i r e l e s sd e v i c e sb el i n k e dw i t ht h ei n t e m e t h o w e v e r , a tp r e s e n t t h e r ea r em a n yd i s a d v a n t a g e si nt h es o f t w a r eo fc o n v e n t i o n a lm o b i l et e l e p h o n ew h i c hi so f t e na l l o b t u r a t i o ns y s t e m o nt h eo t h e rh a n d j 2 m et e c h n o l o g yi su s e di nj a v a - e n a b l em o b i l e , w h i c hm a k e s m o b i l ew i r e l e s ss y s t e mb ea no p e ns y s t e mb ya n db y , s ou s e rc a l lc u s t o m i z eh i so w ns y s t e ma c c o r d i n g t o n h i s n e e d s b a s e do nt h ej 2 m et e c h n o l o g y , t h i sp a p e rs t u d i e st h eg e o g r a p h i ci n f o r m a t i o nc o l l e c t i o ns y s t e m a n dr e a l i z e st h ew h o l es y s t e mi nd i f f e r e n tm o d e s t l l i ss y s t e mm a d eo ft w op a r t st h a ta r em o b i l e - c l i e n t a n ds c l v e r m o b i l e - c l i e n tc o l l e c t ss e v e r a lo fi n f o r m a t i o na n ds e n d st ot h es e r v e r , o nt h eo t h e rh a n dt h e s e r v e rr e s p o n s e st ot h em o b i l e - c l i a n tt or e c e i v ea n ds a v ed a t a f i r s f l y t h ef u n d a m e n t a lt h e o r yo fd e v e l o p i n gm o b i l es o f t w a r ei si n t r o d u c e di nt h i sp a p e r , i n c l u d i n g t h ef u n c t i o na n da r c h i t e c t u r eo fj 2 m ea n dt h ef e a t u r eo fj a v aa n dt h ec o n c e p t i o no fr e l a t e dj 2 m e i n c l u d i n gc l d cc o n f i g u r a t i o n ( c o n n e c t e dl i m i t e dd e v i c ec o n f i g u r a t i o n ) a n dm i d p ( m o b i l e i n f o r m a t i o nd e v i c e sp r o f i l e ) a n ds oo n t h e r ea r ec o m p a r e so fb e t w e e nj 2 m ea n db r e wa n db e t w e e n j 2 m ea n dw a p s e c o n d l y , b a s e do nt h et a s ka n dc o n t e n to f t h ep a p e r , i tg i v e st h ew h o l ea r c h i t e c t u r ea n dt h eg e n e r a l b l u ep r i n ta n dt h es y s t e mf l o w , p r o c e s so fd e s i g n i n ga n di m p l e m e n t i n g ,t h ek e yt e c h n o l o g i e si th a su s e d , t h ef u n c t i o n a lo f m o b i l e l i e n ta n ds e r v e rw e l x :i n t r o d u c e di nd e t a i l : l a s t l y , t h em i d pc l i e n to ft h es y s t e mi sd e s i g n e db a s e do na r c h i t e c t u r ea n dt h eg e n e r mb l u ep r i n t m o b i l e c l i e n ti st h ee x c l u s i v ed e v i c ef o rt h ed a t ac o l i e e t i o ns y s t e m n ef u n c f i o n so fm o b i l e c l i e n ta r e c o l l e c t i n gd a t a ,p a r s i n gd a t a ,s a v i n gd a t a ,s e n d i n gd a t at os e r v e ra n ds oo n i tu s e dm a n yt e c h n o l o g i e st o r e a l i z e dt h em o b i l e - c l i e n t ,s u c ha sa d v a n c e dg u ia p i j 2 m e ,l o wg u ia p io fj 2 m e ,r m s ( r e c o r d m a n a g e rs y s t e i n ) j r s 8 2 , j s r 一1 3 5a n dn e t w o r kc h a r a c t e r i s t i co f j 2 m e ( g e n e t i cc o n n e c t i o nf r a m e w o r k ) t h es e r v e rg i v e sr e c e i v i n gd a t aa n ds a v i n g , w h i c hu s e dt h et e c h n o l o g i e so fs e r v l e ta n dj d b c - o d b c a n di tc r e a t e dt h ed a t a b a s et os a v ed a t ar e c e i v e d t h ep a p e ru n i t e st h ei n n o v a t i v ei d e ao ft h es o f t w a r eo fm o b i l e - c l i e n tt e l e p h o n eb a s e do nj 2 m e a n d g e o g r a p h i ci n f o r m a t i o nc o l l e c t i o n ,a n dm a k e st h i st e c h n o l o g yo f j 2 m ec o n t r i b u t et os c i e n t i f i cs t u d ya n d n o r m a li i v e k e yw o r d s :j 2 m e ,j a v a e n a b l e dm o b i l e ,m o b i l e - c l i e n t ,j s r 8 2 , j s r 1 3 5 独创i 生声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成 果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发 表或撰写过的研究成果,也不包含为获得中国农业大学或其它教育机构的学位或证书 而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示了谢意。 研究生签名 陟爱窜 j 时问:一辞臼罗日 关于论文使用授权的说明 本人完全了解中国农业大学有关保留、使用学位论文的规定,即:学校有权保留 送交论文的复印件和磁盘,允许论文被查阅和借阅,可以采用影印、缩印或扫描等复 制手段保存、汇编学位论文。同意中国农业大学可以用不同方式在不同媒体上发表、 传播学位论文的全部或部分内容。 ( 保密的学位论文在解密后应遵守此协议) 研究生签名: 导师签名: 涉吏牟 j 便锣缉 时间:少州石年6 月罗日 ; 督怄l 知一6 每乒7 日 中国农业大学硕上学位论文 第一章绪论 第一章绪论 1 1 课题研究背景 1 1 1 手机数据服务 手机数据服务是移动数据服务中的项重要内容。移动数据服务为移动计算机与数据通信设 备业务扩展了新的市场为信息技术的开发提供了快捷有效的手段。随着无线数据技术和互联网 技术的发展,移动通信与互联网应用的结合为移动数据业务带来了广阔的市场。而3 g 和超3 g 通信系统将为移动通信数据业务带来更多更好的服务。移动数据服务技术,其中包括w a p 、g r p s 和3 g 以及移动l p 以及日本已经推广并获得成功的i - m o d e 模式【1 】。其中g p r s 是通用分组无线 业务( g e n e r a lp a c k e tr a d i os e r v i c e ) 的英文简称,是在现有g s m 系统上发展出来的种新的承 载业务,目的是为g s m 用户提供分组形式的数据业务。g p r s 是介于第二代和第三代之间的一 种技术,通常称为2 5 g ,因为它是一个混合体采用t d m a 方式传输语音,采用分组的方式传 输数据。与此同时,移动互联网是具有将“移动通信”和“互联网”融合的能力,引发了“设备 制造商”“电信运营商”“软件开发商”“信息提供商”的极大关注。中国移动通信集团公司已经 开始组建“中国移动互联网”,它以宽带i p 技术为核心可以同时提供话音、图像、数据、多媒 体,高质量地提供移动通信网络吲。提供更加全方位的数据业务服务。 1 1 2 移动地地理信息系统 传统的野外数据的采集和编辑一直是耗时并且容易出错的工作。野外地理数据的获取一直借 助于纸肯4 地凰。野外编辑是通过在纸割地图上绘草图,并在笔记里记录标示来实现的。一旦回到 办公室,这些野外编辑的数据被编译和手工输入地理信息系统数据库。结果是:地理信息系统数 据不能经常更新或者不够精确。这样导致了地理信息系统分析和决策结果的不可靠性口】。 这些基于野外的工作在许多g i s 应用中都菲常常见,像防洪抢险、流行性疾病的区域控制分 析、自然资源调查和维护、自然资源地图绘制、矿藏探查、事故记录、野外巡视、野外火情绘图 等许多方面。一些野外任务只需要简单的地理工具完成简单操作。相反的,些任务需要完成复 杂的搡作,相应的,需要复杂的地理工具。 近来移动技术的发展使得g i s 信息以数字地图格式存储在功能强大的移动计算机中,并被带 到野外,这提供了野外环境下,对企业级地理信息访问的手段。组织机构可以在企业级数据库和 应用中加入实时( 或接近实时) 的信息,快速地分析显示,并运用现时的精准的数据进行决策【4 】。 中国农业大学硕士学位论文 第一章绪论 1 1 3 嵌入式系统及嵌入式操作系统 所谓嵌入式系统就是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用 系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统【5 】。它一般由嵌入式微处 理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设 备的控制、监视或管理等功能。 嵌入式操作系统是嵌入式产品的核心。如果说p c 机的发展带动了整个桌面软件的发展,那 么嵌入式产品的广泛普及必将为嵌入式软件产业的蓬勃发展提供无穷的推动力。从八十年代起, 国际上就有一些r r 组织、公司,开始进行商用嵌入式系统和嵌入式操作系统的研发。这其中涌 现了一些著名的嵌入式操作系统:如w i n d o w s c e ,v x w o r k s ,l i n u x ,p s o s ,p a l m o s 等。 m i c r o s o f tw i n d o w sc e 是从整体上为有限资源的平台设计的多线程、完整优先权、多任务的 操作系统。它的模块化设计允许它对从掌上电脑到专用工业控制器用户的电子设各进行定制,操 作系统的基本内核需要至少2 0 0 k 的r o m 【6 j 。 还有的操作系统是高性能的实时操作系统,专为嵌入式微处理器设计,提供一个完全多任务 环境,在定制的或是商业化的硬件上提供高性能和高可靠性。可以让开发者根据操作系统的功能 和内存需求定制成每一个应用所需的系统。开发者可以利用它来实现从简单的单个独立设备到复 杂的、网络化的多处理器系统。 1 1 4j 2 m e 技术 明天的计算将进入后计算时代。各种消费电子产品,包括智能手机,p d a , w e b - t v ,将来的 信息家电等等将实现随时随地的计算。这是一个异常广阔和丰富多彩的领域,其设备极度多样化 而且都将在网络中,j a v a 技术的跨平台性和网络功能在这里大有用武之地。这就是j 2 m e ,这一 丰富多彩的领域中生机勃勃的技术1 7 1 。关于j 2 m e 技术在第二章有详细的介绍。 在本课题中采用嵌入式设备作为移动g i s 系统的宿主设备,西门子$ 6 5 手机,软件开发工具 为s u n 公司的j 2 m e 的t o o l k i f 2 2 开发包。 1 2 国内外研究现状 随着嵌入式设备的发展,g i s 逐步进入p c 发展阶段,移动地理信息系统应用不断增加,迫切 需要基础性开发平台,移动地理信息系统是满足这一市场需求的基础性软件,利用它可以为嵌入 式设备快速地开发和构建各种g i s g p s 应用系统,如p d a 上的g i s 应用和卫星导航终端应用等。 同理,随着科技的发展,移动技术的不断成熟,定位导航应用开辟了一个重要的新兴市场。据欧 盟预测,到2 0 0 8 年左右,定位导航服务占据卫星定位应用的7 0 。移动地理信息系统功能强大, 性能卓越,可广泛应用于通讯、测量、交通、军事、消防、医疗等多种领域,是开发嵌入式0 l s 应用、g p s 前端产品和位置服务( l b s ) 的理想选择。 2 中国农业大学硕士学位论文 第一章绪论 移动地理信息系统所采用的技术包括:全球卫星定位技术( g p s ) 、移动通讯技术( g s m 、g p r s 、 c d m a 等) 、地理信息系统技术( g 1 s ) 、嵌入式技术、互联网( 砸) 与数据处理技术等,由于这 些关键技术大都为发展迅速的高新技术,所以移动地理信息系统的发展也处在飞速发展之中。 北京超图地理信息技术有限公司推出的e s u p e r m a p 可以全面满足各类嵌入式g i s 应用的需要, 该产品结构清晰,功能强大,二次开发灵活。除地图放大、缩小、漫游等常规的g i s 功能外,还 具有许多特色功能,例如地图旋转、路径分析和自动导航等。二次开发商或最终用户可以用它快 速构建具有自己特色的g i s 应用系统,如p d a 电子地图、车载g p s 导航产品、机顶盒电子地图 等【8 】。 1 3 研究的主要任务和内容 1 3 1 研究的主要任务 本设计是针对研究对象与地理位置信息相关而设计的一种移动设备的增值业务,适用于采集 当前地理位置信息与远程服务器的协作。数据的采集是以g p s 来完成的,g p s 使用n m e a - 0 1 8 3 协议进行编码。同时g p s 内部有蓝牙传输模块以完成采集的位置信息的向外传输。接收信息端为 移动设备,移动终端也同时具有蓝牙收发模块以完成数据信息的接收功能,在此终端完成地理位 置信息的解析功能,再通过g p r s 或c d m a 的无线网络传输到服务器端,同时也可以把此信息 保存在移动设备上。在服务端是采用j a v a 的s e r v l e t 方式来接收到移动设备传输来的数据,同时 服务器还有一些后续的工作进行展开。 手机数据业务是电信运营商刚开发的一种新业务,他的出现也使我们科学研究领域进行了拓 展,研究实现的方式也多样化,我们的社会生活更加丰富多彩。在本系统中移动设备就采用了手 机。手机不但是现代人们生活的必须品就像i n e r t n e t 一样,也是本系统的硬件设备之一。其完成 的功能是接收g p s 信息,并根据n m e a - 0 1 8 3 协议进行数据解析,再利用手机数据业务功能将信 息传输到服务器端。 1 3 2 研究的主要内容 论文题目属移动通信应用软件领域,课题源于作者实际参与的中国科学院遥感所一个科研项 目课题:移动协同虚拟地理环境。此课题的主要任务之一就是在移动设备上构建一个地理信息系 统的雏形,即移动地地理信息系统( m g i s ) 。其完成的主要功能: 1 、采集当前的位置信息并通过g p r s 传输到数据服务器 实时的采集手持者当前的地理信息数据,并把位置信息通过g p r s 传输到服务器,这些数据 便于以后区域的相关性分析与研究。例如:防洪抢险、流行性疾病的区域控制分析等。 2 、读取手机上已经存储的地图数据,对地图数据进行漫游。可以为驾车出行者指明道路。 3 、采集当前区域的实景图片向服务上传 3 中国农业大学硕士学位论文 第一章绪论 其意义在于能够利用人们现有的通信设备进行地理信息数据的采集,并通过g p r s 上传到服 务器而不受地理的位置限制,同时可咀保证数据的实时性。也可以向服务器端获取用户当前的位 置信息,这对于突发事件是至关重要的。如作者参与深圳市防洪项目中,深圳市防洪设施管理处 利用移动g i s 进行防洪物资的调度、实时水雨情信息查询等。 4 、服务器端功能的实现,主要包括地理信息数据的接收及存储、实景图片数据的接收与保存。 1 4 本章小结 本课题所涉及的研究领域较多,包括手机数据业务、地理信息系统、嵌入软件硬件系统及 j 2 m e 技术等,所以首先大概阐述了课题所涉及技术,对当前国内外的发展状况及发展方向做了 简要的叙述。研究任务就是对整套系统的可行性研究,包括客户端功能实现和服务器端功能的实 现。 4 中国农业大学硕士学位论文 第二章j 2 m e 概述 第二章j 2 m e 概述 2 1l m a 技术 2 1 1j a v a2 平台划分 s u nm i c r o s y s t e m s 设计j a v a 技术的初衷就是:要发展一种新架构,而这种架构能够在消费性 电子产品作业平台上运行,现在我们普遍接触到p d a 、手机或者是信息家电( 1 a ) ,都是属于这 种架构的目标平台。但由于网络迅速发展的原因j a v a 技术最终是面向网络技术、屏蔽操作系统的 异构性而推出的,它的正式推出是在1 9 9 5 年的6 月j a v a o n e 大会上。经过十几年j a v a 技术的发 展,其已经发展为j 2 e e 、j 2 s e 和j 2 m e 面向不同应用领域的三个版本。每个版本都针对当今计 算机产业中的一个特定领域1 7 】;如图2 - 1 所示表明了j a v a 的不同版本和它们的目标市场,从左侧 最高端的平台开始一直到右侧最低端的台为止。基本上标识了五个目标市场或者说是广泛的目 标设备类型。j 2 e e 提供对服务器和企业通读计算机的支持,j 2 s e 提供对桌面和个人计算机的支 持,j 2 m e 提供对高端和低端消费类设备的支持【9 【”】。 高端消费类设备:这个类别的典型设备是电视机顶盒、可视电话、车载娱乐,导航系统等。这 些设备具有处理大数量用户接口的能力,总内存固定地从2 m 到4 m ,高带宽地网络连接。 低端消费类设备:这个类别的典型设备是手机、智能电话、传呼机等,这些设备有简单的用 户界面、很小的内存( 一般不超过1 2 8 k ) 、低带宽和非连续的网络连接。大多数这些设备都是靠 电池供电。这两类设备之间的界限很模糊。它们之间的界限主要是靠设备的内存容量、网络带宽、 物理屏幕尺寸来划分的。 图2 1j a v a2 平台的各版本的关系和它们的目标市场 5 中国农业大学硕士学位论文 第二章j 2 m e 概述 2 1 2j 2 m e 、j 2 s e 与j 2 e e 之间的比较 j 2 s e 为桌面开发和低端商务应用提供了可行的解决方案,j 2 e e 为了各种企业应用的开发提供 了解决方案,而j 2 m e 则希望让自己成为小型设备和嵌入式设备的开发人员的最佳选择。图2 - 2 描述了j a y a 体系结构中j 2 e e 、j 2 s e 与j 2 m e 对于设备的应用范围【”1 。 图2 2j 2 e e 、j 2 s e 与0 2 m e 对于设备的应用范围 1 、j 2 s e ( j a y a t m2p l a t f o r ms t a n d a r de d i t i o n ) 用于常见的桌面计算机市场和低端商务应用提 供解决方案。j 2 s e 是为桌面p c 而设计的,主要运行在u n i x 、l i n u x 、m i c r o s o f tw m d o w s 等操作系统上。 2 、j 2 e e ( j a y a t m2p l a t f o r me n t e r p r i s ee d i t i o n ) 用于企业为客户、供应商和员工的可升级有 服务器解决方案。j 2 e e 是一个适合分布式的、多用户、企业级应用系统运转的平台。它以j 2 s e 为基础,增加了处理服务器端计算的功能。 3 、j 2 m e ( j a v a t m2p l a t f o r mm i c r oe d i t i o n ) 用于消费产品和嵌入式设备的最佳解决方案。j 2 m e 和j 2 s e 不同,它并不是一个单一的规范。j 2 m e 是为了支持像小型嵌入式设备或移动设备而 制定的一系列的技术和规范的总称。在提供类似类库的同时也对j 2 s e 中的类库进行了裁剪。 2 1 2j a v a 语言的特点 j a v a 是一种跨平台,适合于分布式计算环境的面向对象编程语言。具体来说,它具有如 下特性:简单性、面向对象、分布式、解释型、可靠、安全、平台无关、可移植、高性能、 多线程、动态性等。下面将重点介绍j a v a 语言的面向对象、平台无关、分布式、多线程、可 靠和安全等特性”】。 1 、面向对象 面向对象其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。对 象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是 某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向 6 中国农业大学硕士学位论文 第二章j 2 m e 概述 对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序= 算法+ 数据;面向对象编程语言为:程序= 对象+ 消息。 所有面向对象编程语言都支持三个概念:封装、多态性和继承,j a v a 也不例外。现实世 界中的对象均有属性和行为,映射到计算机程序上,属性则表示对象的数据,行为表示对象 的方法( 其作用是处理数据或同外界交互) 。 所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说, 对象是支持封装的手段,是封装的基本单位。j a v a 语言的封装性较强,因为j a v a 无全程变量, 无主函数,在j a v a 中绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。 而对于这些类型,j a v a 也提供了相应的对象类型以便与其他对象交互操作。 多态性就是多种表现形式,具体来说,可以用“一个对外接口,多个内在实现方法”表 示。举一个例子,计算机中的堆栈可以存储各种格式的数据,包括整型,浮点或字符。不管 存储的是何种数据,堆栈的算法实现是一样的。针对不同的数据类型,编程人员不必手工选 择,只需使用统一接口名,系统可自动选择。运算符重载( o p e r a t o ro v e r l o a d ) - - 直被认为是 种优秀的多态机制体现,但由于考虑到它会使程序变得难以理解,所以j a v a 最后还是把它取 消了。 继承是指一个对象直接使用另一对象的属性和方法。事实上,我们遇到的很多实体都有 继承的含义。j a v a 提供给用户一系列类( c l a s s ) ,j a v a 的类有层次结构,子类可以继承父类 的属性和方法。与另外一些面向对象编程语言不同,j a v a 只支持单一继承。 2 、平台无关性 j a v a 是平台无关的语言是指用j a v a 写的应用程序不用修改就可在不同的软硬件平台上运 行。平台无关有两种:源代码级和目标代码级。c 具有一定程度的源代码级平台无关,表明 用c 写的应用程序不用修改只需重新编译就可以在不同平台上运行。j a v a 主要靠j a v a 虚拟 机( j v m ) 在目标码级实现平台无关性。j v m 是种抽象机器,它附着在具体操作系统之上, 本身具有一套虚机器指令,并有自己的栈、寄存器组等。但j v m 通常是在软件上而不是在 硬件上实现。( 目前,s u n 系统公司已经设计实现了j a v a 芯片,主要使用在网络计算机n c 上。另外,j a v a 芯片的出现也会使j a v a 更容易嵌入到家用电器中。) j v m 是j a v a 平台无关的 基础,在j v m 上,有一个j a v a 解释器用来解释j a v a 编译器编译后的程序。j a v a 编程人员在 编写完软件后,通过j a v a 编译器将j a v a 源程序编译为j v m 的字节代码。任何一台机器只要 配备了j a v a 解释器,就可以运行这个程序,而不管这种字节码是在何种平台上生成的。另外, j a v a 采用的是基于i e e e 标准的数据类型。通过j v m 保证数据类型的一致性,也确保了j a y a 的平台无关性。 j a v a 的平台无关性具有深远意义。首先,它使得编程人员所梦寐以求的事情( 开发一次 软件在任意平台上运行) 变成事实,这将大大加快和促进软件产品的开发。其次j a y a 的平台 无关性正好迎合了“网络计算机”思想。如果大量常用的应用软件都用j a v a 重新编写,并且 放在网络服务器上。那么具有n c 的用户将不需要占用大量空间安装软件,他们只需要一个 j a v a 解释器,每当需要使用某种应用软件时,下载该软件的字节代码即可,运行结果也可以 发回服务器a 目前,已有数家公司开始使用这种新型的计算模式构筑自己的企业信息系统。 7 中国农业大学硕士学位论文 第二章j 2 m e 概述 3 、分布式 分布式包括数据分布和操作分布。数据分布是指数据可以分散在网络的不同主机上,操 作分布是指把一个计算分散在不同主机上处理。j a v a 支持w w w 客户机朋务器计算模式, 因此,它支持这两种分布性。对于前者,j a v a 提供了一个叫作u r l 的对象,利用这个对象, 你可以打开并访问具有相同u r l 地址上的对象,访问方式与访问本地文件系统相同。对于 后者,j a y a 的a p p l e t 小程序可以从服务器下载到客户端,即部分计算在客户端进行,提高系 统执行效率。 j a v a 提供了一整套网络类库,开发人员可以利用类库进行网络程序设计,方便得实现j a v a 的分布式特性。 4 、可靠性和安全性 j a v a 最初设计目的是应用于电子类消费产品,因此要求较高的可靠性。j a v a 虽然源于c , 但它消除了许多c 不可靠因素,可以防止许多编程错误。首先,j a v a 是强类型的语言,要 求显式的方法声明,这保证了编译器可以发现方法调用错误,保证程序更加可靠;其次,j a v a 不支持指针,这杜绝了内存的非法访问;第三,j a v a 的自动单元收集防止了内存丢失等动态 内存分配导致的问题;第四,j a v a 解释器运行时实施检查,可以发现数组和字符串访问的越 界,最后,j a v a 提供了异常处理机制,程序员可以把一组错误代码放在一个地方,这样可以 简化错误处理任务便于恢复。 由于j a v a 主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证, 用户从网络下载程序执行就非常危险。j a v a 通过自己的安全机制防止了病毒程序的产生和下 载程序对本地系统的威胁破坏。当j a v a 字节码进入解释器时,首先必须经过字节码校验器的 检查,然后,j a v a 解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类 装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从 网络上装载的类只能访问某些文件系统。上述几种机制结合起来,使得j a v a 成为安全的编程 语言。 5 、多线程 线程是操作系统的一种概念,它又被称作轻量进程,是比传统进程更小的可并发执行的 单位。c 采用单线程体系结构,而j a v a 却提供了多线程支持。 j a v a 在两方面支持多线程。一方面,j a v a 环境本身就是多线程的。若干个系统线程运行 负责必要的无用单元回收,系统维护等系统级操作;另一方面,j a v a 语言内置多线程控制, 可以大大简化多线程应用程序开发。j a v a 提供了一个类t h r e a d ,由它负责启动运行,终止线 程,并可检查线程状态。j a v a 的线程还包括一组同步原语。这些原语负责对线程实行并发控 制。利用j a v a 的多线程编程接v i ,开发人员可以方便得写出支持多线程的应用程序,提高程 序执行效率。必须注意地是,j a v a 的多线程支持在一定程度上受运行时支持平台的限制。例 如,如果操作系统本身不支持多线程,j a v a 的多线程特性可能就表现不出来。 8 中国农业大学硕士学位论文 第二章j 2 m e 概述 2 1 3j a v a 技术在无线设备开发上的优势 为了使传统的无线设备变得可定制,开发出更多的应用,这就要求提供一个易于移植、 安全的环境。j a v a 语言是一种面向对象的网络编程语言,它非常适合于无线设备的应用开发。 自1 9 9 5 年j a v a 语言正式发布以来,就以其强大的生命力吸引了众多的软件开发人员。j a v a 平台具有以下的优点【1 3 j : 1 ) 动态内容传输。新的应用、服务和内容可以通过不同类型的网络动态下载。 2 ) 安全性。类文件校验、明确定义的应用程序编程接口和安全组件确保了第三方应用程序 的行为是可靠的,不会对设备或者网络造成损害。 3 ) 交叉平台的兼容性。标准化语言组件和库意味着由于支持j 2 m e 配置和描述所带来的约 束使应用和内容可以在不同设备之间灵活地传输。 4 ) 离线获取。不用激活网络连接,应用就可以被使用。这种特点降低了传输费用,减轻了 可能的网络故障带来的影响。 5 ) 一种功能强大的现代面向对象的编程语言。j a v a 相对于当前用于无线软件开发的编程语 言和工具来说具有更加完善的抽象机制和更高级的程序构造,这使应用开发更加有效。 6 ) 巨大的开发者团队。据估计,在全球有超过3 0 0 万的j a v a 软件开发者。 以上的诸多优点,证明了j a v a 语言更适合资源受限的无线设备的软件开发。 2 2j 2 m e 的概念 1 9 9 9 年6 月在j a v a o n ed e v e l o p e rc o n f e r e n c e 上声明之后,j 2 m e 进入了小型设各开发的 行列,s u n 公司将j 2 m e ( j a v a2m i c r oe d i t i o n ,j a v a2 微型版) 定义为“一种以广泛的消费性产品 为目标的、高度优化的j a v a 运行时环境”1 1 ”。 j 2 m e 也可以认为是s u n 公司为嵌入式开发所定义的一个架构,由一系列标准的规范组成。 j 2 m e 架构最基本的规范制定在j s p 6 8 ( j a v a 规范编号第6 8 号) 中,在规范中定义了j 2 m e 的基 本架构“”。根据j s r 6 8 规范,j 2 m e 由三种类型的规范堆栈构成,分别是c o n f i g u r a t i o n 、p r o f i l e 和o p t i o n a lp a c k a g e s 。最底层的c o n f i g u r a t i o n 规范,定义了硬件所必有具备的能力。包括硬件至 少具备多少r o m 、r a m 、c p u 的频率至少应该是多少,连接网络时频带至少要多快及其供电能 力等。同时也定义了一组在这些装置上执行的j a v a 程序所能使用的类别函数库,这些规范之中 所定义的类别函数库称为j a v a 标准核心类库的子集合以及与该配置特性相符的扩充类别函式库。 在c o n f i g u r a t i o n 之上的规范称为p r o f i l e ,p r o f i l e 针对各种不同机器的特性定义了高阶的a p i ,这 些高阶的a p i 通常都是与其它平台不相关的扩充类别函数库。这些高阶a p i 决定了该机器上j a v a 程序的编写方法与规范。基于c o n f i g u r a t i o n 与p r o f i l e 之上的就是o p t i o n a lp a c k a g e 。o p t l o a a l p a c k a g e 是由厂商提供的硬件设各的可选套件。所谓厂商可选套件,就是一组和其他规范( 或a p i ) 没有任何相依赖的类别函数库。 9 中国农业大学硕士学位论文 第二章j 2 m e 概述 2 2 1j 2 m e 的最底层c o n f i g u r a t i o n ( 配置) j 2 m e 通过对配置的抽象来处理大量千差万别的移动设备硬件功能。j 2 m e 的配置定义了特定 设备可用的虚拟机和低级a p i ,同时提供相应的开发基础。目前可用的配置有两种,它们是有限 连接设备配置( c l d c , c o n n e c t e dl i m i t e dd e v i c ec o n f i g u r a t i o n ) 和连接设备配置( c d c ,c o n n e c t e d d e v i c ec o n f i g u r a t i o n ) 。也可以将c o n f i g u r a t i o n 理解成为对硬件的描述,所以通过定义配置的方法 就能够清楚地描述硬件功斛。 c l d c ( 连接有限设备配置) c l d c 则主要针对那些更轻便、更便宜、低功耗的设备。c l d c 针对的设备主要是移动手持 设备,例如p d a 、p o s 机和智能手机。这些设备的特点是无线连接、没有稳定的电源供应f 通常 使用电池) 、设备资源极少。目前在国内外用得比较广泛的c l d c 是在智能手机上的应用。它的 设备需求如下: 1 ) 堆低1 6 0 k b 的内存,其中1 2 8 k b 用于k v m 和运行时库 2 ) 主要针对1 6 位、3 2 位主频在1 6 m h z 以上的处理器 3 ) 低带宽网络连接 c d c ( 连接设备配置) 从设备的硬件功能角度来看,c d c 主要针对3 2 位的处理器主频通常在7 5 m h z 以上,内存 可能在l “m b ;而c l d c 主要针对1 6 位、3 2 位主频在1 6 m h z 以上的处理器,设备的内存比较 少,可能只有5 1 2 k b ,甚至更少。因为c d c 与c l d c 针对的设备c p u 处理能力和内存是不一 样的。所以它们所使用的虚拟机和核心类库也不相同,c d c 的核心类库也比c l d c 的核心类库 要大。c d c 用的虚拟机是c v m ,而c l d c 用的是k v m ,c v m 比k v m 包含更多的功能和支 持更多的特性。 c d c 应用于相对内存量较大、更强处理器的移动设备。c d c 规范采用了内存优化的虚拟机, 也就是所谓的c v m ,通过它提供等同标准j v m 的特性。按照s u n 的文档说明,c d c 针对新型 p d a 、智能通讯设备和机顶盒之类的高端设备。为了能够受到c d c 支持,移动设备必须至少具 备以下条件: 1 ) 用于c v m 和j a v a a p 库的2 m b 内存。 2 ) 3 2 位微处理器或者控制器。 3 ) 可用网络连接,最好是高带宽连接。 这些规范里头所定义的类库除了j a v a 标准核心类库的子集合外,也加入了与该类型设备特性 相符的扩充类库。如c l d c 的规范来说,可以支持的核心类库为j a v a 1 a n g j a v a i o + 、j a v a u t i l , 而支持的扩充类库为j a v a x m i c r o e d i t i o n i o + 。因此整体来说,j 2 m e 先把所有的嵌入式设备利用 c o n f i g u r a t i o n 的概念划分成两种类型。 图2 - 3 表明了j 2 1 v 皿的两种配置和j 2 s e 之间的关系【1 7 】。正如图中所示,c l d c 和c d c 的大 部功能派生自j 2 s e ,从j 2 s e 环境中派生的类必须完全与j 2 s e 环境中的类符合或者是其子集。 其中,c l d c 和c d c 突出j 2 s e 的部分代表的就是扩充类库部分,所以c l d c 和c d c 引入一些 并非来自j 2 s e 的特征,这些是专门为适应小型设备而设计的,c l d c 是c d c 的一个子集。 1 0 中国农业大学硕士学位论文 第二章j 2 m e 概述 2 2 2p r o f i l e ( 描述) 图2 3j 2 s e 与j 2 m e 配置之间的关系 如果说配置为应用程序提供了硬件抽象基础,那么,描述则对应用程序的软件接口进行了抽 象。描述专门针对特定配置定义了一整套j 2 m e 应用程序可用的a p i 类,它完善了配置,为某个 具体的设备类别或某个具体的应用程序提供更高的性能。这里的关键就是描述只是完善配置,没 有配置和虚拟机提供应用程序核心类接口和运行时环境的话,描述也不会工作。通常,描述为一 种给定的设备类别提供用户界面、输入法、持久性存储机制。这类描述被认
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教部编版 (五四制)三年级上册3 不懂就要问教学设计
- 九年级语文上册 第四单元 第13课《事物的正确答案不止一个》教学设计 新人教版
- 七年级数学上册 第2章 有理数2.5 有理数的大小比较教学设计 (新版)华东师大版
- 2024四川九洲投资控股集团有限公司招聘党建干事岗2人笔试参考题库附带答案详解
- 2024吉林四平市悦萍水利管理有限公司面向社会公开招聘3人笔试参考题库附带答案详解
- 七年级生物上册 1.2.2 生物与环境组成生态系统教学设计 (新版)新人教版
- 成本课程培训:提升企业盈利与竞争力的关键
- 九年级化学下册 第九单元 溶液 9.2 溶解度教学设计 (新版)新人教版
- 初中物理北京课改版八年级全册三、连通器一等奖教案及反思
- 人教版五年级上册语文教案设计遨游汉字王国-有趣的汉字
- 2024年社区工作者考试必背1000题题库【含答案】
- 湖北省武昌区七校2023-2024学年八年级下学期期中联考英语试卷+
- 江苏省南京市六合区多校2023-2024学年五年级下学期期中测试语文试题+
- (2024年)跌倒坠床意外事件报告制度、处置预案、工作流程
- 2023年-2024年林业基础知识考试题库附答案
- 2024宁波枢智交通科技有限公司招聘笔试参考题库附带答案详解
- 2024年职教高考《机械制图》必备考试题库及答案
- 医学数据标注培训课件模板
- 2024-2025北京中考英语真题阅读CD篇
- 眼科护理中的安全与风险管理
- 敏捷项目管理与敏捷方法
评论
0/150
提交评论