PikoPong
  • Web Dev
  • Hack
  • Database
  • Big Data
  • AWS
  • Linux
No Result
View All Result
PikoPong
  • Web Dev
  • Hack
  • Database
  • Big Data
  • AWS
  • Linux
No Result
View All Result
PikoPong
No Result
View All Result
Home Linux

What is a Display Server in Linux?

August 29, 2020
in Linux
272 20
What is a Display Server in Linux?


In Linux related articles, news and discussions, you’ll often come across the term display server, Xorg, Wayland etc.

In this explainer article, I’ll discuss display servers in Linux.

What is display server in Linux?

A display server is a program which is responsible for the input and output coordination of its clients, to and from the rest of the operating system, and among the hardware and the operating system. Basically, thanks to a display server, you can use your computer graphically (GUI). Without the display server, you would only be restricted to a command line interface (TTY).

The display server provides the framework for a graphical environment so that you can use mouse and keyboard to interact with applications.

The display server communicates with its clients over the display server protocol, like X11. The display server is a key component in any graphical user interface, specifically the windowing system.

Don’t confuse display server with desktop environment. The desktop environment uses display server underneath it.

Sounds familiar but it is not fully clear? Let me explain.

Display server communications protocols in Linux

There are three display protocols available in Linux, the X11, Wayland and Mir. I’ll give you a brief introduction for these display servers.

X11

The X11 (also refer as X) is the legacy display server that has been existed for years. It is the most common display server used in Linux distributions.

X Architecture

The X11 communication protocol, uses the X.org Server display server. It receives input events from device drivers and makes them available to one of its clients.

The display server also receives data from its clients, it processes the data and does the compositing and on Linux it passes the data to one of three kernel components – the DRM, gem or KMS driver.

The X.Org Server is a display server that relies on a second program, the compositing window manager, to do the compositing. Examples are Mutter or KWin. GNOME uses Mutter.

Wayland

As per its website, Wayland is “intended as a simpler replacement for X, easier to develop and maintain”.

And indeed Wayland is the modern display server that is supposed to replace the legacy X display server.

Its adoption is still a work in progress. Ubuntu tried to switch to Wayland as the default display server with version 17.10 but the experiment met with negative feedback.

A lot of GUI applications and their frameworks depend on the X server. These applications didn’t work as intended on Wayland.

This forced Ubuntu to stay on X as default display server. It still provides the option to use Wayland but it is not default anymore.

An overwhelming majority of distributions use X display server by default even today.

Wayland Architecture

Display servers that put into effect the Wayland display server protocol, are called Wayland compositors. Like any X11, a Wayland compositor is responsible for handling input and output for its clients but also does the compositing – in contrast to X11.

A few Wayland compositors are Weston, Mutter, KWin or Enlightenment.

Mir

The Mir display server comes with its own Mir display server protocol which differs to those used by X11 and Wayland. It was developed by Canonical, as part of the development of Unity, and was intended to be the display server of choice for Ubuntu.

As of 2017, it has been replaced with the Wayland display server for desktop editions of Ubuntu, although Mir’s development continued for Internet of Things (IoT) applications.

Why are we still using Xorg?

Wayland as it is relatively new, is not very stable yet, compared to Xorg. The programs, which act as clients, in order to communicate with a display server, must know how to do it.

For this reason, many programs might not run when using Wayland. Ubuntu’s experiment to switch to Wayland by default confirmed this.

Conclusion

I hope you have a bit better understanding of display server concept in Linux. I have tried to not go into too much technical details but I could not avoid them altogether.

Your feedback and suggestion is welcome.

Like what you read? Please share it with others.



Source link

Share219Tweet137Share55Pin49

Related Posts

What is GNU/Linux Copypasta? – It’s FOSS
Linux

What is GNU/Linux Copypasta? – It’s FOSS

As a Linux user, you might have come across a long text that starts with “I’d like to interject...

February 27, 2021
How to Install the Latest Erlang on Ubuntu Linux
Linux

How to Install the Latest Erlang on Ubuntu Linux

Erlang is a functional programming language for building massive scalable real-time systems. Originally created by Ericsson as a proprietary...

February 26, 2021
Check Your Disk Usage Using ‘duf’ Terminal Tool in Linux
Linux

Check Your Disk Usage Using ‘duf’ Terminal Tool in Linux

Brief: duf is a terminal tool meant as an enhancement to the traditional “df” and “du” Linux commands. It...

February 23, 2021
ESPlot: Open Source Software for Plotting Real-Time, High-Speed Signals For Embedded Systems
Linux

ESPlot: Open Source Software for Plotting Real-Time, High-Speed Signals For Embedded Systems

Confronted with the need of plotting high-speed (or high number of data) signals, typically for embedded systems applications and...

February 22, 2021
Next Post
Log your VPC DNS queries with Route 53 Resolver Query Logs : idk.dev

Log your VPC DNS queries with Route 53 Resolver Query Logs : idk.dev

Modernizing and containerizing a legacy MVC .NET application with Entity Framework to .NET Core with Entity Framework Core: Part 2 : idk.dev

Modernizing and containerizing a legacy MVC .NET application with Entity Framework to .NET Core with Entity Framework Core: Part 2 : idk.dev

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recommended

Things You Can Do With CSS Today — Smashing Magazine

Things You Can Do With CSS Today — Smashing Magazine

February 1, 2021
The Mad Magazine Fold-In Effect in CSS

The Mad Magazine Fold-In Effect in CSS

June 25, 2020
How To Use Styled-Components In React — Smashing Magazine

Getting Started With Next.js — Smashing Magazine

October 22, 2020
Why you need “cross-origin isolated” for powerful features

Why you need “cross-origin isolated” for powerful features

May 28, 2020

Categories

  • AWS
  • Big Data
  • Database
  • DevOps
  • IoT
  • Linux
  • Web Dev
No Result
View All Result
  • Web Dev
  • Hack
  • Database
  • Big Data
  • AWS
  • Linux

Welcome Back!

Login to your account below

Forgotten Password?

Create New Account!

Fill the forms bellow to register

All fields are required. Log In

Retrieve your password

Please enter your username or email address to reset your password.

Log In