(计算机软件与理论专业论文)java+awt的分析与实现.pdf_第1页
(计算机软件与理论专业论文)java+awt的分析与实现.pdf_第2页
(计算机软件与理论专业论文)java+awt的分析与实现.pdf_第3页
(计算机软件与理论专业论文)java+awt的分析与实现.pdf_第4页
(计算机软件与理论专业论文)java+awt的分析与实现.pdf_第5页
已阅读5页,还剩88页未读 继续免费阅读

(计算机软件与理论专业论文)java+awt的分析与实现.pdf.pdf 免费下载

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

文档简介

西北工业大学硕士学位论文 摘要 摘要 本文以国家9 6 3 软件重大专题项目“ 面向d t v的嵌入式中间件研究”为背 景,主要针对其中的j a v a a wt部分做了深入的研究。文中首先简要介绍了j a v a a wt在数字电视中间件模型中的地位和作用, 其次,研究了j a v a 的体系结构, 重点分析了j a v a a w t 部分的实现机制, 并以 此为基础, 提出了 基于m i n i g u i 图 形库的k a ff e a wt 实现方案, 之后在嵌入式l i n u x 系统上给予了较为完整的实现。 论文详细的阐述了课题研究的全过程, 依次包括课题的提出、分析、设计、 编码、测试以及到最后的实现等。 其中主要的研究内 容及成果有: 1 .深入研究了j a v a 的体系结构, 重点分析了j a v a a p i 的组成结构以及j a v a 虚拟机的实现机制。这是本课题研究的基础内容。 2 .详细分析了j a v a g u i 程序设计中的重要部分a wt 。 分析了各构件的 具体功能以 及它们之间的层次结构关系, 重点论述了 在j d k和k a f f e 中 实现a wt时各自 所采用的方法,并指出了它们的优缺点。 3 .通过分析类比 并根据课题的实际需要, 选择了 开放源码的嵌入式j a v a 虚 拟机 k a ff e 作为课题的 研究平台, 并在对k a ff e 的体系结构及a wt 的实现方法进行分析的 基础上, 提出了 基于m i n i g u i 的k a f f e a wt 实现 方案。 在该方案中采用了类w i n 3 2的实现方式,既充分利用了底层图形 库中的资源,同时还可以提高效率。 4 .分析了k a ff e a wi 与底层图形库的接口关系以及m i n i g u i 所提供的模块 和接口, 并以 此为基础, 详细论述了在mi n i g u i 上实现k a ff e a wt的具 体过程,重点 研究了消息的处理方式。实验结果证明, 在采用该方法所 实现的系统上运行出来的图形效果良 好.基本上实现了所需功能。 关键词: 数字电视中间件;a w t ;本地方法接口:嵌入式j a v a 虚拟机:k a ff e 虚拟机:mi n i g u i 图形库 mas t e r of s c i e nc e t h e s i s . nwp uabs tract abs tract wi t h t h e b a c k g r o u n d o f t h e n a t i o n a l 8 6 3 h i g h t e c h p r o g r a m ( 8 6 3 p r o g r a m ) r e s e a r c h o n d t v - o r i e n t e d e m b e d d e d mi d d l e w a r e , t h i s p a p e r m a i n l y f o c u s e s o n t h e f u r t h e r r e s e a r c h o f j a v a a wt a m o n g t h e m . i n t h i s p a p e r , t h e p o s i t i o n a n d f u n c t i o n o f j a v a a wt i n t h e m o d e l o f t h e d t v m i d d l e w a r e h a s b e e n b r i e fl y i n t r o d u c e d . t h e s y s t e m s t r u c t u r e o f j a v a h a s a l s o b e e n s t u d i e d . o n t h e b a s i s o f a n a l y z i n g t h e i m p l e m e n t a t i o n m e c h a n i s m o f j a v a a wt e s p e c i a l l y , t h e p a p e r h a s p r e s e n t e d a s c h e m e p o r t i n g k a f f e a w t t o m i n i g u i g r a p h i c l i b r a r y a n d h a s o ff e r e d a c o m p l e t e i m p le m e n t a t i o n o n e m b e d d e d l i n u x p l a t f o r m . t h e p a p e r p r e s e n t s t h e c o m p l e t e p r o c e s s o f p r o j e c t r e s e a r c h i n c l u d in g p r o p o s i t i o n , a n a l y s i s , d e s i g n , c o d i n g , t e s t a n d i m p l e m e n t a t i o n , e t c . ma i n r e s e a r c h c o n t e n t s a n d a c h i e v e m e n t s a r e s p r e a d o u t a s f o l l o w s : 1 . t h e s y s t e m s t r u c t u r e o f j a v a h as b e e n g i v e n f u rt h e r r e s e a r c h . e s p e c i a ll y , t h e c o m p o s it i o n s t r u c t u r e o f j a v a a p i a n d i m p l e m e n t a t i o n m e c h a n i s m o f j a v a v m h a v e b e e n a n a l y z e d . t h e s e a r e b a s i c c o n t e n t o f t h e p r o j e c t . 2 . t h e p a p e r h a s d e t a i l e d l y a n a l y z e d t h e i m p o rt a n t p a rt i n t h e d e s i g n o f j a v a g u i p r o g r a m - a wt a n d t h e c o n c r e t e f u n c t i o n o f e v e r y c o m p o n e n t a s w e l l a s t h e r e l a t i o n o f h i e r a r c h i c a l s t r u c t u r e o f d i ff e r e n t c o m p o n e n t . a t t h e s a m e t i m e , e a c h m e t h o d a d o p t e d i m p l e m e n t i n g a wt i n j d k a n d i n k a ff e h a s b e e n e s p e c i a l l y d i s c u s s e d a n d t h e i r p l u s e s a n d m i n u s e s h a s b e e n p o i n t e d o u t . 3 . t h r o u g h a n a l y z i n g a n d a c c o r d i n g t o t h e n e e d s o f r e a l it y o f t h e p r o j e c t , e m b e d d e d j a v a v i rt u a l m a c h i n e -k a ff e , w h i c h i s o p e n s o u r c e , h a s b e e n c h o s e n a s r e s e a r c h p l a t f o r m o f t h e p r o j e c t . a s c h e m e , p o rt i n g t h e k a ff e a wt t o a n e m b e d d e d g r a p h i c l i b r a r y mi n i g u i , h a s b e e n p r o p o s e d o n t h e b a s i s o f a n a l y z i n g t h e s y s t e m s t r u c t u r e a n d i m p l e m e n t a t i o n m e t h o d o f k a ff e a wt . t h e i m p l e m e n t a t i o n w a y i n t h e s c h e m e h a s a n a n a l o g y t o w i n 3 2 , w h i c h h a s a lr e a d y f u l l y u t il i z e d r e s o u r c e s i n t h e g r a p h i c l i b r a r y o f l o w - l e v e l a n d c a n a l s o e n h a n c e e f f i c i e n c y . 4 . t h e p a p e r h as a n a l y z e d t h e i n t e r r e l a t i o n b e t w e e n k a ff e a w t a n d l o w - l e v e l g r a p h i c l i b r a ry as w e l l a s t h e m o d u l e a n d i n t e r f a c e o ff e r e d b y min i g u l . o n t h e b a s i s o f w h i c h , t h e c o n c r e t e p r o c e s s o f p o rt i n g k a ff e a wt t o mi n i g u i h as b e e n d i s s e rt a t e d i n d e t a i l . t h e im p l e m e n t a t i o n m o d e o f m e s s a g e s h a s b e e n d i s c u s s e d p r i n c i p a l l y . t h e e x p e r i m e n t a l r e s u l t s p r o v e t h a t t h e r e s u l t o f g r a p h i c s n e c e s s 盯y r u n n i n g i s g o o d o n t h e n e w s y s t e m a d o p t i n g t h e s c h e m e . t h e f u n c t i o n s h a v e b e e n i m p l e m e n t e d b a s i c a l l y . k e y w o r d s : d t v mi d d l e w a r e ; a wt ; j n i ; e m b e d d e d j v m; k a ff e ; mi n i g u i 西北工业人学硕士学位论文 第一章 绪论 第一章绪论 1 . 1 研究背景 伴随着二十一世纪的曙光, 人类迎来了一个充满希望的新时代。而作为二十 世纪人类社会最伟大的发明之一, 计算机也迈入了其另一个充满机遇的阶段 后p c时代.不知不觉中,形式多样化的数字化产品己经开始继p c机之后成为 信息处理的一大主要工具, 并且正在逐步形成一个充满商机的巨大产业。 数字化 家庭的概念也随着这一潮流而到来, 最先进入我们视野的是目 前极具市场前景的 数字电视 ( d t v ) o 面对这样的科技产业潮流,我国政府正在积极的进行数字电视的研究及推 广, 它被视为国民经济新的 增长点。 作为国 家高科技先导研究项目 的“ 8 6 3 计划” 特别为数字电视研究立项, 希望通过对数字电视系统的研究, 总结经验, 开发核 心技术,为国家制定数字电视方面的标准和进行数字电视技术推广打下基础。 数字电 视系统包括两方面关键技术: 一是电 视节目 制作和传送的 数字化, 二 是用户接收端的数字化。 后者作为用户端, 也被称作数字电视。 数字电 视由硬件 和软件两部分组成。 软件系统主要包括底层软件、 中间件以及运行于中间件之上 的应用软件。 其中, 数字电视中间件是将应用程序与操作系统平台、 具体的硬件 细节隔离开来的软件环境, 允许应用的设计、 运行不用考虑底层软硬件体系结构, 它以 应用程序接口a p i ( a p p l i c a t i o n p r o g r a m i n t e r f a c e ) 的形式存在, 整个a p i 集合 被存储在数字电视的fl a s h 中。 数字电 视中间 件这一概念包含两个层次的含义: 基础实体是中间件;同时, 它又具有实时嵌入式特性。 中间 件是一种独立的系统软件或服务程序, 分布式应 用软件借助这种软件在不同的技术之间共享资源, 它位于操作系统之上, 管理计 算资源和网络通讯,支持了不同的数字电视平台在统一的数字广播框架中的应 用,使得广播服务提供商可以向使用数字电 视平台的用户提供统一的 广播服务。 实时 性是系统能 够在限 定的响 应时间内 提供所需 水平服务的 属性, 一 般的 嵌入式 系统都具有对实时性的要求。 在工商业高度发达的当代社会中, 任何一种工业产品的实现都需要遵循一定 的行业标准, 数字电视中间件也不例外。目 前, 数字电视中间件技术尚无一个全 球统一的 标准, 主流的 标准有: 欧 洲的d v b - m h p ( m u l t im e d i a h o m e p l a t f o r m ) . 西北工业人学硕士学位论文 第一章 绪论 第一章绪论 1 . 1 研究背景 伴随着二十一世纪的曙光, 人类迎来了一个充满希望的新时代。而作为二十 世纪人类社会最伟大的发明之一, 计算机也迈入了其另一个充满机遇的阶段 后p c时代.不知不觉中,形式多样化的数字化产品己经开始继p c机之后成为 信息处理的一大主要工具, 并且正在逐步形成一个充满商机的巨大产业。 数字化 家庭的概念也随着这一潮流而到来, 最先进入我们视野的是目 前极具市场前景的 数字电视 ( d t v ) o 面对这样的科技产业潮流,我国政府正在积极的进行数字电视的研究及推 广, 它被视为国民经济新的 增长点。 作为国 家高科技先导研究项目 的“ 8 6 3 计划” 特别为数字电视研究立项, 希望通过对数字电视系统的研究, 总结经验, 开发核 心技术,为国家制定数字电视方面的标准和进行数字电视技术推广打下基础。 数字电 视系统包括两方面关键技术: 一是电 视节目 制作和传送的 数字化, 二 是用户接收端的数字化。 后者作为用户端, 也被称作数字电视。 数字电 视由硬件 和软件两部分组成。 软件系统主要包括底层软件、 中间件以及运行于中间件之上 的应用软件。 其中, 数字电视中间件是将应用程序与操作系统平台、 具体的硬件 细节隔离开来的软件环境, 允许应用的设计、 运行不用考虑底层软硬件体系结构, 它以 应用程序接口a p i ( a p p l i c a t i o n p r o g r a m i n t e r f a c e ) 的形式存在, 整个a p i 集合 被存储在数字电视的fl a s h 中。 数字电 视中间 件这一概念包含两个层次的含义: 基础实体是中间件;同时, 它又具有实时嵌入式特性。 中间 件是一种独立的系统软件或服务程序, 分布式应 用软件借助这种软件在不同的技术之间共享资源, 它位于操作系统之上, 管理计 算资源和网络通讯,支持了不同的数字电视平台在统一的数字广播框架中的应 用,使得广播服务提供商可以向使用数字电 视平台的用户提供统一的 广播服务。 实时 性是系统能 够在限 定的响 应时间内 提供所需 水平服务的 属性, 一 般的 嵌入式 系统都具有对实时性的要求。 在工商业高度发达的当代社会中, 任何一种工业产品的实现都需要遵循一定 的行业标准, 数字电视中间件也不例外。目 前, 数字电视中间件技术尚无一个全 球统一的 标准, 主流的 标准有: 欧 洲的d v b - m h p ( m u l t im e d i a h o m e p l a t f o r m ) . 西北工业大学硕士学位论文 第幸 绪论 美国 的o c a p ( o p e n c a b le a p p l i c a t io n p la t f o r m ) 标准 和日 本的a r i b ( a s s o c i a ti o n o f r a d i o i n d u s t r i e s a n d b u s i n e s s e s ) 标准。 其中可得到 广泛 应用的 是d v b 组织提出 的基干j a v a 虚拟机的d v b - mh p中间件标准。 我国政府己经将数字电视产业作为国民 经济下一个主要增长点 国家数字电 视标准即 将出台, 并以 欧洲 m h p 标准为 参考制定, 其中 包括了 对于客户端各部分 结构和接口的规范。图1 - i 清楚的描述了m h p 标准下中间件的体系结构。 数字电视中间件 瓜卜本 地 的 或 诫的 6 r ! 11 , ,口 i irltll if a p is+ 口 应 用 管 理 器 1口 门卜 n i l a p t, r * w = . (m )1 f a p is 数亨, 1 t 视硬件平台以及+ r f 1 系统、驱功程序若 图1 - 1 m h p 标准中间 件体系结构 以m h p 标准规范为 基础, 在教研室 所承担的国家9 6 3 课题“ 面向d t v的 嵌入式中间件研究” 背景下, 我们设计出了一个数字电 视中间件软件环境, 其主 要包含了一个j a v a 虚拟机、 应用管理器、 基础a p i s 、 应用支持a p i s 以及面向 数 字电 视的本地应用, 如图1 - 2 所示。 数字电视中间件 、11、1碑 木地的或下载的应用 v 匣 用 支 拜a p i s 幽 卜口 应用管理器 口 卜州巨 m a p is ( n il 19 )a喇卜 a ci a p i, (j. v m ) . 图1 - 2数宇电 视中间件层次结构关系 从图1 - 2 可以 看出, 本地的或是下载的应用通过j a v a 虚拟机解释, 并在数字 西北工业大学硕士学位论文 第一章 绪论 电视系统中执行。 其中,当本地应用需要呈现图形, 如电子节目表单或是图文信 息等时, 由 应用程序调用j a v a a w t ( a p p l i c a t i o n w i n d o w t o o lk i t ) 图形机制绘制。 j a v a a wt在逻辑上进行绘图, 实际它调用基础a p i s 中的图形库, 将图形绘制到 显示设备中, 从而完成图形从逻辑绘制到实际物理绘制的过程。 在适当的地方采 用j a v a a wt 编写一些用户界面, 可以使得用户和数字电 视系统更好地进行交互, 从而可以让数字电视得到更好的普及。 1 . 2 国内外的研究现状 由于j a v a a wt是j a v a 平台中 一个重要的组成部分,因此,当 要讨论j a v a a w t的发展现状时, 必须针对具体的j a v a 平台 进行具体的分析。 在现如今流行 的j a v a 技术中,尤其以s u n 公司的j a v a 2 技术最为突出。在该技术的实现中, a wt的主要作用是给用户提供基本的界面构件,例如按钮、列表、菜单、文本 域等。此外, a wt还提供事件处理结构、支持剪贴板、数据传输和图像操作。 随着2 d a p i 的出现, a w t 还包括提供高级字体操作、 打印、 地理数据获取和输 入方法等功能的软件包。 a w t的 初始版本是 基于在 简单用户界面中 开发小a p p l e t 程序而设计的, 与 之相比,当前的a wt 做了很大的改进, 它提供事件模型重新设计、剪贴板和数 据传输支持以 及打印和无鼠 标操作等功能。从而与p a r c p l a c e 的v i s u a l w o r k 或 b o r l a n d 公司 的o b j e c t w in d o w s l ib r a ry ( o w l ) 等 企 业级 用户 界 面具 有更多 的 可比 j性。 随 着a p p l e t 程序 和图 形 应 用接口 的 发 展, a w t 提 供了 一 系列的 通 用 类, 这 些 通 用 类在引 用时 不 需 要 考 虑 特定的 窗口 平台, 对 等实 体 ( p e e r ) 就属 于 这 种a w t 类集。 对等实体是一种本地图 形用户接口 ( g u i . g r a p h i c s u s e r i n t e r f a c e ) 构件, 由 a w t 类管理。 a wt 构件中, 包含有对其对等实体的大量操作。 例如, 如果你使 用a wt 创建一个m e n u 类的实例, 那么当j a v a 运行时系统将创建一个菜单对等 实 体的 实 例, 而由 创 建的 对 等实 体实 际 执 行菜 单的 显 示和 管理 图1 - 3 说明 了 对 等实体配 合本地窗口 系统显示构件的 过程l 。 本地窗口 系统 对等实体 一 -卜 j a v a a wt 卜 j a v a 程序 熨 黔 薰 纂 , c渔 摇聪哟终队杭 t 髓 歌驻 丝 墓 那牛 吹 叭色 湘创 六 瑞 j 二 呵 汽 图t - 3 工作中的对等实体 西北工业大学硕士学位论文 第一章 绪论 电视系统中执行。 其中,当本地应用需要呈现图形, 如电子节目表单或是图文信 息等时, 由 应用程序调用j a v a a w t ( a p p l i c a t i o n w i n d o w t o o lk i t ) 图形机制绘制。 j a v a a wt在逻辑上进行绘图, 实际它调用基础a p i s 中的图形库, 将图形绘制到 显示设备中, 从而完成图形从逻辑绘制到实际物理绘制的过程。 在适当的地方采 用j a v a a wt 编写一些用户界面, 可以使得用户和数字电 视系统更好地进行交互, 从而可以让数字电视得到更好的普及。 1 . 2 国内外的研究现状 由于j a v a a wt是j a v a 平台中 一个重要的组成部分,因此,当 要讨论j a v a a w t的发展现状时, 必须针对具体的j a v a 平台 进行具体的分析。 在现如今流行 的j a v a 技术中,尤其以s u n 公司的j a v a 2 技术最为突出。在该技术的实现中, a wt的主要作用是给用户提供基本的界面构件,例如按钮、列表、菜单、文本 域等。此外, a wt还提供事件处理结构、支持剪贴板、数据传输和图像操作。 随着2 d a p i 的出现, a w t 还包括提供高级字体操作、 打印、 地理数据获取和输 入方法等功能的软件包。 a w t的 初始版本是 基于在 简单用户界面中 开发小a p p l e t 程序而设计的, 与 之相比,当前的a wt 做了很大的改进, 它提供事件模型重新设计、剪贴板和数 据传输支持以 及打印和无鼠 标操作等功能。从而与p a r c p l a c e 的v i s u a l w o r k 或 b o r l a n d 公司 的o b j e c t w in d o w s l ib r a ry ( o w l ) 等 企 业级 用户 界 面具 有更多 的 可比 j性。 随 着a p p l e t 程序 和图 形 应 用接口 的 发 展, a w t 提 供了 一 系列的 通 用 类, 这 些 通 用 类在引 用时 不 需 要 考 虑 特定的 窗口 平台, 对 等实 体 ( p e e r ) 就属 于 这 种a w t 类集。 对等实体是一种本地图 形用户接口 ( g u i . g r a p h i c s u s e r i n t e r f a c e ) 构件, 由 a w t 类管理。 a wt 构件中, 包含有对其对等实体的大量操作。 例如, 如果你使 用a wt 创建一个m e n u 类的实例, 那么当j a v a 运行时系统将创建一个菜单对等 实 体的 实 例, 而由 创 建的 对 等实 体实 际 执 行菜 单的 显 示和 管理 图1 - 3 说明 了 对 等实体配 合本地窗口 系统显示构件的 过程l 。 本地窗口 系统 对等实体 一 -卜 j a v a a wt 卜 j a v a 程序 熨 黔 薰 纂 , c渔 摇聪哟终队杭 t 髓 歌驻 丝 墓 那牛 吹 叭色 湘创 六 瑞 j 二 呵 汽 图t - 3 工作中的对等实体 西北工业大学硕七学位论文第一章 绪论 除了s u n 公司的j a v a 2 技术外,另一个在目 前来说较为流行的j a v a 平台 是 t r a n s v i r t u a l 公司提供的k a f f e a k a f f e 是一个完全符合j a v a 规范的 但又与s u n 公 司的j a v a 技术有所区别的开放源码的j a v a 平台实现, 适用于嵌入式系统。 k a f f e 中的a wt和j a v a 2 技术中的a wt在功能上类似,但在实现方法上有所区别。 在实现a wt时,k a f f e 放弃了对等实体的概念, 提出了新的思路数据指针 ( n a t i v e d a t a p t r ) 。 这一实 现的 要点 是, 每 个必 须同 具 体的 窗口 系 统 进 行通 信的 部 件内 有一个指针( p t r ) 对象 n a t i v e d a t a 。对 a w t构件进行操作时, 构件将调用 t o o l k i t 中的 相 应方法, 而n a t i v e d a t a 则作为方法调用的 参数z 通常而言,a wt和j v m都同属于j a v a 平台中的一部分。s u n 公司的j a v a 2 技术中 有 三 个标 准 类型: 企 业 版j 2 e e ( j a v a 2 p l a t f o r m , e n t e r p r i s e e d it io n ) ; 标准 版 j 2 s e ( j a v a 2 p l a t f o r m , s t a n d a r d e d i t i o n ) ; 微型版 j 2 m e ( j a v a 2 p l a t f o r m , m i c r o e d i t i o n ) 。 其中 的j 2 m e 是 适用于 嵌入式系 统的, 从j a v a 技术上来说也比 较成熟, 而且和上层的j a v a其他技术有很好的兼容性,但在针对具体硬件环境进行移植 时会比 较麻烦一些7 。 而k a f f e 也支持多 种嵌入式系统的应用, 并且由于它是开 放源码的, 所以在对其进行研究和移植时, 会较容易一些, 同时还可以节省开支。 1 . 3 论文的研究内容 本文是以国家8 6 3 专题项目“ 面向d t v的嵌入式中间件研究”为背景,在 我们所设计的数字电视中间件软件环境 ( 见图1 - 2 ) 基础上,重点针对其中的基 础a p i , 层的重要组成部分一 一j a v a a wt 做了 深入的 研究, 并给出了 具体的实 现 方式。 文中首先对j a v a 的整个体系结构进行了 研究,并针对其中的几个主要部分, 如j a v a 虚拟机、j a v a a p i 、以及j a v a c l a s s 文件的重要作用进行了探讨。其次, 分析了j a v a a wt的 层次结构以 及各构件的用途, 并且重点就j d k以 及k a ff e 中 各自 针对a w t 所采用的实 现方式给予了 详细的分析。 第三, 根据我们所设计的 数字电 视系统的需求, 提出了 基于m i n i g u i 的k a ff e a w t实 现方案。 最后, 详 细论述了 在m i n i g u i 上实现k a ff e a wt 的具体过程,并在嵌入式l i n u x 系统上 给予了较为完整的实现。 1 . 4 论文的组织结构 本文共包含五章内 容, 依次阐述了作者对所做课题的认识, 整个课题从分析、 研究、 设计、 编码、 测试直到实现的全过程。 次为: 详细讲述了对于 各章节的内容依 西北工业大学硕七学位论文第一章 绪论 除了s u n 公司的j a v a 2 技术外,另一个在目 前来说较为流行的j a v a 平台 是 t r a n s v i r t u a l 公司提供的k a f f e a k a f f e 是一个完全符合j a v a 规范的 但又与s u n 公 司的j a v a 技术有所区别的开放源码的j a v a 平台实现, 适用于嵌入式系统。 k a f f e 中的a wt和j a v a 2 技术中的a wt在功能上类似,但在实现方法上有所区别。 在实现a wt时,k a f f e 放弃了对等实体的概念, 提出了新的思路数据指针 ( n a t i v e d a t a p t r ) 。 这一实 现的 要点 是, 每 个必 须同 具 体的 窗口 系 统 进 行通 信的 部 件内 有一个指针( p t r ) 对象 n a t i v e d a t a 。对 a w t构件进行操作时, 构件将调用 t o o l k i t 中的 相 应方法, 而n a t i v e d a t a 则作为方法调用的 参数z 通常而言,a wt和j v m都同属于j a v a 平台中的一部分。s u n 公司的j a v a 2 技术中 有 三 个标 准 类型: 企 业 版j 2 e e ( j a v a 2 p l a t f o r m , e n t e r p r i s e e d it io n ) ; 标准 版 j 2 s e ( j a v a 2 p l a t f o r m , s t a n d a r d e d i t i o n ) ; 微型版 j 2 m e ( j a v a 2 p l a t f o r m , m i c r o e d i t i o n ) 。 其中 的j 2 m e 是 适用于 嵌入式系 统的, 从j a v a 技术上来说也比 较成熟, 而且和上层的j a v a其他技术有很好的兼容性,但在针对具体硬件环境进行移植 时会比 较麻烦一些7 。 而k a f f e 也支持多 种嵌入式系统的应用, 并且由于它是开 放源码的, 所以在对其进行研究和移植时, 会较容易一些, 同时还可以节省开支。 1 . 3 论文的研究内容 本文是以国家8 6 3 专题项目“ 面向d t v的嵌入式中间件研究”为背景,在 我们所设计的数字电视中间件软件环境 ( 见图1 - 2 ) 基础上,重点针对其中的基 础a p i , 层的重要组成部分一 一j a v a a wt 做了 深入的 研究, 并给出了 具体的实 现 方式。 文中首先对j a v a 的整个体系结构进行了 研究,并针对其中的几个主要部分, 如j a v a 虚拟机、j a v a a p i 、以及j a v a c l a s s 文件的重要作用进行了探讨。其次, 分析了j a v a a wt的 层次结构以 及各构件的用途, 并且重点就j d k以 及k a ff e 中 各自 针对a w t 所采用的实 现方式给予了 详细的分析。 第三, 根据我们所设计的 数字电 视系统的需求, 提出了 基于m i n i g u i 的k a ff e a w t实 现方案。 最后, 详 细论述了 在m i n i g u i 上实现k a ff e a wt 的具体过程,并在嵌入式l i n u x 系统上 给予了较为完整的实现。 1 . 4 论文的组织结构 本文共包含五章内 容, 依次阐述了作者对所做课题的认识, 整个课题从分析、 研究、 设计、 编码、 测试直到实现的全过程。 次为: 详细讲述了对于 各章节的内容依 西北工业大学硕七学位论文第一章 绪论 除了s u n 公司的j a v a 2 技术外,另一个在目 前来说较为流行的j a v a 平台 是 t r a n s v i r t u a l 公司提供的k a f f e a k a f f e 是一个完全符合j a v a 规范的 但又与s u n 公 司的j a v a 技术有所区别的开放源码的j a v a 平台实现, 适用于嵌入式系统。 k a f f e 中的a wt和j a v a 2 技术中的a wt在功能上类似,但在实现方法上有所区别。 在实现a wt时,k a f f e 放弃了对等实体的概念, 提出了新的思路数据指针 ( n a t i v e d a t a p t r ) 。 这一实 现的 要点 是, 每 个必 须同 具 体的 窗口 系 统 进 行通 信的 部 件内 有一个指针( p t r ) 对象 n a t i v e d a t a 。对 a w t构件进行操作时, 构件将调用 t o o l k i t 中的 相 应方法, 而n a t i v e d a t a 则作为方法调用的 参数z 通常而言,a wt和j v m都同属于j a v a 平台中的一部分。s u n 公司的j a v a 2 技术中 有 三 个标 准 类型: 企 业 版j 2 e e ( j a v a 2 p l a t f o r m , e n t e r p r i s e e d it io n ) ; 标准 版 j 2 s e ( j a v a 2 p l a t f o r m , s t a n d a r d e d i t i o n ) ; 微型版 j 2 m e ( j a v a 2 p l a t f o r m , m i c r o e d i t i o n ) 。 其中 的j 2 m e 是 适用于 嵌入式系 统的, 从j a v a 技术上来说也比 较成熟, 而且和上层的j a v a其他技术有很好的兼容性,但在针对具体硬件环境进行移植 时会比 较麻烦一些7 。 而k a f f e 也支持多 种嵌入式系统的应用, 并且由于它是开 放源码的, 所以在对其进行研究和移植时, 会较容易一些, 同时还可以节省开支。 1 . 3 论文的研究内容 本文是以国家8 6 3 专题项目“ 面向d t v的嵌入式中间件研究”为背景,在 我们所设计的数字电视中间件软件环境 ( 见图1 - 2 ) 基础上,重点针对其中的基 础a p i , 层的重要组成部分一 一j a v a a wt 做了 深入的 研究, 并给出了 具体的实 现 方式。 文中首先对j a v a 的整个体系结构进行了 研究,并针对其中的几个主要部分, 如j a v a 虚拟机、j a v a a p i 、以及j a v a c l a s s 文件的重要作用进行了探讨。其次, 分析了j a v a a wt的 层次结构以 及各构件的用途, 并且重点就j d k以 及k a ff e 中 各自 针对a w t 所采用的实 现方式给予了 详细的分析。 第三, 根据我们所设计的 数字电 视系统的需求, 提出了 基于m i n i g u i 的k a ff e a w t实 现方案。 最后, 详 细论述了 在m i n i g u i 上实现k a ff e a wt 的具体过程,并在嵌入式l i n u x 系统上 给予了较为完整的实现。 1 . 4 论文的组织结构 本文共包含五章内 容, 依次阐述了作者对所做课题的认识, 整个课题从分析、 研究、 设计、 编码、 测试直到实现的全过程。 次为: 详细讲述了对于 各章节的内容依 西北工业大学硕士学位论文第一章 绪论 第一章绪论,综述性介绍了论文的研究背景,研究现状,以及主要的研究内 容。 第二章论述了该课题的基础内容j a v a 平台的体系结构,并重点研究分析 了j a v a 平台的核心j a v a 虚拟机的结构和原理,同时讨论了j a v a a p i 的组成结 构以及重要用途。 第三章主要研究了j a v a a wt 的层次结构以及各构件的功能, 并重点分析了针 对现在的两大主流的j a v a 平台j d k 和k a ff e ,其a wt 部分各是采用何种方式 来实现的。 第四章详细论述了 嵌入式j a v a 虚拟机k a ff e 的原理, 重点分析了 a w t 部分的实 现方法,提出了 如何在m i n i g u i 图形库上实现k a ff e a wt 的方案。在对m i n i g u i 的特性和k a f f e a wt 的 特点做了比 较的基础上, 详细的论述了 在min i g u i 上实现 k a f f e a w t 的具体操作过程, 深入分析了消息处理的实现方式, 并在嵌入式l i n u x 上进行了较为完整的实现。 第五章简要论述了 在实现了 本地接口 函数后, 如何编写m a k e f i l e 文件以 及如 何安装系统,并对系统进行了 测试。 最后, 对目前工作进行总结, 提出了 下一步的研究方向和关键问题。 西北t 业大学硕士学位论文第二章j a v a 体系结构研究 第二章j a v a a v a 体系结构研究 弟一早 1 伞系绡倒饼九 从图2 1 中我们可以看出,j a v a 的整体框架主要由两个部分组成,即虚拟机 f v i r t u a lm a c h i n e ) 和应用程序接口( a p i ) 。我们可以把虚拟机看成是一套虚拟的计 算机,有一个标准的规格可以用软件或硬件束实现。而位于j a v a 虚拟机下层的移 植接口层和a d a p t c r 贝0 是为了使j a v a 虚拟机能够方便的移植到不同的操作系统之 上而开发出来的。另外,位于j a v a 虚拟机之上的j a v aa p i 部分则包含了基本型的 a p i 类与标准延伸的a p i 类,前者如标准的i o ,网络功能,g u i 等,后者则是除 了前者之外,另外再加上去的应用类”1 。 图2 - 1j a v a 系统结构图 图2 - 2 在j a v a 平台上运行的j a v a 程序 j a v a 虚拟机和j a v aa p i 一起组成了一个“平台”,所确c j a v a 程序都在这上面 西北工业大学硕士学位论文 第二章j a v a 体系结构研究 编译执行。j a v a 虚拟机和j “aa p i 的组合除了被称为j a v a 运行时系统之外,还被 称为j a v a 平台。j a v a 程序可以在不同的计算机上运行,这是因为j a v a 平台自己可 以用软件实现。从图2 2 可以看出,j a v a 程序可以在有j a v a 平台的任何地方运行。 2 1j 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 虚拟机是一个j a v a 程序运行的平台,也就是说任何计算机系统上可支持 j v m 的环境,便可以运行j a v a 程序。例如在w i n d o w s 、m o c o s 及各种版本的 u n i x l i n u x 或其他操作平台上装有j v m ,便能接受经过编译的j a v a 字节码程序 运行。另外除了j a v a 编译器可以产生字节码外,理论上,扩展到任何编程语言 的编译器可以产生与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 a v a 面向网络体系结构三大支柱的所有方面:平台无关性、安全性和网 络移动性。 2 1 1j a v a 虚拟机是什么 当我们通常说“j a v a 虚拟机”时,有可能指如下三种不同的东西 抽象规范。 一个具体的实现。 一个运行中的虚拟机实例。 j

温馨提示

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

评论

0/150

提交评论