QtEmbedded在嵌入式Linux系统中的应用.pdf

上传人:qwe****56 文档编号:74652623 上传时间:2023-02-27 格式:PDF 页数:5 大小:137.85KB
返回 下载 相关 举报
QtEmbedded在嵌入式Linux系统中的应用.pdf_第1页
第1页 / 共5页
QtEmbedded在嵌入式Linux系统中的应用.pdf_第2页
第2页 / 共5页
点击查看更多>>
资源描述

《QtEmbedded在嵌入式Linux系统中的应用.pdf》由会员分享,可在线阅读,更多相关《QtEmbedded在嵌入式Linux系统中的应用.pdf(5页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、142 0 0 4.1 2专题论述 TOPICAL DISCUSS单片机与嵌入式系统应用Q t/E m b e d d e d 在嵌入式L i n u x 系统中的应用 北京航空航天大学 徐广毅 张晓林 崔迎炜 蒋文军摘 要关键词分析和讨论 Q t/E m b e d d e d的主流版本3.x系列的底层实现技术;结合2.x版本系列和 3.x版本系列,在两种不同的硬件平台(I n t e l P X A 2 5 5 开发系统与笔者自行设计的 M o t o r o l a M C 9 3 2 8 M X 1开发系统)上的移植过程,讨论Q t/E m b e d d e d的底层设备接口与应用移

2、植技术。Q t/E m b e d d e d 嵌入式L i n u x f r a m e b u f f e r 驱动接口引 言随着嵌入式L i n u x应用的不断发展,嵌入式处理器运算能力的不断增强,越来越多的嵌入式设备开始采用较为复杂的G U I系统,手持设备中的G U I系统发展得非常迅速。传统的 G U I 系统,如M i c r o w i n d o w s 等,由于项目规模较小、功能较为薄弱,缺乏第三方软件开发的支持等诸多原因,在比较高级的手持或移动终端设备(如P D A、S m a r t-P h o n e、车载导航系统)中应用较少。Q t/E m b e d d e

3、d 是著名的Q t 库开发商 T r o l l t e c h 公司开发的面向嵌入式系统的 Q t版本,开发人员多为 K D E项目的核心开发人员。许多基于 Q t的X W i n d o w程序可以非常方便地移植到Q t/E m b e d d e d上,与X 1 1版本的Q t 在最大程度上接口兼容,延续了在 X上的强大功能,在底层彻底摒弃了 X l i b,仅采用f r a m e b u f f e r 作为底层图形接口。Q t/E m b e d d e d 类库完全采用 C+封装。丰富的控件资源和较好的可移植性是Q t/E m b e d d e d最为优秀的一方面,使用X 下的

4、开发工具 Q t D e s i g n e r 可以直接开发基于Q t/E m b e d d e d 的U I(用户操作接口)界面。越来越多的第三方软件公司也开始采用 Q t/E m b e d d e d 开发嵌入式L i n u x 下的应用软件。其中非常著名的 Q t P a l m t o p E n v i r o n m e n t(Q t o p i a)早期是一个第三方的开源项目,并已经成功应用于多款高档 P D A。T r o l l t e c h 公司针对S m a r t-P h o n e 中的应用需求,于2 0 0 4 年5 月底发布了Q t o p i a 的

5、P h o n e 版本。1 Q t/E m b e d d e d 的实现技术基础分析横向来看,由于发布的版权问题,Q t/E m b e d d e d 采用两种方式进行发布:在G P L协议下发布的 f r e e版与专门针对商业应用的 c o m m e r c i a l 版本。二者除了发布方式外,在源码上没有任何区别。纵向看来,当前主流的版本为 Q t o p i a 的2.x 系列与最新的3.x 系列。其中2.x 版本系列较多地应用于采用 Q t o p i a 作为高档 P D A 主界面的应用中;3.x版本系列则应用于功能相对单一,但需要高级G U I图形支持 的 场 合,如

6、 V o l v o公司的远程公交 信 息 系统。图 1为Q t/E m b e d-d e d的实现结构。3.x 版本系列的Q t/E m b e d d e d 相对于2.x 版本系列增加了许多新的模块,如 S Q L数据库查询模块等。几乎所有2.x 版本中原有的类库,在3.x 版本中都得到极大程度的增强。这就极大地缩短了应用软件的开发时间,扩大了Q t/E m b e d d e d 的应用范围。在代码设计上,Q t/E m b e d d e d 巧妙地利用了 C+独有的机制,如继承、多态、模板等,具体实现非常灵活。但其底层代码由于追求与多种系统、多种硬件的兼容,代码补丁较多,风格稍显

7、混乱。1.1 Q t/E m b e d d e d 的图形引擎实现基础Q t/E m b e d d e d 的底层图形引擎基于f r a m e b u f f e r。f r a m e b u f f e r 是在L i n u x 内核架构版本2.2 以后推出的标准的显示设备驱动接口。采用 mmap系统调用,可以将f r a m e b u f f e r 的显示缓存映射为可连续访问的一段内存指针。由于目前比较高级的 A R M体系的嵌入式 C P U中大多集成了L C D控制模块,L C D控制模块一般采用双 D M A控制器组成的专用 D M A通道。其中一个 D M A可以自动

8、从一个数据结构队列中取出并装入新的参数,直到整个队列中的 D M A操作都已完成为止。另外一个 D M A与画QWSServer 图形事件服务framebufferLinux 操作系统Qt/Embedded 应用程序Qt/Embedded输入设备驱动底层硬件平台图1 Q t/E m b e d d e d 的实现结构15Microcontrollers&Embedded Systems2 0 0 4.1 2专题论述 TOPICAL DISCUSS面缓冲区相关,这部分由两个 D M A控制器交替执行,并每次都自动按照预定的规则改变参数。虽然使用了双D M A,但这两个 D M A控制器的交替使用

9、对于 C P U来说是不可见的。CPU所获得的只是由两个 DMA组成的一个“通道”而已。f r a m e b u f f e r 驱动程序的实现分为两个方面:一方面是对 L C D及其相关部件的初始化,包括画面缓冲区的创建和对 DMA通道的设置;另外一方面是对画面缓冲区的读写,具体到代码为r e a d、w r i t e、l s e e k 等系统调用接口。至于将画面缓冲区的内容输出到 L C D显示屏上,则由硬件自动完成。对于软件来说是透明的。当对于 D M A通道和画面缓冲区设置完成后,D M A开始正常工作,并将缓冲区中的内容不断发送到 L C D上。这个过程是基于D M A 对于

10、L C D的不断刷新的。基于该特性,f r a m e b u f f e r驱动程序必须将画面缓冲区的存储空间(物理空间)重新映射到一个不加高速缓存和写缓存的虚拟地址区间中,这样才能够保证应用程序通过 m m a p将该缓存映射到用户空间后,对于该画面缓存的写操作能够实时的体现在L C D上。在Q t/E m b e d d e d 中,Q S c r e e n 类为抽象出的底层显示设备基类,其中声明了对于显示设备的基本描述和操作方式,如打开、关闭、获得显示能力、创建G F X操作对象等。另外一个重要的基类是 Q G f x类。该类抽象出对于显示设备的具体操作接口(图形设备环境),如选择画

11、刷、画线、画矩形、a l p h a 操作等。以上两个基类是 Q t/E m b e d d e d图形引擎的底层抽象。其中所有具体函数基本都是虚函数,Q t/E m b e d d e d对于具体的显示设备,如L i n u x 的f r a m e b u f f e r、Q t V i r t u a l F r a m e b u f f e r 做的抽象接口类全都由此继承并重载基类中的虚函数实现。图2为Q t/E m b e d d e d中底层图形引擎实现结构。在图 2 中,对于基本的f r a m e b u f f e r 设备,Q t/E m b e d d e d用Q L

12、i n u x F b S c r e e n 来处理。针对具体显示硬件(如M a c h 卡、V o o d o o 卡)的加速特性,Q t/E m b e d d e d 从Q L i n u x F b S c r e e n 和图形设备环境模板类Q G f x R a s t e r 继承出相应子类,并针对相应硬件重载相关虚函数。Q t/E m b e d d e d 在体系上为C/S结构,任何一个Q t/E m b e d d e d 程序都可以作为系统中唯一的一个 G U I S e r v e r存在。当应用程序首次以系统 G U I S e r v e r 的方式加载时,将建立

13、 Q W S S e r v e r实体。此时调用 Q W S S e r v e r:o p e n D i s p l a y()函数创建窗体,在Q W S S e r v e r:o p e n D i s p l a y()中对Q W S D i s p l a y:D a t a中的i n i t()加以调用;根据Q G f x D r i v e r F a c t o r y 实体中的定义(Q L i n u x F b S c r e e n)设置关键的Q S c r e e n 指针q t _ s c r e e n 并调用c o n n e c t()打开显示设备(d e

14、v/f b 0)。在Q W S S e r v e r 中所有对于显示设备的调用都由q t _ s c r e e n发起。至此完成了Q t/E m b e d d e d中Q W S S e r v e r的图形发生引擎的创建。当系统中建立好G U I S e r v e r 后,其它需要运行的 Q t/E m b e d d e d 程序在加载后采用共享内存及有名管道的进程通信方式,以同步访问模式获得对共享资源 f r a m e b u f f e r 设备的访问权。1.2 Q t/E m b e d d e d 的事件驱动基础Q t/E m b e d d e d中与用户输入事件相关的

15、信号,是建立在对底层输入设备的接口调用之上的。Q t/E m b e d d e d中的输入设备,分为鼠标类与键盘类。以 3.x版本系列为例,其中鼠标类设备的抽象基类为 QWSMouseH a n d l e r,从该类又重新派生出一些具体的鼠标类设备的实现类。该版本系列的 Q t/E m b e d d e d 中,鼠标类设备的派生结构如图 3所示。与图形发生引擎加载方式类似的,在系统加载构造Q W S S e r v e r时,调用Q W S S e r v e r:o p e n M o u s e与Q W S S e r v e r:o p e n K e y b o a r d函数。

16、这两个函数分别调用Q M o u s e D r i v e r F a c t o r y:c r e a t e()与Q K b d D r i v e r F a c t o r y:c r e a t e()函数。这时会根据 Linux 系统的环境变量Q W S _ M O U S E _ PROTO与Q W S _ K E Y B O A R D获得鼠标类设备和键盘类设备的设备类型和设备节点。打开相应设备并返回相应设备的基类句柄指针给系统,系统通过将该基类指针强制转换为对应的具体子类设备指针,获得对具体鼠标类设备和键盘类设备的调用操作。值得注意的是,虽然几乎鼠标类设备在功能上基本一致

17、,但由于触摸屏和鼠标QScreenQGfxQtQLinuxFbScreenQGfxRasterBaseQGfxRasterQMachScreenQMatroxScreenQVoodooScreenQVga16ScreenQVFbScreenQGfxMachQGfxMatroxQGfxVoodooQGfxVga16QGfxVFbQTransformed ScreenQGfxTransformedRasterQWSServer建立选择选择建立选择diver factory图2 Q t/E m b e d d e d 3.x 中底层图形引擎实现结构162 0 0 4.1 2专题论述 TOPICAL

18、DISCUSS单片机与嵌入式系统应用底层接口并不一样,会造成对上层接口的不一致。举例来讲,从鼠标驱动接口中几乎不会得到绝对位置信息,一般只会读到相对移动量。另外,鼠标的移动速度也需要考虑在内,而触摸屏接口则几乎是清一色的绝对位置信息和压力信息。针对此类差别,Q t/E m b e d d e d将同一类设备的接口部分也给予区别和抽象,具体实现在Q M o u s e D r i v e r I n t e r f a c e 类中。键盘类设备也存在类似问题,同样引入了Q K b d D r i v e r I n t e f a c e 来解决。具体实现此处暂不赘述。2 Q t/E m b e

19、 d d e d 的移植与应用针对 Q t/E m b e d d e d 的实现特点,移植该嵌入式G U I系统一般分为以下几个步骤:设计硬件开发平台,并移植L i n u x 操作系统;采用静态链接进 L i n u x内核的方式,根据该平台显示设备的显示能力,开发f r a m e b u f f e r 驱动程序;开发针对该平台的鼠标类设备驱动程序,一般为触摸屏或 U S B鼠标;开发针对该平台的键盘类设备驱动程序,一般为板载按钮或 U S B键盘(该部分可选);根据 f r a m e b u f f e r 驱动程序接口,选择并修改Q t/E m b e d d e d 中的 Q

20、L i n u x F b S c r e e n 和Q G f x R a s t e r 类;根据鼠标类设备驱动程序,实现该类设备在Q t/E m b e d d e d 中的操作接口;根据键盘类设备驱动程序,实现该类设备在Q t/E m b e d d e d 中的操作接口(该部分可选);根据需要选择 Q t/E m b e d d e d 的配置选项,交叉编译 Q t/E m b e d d e d 的动态库;交叉编译 Q t/E m b e d d e d 中的 E x a m p l e测试程序,在目标平台上运行测试。f r a m e b u f f e r 设备驱动程序提供出的

21、接口是标准的,除了注意e n d i a n 问题外,配置Q t/E m b e d d e d 时选择相应的色彩深度支持即可,因此该部分的移植难点就在于f r a m e b u f f e r 驱动程序的实现。Q t/E m b e d d e d 部分的Q W S S e r v e r 打开/d e v/中的f r a m e b u f f e r 设备后读出相应的显示能力(屏幕尺寸、显示色彩深度),模板Q G f x R a s t e r 将根据色彩深度在用户空间设备创建出与显示缓存同样大小的缓冲作为双缓冲,并采用正确方式进行显示。2.1 在P X A 2 5 5 平台上移植和应

22、用在笔者参与设计的某 S m a r t-P h o n e 开发平台中,G U I 系统实现方案采用了Q t/E m b e d d e d 2.3.7 和Q t o p i a 1.7.0(基于Q t/E m b e d d e d 2.x 系列的手持套件),硬件平台采用了基于 I n t e l X S c a l e P X A 2 5 5 处理器的嵌入式开发系统。该开发系统采用6 4 0 4 8 0分辨率的T F T L C D和P X A 2 5 5内部L C D控制模块作为显示设备,A D S 7 8 4 6 N作为外部电阻式触摸屏控制器;另外,采用了五方向按键作为板载键盘。由于

23、该系统采用了 I S P 1 1 6 1作为 U S BH o s t控制器,较好地支持了U S B接口的键盘和鼠标,操作系统为A R M L i n u x 2.4.1 9。参考L i n u x 2.4.1 9 内核目录d r i v e r s/i n p u t 部分,可以按照标准内核中i n p u t d e v i c e 接口设计实现触摸屏和键盘,在实现了基于 I S P 1 1 6 1的E H C I驱动程序后,移植标准的 U S B接口的人机界面设备驱动H I D和 U S B键盘、鼠标的驱动程序后,可以获得对于该类设备的调用接口。此过程不属本文讨论范畴,此处暂不赘述。Q

24、t/E m b e d d e d 2.x 系列对于输入设备的底层接口与3.x系列不同,触摸屏设备和键盘设备需要根据具体的驱动程序接口在 Q t/E m b e d d e d中设计实现对应的设备操作类。其中对应于鼠标类设备的实现位于 s r c/k e r n e l/q m o u s e _ q w s.c p p 中。由于触摸屏在实现原理上存在着 A/D量化误差的问题,因此所有的触摸屏接口实现类需要从特殊的Q C a l i b r a t e d M o u s e H a n d l e r 继承,并获得校正功能。其具体的实现接口如表 1所列。Q t/E m b e d d e d

25、 2.x 中对于键盘响应的实现函数位于s r c/k e r n e l/q k e y b o a r d _ q w s.c p p 中。在q k e y b o a r d _ q w s.h 中,定义了键盘类设备接口的基类 Q W S K e y b o a r d H a n d l e r,移植时需要根据键盘驱动程序从该类派生出实现类,实现键盘事件处理函数 p r o c e s s K e y E v e n t(),并在Q W S S e r v e r:QWSMouseHandlerQCalibratedMouseHandlerQWSBusMouseHandlerQWSLin

26、uxTPMouseHandlerQWSPcMouseHandlerQWSPcMouseHandlerQWSYopyMouseHandlerQWSKeyboardHandlerQWSQnxKeyboardHandlerQWSSL5000KeyboardHandlerQWSYopyKeyboardHandlerQWSVr41xxKeyboardHandlerQWSTtyKeyboardHandlerQWSUsbKeyboardHandlerQWSPC101KeyboardHandler图3 Q t/E m b e d d e d 3.x 中输入设备抽象派生结构表 1 Q t/E m b e d d

27、 e d 2.x中触摸屏类接口 函数接口 描 述 QCustomTPanelHandlerPrivate:QCustomTPanelHandlerPrivate (MouseProtocol,QString)打开触摸屏类设备,连接触摸屏点击事件与处理函数 QCustomTPanelHandlerPrivate:QCustomTPanelHandlerPrivate()关闭触摸屏类设备 struct CustomTPdata 驱动程序返回的点击数据结构 void QCustomTPanelHandlerPrivate:readMouseData()触摸屏点击数据获取 17Microcontrol

28、lers&Embedded Systems2 0 0 4.1 2专题论述 TOPICAL DISCUSSn e w K e y b o a r d H a n d l e r 函数中注册自己的键盘类设备即可。其中对于点击键的键码定义在 Q t/E m b e d d e d的命名空间 s r c/k e r n e l/q n a m e s p a c e.h 中。表2 是具体的实现接口。(以 U S B 接口的1 0 1 键键盘为例)图 4为笔者在该S m a r t-P h o n e开发平台上移植Q t/E m b e d d e d 2.3.7 和Q t o p i a 1.7.0

29、后显示的截图。2.2 在M C 9 3 2 8 平台上移植和应用在某车载导航辅助系统的开发平台设计中,采用了Q t/E m b e d d e d 3.3.2 版本作为其G U I 系统的实现方案。硬件平台采用自行设计的以 M o t o r o l a M C 9 3 2 8 M X 1 为核心的开发系统。该系统采用C P U内部L C D控制器和 2 4 03 2 0 分辨率的1 6 b p p T F T L C D作为显示设备,采用 I2C总线扩展出 1 6按键以及 M X 1集成的 A S P模块和电阻触摸屏。操作系统为 A R M L i n u x 2.4.1 8。Q t/E m

30、 b e d d e d 3.x 版本系列中与底层硬件接口相关部分的源码位于 s r c/e m b e d d e d/目录中。该部分包含三类设备的接口:f r a m e b u f f e r、鼠标与键盘。参照该目录中相关设备的具体接口代码,根据自身硬件平台增添接口即可。由于系统 L C D 的分辨率为2 4 0 3 2 0,物理尺寸较小,在实现基于该系统的f r a m e b u f f e r 驱动程序时并没有将其本身与 L i n u x 字符控制台设备挂靠,因此f r a m e b u f f e r 并不具备 T E X T 模式的工作方式。在移植Q t/E m b e d

31、 d e d时,无需作 f r a m e b u f f e r 设备的工作方式转换。正确配置色彩显示支持后,Q t/E m b e d d e d 能够在L C D上显示出正确的图形。由于该平台的显示系统为纵向 3 2 0行,在设计时考虑到人对于非手持设备的视觉习惯为宽度大于高度的观察方式,为了符合这种习惯性的观察方式,在移植Q t/E m b e d d e d 时采用了T r a n s f o r m e d 的旋转图形显示方式,在软件上实现了显示方向的旋转变换。鼠 标 设 备 接 口 这 一 基 类Q W S M o u s e H a n d l e r 的实现位于s r c/e

32、 m b e d d e d/q m o u s e _ q w s.c p p中。与2.x 版本系列不同的是,3.x 中所有的L i n u x 触摸屏示例接口代码均实现在 s r c/e m b e d d e d/q m o u s e l i n u x t p _ q w s.c p p 中的Q W S L i n u x T P M o u s e H a n d l e r 类中。其中对于不同型号的触摸屏的接口实现代码,采用不同的宏定义和预编译的方式将它们分隔开。笔者还通过从Q W S L i n u x T P M o u s e H a n d l e r 中继承自身触摸屏接

33、口类,替代原有的Q W S L i n u x T P M o u s e H a n d l e r P r i v a t e 类,而在Q W S L i n u x T P M o u s e H a n d l e r 生成自身触摸屏接口对象的方式,较好地将移植部分的代码与原有比较混乱的代码分隔开来。3.x触摸屏类接口如表3所列。3.x 中键盘接口基类位于s r c/e m b e d d e d/q k b d _ q w s.c p p中,为Q W S K e y b o a r d H a n d l e r。实现I2C 总线扩展出的 1 6键键盘接口类方式与触摸屏类似,此处不赘

34、述。需要注意的是,Q t/E m b e d d e d 提供了事件过滤器(k e y e v e n t f i l t e r)的接口,在键盘点击事件从Q W S S e r v e r截获并发送到相应的c l i e n t 之前会经过函数Q W S S e r v e r:K e y b o a r d F i l t e r。在此函数中可以按照自身需求生成新的键盘点击事件,而后利用Q W S S e r v e r:s e n d K e y E v e n t()发送新的点击事件到c l i e n t中。利用该方式可以将各种键盘点击无法输入的u n i c o d e字符转换出来

35、,从而可以在较少的按键键盘上实现多u n i c o d e 字符输入法。Q t/E m b e d d e d 3.x 键盘接口的移植与鼠标设备接口类似,此处不赘述。3 总 结随着嵌入式处理器运算能力的不断提高,对外设支持的不断丰富,嵌入式L i n u x 系统的应用也逐渐增多。Q t/E m b e d d e d 延续了Q t 在桌面系统的所有功能,丰富的 A P I表 2 Q t/E m b e d d e d 2.x 中键盘类接口 函数接口 描 述 QWSUsbKeyboardHandler:QWSUsbKeyboardHandler(const QString&device)打开

36、 USB 键盘,连接键盘点击信号到 slot处理函数 readKeyboardData 中 QWSUsbKeyboardHandler:QWSUsbKeyboardHandler()关闭 USB 键盘 struct input_event 驱动程序返回的点击数据结构 void QWSUsbKeyboardHandler:readKeyboardData()键盘点击 slot 处理函数 图4 基于I n t e l X S c a l e P X A 2 5 5 的S m a r t-P h o n e开发平台显示界面表 3 Q t/E m b e d d e d 3.x 中 L i n u x

37、 触摸屏设备接口 函数接口 描 述 QWSLinuxTPMouseHandlerPrivate(QWSLinuxTPMouseHandler*h)打开触摸屏类设备,连接触摸屏点击事件与处理函数 QWSLinuxTPMouseHandlerPrivate()关闭触摸屏类设备 struct MyTouchP_event Linux 系统触摸屏驱动程序返回的点击数据格式 void readMouseData()触摸屏点击数据获取 182 0 0 4.1 2专题论述 TOPICAL DISCUSS单片机与嵌入式系统应用嵌入式移动数据库与A g e n t 技术 南昌大学 李荣鑫摘 要关键词移动环境中所

38、具有的移动性、频繁的断接性、低带宽、电池电量有限性等特性,决定了移动数据库中的计算环境不同于分布式数据库,给移动数据库的研究提出了许多新的挑战。本文分析移动数据库的特点、体系结构;介绍移动数据库系统中的一些关键性技术,及移动 A g e n t在移动数据库中的应用。嵌入式移动数据库 移动计算 A g e n t技术随着网络技术的迅速发展和不断渗透,在任何地点和任何时候都能接入网络获取各种信息,必将成为2 1世纪人类的普遍要求;同时,移动通信技术的进步和人们对移动数据处理需求的不断提高,与各种智能通信设备紧密结合的嵌入式移动数据库技术已经得到了学术界、工业界、军事领域、民用部门等各方面的高度重视

39、。移动计算和移动数据库技术将使得这种需求得以实现。移动数据库是移动计算环境中的分布式数据库,由于移动数据库的应用大都嵌入到诸如掌上电脑、PDA、车载设备等移动通信设备中,故移动数据库有时也称为嵌入式移动数据库。在数据库系统的研究历史中,传统的分布计算与分布式数据库的研究是基于有线网络和固定主机的。这些都采用了一些默认的隐含假设,例如固定网络连接、对等通信代价、主机节点固定不变等。但进入 2 0世纪 9 0年代以来,随着移动通信技术和网络技术迅速发展,加之移动计算机和移动通信设备的大量普及,许多计算节点可以在移动过程中与网络建立连接,使得上述假设条件不成立。移动计算环境具有移动性、低带宽、频繁断

40、接性、网络通信的非对称性、电源电力的有限性等特点,使得传统分布式数据库中的方法和技术不能直接应用于移动数据库。目前,移动数据库的应用与研究正在成为学术界的一个研究热点,有大批学者投入到这一新的研究领域。1 嵌入式移动数据库的体系结构在传统的分布式计算系统中,各个计算节点之间是通过固定网络连接并保持网络的持续连接性的,而移动计算系统改变了这种假设条件。移动计算系统是固定节点和移动节点构成的分布计算系统。移动计算的网络环境具有鲜明的特点 1,2:移动性、断接性、带宽多样性、可伸缩性、弱可靠性、网络通信的非对称性、电源能力的局限性等。移动环境中的分布式数据库就是移动数据库。它是传统分布式数据库系统的

41、扩展,可以看作客户与固定服务器节点动态连接的分布式系统。移动数据库系统的结构如图 1所示 1。其中,移动客户机M C(M o b i l e C l i e n t)包括便携式电脑、P D A 等;M S S(M o b i l e S u p p o r t S t a t i o n)支持移动计算的固定节点,具有无线通信接口;F H(F i x e d H o s t)没有无徐广毅:硕士研究生,主要研究方向为嵌入式L i n u x系统及高级 GUI系统、实时嵌入式电子飞行信息系统等。张晓林:教授、博士生导师,主要研究方向为通信与信息系统、嵌入式系统、无人飞行器遥控遥测、集成电路设计。(收

42、修改稿日期:2 0 0 4-0 7-0 8)接口和基于组件的编程模型使得嵌入式L i n u x系统中的应用程序开发更加便捷。由于Q t/E m b e d d e d本身面向高端的手持设备和移动设备,将成为未来嵌入式系统的主流 G U I。参考文献1T r o l l t e c h I n c.Q t R e f e r e n c e D o c u m e n t a t i o n 2.3.7.2 0 0 12T r o l l t e c h I n c.Q t R e f e r e n c e D o c u m e n t a t i o n 3.3.2.2 0 0 43T r o l l t e c h I n c.Q t o p i a D o c u m e n t a t i o n 1.7.0.2 0 0 34毛德操.胡希明.嵌入式系统 采用公开源代码和S t r o n g A R M/X S c a l e 处理器.杭州:浙江大学出版社,2 0 0 3

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com