日期:2014-05-16  浏览次数:20628 次

LINUX中的GUI标准有那些
我准备学习LINUX下的QT编程,想先了解一下基本概念和框架标准,希望各位高手详细解释一下.
1.我看见有些文章中提到"GUI系统主要有MiniGUI、Microwindows、OpenGUI、Qt/Embedded",GUI系统指的是什么,是一套桌面系统吗(与WINDOWS类似),MiniGUI、Microwindows、OpenGUI、Qt/Embedded这些和KDE,GNOME的关系是什么,希望各位指点一下,推荐一些好的相关文章也行.
2.KDE,GNOME和X WINDOW的关系是什么,LINUX中的GUI系统的结构体系是什么,最好能有层次结构详细的说明.不同的GUI系统对于我们编程是否有影响,比如:基于KDE和GNOME的有什么不同,是否可以互用.基于以上提到的四种GUI系统是否有什么不同.

------解决方案--------------------
1.GUI (Graphical user interface)说白了就是图形库,开发界面的库和工具,并且尽量于硬件无关
"MiniGUI、Microwindows、OpenGUI、Qt/Embedded这些和KDE,GNOME的关系是什么"
前者是GUI,后者的是专用图形桌面管理系统,前者也可以有后者的部分功能,也可以不用后者功能如MiniGUI

希望有专业高人回答:)



------解决方案--------------------
已经差不多够了吧.

还有一点就是Microwindows把图形引擎放如内核了.
linux是用的接口.即linux的桌面系统可以换,windows的固定死了.
------解决方案--------------------
如上所说,GUI是图形接口,所谓的GUI编程其实可以看成是图形用户界面编程,在Windows,就是通常的带图形界面的用户程序;在Linux,也是这样。
Linux的图形用户界面常见的有两种:Gnome和KDE,这两者可以看成一整套的图形环境,因为不光包含窗口管理器,还有很多其他机制。二者基于的图形库
分别是Gtk+和QT。所以不难看出,这四者所处的层次不一样。Gnome和KDE也有自己的API,不过层次比较高,比如可以打开一个Gnome的文件选择对话框
之类的。而Gtk+和QT主要还是起着图形库的作用,说白了,就是如何画图。X Window是UNIX下的图形服务器标准,只要有X运行就可以显示图形,X也有自己
的更底层的API,而Gtk+和QT就是基于这些API(当然也可以不基于这些API,比如基于framebuffer)。

至于其他的像MiniGUI、Microwindows、OpenGUI这些,可以看成跟Gtk+和QT一个级别的,不过一般都无需X Window的运行。

总的来说,层次可以是这样:
最底层的API,比如xlib(X Window)和framebuffer
其上是基本的图形库,比如Gtk+、QT
最上层是应用程序运行环境,比如Gnome、KDE

举个KDE启动的例子你就知道了:
1、linux内核启动,加载系统服务
2、启动X Window Server(此时即可运行任何基于QT或者Gtk+的程序)
3、启动KDE窗口管理器及其他相关进程(KDE会调用QT库)

------解决方案--------------------
GUI: Graphic User Interface, 图形用户界面.
Xlib: Linux的GUI最底层API.
Framebuffer: 模拟硬件图形接口, 对显存进行操作.
MiniGUI: 一套国人开发的, 用于嵌入式Linux的图形库.
Qt: 基于framebuffer开发的图形库. KDE
Gtk: 基于Xlib开发的图形库. GNOME
KDE/GNOME: 可以理解为Linux GUI的两个帮派, 他们的代表作分别是QT和GTK.
X Window: 一个服务器程序称做X SERVER, 这是与Windows系统的不同, Linux系统的桌面只是一个程序.