我很难理解桌面环境和窗口管理器之间的区别是什么?
编辑:来自Jack Wallen 的这篇文章:
Linux桌面基本上可以包含三层:
X Windows – 这是允许在显示器上绘制图形元素的基础。X Windows构建了允许移动窗口、与键盘和鼠标交互以及绘制窗口的原始框架。这是任何图形桌面所必需的。
窗口管理器– 窗口管理器是控制窗口位置和外观的拼图中的一块。窗口管理器包括:Enlightenment、Afterstep、FVWM、Fluxbox、IceWM等。需要 X Windows 但不需要桌面环境。
桌面环境——对于某些人来说,这是开始变得有点模糊的地方。桌面环境包括一个窗口管理器,但建立在它之上。桌面环境通常是比窗口管理器更完全集成的系统。需要 X Windows 和窗口管理器。
窗口管理器管理您的窗口。它将窗口装饰放在内容周围,包括要最小化或关闭的按钮。它允许调整窗口大小和移动窗口,决定哪个窗口在顶部。
Metacity 和 Compiz 是今天的两个例子,像我这样的老人可能还记得 twm 和 fvwm。
桌面环境为您提供整体用户体验。它有面板、系统菜单、启动器、状态小程序。当然,它需要一个窗口管理器来管理窗口。它可能会提供默认的文件浏览器和查看器。为了简化,它甚至可能包含默认编辑器、终端程序,甚至电子邮件程序,所有这些都看起来很相似并且可以一起工作。
GNOME、XFCE 和 KDE 是目前最知名的。
什么是窗口管理器?
窗口管理器是一个管理窗口的软件,允许打开、关闭、调整大小和移动窗口。它还能够向用户呈现菜单和选项。它控制用户 GUI 的外观和感觉。使用 Linux 或 BSD,您可以选择。您可以自由选择任意数量的窗口管理器,从精益求精的简单窗口管理器(低内存和 CPU 消耗)到功能丰富的大型窗口管理器。大约有 17 个“主流”窗口管理器,至少还有 70 个。
以下是一些较受欢迎的简短列表:
对于列出所有这些的非常好的网站,请尝试www.plig.org/xwinman/。
什么是桌面环境?
桌面环境 (DE) 通常位于窗口管理器之上并添加许多功能,包括面板、状态栏、拖放功能以及一套集成的应用程序和工具。事实上,用户对操作系统的看法通常基于一件事:桌面环境。当然,DE 只是操作系统的一小部分,在 Linux 和 Unix 系统中,可以替换或高度定制窗口管理器和/或 DE,而不会违反任何最终用户许可协议。
最流行的 Unix/Linux 桌面环境是:
当然,还有其他人。
来源(存档)。
我会尽量简短。以 Ubuntu 为例:
当我对这些概念感到非常困惑时,来自维基百科的图片和文字很有帮助。显示服务器和DE
没有明确的定义来区分它们,但有很强的模式。
窗口管理器 (WM) 的经典功能
桌面环境 (DE) 的经典功能
有些人会提到菜单(例如 Windows 的开始菜单)、任务栏和窗口列表,但是,例如,尽管Icewm具有这些功能,但它是 WM,而不是 DE。
这是因为 DE 的一个基本点是它们提供了自己的一组通用 GUI 应用程序,例如文件管理器、图像查看器、日历等。
此外,DE 的典型特征是一组用于配置的 GUI 实用程序,不仅包括 DE 本身,还包括可以通过命令行 (CLI) 控制的系统参数。例子:
setxkbmap
CLI 实用程序设置键盘布局。但是 DE 提供了一个 GUI 来管理它,因此用户不必学习或对 CLI 语法大惊小怪。同样地,证据和参考
您无需相信我,只需查看 Ubuntu 存储库中的一些软件包依赖项即可:
KDE包括
kmail
,muon
(软件中心),kate
(编辑器),juk
(音乐播放器),gwenview
(图像查看器),systemsettings
(推荐),dolphin
(文件管理器)。XFCE包括
thunar
(文件管理器)、orage
(日历)xfce4-settings
、.GNOME包括
shotwell
(图像查看器)、libreoffice
、gnome-screenshot
和其他一些gnome-core
依赖项:(nautilus
文件管理器)、gnome-software
(软件中心)、baobab
(磁盘使用)、gnome-control-center
(设置)。并将它们与窗口管理器(I3、Xmonad、Icewm、Bspwm)进行对比,它们的依赖项是系统库,而不是 GUI 程序,除了旧的、经典的
x11-utils
.结论
DE比 WM重。
从某种意义上说,对于那些从通常严重依赖 GUI 的 Windows/Mac 迁移到历史上更面向 CLI 的 GNU/Linux 世界的人来说,DE 充当了宝贵的桥梁。
这就是为什么一些高级用户称 DE臃肿。从他们的角度来看,它包含许多用于通过命令行简单实现的任务的图形界面。DE 怎么会有一大堆默认程序?此类用户想要构建自己的工具集,并且可以轻松地做到这一点;他们只需要一个 WM 来执行基本的和必不可少的窗口操作。
不过,不要让势利小人把你赶走。使用您最喜欢的任何东西并完成工作。如果您很好奇并想了解幕后发生的事情以及如何处理 CLI,您可能会发现正在慢慢远离 DE。
XFCE 网站对 XFCE 桌面环境中包含的组件(其中一个是窗口管理器)有很好的解释:
链接:https ://www.xfce.org/about
恕我直言,桌面环境术语源自窗口管理器术语。作为桌面环境是一套软件/工具,用于构建当今人与计算机之间的复杂视觉界面,而窗口管理器仅用于创建简单的图形界面(我记得 1995 年在 Silicon Graphics 站上的 XWindows :) )。
问候,文森佐