Linux平台Display Server与Desktop Environment

Display Driver

Linux中的显示服务器(Display Server)是什么?

显示服务器是一个应用程序,其主要任务是协调客户端与其他操作系统,硬件以及彼此之间的输入和输出。显示服务器通过显示服务器协议与其客户端进行通信。

显示服务器是任何图形用户界面(尤其是窗口系统)中的关键组件。它是图形用户界面(GUI)的基本组件,位于图形界面和内核之间。借助显示服务器,您可以使用GUI图形界面,没有它,您只能使用命令行界面。

注意:不要混淆显示服务器(Display Server)与桌面环境(Desktop Environment),桌面环境(Gnome、KDE、Xfce、MATE等)是基于显示服务器的上层程序。

显示服务器通过显示服务器协议与其客户端进行通信。Linux中提供了三种显示服务器协议: X11、Wayland和Mir。

X Window System, X.Org, X11介绍

X Window System(通常仅称为X或X11)很古老,它起源于1984年,是大多数类似UNIX的操作系统(包括Linux)的默认窗口系统。

X.Org服务器是X.Org基金会管理的X Window System显示服务器的免费开放源代码实现。它是一个通过X11协议与客户端应用程序进行交互的应用程序,用于在显示器上绘制内容并发送输入事件,例如鼠标移动,单击和击键。通常,将启动一个X服务器,它将等待客户端应用程序连接到它。Xorg基于客户端/服务器模型,因此允许客户端在另一台计算机上本地或远程运行。

X11 是网络协议。它描述了如何在客户端(应用程序)和显示器(服务器)之间交换消息。

下一代显示服务器Wayland

Wayland 由X.Org开发人员Kristian Hogsberg于2008年作为个人项目开始。它是一种通信协议 ,用于指定显示服务器与其客户端之间的通信。Wayland是作为一个免费的开源社区驱动的项目而开发的,目的是用现代、安全和简单的窗口系统代替X Window System(也称为X11或Xorg)。

Wayland与X相比的主要优势在于它是从头开始的,X已经太过古老和复杂。Wayland在简洁性和安全性方面都很出色。

总结

与X Window System相比,Wayland还有点新,即使Wayland项目已经进行了十多年,但大多数Linux的视频游戏和图形密集型应用程序仍为X11编写。另外,许多封闭源代码的图形驱动程序,例如NVIDIA GPU的驱动程序,都尚未完全提供对Wayland的支持。

Graphic Library

  • GTK

    GTK(原名GTK+)最初是GIMP的专用开发库(GIMP Toolkit),后来发展为Unix-like系統下开发图形界面应用程序的主流开发工具之一。GTK是GNU计划的一部分。

  • QT
    大家应该很熟悉了,无需赘述。

Desktop Environment

GNOME、KDE、Mate、Unity、Cinnamon、XFCE、LXDE等都是Linux桌面环境,各个桌面环境各有优缺点,比如:在轻量级桌面环境下,XFCE是最受欢迎的桌面环境,在一些配置不高的计算机上运行流畅。

查看当前使用的桌面环境:

$ printf 'Desktop: %s\nSession: %s\n' "$XDG_CURRENT_DESKTOP" "$GDMSESSION"
Desktop: ubuntu:GNOME
Session: ubuntu

# 告诉您从lightdm问候者中选择的登录选项
$ echo $GDMSESSION
ubuntu
$ echo $DESKTOP_SESSION
ubuntu
# 
$ echo $XDG_CURRNT_DESKTOP
ubuntu:GNOME

$ sudo apt install wmctrl
$ wmctrl -m
Name: GNOME Shell
Class: N/A
PID: N/A
Window manager's "showing the desktop" mode: N/A

GNOME

GNOME 是 the GNU Network Object Model Environment 的缩写。

GNOME 计划 是 1997 年 8 月由 Miguel de Icaza 和 Federico Mena 发起,目前由志愿贡献者和受雇贡献者组成的 GNOME 计划开发,其最大的公司贡献者为红帽(Red Hat)公司。与其说 GNOME 是桌面系统,GNOME 更是一个桌面系统开发框架,基于 glib、GTK 等开发工具包,开发者可以高效地开发风格统一的用户端软件及图形应用。

GNOME 包含了现代桌面应用的方方面面:包括 Nautilus 文件管理器、rhythmbox 音乐播放器、totem 视频播放器、gedit 文本编辑器,还包括邮件客户端 evolution、图形处理软件 GIMP 等。GNOME 被设计为易于使用、对新手友好,可通过图形界面设置选项、定制界面。

