窗口管理器与桌面环境与窗口系统?有什么不同?


20

我很困惑这些术语实际意味着什么,以及他们做什么/他们如何为整个系统做出贡献。特别是,当我运行Ubuntu时,有几个关键字,如:

Gnome 
X11 
Xorg 
Metacity 
GTK+

这些之间究竟有什么区别?哪个可以改?当我们谈论KDE或LXDE时,是否同样适用?

编辑:此外,像Compiz这样的东西在每个窗口管理器/窗口系统/桌面环境中工作?


已经在2010年问过了 在AskUbuntu上 并在几个月后问道 在Unix和Linux上 。在如此多的部分中拆分StackExchange头发并不总是有意义的。
Dan Dascalescu

Answers:


25

X11是一个 网络协议 。它对图形基元,图像,指针运动和按键等内容进行编码。

Xorg是一个 X服务器 。它实现了X11,并为键盘,鼠标和视频卡提供了接口。

GTK +是一个 小部件工具包 。它提供诸如按钮,滚动条,编辑框等内容。

Metacity和Compiz是 窗口管理员 。它们装饰X窗口基元并支持各种操作,例如移动,调整大小和最大化窗口。

GNOME,KDE和LXDE是 桌面环境 。它们提供应用程序使用和遵循的库和规范,以便与其他应用程序“玩得很好”。


这是一个非常好的简单答案+1。但是,可以更改Xorg服务器还是Linux标准?另外,我从未在KDE环境中听说过GTK +或Metacity - 它们是否具有特定的Gnome?
n0pe

2
Xorg很简单 X11的实施;它恰好是最受欢迎的FOSS实现。 KDE指定Qt用作其widget工具包,因此KDE应用程序无法使用GTK +,因为它将不再使用 一个KDE应用程序。可以在KDE下使用Metacity(窗口管理器很少是DE规范的一部分,只是一个理智的默认值),但是人们首先使用KDE的原因主要是由于它的可配置性,Metacity是非常好的。可配置性的对立面。
Ignacio Vazquez-Abrams

还有一个问题,感谢信息到目前为止。窗口管理器是否在双屏兼容性方面发挥作用?我即将从KDE切换到轻量级解决方案(blackbox / openbox,那个区域),我想知道这些是否会影响双屏或那种东西。
n0pe

他们 不能 ,但有些可能会在多监视器情况下提供附加功能(对齐屏幕边缘,发送到屏幕等)。
Ignacio Vazquez-Abrams

user113907提到:“X11是窗口系统(在屏幕上绘制窗口的东西)”。你提到:“X11是一种网络协议”。这可以和解吗?
dotancohen

4

以下是定义的术语,以及一些以Ubuntu为中心的示例。

  • 窗口管理器:接受窗口的请求并将它们放在需要的位置。有标题栏,菜单等吗 示例:Metacity

  • 桌面环境:窗口管理器的超集,可添加面板,背景和其他细节。 示例:GNOME

  • 窗口系统:实际的低级软件,允许窗口之类的东西首先存在,并在屏幕上绘制它们。 示例:Xorg

通常,您可能也有兴趣知道窗口管理器和桌面环境是用户与之交互的内容。您不直接触摸(除非您在恢复shell中)窗口系统。

还要注意,这些东西可以模块化以尊重另一个。例如,您可以在Xorg上使用任何窗口管理器,并在任何窗口管理器上使用任何桌面环境。


4

GNOME是一个桌面环境(它处理桌面图标和面板)。

Metacity是GNOME的窗口管理器之一(它保持窗口组织)。

GTK +是GNOME的widget工具包(它绘制按钮和复选框)。

X11是窗口系统(在屏幕上绘制窗口的东西)。

Xorg是X11的开源实现(通常与X11同义)。

Compiz是一个窗口管理器和桌面合成器(桌面合成器是一种在屏幕上呈现特殊效果的程序,例如桌面立方体)。

您至少可以在GNOME,KDE和Unity中运行Compiz。只需将CCSM包输入终端即可获得:

$ sudo apt-get install ccsm
$ ccsm

(不要输入美元符号和后面的空格;这些只表示您没有以root身份登录。)在CCSM(Compiz配置设置管理器)中,打开并配置您想要的任何桌面效果。小心!您可能会丢失GNOME和UNITY中的标题栏。如果发生这种情况,请按Ctrl-Alt-F1然后键入:

$ top

查看PID列并记下xorg条目上的数字。然后输入:

$ sudo kill  PID 

登录屏幕应立即显示。再次登录,避免上次犯错误。对不起长篇大论。


Ignacio Vazquez-Abrams提到:“X11是一种网络协议”。你提到:“X11是窗口系统(在屏幕上绘制窗口的东西)”。这可以和解吗?
dotancohen
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.