找回密码
 注册
关于网站域名变更的通知
查看: 82|回复: 0
打印 上一主题 下一主题

怎么选择嵌入式Linux环境下的GUI系统

[复制链接]

该用户从未签到

跳转到指定楼层
1#
 楼主| 发表于 2024-8-16 18:24 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
嵌入式系统领域,有不少GUI系统,如QNX Photon MicroGUI等,可是具体到嵌入式Linux领域又有哪些可供选择的GUI系统呢?) f* ~7 {5 B& Q) b( i* ~! R
9 E8 ?3 l/ a6 n5 R

) P0 Y( }7 q0 @- z% t, b
+ T+ v4 g) Y, Y4 T在 嵌入式环境底下,GUI系统的整体构架跟PC Desktop相去不远,例如绘图函数库、字型、事件处理等也都是嵌入式GUI系统所要面临的。但是嵌入式系统本身由于体积小、资源少的特点,所以在整体 设计上必须较为严谨,必须考虑的条件更多,有时很像又回到了Dos下编制程序的年代,对于软件所占的存储量有时可以说是锱铢必较。8 e+ k9 l$ O- h' g# e

/ X& M/ d9 s& e4 q: tUnix 环境下的图形视窗标准为X Window System(以下简称X标准),Linux是类Unix系统,所以顶层运行的GUI系统是兼容X标准的XFree86系统。X标准大致可以划分X Server、Graphic Library(底层绘图函数库)、Toolkits、Window Manager、Internationalization(I18N)等几大部分(详细内容见链接)。
5 ?; R! y% B" H1 `
2 }' A+ d- d, u/ K+ j3 ]* W" T笔 者认为,虽然X架构不错,但却不怎么适用于嵌入式环境,因为实际工作起来实在太过于庞大,因此许多嵌入式Linux GUI系统会把上述几点合并,甚至全部绑到一起,当然这样同时也会失去很多弹性与扩展功能,但为了适应于嵌入式系统,这也是一个解决问题的方法。本文下面 就介绍一下现存的主流嵌入式Linux下GUI解决方案。
' A6 Y/ x5 N$ i; w: o
$ z1 H# ?/ s, F$ X+ H/ @( d主流解决方案介绍
; s4 b% h5 u6 Z& Q' I
5 p9 F1 u$ U3 I) O  x) FQt/Embedded$ [8 j/ k9 L! D0 |2 @: b. Z
- g* Q9 y4 ?$ ]- f! L6 [8 a+ e
Qt 是Trolltech这家商业公司所开发的一个跨平台FrameWork环境,在X环境下可以看作是一套功能完整的用户界面工具包,它采用类似C++的语 法,并且具备物件导向功能。跨平台的特性可以让使用Qt编写的软件,在Microsoft Windows 95/98/2000、 Microsoft Windows NT、MacOS X、Linux、Solaris、HP-UX、Tru64 (Digital UNIX)、Irix、FreeBSD、BSD/OS、SCO、AIX等许多平台上执行。虽然是商业公司的产品,但是Qt走的却是开源路线,并遵循同样的 游戏规则,提供免费下载,全部都是开放源代码,非商业用途亦采用GPL的版权宣告,著名的Open Source “KDE” 项目便是采用Qt所开发的。0 Q0 H/ ]; o* A$ r* Z! ^
; v* Z. y8 j, e  f- w
Trolltech也针对嵌入式环境推出了“Qt/Embedded”产品。与桌面版本不同,Qt/Embedded已经直接取代掉X Server及X Library等角色,所有的功能全部整合在一起。
! [# x! B  B) G  B2 A0 \0 E- s  V- @9 `" e% h9 r' V0 S3 ~8 u
Qt/Embedded 同样具有跨平台的特点,省掉了不少移植软件的功夫,这样的概念和Java十分接近。同时它还采用模块化设计,其最大的好处是有弹性, Qt/Embedded号称最小可以缩到800Kb左右,最多可以长到3Mb(for Intel x86),这样的弹性也让Qt/Embedded更适合在嵌入式环境下生存。1 o0 f: h, \: w4 y( `' U

2 ^6 B, ~: L& E$ c3 l另 外,Trolltech公司还推出了针对PDA软件的整体解决方案QPE(Qt Plamtop Environment)。它从底层的GUI系统、Window Manger、Soft Keyboard到上层的PIM、浏览器、多媒体等,全部都考虑进去了。其主界面如图1所示 ,内部包括地址簿、计算器、世界时间、时间设置、记事本、终端、文件浏览器、帮助、媒体播放器、图像浏览器、文本编辑器等。$ w2 Z" S! R. ~. g5 e& q/ ]  |& z
4 R0 ^' @# h7 U% v
相对其他GUI来说, Qt/Embedded 应该说是肥美型的产品,功能丰富,但能消化它的东西只能是高端产品,32MB内存是运行它的最小要求。因此,如果开发的产品不是高端的信息终端类产品,不应优先考虑 Qt/Embedded。
" H  {; \1 w. C0 U' V
9 R. E' d3 K) F4 O% sGtkFB
: v% T2 A5 [9 Y$ I# o0 s: }$ E+ P- ~/ F* B
自 从Qt推出了嵌入式版本之后,虽然GTK+并非商业公司所发展,但也加紧脚步推出了GtkFB方案,其宗旨就是要为嵌入式系统推出一套基于GTK+的 GUI解决方案。与Qt/Embedded类似,GtkFB也跳过X层直接与FrameBuffer沟通,因此也具有Qt/Embedded的几项优点, 不过由于不是商业软件,在发展的速度上较为缓慢。
' ]9 X# v8 T! ^. v8 i/ {  P, ^) P8 t! X" }
Microwindows" |" U/ ]* G0 y5 a% q
% W* s& e4 A& ^9 Q2 H! r
Microwindows Open Source Project成立的宗旨在于针对体积小的装置,建立一套先进的视窗环境,在Linux桌面上通过交叉编译可以很容易地制作出micro-windows 的程序。MicroWindows能够在没有任何操作系统或其他图形系统的支持下运行,它能对裸显示设备进行直接操作。这样,MicroWindows就 显得十分小巧,便于移植到各种硬件和软件系统上。
# p+ u& q- y  R
0 C' p' D4 E( i( w% P+ t0 Q然而MicroWindows 的免费版本进展一直很慢,几乎处于停顿状态,而且至今为止,国内没有任何一家专业对 MicroWindows 提供全面技术支持、服务和担保的公司。+ P/ u* H# ]) P5 U
& X+ W+ B: d' O  A. B3 v

8 j: k; }7 f) c$ t1 u$ T% s
( A4 N7 G; B# Q, l" o. \5 o% \" f- m. e( \* i/ X5 P6 s
, j' m3 s5 u3 \( W
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-9-24 07:57 , Processed in 0.125000 second(s), 27 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表