Gnome 为那些不倾向于调节更多系统的那些用户考虑。那就是为什么 Gnome 甚至不包括一些简单的调节选项,更换主题甚至字体。这些基本的调节,用户需要安装 gnome-tweak-tool。因此默认的整体 Gnome 可定制化的程度是不高的,但是这可以通过第三方应用/工具来做。

Unity

Unity 是由 Ubuntu 的母公司 Canonical 开发的一款外壳。之所以说它是外壳,是因为 Unity 运行在 GNOME 桌面环境之上,使用了所有 GNOME 的核心应用程序。

2010 年,Unity 第一个版本发布,此后经过数次改进,如今和其它的桌面环境一样,也可以安装到其它的 Linux 发行版上了。

Unity 使用了不同的界面风格,如果你用的是 Ubuntu Linux 发行版,你会注意到 Unity 与 KDE 和 GNOME 桌面环境有些不一样。

Unity 在左边有一个启动器,位于启动器顶部的是搜索图标,又叫“Dash”。在 Dash 上搜索文件时,不仅会给出来自硬盘的搜索结果,还会给出来自在线来源的搜索结果,比如 Google Drive、Facebook、Picasa、Flick 及其他。

MATE

MATE 是一种从现在无人维护的 GNOME 2 代码库派生出来的桌面环境。

MATE 让人觉得在使用旧的桌面环境,但是结合了历年来界面方面的诸多改进。MATE 还非常适用于低配计算机,所以如果你有一台旧的或速度较慢的计算机,可以使用 MATE。

Cinnamon

Cinnamon 是 Linux Mint 的默认桌面环境。

与 MATE 类似,Cinnamon 是由 Linux Mint 团队因为不满 Gnome 3 的改进而开发的另一种桌面环境。但 Cinnamon 与 MATE 不同之处在于,Cinnamon 建立在 Gnome 3 的基础上。Cinnamon 是新的,而且在积极开发之中,但这款出色的桌面环境没有因新颖而在功能方面有所减弱。

Cinnamon 拥有 GNOME 和 Unity 等其它桌面环境所没有的种种功能。Cinnamon 是高度可定制的桌面环境,不需要任何外部插件、窗口组件和调整工具来定制桌面。Cinnamon 甚至可以通过设置管理器本身来下载并安装主题,甚至不需要打开互联网浏览器。

KDE

KDE 是 K Desktop Environment 的缩写,KDE 是基于大名鼎鼎的 Qt 的,最初于 1996 年作为开源项目公布,并在 1998 年发布了第一个版本。

KDE 有类windows的“开始菜单”,界面华丽,被称为最接近 Windows 界面的 Linux 桌面系统,包括界面布局、开始菜单、主题风格都与 Windows 相似,因此对熟悉 Windows 的用户很有亲切感。

KDE 始于德国人 Matthias Ettrich 于 1996 年就读蒂宾根大学的一个计划。

Mathias Ettrich 选择使用 Qt 程式库开发 KDE 桌面系统,Qt 提供框架和众多功能,使应用程序更容易编写,并提供 KDE 桌面环境的一致性。1998年7月,KDE 1.0 发布。之后 KDE 2发布,提出了重大技术改进。KDE 2 和 KDE 3 之间的 API 变化较少,KDE 3 可以被看作延续 KDE 2。KDE 4 则包含了许多新技术的变化。KDE Plasma 5 则提供更现代化,更干净的视觉和交互式用户体验。

同 GNOME 类似,KDE 是一个庞大的项目,官方提供了许多图形应用程序以满足人们日常使用,包括文件管理器 Dolphin、邮件客户端 KMail、文本编辑器 Kate、视频播放器 KMPlayer、音乐播放器 Amarok 等。

从传统角度讲,KDE与GNOME都属于Linux阵营中最具影响力的桌面环境选项。GNOME桌面阵营目前已经分裂成了GNOME、Unity、Cinnamon以及MATE,但KDE项目却仍然保持着旺盛的生命力。Plasma 5界面也拥有了前所未见的精致表现。

KDE在可配置性方面一直优于GNOME以及由GNOME衍生而成的各类Linux发行版。不过这到底是不是件好事,仍然取决于用户的实际情况。有些朋友热衷于探索繁多选项所带来的自由搭配空间,但也有些用户更倾向于使用GNOME那样的精简化方案。随着时间的推移,KDE已经在简化的道路上取得了相当可观的进展——现在很多高级选项都会被隐藏起来,用户可以直接享受其搭配合理的默认效果。

