目录

1. linux图形界面

2. X协议

3. Xfree86  Xorg

4. WM(window manager:窗口管理器)

5. X协议的Client端实现

6. KDE、GNOME、QT和GTK直接关系

7. 参考:


1. linux图形界面

linux本身没有图形界面,linux现在的图形界面的实现只是linux下的应用程序实现的。
图形界面并不是linux的一部分,linux只是一个基于命令行的操作系统,linux和Xfree的关系就相当于当年的DOS和 WINDOWS3.0一样,windows3.0不是独立的操作系统,它只是DOS的扩充,是DOS下的应用程序级别的系统,不是独立的操作系统,同样 XFree只是linux下的一个应用程序而已。不是系统的一部分,但是X的存在可以方便用户使用电脑。WINDOWS95及以后的版本就不一样了,他们 的图形界面是操作系统的一部分,图形界面在系统内核中就实现了,没有了图形界面windows就不成为windows了,但linux却不一样,没有图形 界面linux还是linux,很多装linux的WEB服务器就根本不装X服务器.这也WINDOWS和linux的重要区别之一。

linux图形相关软件层次:

2. X协议

X是一个开放的协议规范,当前版本为11,俗称X11。X Window System由客户端和服务端组成,服务端X Server负责图形显示,而客户端库X Client根据系统设置的DISPLAY环境变量,将图形显示请求发送给相应的X Server。

3. Xfree86  Xorg

Xfree86,Xorg是X协议的软件实现。XFree86只是实现X协议的一个免费X服务器软件,只不过现在LINUX上最常用的是Xorg了。而苹果电脑的图形界面用的也是X协议,而且被认为是做的最好的X协议图形界面,并且他对X协议的实施是做在系统内核里的,所以性能明显好很多,这就是为什么很多大型三维图形设计软件都是在苹果平台上的原因。

/usr/X11R6这个目录,这是XFree的默认安装目录,X11R6 实际上是 X Protocol version 11 Release 6。

4. WM(window manager:窗口管理器)

WM的作用就是最大化,最小化,移动,关闭窗口等.而这些不是X服务器来负责完成的,所以,我们看到的linux图形界面,都是启动了WM的,否则linux图形界面的窗口将不能移动,放大和缩小。

5. X协议的Client端实现

XFree86是X协议的服务器软件(注以软件的形式实现),但Client端更多的是方便程序员更方便的使用X协议与服务器端的XFree86交互,故就产生了一个Xlib库,封装了X协议内容,如果你还觉得直接使用Xlib不方便,于是就产生了qt和gtk,对Xlib进一步封装,提供了很多控件,可以可视化的使用X协议更方便程序员的开发。

Xlib、qt、gtk直接关系如下图:

QT是直接使用xlib库的,GTK并为直接使用xlib,而是使用更低层的函数库GDK和Glib。这种结构使得Gtk可以更方便地移植到其它系统上,或使用与XWindows系统无关的图形库。

6. KDE、GNOME、QT和GTK直接关系

KDE和GNOME是窗口管理器,启动他们后我们进入了可视化操作(图形界面),既然需要显示图形,自然少不了与X协议的服务器软件打交道,既然QT和GTK进一步封装了X协议,并且他们提供了更为丰富的窗口及控制机制,于是在QT基础上实现的窗口管理器叫KDE,在GTK基础上实现的窗口管理器叫GNOME.

再次提示:KDE和GNOME并不只是窗口管理器,同时提供了桌面、菜单等等。

其它的小型窗口管理器有:
windowmaker,after step,blackbox,fvwm,fvwm2,等等都是常用的优秀窗口管理器.REDHAT9中有windowmaker 但是默认不安装,大家可以装来试试.只要xinit再wmaker&就可以用windowmaker了.

7. 参考:

https://blog.csdn.net/zhangna20151015/article/details/51280578

https://www.cnblogs.com/wangkangluo1/archive/2012/06/14/2548706.html

https://www.cnblogs.com/newjiang/p/8414625.html

