The X Window System Overview 1 CHAPTER 1 INTRODUCTION 1.1 Background The Linux operating system today becomes the great choices, for everything requirement or platform. In Linux many features is offered, such as graphical or GUI, internetworking, word processing and many others. And in this case, we will explain the X Window System about GUI that was released in 1984. The main features of X Window System are: modularity, extensibility and interoperability. The X Window System uses client-server architecture. The X server (the Xorg binary) listens for connections from X client applications via a network or local loopback interface and X client applications exist in the user-space, creating a graphical user interface (GUI) for the user and passing user requests to the X server. In this case, writers will tell about historical X Window System, the features of X Window System, Configuration file server, and comparison between X Window System with X Windows System, in order to reader know about it. 1.2 Problem Formulation In this paper we can get the problem that will be formulated inside the explanation later, they are: 1. What are the histories of X Window System in Linux? 2. What are the features of X Window System? 3. What are the configuration files of X Window System? 4. What are the ways to differ of the X Windows System and X Window System? 1.3 Purpose Our purposes in creating this paper are: 1. To inform the history of X Window System. 2. To give the understanding of X Window System in Linux includes features of it. 3. To give the ways to set configuration files of X Window System.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
The X Window System Overview
1
CHAPTER 1
INTRODUCTION
1.1 Background
The Linux operating system today becomes the great choices, for
everything requirement or platform. In Linux many features is offered, such as
graphical or GUI, internetworking, word processing and many others. And in this
case, we will explain the X Window System about GUI that was released in 1984.
The main features of X Window System are: modularity, extensibility and
interoperability. The X Window System uses client-server architecture.
The X server (the Xorg binary) listens for connections from X client
applications via a network or local loopback interface and X client applications
exist in the user-space, creating a graphical user interface (GUI) for the user and
passing user requests to the X server. In this case, writers will tell about historical
X Window System, the features of X Window System, Configuration file server,
and comparison between X Window System with X Windows System, in order to
reader know about it.
1.2 Problem Formulation
In this paper we can get the problem that will be formulated inside the
explanation later, they are:
1. What are the histories of X Window System in Linux?
2. What are the features of X Window System?
3. What are the configuration files of X Window System?
4. What are the ways to differ of the X Windows System and X Window
System?
1.3 Purpose
Our purposes in creating this paper are:
1. To inform the history of X Window System.
2. To give the understanding of X Window System in Linux includes
features of it.
3. To give the ways to set configuration files of X Window System.
The X Window System Overview
2
1.4 Benefit
We can get some benefit for explaining this paper, some of them are:
1. Makes the GUI and application more user friendly to the user.
2. Knows the features of X Window System.
3. Knows the ways to set configuration files of X Window System.
1.5 Problem Boundaries
In this paper we just explain about the historical of the X Window System
includes the features of it. And also the configuration files of X Window System
especially for the server configuration file, the comparison of X Window System
and X Window System as well.
1.6 Writing Systematic
This is the complete writing systematic:
CHAPTER I INTRODUCTION
This chapter explains about background, problem formulation, purpose
benefit, problem boundaries and writing systematic in creating ISAS.
CHAPTER II CONTENT
This chapter explains about the content of ISAS.
CHAPTER 3 ANALYSIS
This chapter explains about the comparison between X the Window
System and the X Window System.
CHAPTER 4 CLOSING
This chapter explains about conclusion and suggestion.
BIBLIOGRAPHY
The X Window System Overview
3
1.7 Time Schedule
Table 1.1 Time Schedule
No Activities January 2009
1 2 3 4 4 5 5 5 7 7
1
Looking of Data
2
Making Abstraction and
Preface
3
Make Chapter I – IV
4
Make Closing
6
Making Slide Show
7
Monitoring
The X Window System Overview
4
CHAPTER 2
CONTENT
2.1 The X Window System
While the heart of Red Hat Enterprise Linux is the kernel, for many users,
the face of the operating system is the graphical environment provided by the X
Window System, also called X.
Other windowing environments have existed in the UNIX world, including
some that predate the release of the X Window System in June 1984. Nonetheless,
X has been the default graphical environment for most UNIX-like operating
systems, including Red Hat Enterprise Linux, for many years.
The graphical environment for Red Hat Enterprise Linux is supplied by
the X.Org Foundation, an open source organization created to manage
development and strategy for the X Window System and related technologies.
X.Org is a large-scale, rapidly developing project with hundreds of developers
around the world. It features a wide degree of support for a variety of hardware
devices and architectures, and can run on a variety of different operating systems
and platforms. This release for Red Hat Enterprise Linux specifically includes the
X11R7.1 release of the X Window System.
2.2 The Main Featured of X Window System Is:
1. Modularity
Modularity refers to the phenomenon of being independent. The modular
applications consist of various modules. Because each module is independent of
the other, you can test and implement each module independently. The modularity
featured is used when you need to develop applications that require various
components, each providing a different functionality to the applications.
X Window System consists of various components that can be installed
and used separately. If the function of a particular component changes, it affects
only that particular component and the application in which it is used. In addition,
you can upgrade a particular version of an application without affecting the other
applications that work in coordination with the application you are upgrading.
The X Window System Overview
5
2. Extensibility
Extensibility is the ability of a system to enhance its functionality by
incorporating new features. The developers of X Window System anticipated the
need to incorporate new and advance features to enhance the existing features of
X Window System. Moreover, as a particular product is enhanced, other products
that work in coordination with also need to be enhanced to match the performance
level.
To make X Window System extensible, a set of libraries have been
provided. These libraries are called the extensions of X Window System. These
extensions allow X Window System to incorporate the changes. The extensions
are:
1. SHAPE: provides extensions for the nonrectangular windows. The
application windows are rectangular by default. Nonrectangular windows
have circular corners instead of angular.
2. Digitally Phase Modulated Signals (DPMS)
3. Xinerma
4. Graphics Library X (GLX)
5. Long Bandwidth X (LBX)
6. Differential Graded Algebra (DGA)
3. Interoperability
Interoperability is the ability of X Window System to support various
hardware platforms and physical networking media. X Window System offers the
following features to incorporate interoperability:
Network Transparency.
Network Independency.
Hardware Independency.
Comprehensive display capabilities.
The X Window System Overview
6
2.3 Installation of X Window System
Before installing X Window System in Linux, we should know the
minimum requirements for outgoing the computer run properly, they are:
1. Processor minimal in Pentium 233 MMX
2. RAM minimal 32 MB
3. Hard disk minimal has free space about 100 MB
4. Graphic card SVGA with memory minimal 1 MB yang
5. Supported XFree86-3.3.6
6. Mouse and keyboard which supported XFree86-3.3.6
In CD distribution of Linux Red Hat consists of files with the prefix X,
such as XFree86. These files will build the X Window System in your Linux. The
desktop environments and other supported applications is assigned as rpm file
with the prefix K or k for KDE and G or GNOME. Version of XFree86 that is
offered is version 3.3.6. The way to install is easy; you just run the console to
install X Window System by selecting the packet that needed automatically using
command (rpm -ivh XFree86-3.3.6-20.i386.rpm).
2.4 Understanding the X Client and X Server
X windows system is based on the client/server architecture, includes two
primary components, X server and X client. The X server called also XFree86
Server. Program that enables various applications, called the X client, which run
on Linux system to display their GUI components. The configuration files of the
X client and X server stored in /etc/X11 and /usr/X11R6. The /etc/X11 directory
contains the X Server application and X client configuration files. The
/usr/X11R6 contains the X client application and X server configuration files.
And inside this directory contains the software required to support the x client and
x server, they are.
a. /usr/x11R6/bin : Contains X server and various X client
b. /usr/x11R6/include : contains the file required to develop X client and GUI
graphic, such as icon.
c. /usr/x11R6/lib : contains the software libraries required to support the X
server and client.
The X Window System Overview
7
d. /usr/x11R6/lib/x11 : contains the system resource, default X client
resource, and documentation files.
e. /usr/x11R6/lib/module : contains various drivers and X server module to
enable the various graphic card.
f. /usr/x11R6/lib/man : contains the subdirectory that consists of manual
page on X window programming and X client.
Picture 2.1 The Connection between Client and Server
The X server and X client can run on the same and different systems. The
X client sends the display request to the X server and interacts with the various
hardware devices of the system to respond to the request of the X client. In
addition, the X server performs the following functions:
1. Displays the error that occur when the X client make a request for display
2. Controls the I/O devices.
3. Directs the keyboard and mouse input to the desired X client or any event
on the network.
4. Manages the windows displayed on the screen
In other case, we can get the key functions of the X client that enables
many task offered in a system, they are:
1. Requests the server for various services.
2. Accepts events in response to the requests from server.
3. Accepts error messages from the server.
The X Window System Overview
8
The following example gives an insight on the client/server architecture of
X Window System. When the hardware event, such as a key press, occurs, the X
server receives the information. The server passes this information to the client
application. The client processes the received information and sends a request to
the server.
The usefulness of X Window System may not be felt if the client and the
server are present on the same computer. The potential of the client/server
architecture is realized when it is used across the network on multiple computer.
But, many advantages of using the X Windows System in X server/client
architecture, they are:
1. Can install the client and server software in different computers.
2. Can port the X client applications or other platform.
3. There can be multiple X servers running on more than one computer at
a time.
2.5 The X Server/Client Configuration Files
The X server is a single binary executable ( /usr/bin/Xorg ). Associated
configuration files are stored in the /etc/X11/ directory ( as is a symbolic link — X
— which points to /usr/bin/Xorg ). The configuration file for the X server is
/etc/X11/xorg.conf.
The X Window System uses a client-server architecture. The X server (the
Xorg binary) listens for connections from X client applications via a network or
local loopback interface. The server communicates with the hardware, such as the
video card, monitor, keyboard, and mouse. X client applications exist in the user-
space, creating a graphical user interface (GUI) for the user and passing user
requests to the X server.
The directory /usr/lib/xorg/modules/ contains X server modules that can be
loaded dynamically at runtime. By default, only some modules in
/usr/lib/xorg/modules/ are automatically loaded by the X server. To load optional
modules, they must be specified in the X server configuration file,
/etc/X11/xorg.conf.
The X Window System Overview
9
2.5.1. Runlevel 3
When in runlevel 3, the best way to start an X session is to log in and type
startx. The startx command is a front-end to the xinit command, which launches
the X server (Xorg) and connects X client applications to it. Because the user is
already logged into the system at runlevel 3, startx does not launch a display
manager or authenticate users.
When the startx command is executed, it searches for the .xinitrc file in
the user's home directory to define the desktop environment and possibly other X
client applications to run. If no .xinitrc file is present, it uses the system default
/etc/X11/xinit/xinitrc file instead.
After setting these options, the xinitrc script executes all scripts located in
the /etc/X11/xinit/xinitrc.d/ directory. One important script in this directory is
xinput.sh, which configures settings such as the default language.
In the xinitrc script attempts to execute .Xclients in the user's home
directory and turns to /etc/X11/xinit/Xclients if it cannot be found. The purpose of
the Xclients file is to start the desktop environment or, possibly, just a basic
window manager. The .Xclients script in the user's home directory starts the user-
specified desktop environment in the .Xclients-default file. If .Xclients does not
exist in the user's home directory, the standard /etc/X11/xinit/Xclients script
attempts to start another desktop environment, trying GNOME first and then KDE
followed by twm.
2.5.2. Runlevel 5
When the system boots into runlevel 5, a special X client application
called a display manager is launched. A user must authenticate using the display
manager before any desktop environment or window managers are launched.
Depending on the desktop environments installed on the system, three different
display managers are available to handle user authentication.
GNOME — The default display manager for Red Hat Enterprise Linux,
GNOME allows the user to configure language settings, shutdown, restart
or log in to the system.
The X Window System Overview
10
KDE — KDE's display manager which allows the user to shutdown,
restart or log in to the system.
xdm — A very basic display manager which only lets the user log in to the
system.
When booting into runlevel 5, the prefdm script determines the preferred
display manager by referencing the /etc/sysconfig/desktop file. A list of options