Windowing system

A windowing system enables the computer user to work with several programs at the same time.

[citation needed] From a programmer's point of view, a windowing system implements graphical primitives.

The display server is a key component in any graphical user interface, specifically the windowing system.

Like any display server, a Wayland compositor is responsible for handling input and output for its clients and, in contrast to X11, the compositing as well.

This protocol defines that clients can directly write data into the framebuffer using the EGL rendering API.

The display server still gets to decide which window is on top and thus visible to the user and also still is responsible for passing data regarding to input devices from evdev to its clients.

It is also well suited for mobile computing and has been adopted, for example, by the smartphone- and tablet-focused projects Tizen, Sailfish OS and AsteroidOS.

Gralloc competes with other solutions like e.g. Mesa's Generic Buffer Management (GBM) or Nvidia's EGLStreams.

The Gralloc hardware abstraction layer (HAL) is used to allocate the buffers that underlie "surfaces".

Hardware Composer HAL (HWC) was introduced in Android 3.0 and has evolved steadily over the years.

It is also included with Windows Server 2008, but requires the "Desktop Experience" feature and compatible graphics drivers to be installed.

From Windows 8 onwards DWM can't be disabled and is software rendered if no suitable graphics card is installed.

Typical elements of a window . The window decoration is either drawn by the window manager or by the client. The drawing of the content is the task of the client.
The basic components of a GUI : The display server implements the windowing system. A simple window manager merely draws the window decorations , but compositing window managers do more.
The X.Org Server communicates with its clients, e.g. Amarok , over the X11 protocol.
X Window System logo
X Window System logo
The Wayland display server protocol
Wayland logo
Wayland logo