新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 恰当选择嵌入式Linux环境下的GUI系统

恰当选择嵌入式Linux环境下的GUI系统

作者: 时间:2012-04-05 来源:网络 收藏

3. MiniGUI和Micro-Windows的比较

MiniGUI和MicroWindows均为自由软件,但这两个系统的技术路线却有所不同。MiniGUI的策略是建立在比较成熟的图形引擎之上,比如Svgalib和LibGGI,开发的重点在于窗口系统、图形接口之上。而 MicroWindows的开发重点则在底层的图形引擎之上,所以可以对裸显示器直接操作,而窗口系统和图形接口方面的功能还稍有欠缺。比如说,MiniGUI有一套用来支持多字符集和多编码的函数接口,可以支持各种的字符集,包括GB、BIG5、UNI-CODE等,而 MicroWindows在多字符支持上尚没有统一接口。

链接

X Window System的分层架构

● X Server

X Window System架构上有一项特点是别的所没有的,这个特点就是Client/Server架构,注意这里和一般我们所熟知的某某服务器(Server端)跟PC端(Client端)相连接的情形是不同的。惟一类似的是X Window System本身也是采用网路架构设计。具体而简单一点的说明就是,X Client可以看作我们在X上执行的软件,X Server则是负责显示及传递使用者输入事件(包括键盘、鼠标等硬件装置的输入)。

● Graphic Library

我们可以把一幅图案想象成有成千上万个细微小点所组成,这种小点的单位通常为pixel,在同一平方单位里这些小点数越高图案就越清晰、画质就越好,也就是说分辨率或解析率高。事实上我们要设计的视窗当然不可能是这样一点一点地画上去的,这样太过浪费时间,基于这种观念我们就设计出高阶一点的函数来帮助我们解决这个繁琐的步骤,例如各类视窗编程里用到的画点、画线、画矩形、画圆形、画不规则形、上色等函数。透过这些函数是的程序设计者不用去管画一条线要几个点以及如何让显示器显示等林林总总低阶的工作,我们称绘图相关的一组函数库为GUI的基本 Graphic Library。

● Toolkits

有了点、线、面的函数之后,虽然已经去除了大半的重复无聊工作,但是就开发视窗程序来说,还是显得非常没有效率,怎么办呢?只有继续将构成视窗的抽象元件,如按钮、卷轴、组合框等各类控件抽离出来,重新定义一组更高阶的函数库,在配合上联系的语法函数就成立Toolkits这类的东西,目前流行的有QT、GTK+等。

● Window Manager

有了Toolkits,我们可以很轻松地建立视窗模块(X Client),但是每个视窗模块只负责自己模块内的事务,那么不同视窗间的沟通、协调,例如视窗的切换、放大、缩小等,就没有模块管理了,于是视窗管理员(Window Manager)就应运而生了。

● Internationalization

国际化通常是我们东方语系国家的人比较关心的议题,但是很多软件一开始都由西方国家所主导开发,因此这点常常受到忽略,这个问题牵扯的层面很多,上从语言的显示、输入、中止语言习惯,下到文字位元的处理,完整的解决是必须从头到脚彻底配合才能达成,只处理一半都只能说是一个蹩脚的系统。

随着东方国家使用GUN/Linux的人口越来越多,I18N(i-eighteen- letters-n的缩写)也日益受到重视,目前底层libc部分已经有完整的支持,剩下来便是的问题,由于处理双位元所耗的资源较大,西方国家主导的系统很多情况下,经过一些取舍,I18N就被牺牲掉了,整体而言Embedded Linux 在I18N的程度通常都没有PC端的好,只有在需求时才会使用。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 3 4 下一页

评论


相关推荐

技术专区

关闭