(信号与信息处理专业论文)嵌入式图形用户界面的应用开发.pdf_第1页
(信号与信息处理专业论文)嵌入式图形用户界面的应用开发.pdf_第2页
(信号与信息处理专业论文)嵌入式图形用户界面的应用开发.pdf_第3页
(信号与信息处理专业论文)嵌入式图形用户界面的应用开发.pdf_第4页
(信号与信息处理专业论文)嵌入式图形用户界面的应用开发.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(信号与信息处理专业论文)嵌入式图形用户界面的应用开发.pdf.pdf 免费下载

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

文档简介

南京邮电大学硕士研究生学位论文 摘要 摘要 近年来,嵌入式系统得到了飞速的发展,产品形态也越来越多样化。由于嵌入式产品 的商业化程度的加剧,用户对图形用户界面( g u i ) 的要求也越来越高,但是多受到硬件本身 条件的限制。以手持设备、实时系统为典型代表的嵌入式系统需要一个轻型、可灵活配置、 非常友好的图形用户界面。 因此,如何开发一个适合自己硬件条件的g u i 系统,成了嵌入式系统开发的一个重要 工作内容。本文以深圳艾科创新微电子有限公司研发的a r m 9 2 6 芯片之上开发图形应用界 面。 论文首先概述了嵌入式系统及通用图形用户界面的发展情况,接着介绍了几种典型的 嵌入式系统下的图形用户界面系统,并简要分析了各自的特点。详细的给出了本文所涉及 到的开发环境的搭建和配置。然后详细地分析研究了基于l i n u x 的典型嵌入式图形界面支 持系统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 基础上p m p 图形用户界面的实现。并对 涉及到的一些相关技术细节和重要算法进行了改进,实验证明效果明显。最后对于嵌入式 技术以及l i n u x 的发展前景进行了展望。 论文充分利用m i n i g u i 系统资源的特点,实现的p m p 用户图形界面,通过交叉编译 移植到开发板上程序能稳定运行。该程序的实现为开发基于l i n u x 的嵌入式图形界面系统 的应用软件提供了一个借鉴,对于嵌入式l i n u x 环境下的应用程序开发也有一定参考价 值。目前已比较成熟,并已应用到很多项目的实际开发中。 关键词:嵌入式系统、l i n u x 、图形用户界面、m i n i g u i 、p m p 南京邮电大学硕士研究生学位论文 a b s t r a c t a b s t r a c t e m b e d d e ds y s t e mw h i c hi sr e p r e s e n t e dt y p i c a l l yw i t hh a n d h e l dd e v i c e s a n d r e a l t i m es y s t e mr e q u i r e sa1 i g h t 、e a s i l yc o n f i g u r a b l ea n df r i e n d l yg u i ( g r a p h i c u s e ri n t e r f a c e ) f i r s t l y ,t h i st h e s i sd e s c r i b e sb r i e f l yt h ed e v e l o p i n gs i t u a t i o n so fe m b e d d e d s y s t e ma n dg u i ,t h e ni n t r o d u c e ss e v e r a lk i n d so fg u io ne m b e d d e ds y s t e ma n da n a l y z e s r o u g h l yt h e i ro w nc h a r a c t e r i s t i c s p r e s e n t e di nt h et h i r dc h a p t e rr e l a t e st ot h e d e v e l o p m e n to ft h ee n v i r o n m e n ts e t u pa n dc o n f i g u r a t i o n i nt h ef o u r t hc h a p t e r ,a t y p i c a le m b e d d e dg u im i n i g u ib a s e do nl i n u xi sa n a l y z e da n ds t u d i e d ,i n c l u d i n g m a i nc h a r a c t e r i s t i c s 、a r c h i t e c t u r e 、o o pa n do t h e rr e l a t e dt e c h n o l o g i e so fm i n i g u l i nt h ef i f t hc h a p t e r ,ap m pe x a m p l eb a s e do ne m b e d d e ds y s t e mi sp r e s e n t e d a 1 s o , s o m er e l a t e dt e c h n o l o g i e sa n di m p o r t a n ta r i t h m e t i c sa r ei m p r o v e d i t se x p e r i m e n t a l e f f e c ti ss a t i s f a c t o r y i nt h es i x t hc h a p t e r ,t h ef u t u r eo fe m b e d d e dt e c h n o l o g y a n dl i n u xw a so u t l i n e d t h ep m pp r o g r a mi sc h a r a c t e r i z e dw i t hs i m p l ed e s i g na n df u l lu t i l i z a t i o n m i n i g u is y s t e mr e s o u r c e s i ti sv e r ys u i t a b l et oe m b e d d e ds y s t e m t h ei m p l e m e n t o ft h ep r o g r a mp r o v i d e sr e f e r e n c e st od e v e l o p i n gg u ib a s e do ne m b e d d e dl i n u xa n d d e v e l o p i n ga p p li c a t i o ns o f t w a r eb a s e do nl i n u x k e y w o r d s :e m b e d d e ds y s t e m 、l i n u x 、g u i 、m i n i g u i 、p m p 南京邮电大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得南京邮电大学或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示了谢意。 研究生签名:丕! 重f 包日期:丝煎:竺,弓 南京邮电大学学位论文使用授权声明 南京邮电大学、中国科学技术信息研究所、国家图书馆有权保留 本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其 他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一 致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布 ( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权 南京邮电大学研究生部办理。 南京邮电人学硕士研究生学位论文第一章绪论 第一章绪论 在过去的十年中,嵌入式系统的开发发生了很大的变化。以前嵌入式设备往往是一个 孤立的、资源有限的系统,它们追求的是在有限的价格上满足一定的功能性要求。通常它 们采用那些功能并不强大的c p u ,这也使开发者不得不尽可能地压缩嵌入式系统性能的原 因。而今天人们对嵌入式设备在智能化和互连性上提出了要求,使得嵌入式设备不再是孤 立的,它们要通过互联网、无线或是其他的方式实现相互连接,同时也是软件生态系统 ( s o f t w a r ee c o s y s t e m ) 的一部分。最初的嵌入式设备是单一用途的,它们拥有各自独特的 显示方式和用户界面;而今天它们变成了称之为“等同p c ”的系统。它们必须运行很多相同 的应用程序,采用相同的方式实现互连或是在某些情况下增强互连性,因此可以看到在传 统的实时操作系统( r t o s ) 之上建立应用程序的必要性。作为内部开发( i n h o u s ed e v e l o p e d ) 操作系统的替代方式,r t o s 的出现使得建立嵌入式应用变得更加容易。 在2 0 0 0 年以前,大多数的嵌入式系统仍然建立在内部开发的操作系统( o s ) 基础之 上。如果开发者试图通过内部开发建立某些嵌入式系统,就不得不建立从固件到应用程序 的完整的软件栈( s o f t w a r es t a c k ) 。垂直集成在给开发者带来很大的控制能力的同时,也需 要其在开发和维护上进行大量的投入。开发者通常希望使他们的应用变得与众不同。这就 使得内部开发操作系统整合自主产权内核的方法逐渐被淘汰,而w i n d r i v e r 和其他的商业 化r t o s 产品赢得了越来越大的市场份额。 如果使用v x w o r k s ( v x w o r k s 操作系统是美国w i n d r i v e r 公司于1 9 8 3 年设计开发的一种 嵌入式实时操作系统) 或者是p s o s ( p s o s 是一个由标准软组件组成的,可剪裁的实时操作系 统) ,仍然免不了要在建立应用软件和中间件上进行大量投入。这是因为围绕在这些操作系 统周边的软件生态资源十分有限。例如对于v x w o r k s ,只有一种w e b s e r v e r 可供使用,而 如果采用l i n u x ,会有八九种w e b s e r v e r 供你选择;v x w o r k s 只提供了一种网页浏览器,而 l i n u x 有1 6 种不同的网页浏览器支持。一般对于某种实时系统只能选择一种文件系统 通常情况下为与w i n d o w s 兼容多选用f a t 文件系统;而l i n u x 包含八九种本地文件系统, 可以与十多种外部文件系统兼容。 传统的r t o s 与l i n u x 相比还有一个很大的不同,传统的r t o s 是一系列“服务”的集 合( 1 i b r a r i e so f s e r v i c e s ) ,开发者需要一个功能就加入一个功能,如果丌发者不需要就将它 l 南京邮电火学硕士研究生学位论文第一章绪论 们去掉。但这就意味着建立在一个r t o s 上的系统的每一个执行程序都是不同的,因为开 发者只是与那些需要的“服务”相联系,建立的是一组独特的服务集合,不像是一个操作系 统。而l i n u x 操作系统提供了一个统一的平台,使得那些智能设备不但可以获得更好的互 连性,增强彼此之间的差异性,同时也获得了不同的生命周期。 以手机的开发为例,一部智能手机在出厂时具有一系列确定的功能。但是在销售渠 道中,人们往往希望对它原有的功能进行修改,或是加入其他的功能。运营商希望在他们 销售的手机中体现出更多的差异化,他们希望加入诸如游戏等更多的服务。而最终用户也 许还希望能够从第三方购买到更丰富的游戏和其他服务。如果开发者的手机是一个单一用 途的设备,它只能提供有限的服务,那么在它基础上建立服务和其他增值功能将非常困难。 但如果开发者面对的是一部采用嵌入式l i n u x 的手机,并了解a p i 和相关的标准,他们就 可以十分迅速地建立起丰富的软件生态系统并迅速占领市场。产品的差异化与互连性息息 相关,这包括它的网络互连性、与中间件的互连性,以及与外围生态环境的互连性。l i n u x 作为一个“在互联网上成长起来的动物”,无论从哪方面讲都应该算是互连性最好的操作系 统。 有人会将l i n u x 与微软的w i n d o w s 相比较,确实w i n d o w s 具有很好的互连性,且具有 非常全面的软件栈。但一旦开发者用w i n d o w s 建立了产品,也就丧失了实现差异化的机会。 仅仅将w i n d o w so s 加到产品中并实现商用是十分迅速的。所以如果想获得面市时间上的 优势,w i n d o w s 会带来很多功能性上的优势。但在获得功能性的同时,也就失去了差异化 的机会。当然,w i n d o w s 还有其他一些技术上的问题,这主要体现在可靠性和软件规模方 面。w i n d o w s 的“体积”十分庞大。人们都在说l i n u x 很大,确实与传统r t o s 的7 0 - 8 0 k 的 代码规模相比,l i n u x 的大小通常在几兆字节,而最小的w i n d o w sc e 的代码规模也有 2 7 m b 。w i n d o w s 和其它r t o s 还将遇到来自用户不断增加的使用成本( r u n t i m ec o s t s ) 方 面的挑战,因为他们收取高额的版税。嵌入式w i n d o w s 的版权费大约为每拷贝1 2 1 5 美元。 对于那些大批量的产品,其每件产品上可承受的分摊成本十分有限,如果要向w i n d o w s 支 付这样的版税,很可能会造成亏本。其它商业化的r t o s 采用的也是这样一种收取版税的 商业模式。而l i n u x 突出的一个优点就是免版税。 l i n u x 还具有很好的可靠性。传统的r t o s 通常不具备强大的内存保护功能,这使应用 程序很容易被破坏。另一个影响嵌入式系统对操作系统选择的是商业因素。在这方面传统 r t o s 供应商和微软的境遇是相同的。传统r t o s 供应商和微软都会在不与客户协商的情 况下终止某一产品的供应,他们的商业决策是从他们公司自身的利益出发的,而不是站在 客户的角度考虑。l i n u x 则能给予使用者更多的选择。如果采用一个开放源码的操作系统, 2 南京邮电大学硕士研究生学位论文 第一章绪论 开发者能够主宰他们自己的命运,他们不必被一个供应商的决策牵着鼻子走,他们总是有 很多选择 l i n u x 是开放源码的,其发展速度十分迅速。因此大多数自主开发的项目实际上是我们 称之为“某一时间点( p o i n t i n t i m e ) ”的版本,因为开发者只是选取了某一时段的源代码并 基于它进行开发,而并不想继续投资以保持与l i n u x 同步的发展。 l i n u x 拥有很多的优良特性非常适合于嵌入式开发:开放源码,拥有丰富的软件资源;健 壮、强大的内核;支持多种体系结构,包括x 8 6 、a r m 、m i p s 等几乎所有主流的c p u ;完 善的网络通信、图形和文件管理机制;支持大量的周边硬件设备,驱动丰富;大小功能均可定 制,充分满足嵌入式设备可定制的要求。j 下是由于l i n u x 具有这么多优点,使得它在嵌入式 领域取得了长足的发展。在桌面版的l i n u x 系统中普遍采用的g u i 是x w i n d o w s 系统, 但显然它相对于嵌入式系统来说是过于庞大了,嵌入式系统要求的是一个轻量级的性能可 靠和可裁减的g u i ,因此需要一个适合嵌入式系统的g u i 。 图形用户界面( g u i ) 的广泛流行,是当今计算机技术的重大成就之一。它极大地方 便了非专业用户的使用,因此实时嵌入式系统对g u i 的需求越来越明显,而这一切均要求 有一个高性能、高可靠的g u l 支持。f r a m e b u f f e r 是l i n u x 控制台下的一个通用的图形接 口,它拥有良好的平台无关性,可以支持绝大多数的硬件,因而得到愈来愈多厂家的支持,一 些流行的图形库如q t 、g t k 便是基于f r a m e b u f f e r 的。它的接口非常简单,通过它可以十 分方便地构建一个图形系统。 随着软硬件资源的成熟与完善,对嵌入式系统的研究,激起了人们极大的兴趣。选择开 放源码的l i n u x 操作系统开发新一代嵌入式产品已经成为其中新的技术热点。与此同时, 配备一个优秀的图形用户界面,使产品和用户能进行友善可靠地交互也已成为开发工作中 非常紧迫的要求。 本文首先介绍嵌入式系统以及g u i 的发展概况,并对几种典型的g u i 系统进行了比较 分析;第三章主要介绍了本论文所基于的软硬件环境的搭建和配置,解决了配置和安装过 程中所遇到的关键问题;第四章详细地分析研究了基于l i n u x 的典型嵌入式图形界面支持 系统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 基础上p m p 图形用户界面的实现,并对涉及到的一 些相关技术细节和重要算法进行了改进,实验证明效果明显。最后做了总结以及对本文研 究成果进行了一个展望。 南京邮电人学硕士研究生学位论文第二章嵌入式系统及g u ! 发展概况 第二章嵌入式系统及g ui 发展概况 随着嵌入式系统应用领域的不断扩大,系统复杂性也在不断提高。所以在嵌入式系统 中实现用户图形化( g u i ) ,已经成为大势所趋。 2 1 嵌入式系统 嵌入式系统是指操作系统和功能软件集成于计算机硬件系统之中。简单的说就是系统 的应用软件与系统的硬件一体化,类似与b i o s 的工作方式。具有软件代码小,高度自动 化,响应速度快等特点。特别适合于要求实时的和多任务的体系。 2 1 1 嵌入式系统的定义 嵌入式系统的定义可以从广义上和狭义上来讲。广义上讲,可以认为凡是带有微处理 器的专用软硬件系统都可以称为嵌入式系统。作为系统核心的微处理器又包括三类:微控 制器( m c u ) 、数字信号处理器( d s p ) 、嵌入式微处理器( m p u ) 。所以有人简单的说:“嵌入 式系统是指操作系统和功能软件集成于计算机硬件系统之中”。还有人认为嵌入式系统就是 “以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、 成本、体积、功耗严格要求的专用计算机系统”。应该说后者从功能应用特征上比较好的给 出了嵌入式系统的定义,嵌入式的概念的分析根本上应该从应用上加以切入。从狭义上讲, 我们更加强调那些使用嵌入式微处理器构成独立系统,具有自己的操作系统并且具有某些 特定功能的系统,这里的微处理器专指3 2 位以上的微处理器。按照这种定义,典型的嵌 入式系统有使用x 8 6 的小型嵌入式工控主板,在各种自动化设备,数字机械产品中有非常 广阔的应用空间:另外一大类是使用i n t e l ,m o t o r o l a 等专用芯片构成的小系统,它不仅仅 在新兴的消费电子和通讯仪表等方面获得了巨大的发展应用空间,而且甚至有趋势取代传 统的工控机。现在大家更加清楚的看到:嵌入式技术的春天已经来了。所以也就难怪嵌入 式系统成为当前最热门的技术之一。 4 南京邮电大学硕士研究生学位论文第二章嵌入式系统及g u i 发展概况 2 1 2 嵌入式系统的历史 嵌入式系统的出现至今已经有3 0 多年的历史了,嵌入式技术也历经了几个发展阶段。 进入9 0 年代后,以计算机和软件为核心的数字化技术取得了迅猛发展,不仅广泛渗透到 社会经济、军事、交通、通信等相关行业,而且深入到家电、娱乐、艺术、社会文化等各 个领域,掀起了一场数字化技术革命。多媒体技术与i n t e m e t 的应用迅速普及,消费电子、 计算机、通信( 3 c ) 一体化趋势日趋明显,嵌入式技术再度成为一个研究热点。综观嵌入 式技术的发展,大致可以分为以下4 个阶段。第一阶段是以单芯片为核心的可编程控制器 形式的系统,同时具有与监测、伺服、指示设备相配合的功能。这种系统大部分应用于一 些专业性极强的工业控制系统中,一般没有操作系统的支持,通过汇编语言编程对系统进 行直接控制,运行结束后清除内存。这一阶段系统的主要特点是:系统结构和功能都相对 单一,处理效率较低,存储容量较小,几乎没有用户接口。由于这种嵌入式系统使用简便、 价格很低,以前在国内工业领域应用较为普遍,但是已经远远不能适应高效的、需要大容 量存储介质的现代化工业控制和新兴的信息家电等领域的需求。第二阶段是以嵌入式c p u 为基础、以简单操作系统为核心的嵌入式系统。这一阶段系统的主要特点是:c p u 种类繁 多,通用性比较弱;系统开销小,效率高;操作系统具有一定的兼容性和扩展性;应用软 件较专业,用户界面不够友好;系统主要用来控制系统负载以及监控应用程序运行。第三 阶段是以嵌入式操作系统为标志的嵌入式系统。这一阶段系统的主要特点是:嵌入式操作 系统能运行于各种不同类型的微处理器上,兼容性好;操作系统内核精小、效率高,并且 具有高度的模块化和扩展性;具备文件和目录管理、设备支持、多任务、网络支持、图形 窗口以及用户界面等功能;具有大量的应用程序接口( a p i ) ,开发应用程序简单;嵌入式 应用软件丰富。第四阶段是以基于i n t e m e t 的嵌入式系统,这是一个正在迅速发展的阶段。 目前大多数嵌入式系统还孤立于i n t e r n e t 之外,但随着i n t e m e t 的发展以及i n t e m e t 技术 与信息家电、工业控制技术等结合日益密切,嵌入式设备与i n t e m e t 的结合将代表着嵌入 式技术的真正未来。 2 1 3 嵌入式系统的技术特点 嵌入式系统一般指非p c 系统,它包括硬件和软件两部分。硬件包括处理器微处理器、 存储器及外设器件和i o 端口、图形控制器等。软件部分包括操作系统软件( o s ) ( 要求 实时和多任务操作) 和应用程序编程。应用程序控制着系统的运作和行为;而操作系统控 制着应用程序编程与硬件的交互作用。嵌入式系统的核心是嵌入式微处理器。嵌入式微处 5 南京邮电大学硕士研究生学位论文 第二章嵌入式系统及g u ! 发展概况 理器一般具备以下4 个特点: 1 对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而 使内部的代码和实时内核心的执行时间减少到最低限度。 2 具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为 了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有 利于软件诊断。 3 可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器。 4 嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备 中靠电池供电的嵌入式系统更是如此,如需要功耗只有m w 甚至g w 级。 嵌入式系统同通用型计算机系统相比具有以下特点: 1 嵌入式系统通常是面向特定应用的嵌入式c p u ,与通用型的最大不同就是嵌入式 c p u 大多工作在为特定用户群设计的系统中,它通常都具有低功耗、体积小、集成度高等 特点,能够把通用c p u 中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统 设计趋于小型化,移动能力大大增强,跟网络的耦合也越来越紧密。 2 嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用 相结合后的产物。这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创 新的知识集成系统。 3 嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样 的硅片面积上实现更高的性能,这样才能在具体应用中对处理器的选择更具有竞争力 4 嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行, 因此嵌入式系统产品一旦进入市场,具有较长的生命周期。 5 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或 单片机本身中,而不是存贮于磁盘等载体中。 2 1 4 嵌入式系统的发展前景 嵌入式系统可应用于工作与生活的各个领域,具有极其广阔的应用前景。嵌入式系统 在传统的工业控制和商业管理领域已经具有广泛的应用空间,如智能工控设备、p o s a t m 机、i c 卡等;在家庭领域更具有广泛的应用潜力,如机顶盒、数字电视、w e b t v 、网络 冰箱、网络空调等众多消费类和医疗保健类电子设备等;此外还有在媒体手机、袖珍电脑、 掌上电脑、车载导航器等方面应用,将极大地推动嵌入式技术深入到生活和工作的方方面 6 南京邮电大学硕士研究生学位论文第二章嵌入式系统及g u i 发展概况 面。它在娱乐、军事方面的应用潜力也是巨大的,而且是有目共睹的。 2 1 5 典型的嵌入式系统 虽然嵌入式系统这一名词在最近几年才成为流行。但早在8 0 年代,国际上就有一些 i t 组织、公司,开始进行商用嵌入式系统和专用操作系统的研发。从硬件方面讲,3 2 、6 4 位微处理器是目前嵌入式系统的核心,它们的使用同样也是未来发展的一大趋势。为了抢 占这个无限广阔的市场,各大硬件厂商竞相推出产品,包括i n t e l ,m o t o r o l a ,p h i l i p ,a m d 等等均不甘示弱,几乎每个月都有新产品出现。另外,m i c r o c h i p 推出了具有数字信号处理 能力的微控制器( d s c ) ,a t m e l 也推出针对消费市场的可编程系统芯片( p s o c ) 。市场之 争日益激烈,同时也给嵌入式技术的发展带来了无限活力。从软件方面讲,目前的几大软 件平分天下。v x w o r k s 是目前嵌入式系统领域中使用最广泛、市场占有率最高的系统。它 支持多种处理器,但是由于很多a p i 是这个系统本身独有的,使得开发的兼容性受到较大 影响。o s 9 是主要为高科技产品设计的,提高了很好的安全和容错性,并且有很好的升级 能力和灵活性。p a l mo s ,是p a l m 公司的操作系统,和微软的w i n d o w sc e 是p d a 操作 系统的两大巨头。由于w i n d o w sc e 的模块化设计允许它对于从掌上电脑到专用的工业控 制器的用户电子设备进行定制,以及微软公司强大的技术力量,虽然目前p a l m 还占有大 部分的市场份额,但w i nc e 必将成为p d a 系统软件的一个霸主。由于国际p d a 市场的 快速增长,目前基于p a l m 和基于w i n c e 的应用软件有着大量的需求。这类软件由于系 统功能的单一,所以软件功能也趋向专一化。而掌上设备的各种通讯,管理软件需求量极 大。同时开发环境齐备,可以完全在p c 机上进行,通过软件模拟调试,等到模拟通过再 下载入机器,而且因为可以使用大量p c 机的a p i 函数、s d k ,所以开发过程是在已有的 成熟技术基础上进行,相对简单,吸引了大量的软件开发人员进入这一领域。e p o c 是发 展自欧洲的操作系统、是由世界上最大的3 家移动电话厂商诺基亚、爱立信和摩托罗拉所 共同开发、整合组成新公司,开发出来的新操作系统;在3 大电话厂商的合作下,e p o c 市 场潜力很大,且占有率高,但应用功能以手机为主,目前并不开放授权。此外,在3 大主 流操作系统品牌外,还有就是l i n u x 的出现及其快速发展,对于嵌入式系统的发展起了推 波助澜的作用。作为嵌入式操作系统的一个新成员l i n u x 是一股强劲的力量,其最大的特 点是源代码公开并且遵循g p l 协议。由于其源代码公开,人们可以任意修改,以满足自己 的应用,并且查错也很容易。遵从g p l ,无须为每例应用交纳许可证费。有大量的应用软 件可用。其中大部分都遵从g p l ,是开放源代码和免费的。可以稍加修改后应用于用户自 7 南京邮电大学硕上研究生学位论文第二章嵌入式系统及g u i 发展概况 己的系统。有大量的免费的优秀的开发工具,且都遵从g p l ,是开放源代码的。有庞大 的开发人员群体。随着l i n u x 在中国的普及,软件的开发和维护成本很低。优秀的网络功 能,这在i n t e m e t 时代尤其重要。稳定这是l i n u x 本身具备的一个很大优点。内核精 悍,运行所需资源少,十分适合嵌入式应用。支持的硬件数量庞大。嵌入式l i n u x 和普通 l i n u x 并无本质区别,p c 上用到的硬件嵌入式l i n u x 几乎都支持。而且各种硬件的驱动程 序源代码都可以得到,为用户编写自己专有硬件的驱动程序带来很大方便。 2 2 图形用户界面g u i 的发展 图形用户界面( g r a p h i cu s e ri n t e r f a c e ,简称g u i ) 的广泛流行是当今计算机技术的重 大成就之一,它极大地方便了非专业用户的使用,人们不再需要死记硬背大量的命令,而 可以通过窗口、菜单方便地进行操作。 2 2 1 图形用户界面的历史 计算机用户界面是指计算机与其使用者之间的对话接口,是计算机系统的重要组成部 分。计算机的发展史不仅是计算机本身处理速度和存储容量飞速提高的历史,而且是计算 用户界面不断改进的历史。早期的计算机是通过面板上的指示灯来显示二进制数据和指 令,人们则通过面板上的开关、扳键及穿孔纸带送入各种数据和命令。5 0 年代中、后期, 由于采用了作业控制语言( j c l ) 及控制台打字机等,使计算机可以批处理多个计算任务,从 而代替了原来笨拙的手工扳键方式,提高了计算机的使用效率。1 9 6 3 年,美国麻省理工 学院在7 0 9 7 0 9 0 计算机上成功地开发出第一个分时系统c t s s ,该系统连接了多个分时终 端,并最早使用了文本编辑程序。从此,以命令行形式对话的多用户分时终端成为7 0 年 代乃至8 0 年代用户界面的主流。8 0 年代初,由美国x e r o x 公司a l t o 计算机首先使用的 s m a l l t a l k - - 8 0 程序设计开发环境,以及后来的l i s a 、m a c i n t o s h 等计算机,将用户界面推 向图形用户界面的新阶段。随之而来的用户界面管理系统和智能界面的研究均推动了用户 界面的发展。用户界面已经从过去的人去适应笨拙的计算机,发展到今天的计算机不断地 适应人的需求。用户界面的重要性在于它极大地影响了最终用户的使用,影响了计算机的 推广应用,甚至影响了人们的工作和生活。由于开发用户界面的工作量极大,加上不同用 户对界面的要求也不尽相同,因此,用户界面已成为计算机软件研制中最困难的部分之一。 当前,i n t e m e t 的发展异常迅猛,虚拟现实、科学计算可视化及多媒体技术等对用户界面 提出了更高的要求。面临新的挑战,用户界面将如何发展? 8 南京邮电大学硕士研究生学位论文第二章嵌入式系统及g u l 发展概况 2 2 2 图形用户界面的技术特点 图形用户界面( g r a p h i cu s e ri n t e r f a c e ,简称g u i ) 的广泛流行是当今计算机技术的重 大成就之一,它极大地方便了非专业用户的使用,人们不再需要死记硬背大量的命令,而 可以通过窗口、菜单方便地进行操作。“v i s u a l ”已成为当前最流行的形容词,如v i s u a l b a s i c 、v i s u a lc 4 - 4 - 等。之所以图形用户界面受到如此青睐,主要是由于它有如下主要特 征: 1 w i m p 其中:w ( w i n d o w s ) 指窗口,是用户或系统的一个工作区域。一个屏幕上可以有多个 窗口。i ( i c o n s ) 手r 图符,系形象化的图形标志,易于人们隐喻和理解。m ( m e n u ) 指菜单,可 供用户选择的功能提示。p ( p o i n t i n gd e v i c e s ) 指鼠标器等,便于用户直接对屏幕对象进行 操作。 2 用户模型 g u i 采用了不少d e s k t o p 桌面办公的隐喻,使应用者共享一个直观的界面框架。由于 人们熟悉办公桌的情况,因而对计算机显示的图符的含义容易理解,诸如:桌面、文件夹、 回收站、画笔、记事簿、草稿箱及时钟等。 3 直接操作 过去的界面不仅需要记忆大量命令,而且需要指定操作对象的位置,如行号、空格数、 x 及y 的坐标等。采用g u i 后,用户可直接对屏幕上的对象进行操作,如拖动、删除、 插入以至放大和旋转等。用户执行操作后,屏幕能立即给出反馈信息或结果,因而称为所 见即所得( w h a ty o us e ei sw h a ty o uo e o 。用视、点( 鼠标) 代替了记、击( 键盘) ,给用户带 来了方便。 2 2 3 图形用户界面的结构模型 一个图形用户界面系统通常v h - - 个基本层次组成。它们是显示模型,窗口模型和用户模型。 用户模型包含了显示和交互的主要特征,因此图形用户界面这术语有时也仅指用户模 型。图2 1 给出了图形用户界面系统的层次结构。 9 桌面管理系统 用户模型 窗口模型 显不模型 操作系统 硬件平台 图2 1 图形用户界面系统的层次结构 图2 1 中的最底层是计算机硬件平台,如m a c i n t o s h ,s u ns p a r c 等。硬件平台的上面 是计算机的操作系统。大多数图形用户界面系统都只能在一两种操作系统上运行,只有少 数的产品可以跨平台运行。操作系统之上是图形用户界面的显示模型。它决定了图形在屏 幕上的基本显示方式。不同的图形用户界面系统所采用的显示模型各不相同。例如大多数 在u n i x 之上运行的图形用户界面系统都采用x 窗口作显示模型;m sw i n d o w s 则采用 m i c r o s o f t 公司自己设计的图形设备接e i ( g d i ) 作显示模型。显示模型之上是图形用户界面 系统的窗口模型。窗口模型确定窗口如何在屏幕上显示,如何改变大小,如何移动,及窗 1 3 的层次关系等。它通常包括两个部分:一是编程工具;二是对如何移动,输出和读取屏 幕显示信息的说明。因为x 窗口不但规定了如何显示基本图形对象也规定了如何显示窗 i = 1 ,所以它不但可以充当图形用户界面的显示模型,也可以充当它的窗口模型。窗口模型 之上是用户模型,图形用户界面的用户模型又称为图形用户界面的视感。它也包括两个部 分:一是构造用户界面的工具;二是对于如何在屏幕上组织各种图形对象,以及这些对象 之间如何交互的说明。比如,每个图形用户界面模型都会说明它支持什么样的菜单和什么 样的显示方式。图形用户晃面系统的应用程序接口由其显示模型,窗口模型和用户模型的 应用程序接口共同组成。例如o s f m o t i f 的应用程序接口就是由它的显示模型和窗口模型 的应用程序接口x l i b 和用户模型的应用程序接口x ti m r i n s i c s 及m o t i f t o o l k i t 共同组成 的。 2 2 4 图形用户界面的发展前景 随着虚拟现实、科学计算可视化及多媒体技术的飞速发展,新的人机交互技术不断出 现,更加自然的交互方式将逐渐为人们所重视。新一代界面的主要特征可描述如下: 1 以用户为中心 1 0 南京邮电大学硕上研究生学位论文第二章嵌入式系统及g u i 发展概况 以用户对界面的需求变化为出发点,使用户界面的外在形式和内部机制能符合不同用 户的需要,这就是以用户为中心的设计思想。非特定人的连续语音识别技术将使计算机能 理解人们的要求,是一种重要的输入界面和手段。鱼h 更( f i s h e y e ) 技术使屏幕观察( 或光标) 位 置附近的内容被放大,便于用户观察。在传统的人机系统中,人被认为是操作者,人去适 应机器;在一般的人机系统中,人被称为用户,能与机器对话,但无主动控制能力;而在 虚拟现实系统中,人才是主动的参与者,机器将对人的各种动作做出反应。 2 多通道 多通道( m u l t i m o d a l i t y ) 界面旨在充分利用一个以上的感觉和运动通道的互补特性来捕 捉用户的意向,从而增进人机交互中的自然性。人的感觉通道有视觉、听觉、触觉、嗅觉 和平衡等;人的运动通道有手、嘴、眼、头、足及身体等。现在,计算机操作时,人的眼 和手十分累,效率也不高。若将听、说和手、眼等协同动作,采用多通道、以自然方式交 互,可以实现高效人机通信,也可以由人或机器选择最佳反应通道,从而不会使某一通道 负担过重。 3 智能化 精确交互技术是指能用一种技术来完全说明用户交互目的的交互方式,键盘和鼠标器 均需用户精确输入。而人们的动作或思想往往并不很精确,计算机应该理解人的要求,甚 至于纠正人的错误,智能化的界面是一个重要方向。 4 高带宽 现在计算机输出的内容已经可以快速、连续地显示彩色图像,其信息量非常大。而人 们的输入却还是使用键盘一个又一个地敲击,因而,计算机的输入带宽是很低的。新一代 的用户界面应该支持高的输入带宽,快速大批量地输入信息。语音、图像及姿势等的输入 和理解是今后的发展方向。 5 不限制地点 目前,计算机主要是在办公室、实验室或家庭中使用,人们面对着计算机屏幕进行操 作,这种操作方式限制了计算机的应用。虽然己可用遥控器代替部分动作,但用望远镜看 屏幕似不方便,而采用语音输入输出或其他计算机视觉( 摄像输入) 技术,则可不受地点的 限制。 6 图示编程 图形用户界面的编程是很费时的工作,而采用图示编程( v i s u a lp r o g r a m r u i n g ) 则比较 简单和直观。现在有些多媒体制作工具,如a u t h o r w a r ep r o f e s s i o n a l 、i c o n a u t h o r 等, 采用图示方法设计多媒体文档脚本,以便于交互修改、控制时间关系。新一代的用户界面 l l 南京邮电大学硕士研究生学位论文 第二章嵌入式系统及g u l 发展概况 应尽可能提供图示化的开发工具。 2 3 典型的g u i 系统 目前看来,在l i n u x 之上进行( 实时) 嵌入式系统开发的厂商,一般选择如下几种g u i 系统:紧缩的xw i n d o w 系统、m i c r o w i n d o w s 、m i n i g u i 、o p e n g u i 、q t e m b e d d e d 等 2 3 1 紧缩的xw i n d o w 系统 众所周知,xw i n d o w 是l i n u x 以及其他类u n i x 系统的标准g u i - 。xw i n d o w 系 统采用标准的客户服务器体系结构,具有可扩展性好、可移植性好等优点。但该系统的庞 大、累赘和低效率也是大家所共知的。为了获得应用程序的可移植性,许多厂家都试图通 过对xw i n d o w 系统的紧缩开发,使之能够在嵌入式系统上运行。国外已经开发出了大小 约为8 0 0 k 的x 服务器。这对西方国家来说基本能够满足嵌入式系统的需求了。但该系 统的源代码尚不开放,从而很难进行本地化丌发。 2 3 2m i c r o w i n d o w s m i c r o w i n d o w s 是一个开放源码的项目,目前由美国一家公司在主持开发。该项目的 开发非常活跃,国内也有人参与了其中的丌发,并编写了g b 2 3 1 2 等字符集的支持。该项 目的主要特色在于提供了比较完善的图形功能,包括一些高级的功能,比如a l p h a 混合, 三维支持,t r u e t y p e 字体支持等。但作为一个窗口系统,该项目提供的窗口处理功能还需 要进一步完善,比如控件或构件的实现还很不完备,键盘和鼠标等的驱动还很不完善。该 项目已经启动了一个开放源码的浏览器项目,该浏览器在k d ek f m 提供的h t m l 解释 器的基础上开发,目前能够解释一些简单的h t m l 页面。 2 3 3m i n i g u i m i n i g u i 是一种面向嵌入式系统或者实时系统的图形用户界面支持系统。它主要运行 于l i n u x 控制台,实际可以运行在任何一种具有p o s i x 线程支持的p o s i x 兼容系统 上。m i n i g u i 同时也是国内最早出现的几个自由软件项目之一。 m i n i g u i 主要具有如下特性【l 】【2 】: 1 2 南京邮电大学硕士研究生学位论文第二章嵌入式系统及g u i 发展概况 1 虚拟内存技术:使用虚拟内存技术,应用程序打破了d o s6 4 0 k 常规内存的限制,从 而可以处理大量数据。m i n i g u i 使用虚拟内存技术,实现了字体库的存储和屏幕图形的临 时保存。 2 直接写屏技术:使用直接写屏技术,用以实现图形、包括汉字的快速显示。 3 消息驱动的应用程序结构:m i n i g u i 使用了类似w i n d o w s 的消息驱动的程序结构。系 统管理消息的产生和分发,应用程序提供消息回调函数用以实现消息处理。 4 类w i n d o w s 的界面风格:m i n i g u i 提供了类w i n d o w s 的界面风格,实现了大部分的 g u i 元素和对话框控制类型。g u i 元素包括菜单、状态栏、对话框、消息框、快捷键等; 对话框控制类型包括静态文本框、按钮、单选钮和检查框,组合框等;支持基于窗片的简 单多窗口特性。 m i n i g u i 的主要不足: 1 只支持v g a 一种显示卡。 2 只支持1 6 点阵宋体字库。 3 图形操作a p i 不够充分。 使用m i n i g u i 的计算机系统要求: 1 至少2 m b 内存。 2 m s d o s5 0 以上操作系统。 3 x m s 或e m s 驱动程序。 4 v g a 显示卡。 2 3 4o p e n g u i o p e n g u i 采用l g p l 条款发布。o p e n g u i 比较适合基于x 8 6 平台的实时系统,它的跨 平台的可移植性较差,目前发展较慢。当然,o p e n g u i 在l i n u x 系统上已经存在一段时间 了。最初的名字叫f a s t g l ,只支持2 5 6 色的线性显存模式,目前支持其他显示模式,并 且支持多种操作系统平台,比如m s d o s 、q n x 和l i n u x 等,不过目前只支持x 8 6 硬件平 台。但这个库是用c

温馨提示

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

评论

0/150

提交评论