linux图形界面总结---X、Xorg、WM、QT、GTK、KDE、GNOME的区别与联系相关推荐

  1. 【linux】图形界面基础知识(X、X11、GNOME、Xorg、KDE的概念和它们之间的关系)

    转载自:https://blog.csdn.net/zhangxinrun/article/details/7332049 简介 LINUX初学者经常分不清楚linux和X之间,X和Xfree86之间 ...

  2. linux图形界面基本知识(X、X11、Xfree86、Xorg、GNOME、KDE之间的关系)

    LINUX初学者经常分不清楚linux和X之间,X和Xfree86之间,X和KDE,GNOME等之间是什么关系.常常混淆概念,本文以比较易于理解的方式来解释X,X11,XFREE,WM,KDE,GNO ...

  3. linux 图形界面 x x11 gnome xorg kde 之间的关系

    LINUX初学者经常分不清楚linux和X之间,X和Xfree86之间,X和KDE,GNOME等之间是什么关系.常常混淆概念,本文以比较易于理解的方式来解释X,X11,XFREE,WM,KDE,GNO ...

  4. 基本linux加载图形界面,linux图形界面基本知识(X、X11、Xfree86、Xorg、GNOME、KDE之间的关系)...

    LINUX初学者经常分不清楚linux和X之间,X和Xfree86之间,X和KDE,GNOME等之间是什么关系.常常混淆概念,本文以比较易于理解的方式来解释X,X11,XFREE,WM,KDE,GNO ...

  5. 转载linux图形界面编程基本知识(X11, xorg, gdm/gnome)

    水平有限,有错误请指正: 在windows上运行的X11 server,通常我们会使用Xmanager.putty+Xming等等 Fluxbox是一个基于GNU/Linux的轻量级图形操作界面 图 ...

  6. [转帖]linux下的X server:linux图形界面原理

    linux下的X server:linux图形界面原理 https://www.cnblogs.com/liangxiaofeng/p/5034912.html linux下的X server:lin ...

  7. linux图形界面编程基本知识

    很多LINUX初学者分不清楚linux和X之间,X和Xfree86之间,X和KDE,GNOME等之间是什么关系.常常混淆概念,我想以比较易于理 解的方式说明一下X,X11,XFREE,WM,KDE,G ...

  8. linux下的X server:linux图形界面原理

    linux下的X server:linux图形界面原理 Moblin Core是在Gnome Mobile的平台上建立.我以前玩Linux,提交的都和图像没有关系,连Xwindows都不用启动,开机后 ...

  9. 【转】linux图形界面编程基本知识

    原文:https://blogs.gnome.org/raywang/2007/10/11/linux%E5%9B%BE%E5%BD%A2%E7%95%8C%E9%9D%A2%E7%BC%96%E7% ...

最新文章

  1. 嵌入式linux编程,嵌入式Linux学习笔记 - 嵌入式Linux基础知识和开发环境的构建_Linux编程_Linux公社-Linux系统门户网站...
  2. lede 插件_家中路由换新——lede软路由安装教程
  3. ajax异步查询demo,ASP.NET中AJAX的异步加载(Demo演示)
  4. SAFE: Similarity-Aware Multi-Modal Fake News Detection-学习笔记
  5. matlab直扩序列生成,基于matlab的直接序列扩频通信系统仿真毕业论文
  6. FTP下载利器FlashFXP【原创 HOHO】
  7. 关于qt中的tr( )函数
  8. 使用tcgetattr函数与tcsetattr函数控制终端-转
  9. asterisk php agi,asterisk AMI入门
  10. 数字孪生数据中心机房,智能 IDC 高阶运维
  11. IDEA设置背景颜色
  12. python在经济学的应用_『经济学在读研究生学习python可以用来做什么』python经济应用教程...
  13. cad2012打开后闪退_win7系统打开CAD2012出现闪退的解决方法
  14. 大唐凌烟阁二十四功臣
  15. 《时代》杂志:元宇宙将如何塑造我们的未来?
  16. 使用VB合并word文档内容
  17. 做销售如何有效地维护好与客户的关系
  18. Oracle 利用储存过程插入循环插入大量数据方法
  19. 【MC】新加载器 Quilt 好用吗?和 Fabric 相比好在哪?
  20. 在ARM处理器架构下部署kettle etl工具注意事项

热门文章

  1. 用*号代替电话号码,
  2. JavaSE——基础知识回顾14之集合(下半部分Map)
  3. 高考计算机特长分,特招线和一段线是什么意思 哪些考生属于特长生
  4. some和every的区别
  5. Go:构建应用程序的10大框架
  6. 2018Q4欧洲智能手机统计数据出炉 华为小米增幅明显
  7. Android 面试(Android 篇)
  8. 没有内容的营销是放空枪 你的内容能让人尖叫吗?
  9. [机器学习算法]机泊松回归算法原理详解和应用
  10. COW(暴力枚举) + 玄神的字符串(思维题) + Duplicate Strings(字符串思维题)