人们曾经对 KDE 的稳定性有所抱怨,不过这几年 KDE 稳定性已提高很多。另一个不足是 KDE 的某些组件设计的过于复杂,难以使用。

许多发行版本如OpenSUSE、PCLinuxOS和 Mandriva等皆采用KDE作为默认桌面环境。

使用KDE的感受实际上与Unity、GNOME、Cinnamon或者是MATE可谓完全不同。后面这些桌面环境都使用内置于GTK工具包当中的,与GNOME非常相似的应用组合。然而KDE却独树一帜,始终坚持Qt一百年不动摇,而且拥有着自己一套与之配合的应用套件。虽然应用程序在任何桌面环境下都能够正常运行,但量身打造出来的效果绝对是不一样的——KDE上的应用几乎与主屏幕及桌面融为一体。

XFCE

XFCE 是一个轻量级的桌面环境,建立在 GTK 基础之上,被广泛的运用于各种 UNIX / Linux 发行版中。XFCE 非常小巧、轻便、高效,运行程序很快,对于一些比较老旧的机器、或是很少内存的机器是理想选择。以 XFCE 作为预设桌面的发行版有 Xubuntu 和 Manjaro 等。

在占用资源方面,较GNOME、KDE较少。适合老机器,轻量级桌面。与windows界面环境类似。许多不习惯GNOME 3 ,Unity新桌面的同学,很多选择了XFCE 4.8,包括Linus大神同学。

XFCE 融合了 UNIX 开发哲学中的“模块化”和“可重用性”的重要的思想。XFCE 包含了许多组件,这些组件可以单独安装,也可以应用于其他桌面环境。用户还可以选择 GNOME 等相关软件,按照自己的需求,定制出与众不同的桌面环境。

XFCE 是一个简单并易于使用的桌面环境,其包括主面板、菜单、快捷方式和应用启动器,并集成窗口管理器、文件管理器(Thunar)、声音管理器,界面和主题可以配置。XFCE 最新版本为 4.14,于 2019 年 8 月 11 日发行。

当然,总体来说,Xfce目前的处境其实有点尴尬。从传统角度讲,它本来是仅次于GNOME与KDE的第三大人气选项。它在轻量化水平上稍优于KDE与GNOME。而在GNOME 3正式发布之后,Xfce已经成为最顶尖的“传统”Linux桌面环境。

自那时开始,Xfce就受到来自两位新对手的冲击。Lxde的轻量化效果更出色,而Cinnamon则在功能集丰富度方面傲视群雄。从这个角度讲,MATE的功能更为齐备,在轻量级水平上则与Xfce基本持平。目前Xfce仍然存在,不过其发展速度已经大不如前。

如果大家打算尝试Xfce的话,最好与Xubuntu配合使用。

LXDE

LXDE,全名为 Lightweight X11 Desktop Environment,旨在提供全新轻量、快速的桌面环境,可在 Unix 以及如 Linux、BSD 等 POSIX 相容平台上运行。LXDE 的主要开发者来自台湾,包括名为 PCMan 的著名开源程序设计者洪任谕。

LXDE也位列四大桌面环境之一,轻量级桌面,占用资源较少,合适老机器,不说在新机子高配置上的表现了。Lxde目前已经成为轻量级兼用户友好桌面环境领域的王者。如果大家手头有一台古董级计算机,但又希望让它排上点用场,那么选择Lxde绝对没错。

不同于 Linux 的其他桌面环境,LXDE 组件依赖性极少,大多数组件可以独立运作,无需倚赖其它组件。LXDE 使用 OpenBox 作为其预设窗口管理器,并且希望能够提供建立在互相独立组件上的轻量级快速桌面环境。相较于功能强大与伴随而来的体积膨胀、占用资源,LXDE 更重视实用性和轻巧性,并且尽力降低其所耗的系统资源。虽然 XFCE 已足够轻巧,但 LXDE 更胜一筹。

相较于现代Linux桌面环境,Lxde对于图形硬件、CPU时钟频率以及内存的要求都低得多。在这里我们虽然看不到令人眼花缭乱的图形特效,但却能够获得最为基本的轻量级桌面环境使用体验,并顺利启动并管理自己的应用程序。

LXDE 的组件包括 PCManFM 文件管理器、LXLauncher 程序启动器、LXTerminal 终端、Leafpad 文字编辑器、Xarchiver 压缩管理器等。

LXDE 的缺点是界面比较简陋,不够精美。

要获得最理想的Lxde使用体验,请搭配Lubuntu一同使用。

你可能感兴趣的:(linux,运维,服务器)