Desktop Environments, Window Managers and the X Window System

NELUG meeting 15/3/2000
Horst Kausch
v0.1 2000-03-15


The desktop/graphical user interface experienced by the user consists of several layers.

Window Manager compound


X-lib X-tended Graphical Environment
X Window System

X Window system

  • client/server architecture
  • the server delivers input events to clients and displays the output
  • the client is the application calling on the server to do the input/output processing
  • network transparent
  • X-lib library provides low-level manipulation of graphics

Window Managers

  • provides window management functions:
    • focus – which client gets input events
    • create/destroy windows
    • move windows
    • resize windows
    • stacking – raise/lower windows
  • provides window decorations as visual clues of window status and functions:
    • title bar
    • borders
    • buttons for window operations
    • window menu
    • highlighting of window with focus

Widget Sets

  • toolkits implementing the abstract objects of the user interface:
    • check buttons
    • radio buttons
    • text entry fields
    • scroll bars
    • scroll lists
    • tabbed dialogs
  • provides look and feel of the user interface (X-tended Graphical Environment)

Desktop Environment

  • panel for starting programs, displaying task list, monitors, etc.
  • desktop – object can be dragged onto desktop for quick access
  • consistent look and feel
  • standardized menu and toolbars, keybindings, color-schemes, etc.
  • internationalization
  • centralized consisted dialog driven desktop configuration
  • themeable
  • integrated help system
  • complete network transparency
  • component architecture
  • object oriented inter-program communications mechanism through CORBA or DCOM
  • Document Object Model (DOM) using XML file formats
  • suite of applications

Only KDE and Gnome (will) implement all of these features.

Advanced Feature Comparison

KDE Gnome MS Win9x
themable yes yes yes
component model KOM/OpenParts bonobo COM/ActiveX
file manager + browser Kfm (1.1)
Konqueror (2.0)
Gmc (1.0)
Nautilus (2.0)
word processor KWord abiword MS Word
spreadsheet KSpread Gnumeric MS Excel
image manipulation KIllustrator The Gimp Photoshop
personal finance Gnucash Quicken

Typical configurations

desktop window manager widget set
plain twm Athena (libXaw)
AnotherLevel fvwm2 Athena,…
CDE mwm motif
KDE kwm Qt
Gnome enlightenment gdk/gtk


Plain X desktop with only an xterm and no window manager

Plain X desktop with only an xterm and no window manager

Plain X desktop with twm managing an xterm

Plain X desktop with twm managing an xterm

AnotherLevel desktop (RedHat 5.* default)

AnotherLevel desktop (RedHat 5.* default)

KDE-1.1 desktop

KDE-1.1 desktop

Gnome 1.0 desktop

Gnome 1.0 desktop

Leave a Reply

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

Time limit is exhausted. Please reload the CAPTCHA.