linux的桌面并不是linux必备的组件,但是对于桌面用户而言,有桌面的linux系统可能更加现在和符合常规。
- linux桌面的基本要素
基本上有三层可以包含在Linux桌面中:
X Windows – 这是允许在显示器上绘制图形元素的基础。 X Windows构建允许移动窗口,与键盘和鼠标交互并绘制窗口的原始框架。这对于任何图形桌面都是必需的。 窗口管理器 – 窗口管理器是控制窗口放置和外观的难题。窗口管理器包括:Enlightenment,Afterstep,FVWM,Fluxbox,IceWM等。需要X Windows而不是桌面环境。 桌面环境 – 这是一些开始有点模糊的地方。一个桌面环境包括一个窗口管理器,但建立在它之上。桌面环境通常是一个比Window Manager更完全的集成系统。需要X Windows和一个窗口管理器。桌面环境的例子是GNOME,KDE,Cinnamon,Xfce等等)
- 窗口管理器
窗口管理器是提供窗口边框的X客户端,它控制图形程序的外观和行为方式:边框、标题栏、大小、以及调整大小等操作。很多窗口管理器还有其他功能,比如Window Maker提供了应用程序面板,Fluxbox提供窗口标签功能,此外还有启动程序的菜单、窗口管理器配置菜单等。窗口管理器一般不提供额外的组件,比如图标之类的,它们一般由桌面环境提供。因此,窗口管理器通常不怎么耗费系系统资源。
窗口管理器是一个管理窗口的软件,允许打开,关闭窗口re-sized并移动窗口。它也能够向用户呈现菜单和选项。它控制用户GUI的外观和感觉。使用Linux或BSD,您可以选择。您可以自由选择任意数量的窗口管理器,从简单的lean-and-mean(低内存和CPU消耗)到feature-packed大窗口管理器。大约有17个”mainstream”窗口管理器,至少有70个。
按照类型分: 1)堆叠式(悬浮式)窗口管理器 2)平铺式(瓦片式)窗口管理器 3)动态窗口管理器
- 桌面环境
桌面环境通过汇集使用相同组件库的程序,为用户提供了完全的图形用户界面。
桌面环境结合X客户端,提供通用图形用户界面元素,如图标、工具栏、壁纸,桌面小部件。 大多数桌面环境包括提供一套整合的应用程序和实用工具。 最重要的是,桌面环境提供他们自己的 window manager, 但是通常被替换为另一个兼容的。
用户可以自由搭配不同桌面环境的程序,桌面环境只是提供一个完整的和方便的方法完成这项任务。请注意,用户可以自由地混合和匹配来自多个桌面环境中的应用。 例如,KDE 用户可以安装和运行 GNOME 应用程序如Epiphany web 浏览器,他/她宁愿在 KDE 的 Konqueror web 浏览器。 这种方法的一个缺点是,许多应用程序提供的桌面环境项目严重依赖其DE各自底层库。因此,从一系列桌面环境中安装应用程序将需要安装更多的依赖关系。用户为了节省磁盘空间,通常不会使用这样的混合环境,他们会考虑轻量级替代方案。
此外,桌面环境自带的程序,与该桌面环境整合最佳。从表面上看,混合环境中的部件工具包会造成视觉上的差异。(也就是说,接口将使用不同的图标和小部件样式)。 在用户体验方面,混合环境中的行为可能同样可能造成混乱或意外的行为。(例如单点击与双击图标;拖和拖放功能)
桌面环境(DE)通常位于Window Manager之上,并添加了许多功能,包括面板,状态栏,drag-and-drop功能以及一套集成的应用程序和工具。事实上,用户对操作系统的意见通常基于一件事情:桌面环境。当然,DE只是操作系统的一小部分,在Linux和Unix系统中,Window Manager和/或DE可以替换或高度定制,而不会违反任何end-user许可协议。
参考资料:
- https://blog.csdn.net/weixin_39540568/article/details/87972034
- https://wiki.archlinux.org/index.php/Comparison_of_tiling_window_managers
- https://wiki.archlinux.org/index.php/Window_manager_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
- https://wiki.archlinux.org/index.php/Desktop_environment_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)