解释整个窗口管理器和桌面事物

解释整个窗口管理器和桌面事物

因此,我记得我听过以下术语。试图找到描述它们及其相互关系的来源根本就不存在。而且至少可以说这很令人困惑。

有人可以像向五岁小孩解释一样向我解释以下术语以及它们如何相互关联或相互关联吗:

  • 侏儒
  • 桌面环境
  • 统一
  • 韓國
  • x11
  • x 服务器
  • 启动
  • 万神殿
  • GTK
  • 量子点
  • 窗口管理器

答案1

Gnome、KDE、Unity、Pantheon

Gnome、KDE、Unity、Pantheon 都是桌面环境。
桌面环境由许多不同的工具组成。例如:登录管理器、窗口管理器、应用程序启动器、菜单、终端仿真器、文件管理器、Web 浏览器、编辑器、用于系统配置的图形工具和许多其他实用程序。它是您所需的一切的完整软件包。

图片来源Reddit
在此处输入图片描述

GTK 和 QT

GTK 和 QT 是用于开发软件的工具包/框架,例如:许多为 Gnome 桌面环境开发的工具都使用 GTK 来制作其 GUI,我不需要自己编写所有内容,而是可以使用它们来加快我的开发速度,同时使用和遵循同一环境中所有其他程序都使用的标准框架。

在此处输入图片描述

X、X11 和 Xorg

X 是一个框架,我们甚至可以将其称为一种协议,X11 是该协议的最后一个版本,Xorg(Xorg 服务器:X 使用服务器客户端结构)是 x11 的一个实现,它就像 HTTP 和浏览器一样,HTTP 是一种协议,HTTP2 是最后一个版本,使用该协议与 Web 服务器通信的 Web 浏览器以某种方式实现了它。

来自维基百科:

X 提供了 GUI 环境的基本框架:在显示设备上绘制和移动窗口并与鼠标和键盘进行交互。

它只是让我们能够绘制和展示事物,还包含很多必要的驱动程序。

然而,即使 X 也需要窗口管理器来使用其功能,在下面的图片中您可以看到twm窗口管理器和xterm运行 X 会话的其他内容,有关窗口管理器的更多信息,请阅读最后一节。

在此处输入图片描述

启动

startx是一个用于启动图形环境的脚本,它初始化一个 X 会话。

窗口管理器

窗口管理器大多是桌面环境的一部分,您甚至可以使用它们来代替完整的桌面环境。有许多可用的窗口管理器,例如:i3wm、awesome、openbox、fluxbox、blackbox、xfwm4、compiz 等。

在此处输入图片描述

它们控制我们的窗口如何运行、如何呈现、包含哪些元素、标题和默认按钮应该出现在哪里、如果我拖动/调整大小/关闭它会发生什么?等等。窗口管理器使用 X 或 Wayland 等显示服务器来实现这些。

图片來自維基百科。

答案2

ELI5 解释:

  • Xorg、x11、x 服务器 - 都是同一件事。基本上就是一个可以实现 GUI 的巨型软件。没有运行 X 服务器 => 没有 GUI。
  • 窗口管理器 - 正是它让 Windows 变得漂亮。X 服务器为您提供了基本框架。
  • startx是一个命令。在过去,这就是你调出 GUI 的方式。
  • Gnome、KDE、Unity、Pantheon - 都是图形外壳。虽然 X 服务器为您提供基本的 GUI,但图形外壳为应用程序提供了特定的外观和特定的行为(例如Alt+ Tab)。与窗口管理器一起使用。通常与文本编辑器、Web 浏览器等额外软件捆绑在一起。应该纠正 Unity - 它实际上只是 Compiz 窗口管理器的一个插件,当 Unity 崩溃并且您只剩下基本的桌面而没有启动器或顶部面板时,这一点就会变得明显。
  • GTK、QT - 图形工具包。基本上是 GUI 编程的“语言”。更具体地说,它们是“库”,Linux 桌面上的大多数常用语言(如 Python 或 C++)都使用这些库来制作 GUI 应用程序。

相关内容