What is the X Window System (X11)?
The X Window System (X11) is an open source, cross-platform, client-server computer software system that provides a GUI in a distributed network environment.
Primarily used for Unix variants, X versions are also available for other operating systems. The functions of the X Window System include network transparency, the ability to connect to different networks, and customizable graphical functions. The X Window System was first developed in 1984 as part of the Athena project, a cooperation between Stanford University and MIT. The X.Org Foundation, an open group, controls the development and standardization of the X Window System.
The X Window System is also referred to simply as the X, X11, or X Windows.
The client / server model in the X system works in reverse to the typical client / server model, in which the client runs on the local computer and asks for services from the server. In the X system, the server runs on the local computer and makes its display and services available to the client programs. The client programs can exist locally or remotely over different networks, but appear transparent.
X is used in networks of interconnected mainframes, minicomputers, workstations, and X terminals. The X Window System is made up of a number of interacting components, including:
X server: Manages the display and input hardware. It captures command-based and graphic-based inputs from the input hardware and transfers them to the client application that requested them. It also receives input from the client applications and displays the output under the guidance of Windows Manager. The only component that interacts with the hardware is the X server. This makes it easier to recode according to the requirements of different hardware architectures.
Windows Manager: Is the client application that manages client windows. It controls the general operations of the window system such as geometry, appearance, coordinates and graphical properties of the X-display. The window manager can resize and position windows on the screen, and can reshuffle windows in a window stack.
X client: Is an application program that communicates with the X server using the X protocol. Xterm, Xclock and Xcalc are examples of X clients. X manages its windows in a hierarchical structure. The shaded area that fills the entire screen is the main window. X client application windows appear above the main window and are often referred to as children of the root directory.