(计算机科学与技术专业论文)基于对象指导模型的j2me浏览器.pdf_第1页
(计算机科学与技术专业论文)基于对象指导模型的j2me浏览器.pdf_第2页
(计算机科学与技术专业论文)基于对象指导模型的j2me浏览器.pdf_第3页
(计算机科学与技术专业论文)基于对象指导模型的j2me浏览器.pdf_第4页
(计算机科学与技术专业论文)基于对象指导模型的j2me浏览器.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

(计算机科学与技术专业论文)基于对象指导模型的j2me浏览器.pdf.pdf 免费下载

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

文档简介

摘要 本文详细介绍了基于层次规范的嵌入式b s 模型一o i m 模型,层次规范模型 使得我们可以灵活装配规范。但我们同时也指出,其实质是利用商业竞争的成果 来约束模型的使用,只有基于成熟商业架构的配置才拥有生命力。 j o i m 浏览器就是这样一个基于成熟商业架构j 2 m e 的o i m 配置。我们针对 j 2 m e 体系的特点,在o i m 模型的基础上二搭建起我们自己的o i m 配置,从网络 约定、o d l 规范,到解析过程、类库设计。每一个部分都紧扣o i m 的基础设计, 并根据j 2 m e 的特点做了自己的优化和配嚣。 在j o i m 浏览器的实现过程中,我们参考了桌面系统浏览器的一些功能。为 了使用现有的各种服务器与服务端脚本,我们实现了c o o k i e 的保存、页蘑与u r l 的缓存以及显示模块对页面的装载。此外,我们又使用j 2 m e 的c o m m a n d 系统 实现了o i m 模型中必不可少的a c t i o n 模块,并根据j 2 m e 类库将解析模块、疑 示模块最大限度的优化。 文章的最后,通过一个演示性的股票信息网站,展示了j o i m 浏览器及其自 定义的o d l 规范的可行性。演示部分不仅验证了j o i m 浏览器的一般性功能模 块,还通过一个股票图表组件演示了扩展类库的功能,充分反映了o i m 模型强 大的扩展性和表现力。通过对这个演示性应用的性能分析,我们证实了o i m 模 型针对传统b s 、c s 模型的优势,显示出o i m 模型不仅在扩展性与表现力、适 应性上大大超过这些传统模型,在性能上同样有优势。 关键字:嵌入式系统,j 2 m e ,对象指导模型,浏览器 j i a b s t r a c t t h e p a p e rd e s c r i b et h ed e t m lo fo b e j e ti n s t r u c t i o nm o d e t ( o i m ) ,w h i c hi sab s m o d e li ne m b e d d e ds y s t e mb a s e do i lh i e r a r c h i c a ls p e c i f i c a t i o ns t r u c t u r e w ec o a l c o n s t r u c to u ro w no i ms p e c i f i c a t i o n sb yt h eh i e r a r c h i c a ls p e c i f i c a t i o ns t r u c t u r e ,b u t , e x a c t l y , o n l ys u c hk i n do fo i mc o n f i g u r a t i o n s ,w h i c hi s b a s e do nt h em a t u r e e n t e r p r i s es y s t e m ,a r em o s te n e r g e t i ca n dv a l u a b l e j o i mb r o w s e ri ss u c hao i ma p p l i c a t i o n s ,w h i c hi sb a s e do nat r a d i t i o n a l e n t e r p r i s es y s t e m :j 2 m e w ec o n s t r u c to u ro w n e ro i mc o n f i g u r a t i o ni n c l u d i n g n e t w o r kp r o t o c o l ,o d ls c h e m a ,p a r s e rp r o c e d u r e ,c l a s sl i b r a r i e sa n ds oo ni no r d e r t oi n h e r i tt h ea d v a n t a g eo fj 2 m es y s t e m e a c hp a r to fj o i mi sf i r m l yf o l l o wt h eo i m f o u n d a t i o nf r a m e w o r k ,b u ta l s oh a v et h ej 2 m ec h a r a c t e r i s t i c s o m ec h a r a c t e r i s t i co ft h ed e s k t o pb r o w s e r sh a v ei m p l e m e n t e di nj o i mb r o w s e r , f o re x a m p l e ,c o o k i es y s t e m ( f o rr e u s et h ee x i s t i n gs e r v e r sa n ds e r v e rs c r i p t s ) ,p a g ea n d u r lb u f f e r s ,p a g el o a d i n ga n ds oo n t h ea c t i o nm o d u l ew h i c hi st h en e c e s s a r y m o d u l eo fo i mi si m p l e m e n t e db yc o m m a n ds y s t e mo f f e r e db yj 2 m e ,a n dw ea l s o o p t i m i z et h ep a r s e ra n dd i s p l a ym o d u l eb yt h ej 2 m ec l a s sl i b r a r i e s a tt h ee n do ft h ep a 廿e r , w ep r e s e n tap i l o ts t o c kw e bs i t et ov e i l f yt h ef e a s i b i l i t y o fj o i mb r o w s e rm i dt h e0 i ms p e c i f i c a t i o n sd e f i n e db yi t t h ed e m on o to n l y v a l i d a t et h en o m a a lf u n c t i o no fj o i mb r o w s e r , b u ta l s os h o wu sh o wt h ec l a s s l i b r a r i e se x p a n db yas t o c kc h a r tm o d u l e ,s ot h a tw ec a l lf i n dt h ee v i d e n c eo ft i l e e x p a n s i b i l i t ya n dt h ee x p r e s s i v ef o r c eo fo i m f i n a l l yt h ed e m oa l s os h o wt h e s u p e r i o rp e r f o r m a n c eo fo i mc o m p a r e d t ot r a d i t i o n a lb s ,c sm o d e k e y w o r d :e m b e d d e ds y s t e m ,j 2 m e ,o b j e c ti n s t r u c t i o nm o d e l ,b r o w s e r i i i 第一章绪论 因特网和移动通信是近年来发展迅速的两种技术。它们的出现,极大地影响 和改变了人们的生活、工作方式。但在较长一段时间内,通过移动设备访问因特 网还只是人们的个梦想。随着嵌入式设备的不断发展,用户希望除了通过嵌入 设备进行语音通讯或者简单的文字信息、静态图片的传输交互外,也能像在桌面 系统上一样,享用丰富的网络资源。这其中,在桌面机上已经获得巨大成功的 h t t p h t m l 模型最有希望被利用来满足这些新的需求。 不幸的是,在国家8 6 3 研究项目“面向通讯设备的嵌入式软件开发平台”中, 我 f _ j 发现,尽管硬件条件有了长足的进步,受到运算能力和表现能力的制约,我 们仍然不能将这个传统的b s 模型直接移植到嵌入式设备上【1 1 。我们只能对其进 行简化,减少其对运算能力以及显示能力的需求。同时,由于各种嵌入式设备存 在具体的差异性,我们也希望在新的模型下,能充分发挥各种设备的特点,在共 性中寻求个性。 简化意味若表现能力和内容的压缩。而对网页的活泼性,表现性具有很大帮 助的w e b 动画效果在各种简化手段中几乎被完全抛弃。同时限于嵌入式设备计 算能力的有限,一些在桌面系统上获得巨大成功的组件技术、动态图表绘制技术 在嵌入式w e b 网页中无法顺利移植。 针对这种情况,我们设计出了一种基于x m l 的准b s 模型:对象指导模型 ( o b j e c ti n s t r u c t i o nm o d e l ) 。客户机在服务器上传递过来的基于对象描述语言 ( o d l ) 的指导下建立浏览页面。o d l 并不存在固定的规范,而是在一个层次 规范的约束下与客户机进行规范协商,以适应客户端的差异性。 由于o i m 存在一套协议可以实现可执行代码的传输与执行,并能够在层次 规范中容纳非正规的各种具体实现,在参考同一项目中提出的“组件化”思想1 2 】f 3 1 , 我们在o i m 的基础上发展出一套可在嵌入式设备上进行应用的组件技术,并利 用这种技术实现了动态图表绘制功能。这些实现也从一个侧面证实了o i m 的扩 展性与适应性,证明了o i m 模型的可行性与其相对与传统b s 、c s 模型的优势。 本文介绍了对象指导模型,实现了一个基于j 2 m e 的j o i m 浏览器,并根据 o i m 的层次规范结构定义了适应j 2 m e 的o i m 规范。在本文的最后,建立了一 个基于j o i m 的股票信息网站,并通过这个网站,对j o i m 浏览器的可行性与各 种性能进行了详细分析。各章节结构如下: 第一章作为绪论,对本文做了概述性阐述。 第二章主要对涉及嵌入式w e b 技术及相关工作做一个简要的介绍,包 括w a p w m l 技术的简介,及几种非w a p 架构的嵌入式浏览器。 第三章详细阐述我们发展起来的基于层次规范及对象描述语言的对象 指导模型( o i m 模型) 。 第四章介绍了j o i m 的o i m 配置,包括从o i m 框架到商业应用环境 的各个层次。 第五章对j o i m 浏览器的实现做了简单介绍,并讨论了实现过程中的 几个重点问题。 第六章是总结与展望,也分析了j o i m 浏览器的不足之处及未来可能 的改进。 第二章嵌入式w e b 技术简介 2 1 嵌入式设备上的w a p w m l 体系 2 1 1 无线应用协议( w a p ) 目前来看,嵌入设备上的w e b 实现大都是在简化的h t t p 协议基础上定义自己 的标记语言。使用最广泛的就是w a p w m l 体系。 w a p ( w i r e l e s s a p p l i c a t i o n p r o t o c 0 1 ) 协议1 4 j 是一个应用环境和无线设备的通 信协议集。其设计目标是用一种与制造商、销售商无关以及与技术无关的方式实 现无线设备对因特网和高级电话服务的访问。事实上,我们可以将w a p 看作一 个简单的协议,定义了无线移动设备与网络中的固定服务器进行通信的标准方 式。【5 】 w a p 协议定义了一种移动通信终端连接因特网的标准方式,提供了一套统 一、丌放的技术平台,使移动设备可以方便地访问以统一的内容格式表示的因特 嘲以及因特网的信息。 w a p 协议采用客户机服务器模式。它在移动通信终端中嵌入一个与p c 机 上运行的浏览器( 比如i e ,n e t s c a p e ) 类似的微型浏览器,从而减少对移动终 端的资源要求。w a p 把更多的事务和智能化处理交给w a p 网关( w a p g a t e w a y ) 。同时,基于微浏览器的服务和应用临时性地驻留在服务器中,而不是 永久性地存储在移动终端中。w a p 的设计思想就是要尽可能少地使用移动设各 资源,并通过丰富其网络功能来弥补设备资源的限制。 传统的w w w 采用客户机服务器( c s ) 结构。客户端的w e b 浏览器向网 络服务器发出服务请求,服务器用标准的数据模式进行响应。与传统的w w w 通信相比,w a p 也采用客户机服务器方式。但二者之间最大的差别在于:客 户机与服务器之间,w a p 模型多了一个w a p 网关。客户机通过w a p 网关然后 再与资源服务器( o r i g i ns e r v e r ) 通信。同时,在客户机与w a p 网关之间传递的信 息也有别于传统方式下客户机与服务器间交换的信息。 w a p 内容和应用采用与w w w 类似的模式定义,内容的传输也采用一套与 w w w 通信协议类似的标准通信协议。移动终端的微型浏览器与标准的w e b 浏 览器类似,负责协调与用户的接口。 考虑到无线网络的带宽限制,需要把客户方用户代理与w a p 网关间传递的 信息( 包括请求和响应) 进行压缩编码,以减少网络数据流量,最大限度地利用无 线网络缓慢的数据传输率。 w a p 具有光明的未来,但同时其自身也存在着缺陷,需要进一步完善。w a p 应用产品所依赖的无线信道带宽有限,要提供更多的服务,比如动态图像、视频 音频等媒体信息服务,必须解决传输对带宽的要求。另外,移动终端的目标、 存储和处理能力有限,对于更高级的应用也会是一个阻碍。 2 1 2 w a p 模型 w a p 编程模型与w w w 程序模型类似,协议制定者尽可能地参考已有的标 准,并作为w a p 技术的起点,使应用开发者可利用熟悉的编程模型、可靠的体 系、现有的工具,从而从中受益。针对无线环境的特点,w a p 技术进行了一些 优化,增加了几种扩展名。w a p 内容和应用供应商使用基于w w w 内容格式的 内容格式,内容传送也使用基于w w w 通讯协议的一系列通讯协议,管理用户 界面的微浏览器也与标准的网络浏览器类似。w a p 定义了允许移动终端和网络 服务器之间通讯的标准,包括: 标准名字模型w w w 标准的u r l 同样用来界定w a p 内容和来源服务 器: 内容类型一w a p 内容有与w w w 类型一致的特定类型 标准内容格式一w a p 内容格式基于w w w 技术,包括显示标识、日历、 图形和脚本语言等。 标准通讯协议一移动终端与网络服务器之间的请求传送 w a p 内容种类和协议已经为大部分手持设备优化过了。w a p 规范使用标准 的w e b 代理技术将无线网络与w e b 连接起来网关中,w a p 大大减少了手机上的 操作负载,为手机实现价廉提供了基础。例如,一个w a p 网关一般可以使用所 有的d n s 服务来解析u r l 中使用的域名,因此就不再需要手机来完成这个计算 任务。另外,网络还可以利用w a p 网关来为用户提供各种服务,并且可以帮助 网络服务商防止诈骗和服务利用。w a p p r o x y 连接无线域和w w w ,主要有以下 功能: 协议网关。协议网关将来自w a p 协议栈的请求翻译到w w w 协议( h t t p 和t c p i p ) 中。 内容编码器和解码器。内容编码器将w e b 内容翻译成压缩编码的格式, 以减少通过无线数据网络传输的数据包的大小和数量。 这个结构使移动终端用户可以浏览各种w a p 内容和应用,而不管它们使用 的是什么类型的无线网络。应用开发者能够创建网络和终端独立的内容服务和应 用,使这些应用可以被尽可能多的用户使用和访问。使用w a p 代理,内容和应 4 用可以放在标准的w w w 服务器上,开发者可以继续使用通用的w e b 技术如c g i 编程来进行开发。 w a p 网关还可以将来自不同w e b 服务器上的数据聚合起来,并且对经常使 用的信息进行缓冲处理,从而减少手持设备的应答时问。并且w a p 网关还可以 与用户的数据库接口,使用来自无线网络的信息如位置信息来为某一组用户动态 定制w m l 页面。1 6 j 2 1 3w a p 体系结构 层叠排列的w a p 协议体系为无线装置的应用丌发提供了可扩展、可延伸的 环境。每一层协议或其它服务和应用程序可与它下一层协议直接对话。通过精心 设置的一系列接口,外围服务和应用程序可以利用w a p 体系提供的各种功能, 包括直接使用会话层、交易层、安全层、传输层等。 在w a p 的协议栈中包含有以下的协议: w a pw i r e l e s sa p p l i c a t i o np r o t o c o l w a ew i r e l e s sa p p l i c a t i o ne n v i r o n m e n t w m lw i r e l e s sm a r k u pl a n g u a g e w t aw i r e l e s st e l e p h o n y a p p l i c a t i o n w t a iw i r e l e s st e l e p h o n ya p p l i c a t i o ni n t e r f a c e w s pw i r e l e s ss e s s i o np r o t o c o l w t pw i r e l e s st r a n s a c t i o np r o t c i c o l w t l sw i r e l e s st r a n s p o r tl a y e rs e c u r i t y w d pw i r e l e s sd a t a g r a mp r o t o c o l u r lu n i v e r s a lr e s o u r c el o c a t o r s i ma t ks t ma p p l i c a t i o nt o o l k i t w a e ( 无线应用环境) 是基于移动技术与w w w 结合基础之上的应用环境, 目的是为营运商、服务提供商的服务和应用程序建立一个交互操作环境,使他们 可以灵活地接入不同平台。w a e 包含一个微型浏览器。 w s p ( 无线会话协议) 向w a p 应用层提供两个会话服务的统一接口,一个 是在传输层协议w t p 之上的面向连接的服务,另一个是在安全或非安全数据报 服务( w d p ) 之上的非连接服务。w s p 系列协议针对低功率、长等待时间的网 络数据载体进行了优化,它现在由浏览应用的服务组成( w s p b r o w s i n g ) ,w s p b 允许使用w a pp r o x y 连接w s p b 的客户端和标准的h t t p 服务器。 w t p ( 无线处理协议) 运行于数据服务之上,提供了一个适用于”轻体”客户 ( 移动终端) 的面向传输的轻型协议。w t p 可有效地运行于安全或非安全的无 线数据网络。 w t l s ( 无线传输层安全) 是基于工业标准t l s ( 以前称为s s l ) 上的安全 协议,同样针对移动通信使用的窄频信道进行了优化,它应与w a p 传输协议同 时使用。应用程序可视自己的安全要求和网络特点,选择启用或不启用w t l s 功能。 w d p ( w a p 体系的数据报传输层协议) 可运行于各种网络的数据载体。作 为一种通用的传输协议,它将传输端口根据底层数据载体进行改造,从而为w a p 体系中的上层协议提供统一的接口,使会话层、应用层独立于底层的无线网络。 如能保持传输层接口和基本功能的一致性,就可通过中介网关使广泛的交互操作 得以实现。 w a p 协议在设计时的目的是使它可独立运作于各种不同的数据载体之j ! :,如 s m s ( 短消息、c s d 、封包数据等) 。由于数据载体因承载量、容错率和延迟不 同而有不同的质量,w a p 协议就需要补偿或容忍这些特点。w d p 集中处理体系 中其它层次协议与数据载体的交流,除现在已以可以支持的数据类型外,随着新 的数据服务在移动市场出现,它也会不断发展以支持更多的数据类型。 w a p 标准也定义了一个名为w t a 的协议。它是一个面向通讯的技术,使 w a p 能够融合电信网络中先进服务,比如智能网络( i n t e l l i g e n tn e t w o r k s ) 。在融 合基于浏览器的w a p 用户界面,w t a 能够不用修改终端就直接享受基于智能网 络的服务。 2 1 4 无线标记语言( w m l ) 在w a p 体系下,曾经有许多关于小屏幕设备的网页设计规范与准则【7 【8 】。 w m l ( 无线标记语言:w i r e l e s s m a r k u p l a n g u a g e ) 是w a p 体系结构的有机 组成部分。w m l 实际上就是一种坚持预定义规则、具有良好格式的x m l 语言。 它采用显示标签以移动设备所适合的格式表示数据。在理想的情况下,w e b 服 务器可以提供只能由w a p 浏览器显示的w m l 内容【9 l 。 w m l 是一种基于扩展标记语言x m l ( e x t e n s i o nm a r k u pl a n g u a g e ) 的语言, 是x m l 的子集。它可以显示各种文字、图像等数据,是由w a p 论坛 ( h t t p :w w w w a p f o r u m o r g ) 提出并专为无线设备用户提供交互界面而设计的, 目前版本为1 1 版。这些无线设备包括移动电话,呼机和个人数字助理 p d a ( p e r s o n a ld i g i t a la s s i s t a n t s ) 等。 w t p ( 无线处理协议) 运行于数据服务之上,提供了一个适用丁”轻体”客户 ( 移动终端) 的面向传输的轻型协议。w t p 可有效地运行于安全或非安全的无 线数据网络。 w t l s ( 无线传输层安全) 是基于工业标准t l s ( 以d # 称为8 s l ) 上的安全 协泌,同样针对移动通信使用的窄频信道进行了优化,它麻w a p 传输协议同 叫使崩。应用程序可视自己的安全要求和网络特点,选择宿用或不启用w t l s 功能。 w d p ( w a p 体系的数据报传输层协议) 可运行于各种网络的数据载体。作 为一种通用的传输协议,它将传输端口根据底层数据载体进行改造,从而为w a p 体系中的上层挑议提供统一的接口,使会话层、应用层独立于底层的无线网络。 如能保持传输层接几和基本功能的一致性,就可通过中介网关使广泛的交互操作 得以实现。 w a p 协议在设计时的日的是使它可独立运作于各种不同的数据载体之上,如 s m s ( 短消息、c s d 、封包数据等) 。由于数据载体因承载量、容错率和延迟不 同而有不同的质量,w a p 协议就需要补偿或容忍这些特点。w d p 集中处理体系 中其它层次协议与数据载体的交流,除现在已以可以支持的数据类型外,随着新 的数据服务在移动市场出现,它也会不断发展以支持更多的数据类型。 w a p 标准也定义了一个名为w t a 的协议。它是个面向通讯的技术,使 w a p 能够融合电信网络中先进服务,比如智能网络( i n t e l l i g e n t n e t w o r k s ) 。在融 合基于浏览器的w a p 用户界面,w t a 能够不用修改终端就直接享受基于智能网 络的服务。 2 1 4 无线标记语言( w m l ) 在w a p 体系下,曾经有许多关于小屏幕设备的网页最计规范与准则【”。 w m l ( 无线标记语言:w i r e l e s sm a r k u pl a n g u a g e ) 是w a p 体系结构的有机 组成部分。w m l 实际上就是种坚持预定义规则、具有良好格式的x m l 语言。 它采用显示标签以移动设备所适合的格式表示数据。在理想的情况下,w e b 服 务器可以提供只能由w a p 浏览器显示的w m l 内容【9 j 。 w m l 是一种基丁扩展标记语言x m l e x t e n s i o nm a r k u pl a n g u a g e ) 的语言, 是x m l 的了集。它可以显示各种文字、图像等数据。是由w a p 论坛 ( h t t p :w w w w a p f o r u m o r g ) 提出并专为无线设备用户提供交互界面而设计的, 目前版本为1 1 版。这些无线设备包括移动电话,呼机和个人数字助理 p d a ( p e r s o n a td i g i t a la s s i s t a n t s ) 等。 p d a ( p e r s o n a ld i g i t a la s s i s t a n t s ) 等。 图2 1 给出了一个w m l 片断示 例。 为了尽量利用受限的资源为客 户提供更好的服务,w m l 语言通 过以下几项主要功能: w m l 支持字符和图象, 字符可以用几种不同的 方式显示:黑体、斜体、 下划线、大、小字体等: w m l 文件被组织成卡 片的形式,每个卡片含文 本、选项、输入域等,用 户通过访问一系列的卡 片而获得信息; 图2 1 w m l 示例 w m l 提供了卡间的导航和链接;w m l 语言提供了状态模型和变量 替换机制,可用于浏览切换时的信息缓存。 w m l 是为具有以下特点的设备而设计的: 体积小( 相对于个人计算机) 。 有限的内存和c p u 大小。 通讯带宽窄和时延长。 但是,w m l 有它自己的限制。现在支持w m l 的设备大致分为两大类: 无线电话,其特点就是只有4 1 0 行的文本屏幕。用户通过电话的按钮 进行输入。 个人数字助理( p d a ) ,其特点就是能支持1 0 0 1 0 0 分辨率( 或者更 好) 。用户能够通过键盘、鼠标或者手写输入。 由此可以看出,w m l 需要适应的硬件条件跨度非常的大,无法用同一套规 范在这么多不同的硬件系统上构造出能根据不同的硬件条件调整适度的表现能 力的w e b 页面来。 2 2 两种嵌入式设备浏览器简介 在w m l 的基础上,各厂商实现了自己的一套浏览器,但对w a p w m l 的批 评仍然不绝与耳。主要的批评是因为w m l 表现能力的不强,因此,一些非w a p 体系的浏览器仍然不断被研发出来,比如r s v p b r o w s e r j 0 、p o w e r b r o w s e r 1 l 】、 a n dw e s t ( w e bb r o w s e rf o rs m a l lt e r m i n a l s ) | 1 2 jp r o x i n e ta n dp r o x i w e b l l “。 r s v pb r o w s e r 主要发展了小屏幕页面的导航系统。p o w e rb r o w s e r 则从 h t m l 页面的压缩下手,试图使小平面页面能显示标准h t m l 页面。w e s t 与 p o w e rb r o w s e r 类似,但它从焦点转换信息的收集角度入手,使压缩的页面能更 符合用户的需要。同样采用类似直接压缩h t m l 页面形式的p r o x i n e ta n d p r o x i w e b 不仅讨论了文本的压缩,还讨论的图片的压缩,并发展了一整套完整 的页面分隔,文本缩减的理论。 以下详细介绍了其中的两种嵌入式浏览器r s v pb r o w s e r 和p o w e rb r o w s e r : 2 2 1r a p i ds e r i a lv i s u a lp r e s e n t a t i o n ( r s v p ) r s v p 主要着重于分析小屏幕中的信息表现所需的时间空间损耗,并根据这 些分析内容对传统的基于w a p 的浏览器的导航方式进行了改迸。 如图2 r 2 所示,将传统桌面的滚动及历史记录的概念带入了嵌入式系统,使 得用户可以很方便的在前后帧中进行切换。通过与传统w a p 浏览器的对比, r s v p 浏览器拥有比w a p 浏览器跟高的表现能力和可操作性。不但其页面大小 不再受限制,并且用户获得相同信息所需要的点击次数也大大降低。 r s v p 参考了数据挖掘中的w e b 页面摘要的手法i l ”,引入了一种根据关键字、 关键图表将传统新闻页面转换成r s v p 可以接受的分帧新闻页面的技术,并在 b r i t i s hi n d e p e n d e n tt e l e v i s i o nn e w s ( i t nn e w s ) 的新闻页面服务器上做了分帧 试验,如图2 3 所示。每一条新闻从主页面中分割开来,并在r s v p 页面中通过 滚动条的帮助,以图片及其说明性文字的方式进行重现。 图2 2r s v p 页面导航示例 图2 3 传统新闻页面转换成分帧的r s v p 负面示倒 2 2 2p o w e rb r o w s e r : p o w e rb r o w s e r 使用 另1 种办法将桌面 h t m l 页面压缩至嵌入 设备的小显示屏上,如图 2 4 所示。 p o w e rb r o w s e r 将超 文本页面中的内容通过 语法分析,分割成层次的 语法单元( s e m a n t i c t e x t u a lu n i t ss t u s ) ,并 将这些语法单元压缩成 关键字表示,用树形结构 组织起来。用户在使用的 时候看到的是一个折叠 起来的语法树,每个结点 代表一个s t u 。 s t u 有几种表现方 式:i n c r e m e n t a l 、a l l 、 k e y w o r d s 、s u m m a r y 、 k e y w o r d s s u m m a r y ,用 图2 4 基于树结构的p o 、rb r 。w s e r 页面折叠技术 户可以选择使用何种方 式浏览每个s t u s ,如图 2 5 所示。 s t u s 的压缩是通过 对大量网页的内容进行 词频统计而做出来的。同 时,对于不同类型的网页 分别有不同的词频库。目 标网页的内容被分析,通 过对里面每个单词的词 频进行检索,同时参考网 页结构,拣出其中的 图2 5p o w e rb r o w s e r 的几种表现方式 s t u ,并对其进行关键字压缩。 s t u 的这几种表现方式还分别进行了用户适应性的统计,并针对p o w e r b r o w s e r 进行了优化。 同时p o w e rb r o w s e r 还使用他们的树型结构,对页面收藏系统进行了探讨【1 5 , 使用户在登陆、查询网址的时候能享受到和桌面系统一样的方便与快捷。 2 2 3 现存的这些嵌入式系统测览器的局限性 但实际上,以上的这些嵌入式w e b 技术仅仅力图在固定的嵌入式系统上实现 w e b 网页的浏览,而忽视了嵌入式系统的具大差异性。就目前的移动电话来看, 几年问,显示技术就从9 6 6 5p i x e l s 黑白二色发展到了2 x x 2 x x p i x e l s6 5 5 2 6 色,而且这些不同的硬件设备同时出现在主流市场上。 要适应这么多不同的硬件设备,一个固定的b s 规范是无法做到的。并且基 于摩尔定律,这种情况在未来仍然会存在。尽管桌面系统也存在这样的这样情况, 但其差异性并没有像嵌入式系统这么大,并且其良好的可操作性及其计算性能足 以弥补这些差异性。 正是因为这个原因,嵌入式系统上的w e b 技术,特别是移动电话上的w a p 技术并没有得到非常大的发展。为此,我们发展了一种基于层次规范的对象指导 模型( o i m ) ,希望可以在规范的层次上就获得最大化的灵活性以适应嵌入式系 统的多样性。o i m 将在第三章做详细阐述。 2 3j 2 m e 体系简介 2 3 1j 2 m e 的层次规范模型 随着无线应用与嵌入式系统的愈来愈受到人们的重视,s u n 也推出了 j 2 m e ( j a v a 2p l a t f o r m ,m i c r oe d i t i o n ) 来迎合这一未来的发展趋势。 1 0 实际上这道也不能算是最新推出,熟悉j a v a 历史的人都知道,j a v a 原先本是 为了, :发消费性电子产品而研制的。谁知,无心插柳柳成荫,因在网络应用上的 出色表现而流行,以至到现在的在s e r v e rs i d e 上的应用,如j 2 e e 、e j b 等等, 发展的越来越庞大。j 2 m e 与j 2 s e 和j 2 e e 共同组成j a v a 技术的三个重要的分支。 j 2 m e 实际上是一系列规范的集合,由j c p 组织制定相关的j a v as p e c i f i c a t i o n r e q u e s t ( j s r ) 并发布,各个厂商会按照规范在自己的产品上进行实现,但是必 须要通过t c k 测试,这样确保兼容性。 j 2 m e 平台是由配置( c o n f i g u r a t i o n ) 和描述( p r o f i l e ) 构成的,如图2 6 【“1 。 配置是提供给最大范围设备使用的最小类库集合,在配置中同时包含j a v a 虚拟 枫。简表是针对从一系列设备提供的开发包集合。在j 2 m e 中还有一个重要的概 念是可选包( o p t i o n a lp a c k a g e ) ,它是针对特定设备提供的类库,比如某些设备 是支持蓝牙的,针对此功能j 2 m e 中制定 了j s r 8 2 ( b l u e t o o t h a p i ) 提供了对蓝牙 的支持。 目前,j 2 m e 中有两个最主要的配置, 分别是c o n n e c t e dl i m i t e dd e v i c e s c o n f i g u r a t i o n ( c l d c ) 和c o n n e c t e d d e v i c e sc o n f i g u r a t i o n ( c d c ) 。他们是根 据设备的硬件性能进行区分的,例如处理 器、内存容量等。 从上述的标准中我们不难看出c l d c 主要针对那些资源非常受限的设备比如 图2 6j 2 m e 体系结构 手机、p d a 、双工寻呼机等。而c d c 主要面对那些家电产品,比如机顶盒、汽 车导航系统等。筒表是以配置为基础的, ( m i d p ) 就是c l d c 上层的重要简表。 向的。图2 6 是j 2 m e 体系结构的框图: 例如m o b i l ei n f o r m a t i o nd e v i c e sp r o f i l e 与配置的纵向特性不同的是,简表足横 j 2 m e 的核心是c o n f i g u r a t i o n ,在它里面定义了j a v a 的虚拟机,通过它来和 底层的h o s to s 打交道。p r o f i l e 提供了访问设备的i o 或者图形界面的能力,这 样c o n f i g u r a t i o n 和p r o f i l e 共同构成了j 2 m e 的运行环境。比如c l c d m i d p 可 以提供给你开发手机程序的环境。 p r o f i l e 层也包含一组a p i ,主要针对于特定的某一族系的设备而定义。p r o f i l e 层在特定的c o n f i g u r a t i o n 层上实现,而我们程序员则负责在特定的p r o f i l e 上编 写应用程序。i l “ 对于手机,p d a 等c l d c 设备。它们的p r o f i l e 层称为m i d p ( m o b i l e i n f o r m a t i o nd e v i c ep r o f i l e ) 。于是m i d p 与c l d c 合在一起就构成了一个完整的 j 2 m e 架构,如图2 7 所示。 图27 c l d c m i d p 结构 目前,手机类嵌入式 系统普遍使用c 语言和 专用的实时操作系统,不 仅开发速度慢,而且没有 动态加载应用程序的能 力,导致手机上的应用程 序开发很困难 i s 。j 2 m e 的出现则使上述问题迎 刃而解。因为j 2 m e 是基 于j a v a 语言的,所以它 天生就具有以下优点 1 9 1 动态内容传输。 新的应用、服务和内容可以通过不同类型的网络动态下载。 安全。类文件校验、明确定义的应用程序编程接口和安全组件确保了第 三方应用程序的行为是可靠的,不会对设备或者网络造成损害。 交叉平台的兼容性。标准化语言组件和库意味着由于支持j 2 m e 配置和 描述所带来的约束使应用和内容可以在不同设备之间灵活地传输。 2 3 2c l d c 与m i d p 小程序 c l d c 对于j a v a 虚拟机( j a v av i r t u a lm a c h i n e ) 支持的特殊的方面,实质上 c l d c 在其严格的内存限制下达到了对j a v a 虚拟机相当程度的兼容性。不过还 是有f 列不同点: 不支持浮点数据类型( 没有f l o a t 和d o u b l e 。这实际上主要是由于c l d c 所面向的设备,其硬件因其内存限制或是基于安全性的考虑不支持浮点 运算) 不支持j n i ( t h ej a v an a t i v ei n t e r f a c e ) 不支持用户自定义的j a v a 级的类载 入器( c l a s sl o a d e r s ) 没有反射( r e f l e c t i o n ) 特性( 注:r e f l e c t i o n 指j a v a 通过j a v a 1 a n g + r e f l e c t 提 供的,可以对类的能力进行分析的功能。常用来对类的结构进行检查, 在j a v a b e a n s 上有广泛运用 不支持线程组( t h r e a dg r o u p s ) 或守护线程( d a e m o nt h r e a d s ) 不支持类实例( c l a s si n s t a n c e ) 的终结,即不存o b j e c t f i n a l i z e ( ) 方法。( 注: f i n a l i z a t i o n 指的是j a v a 中提供的有别与g a r b a g ec o l l e c t i o n 的另外的一种 对象清理方法。 没有弱参考( w e a kr e f e r e n c e s ) ( 注:w e a kr e f e r e n c e 提供了一种解决指向 已经被g a r b a g ec o l l e c t o r 清除的对象的方法,在j a v a 2 中被介绍。) 有限的错误处理( e r r o rh a n d l i n g ) ,即大部分j a v a 1 a n g e r r o r 的子类都未 被支持。与此相反,c l d c 包括了相当完备的异常( e x c e p t i o n ) 类 类文件审核过程( c l a s sf i l e sv e r i f i c a t i o n ) c l d c 要求其下层的虚拟机能够辨别并拒绝非法的c l a s s 文件。但由于c l d c 本身面向小内存消耗的小型设备这一前提。其类文件检测机制与j 2 s e 中定义的 标准类文件审核机制还有所不同。 图2 8c l d c m i d p 应用程彦的实施过程 图2 8 所示c l d c 中的预审核( p r e v e r i f i e a t i o n ) 过程。这是c l d c 区别于通 常的类文件审核过程的关键。如上图所示,当源程序被编译后,必须被预审核器 预审核,然后才能被下载到目标设备上去。之所以有这一步骤,主要是为了减轻 k v m 中审核器的负担,如抉审核速度。在m i d p 中定义了一种新的应用程序模 型m i d l e t ,它是被a p p l i c a t i o n m a n a g e m e n ts o f t w a r e ( a m s ) 管理的。a m s 负责 m i d l e t 的安装、下载、运行和删除等操作。在被a m s 管理的同时,m i d l e t 可以 和应用管理软件通信通知应用管理软件自己状态的变化,通常是通过方法 n o t i f y d e s t r o y e d 0 和n o t i f y p a u s e d ( ) 实现的 m i d p 中定义的应用程序称为m i d l e t 。任何一个m i d l e t 都是 j a v a x m i e r o e d i t i o n m i d l e t m i d l e t 的子类 ,必 须继承自 j a v a x m i c r o e d i t i o n m i d l e t m i d l e t 。m i d l e t 有三个状态,分别是p a u s e 、a c t i v e 和 d e s t r o y e d ,如图2 9

温馨提示

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

评论

0/150

提交评论