D&C GLug - Home Page

[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]

Re: [LUG] Trying different Windows Managers, etc

 

On Mon, 03 May 2010 16:48:06 +0100
John Hansen wrote:

> Excuse my ignorance,but what is a Windows Manager? Please advise.
> 
> John W

The following is grossly simplified for the sake of brevity.

Linux, like most Unix systems, has a layered approach to things.  From
hardware to full-on all-singing-and-dancing pointy-clicky environment
there are 6ish 'layers'.

1)   The hardware
2)   The kernel
3)   The shell
4-1) The X environment (attached to the hardware)
4-2) The X environment (attached to the software)
5)   A Window Manager
6-1) A Desktop Environment
6-2) The Application

Now, in a typical standalone computer system 4-1 and 4-2 are on the same
computer and they communicate through Unix sockets so can almost be
considered as 1 layer.  However, because they *can* be run on separate
machines communicating through TCP/IP sockets, they should be
considered as separate layers.

Layer 5, the Window Manager, is an application that receives
instruction from applications saying "I want to place a window on the
GUI", it adorns it with fancy thing like buttons (close, minimise,
maximise, menu, etc) and controls many aspects of its behaviour
(does double-clicking on the window title maximise it or does it 'roll
it up'?).  After taking instruction from the application layer (6-x)
and adorning it with bells and whistles it passes the instructions to
actually draw the window to the X environment (4-2), which then
contacts the X environment connected to the physical hardware (4-1) to
actually do the drawing on the display output.

Now, the Desktop Environment (such as KDE, Gnome, XFCE, etc) is
actually just a collection of applications that can communicate with
eachother to create a 'seamless' environment.  For example,
highlighting a bunch of files in a Desktop Environment's file manager,
right-clicking on the selection should give you the option to 'burn
files to CD'.  Choosing this option should then automatically drop
those particular files into the Desktop Environment's CD burning
application (and possibly even start the burn process).

When *not* running a Desktop Environment, you would most likely have to
open up the CD burning application and select the files in it
separately.

Also, things like hovering over a music file starts playing it in the
background (to get a 'preview' of it)... might not work either
seamlessly or at all if the file manager in question is *not* running
within the Desktop Environment.

This is why both the application and the Desktop Environment are (in
this little guide) classed as essentially the same layer.

Some people find that running the full-on Desktop Environment slows
their computer down too much and they don't need to have all their
applications talking to eachother... but they do like the look and feel
of their chosen Desktop Environment.  Not a problem!  Since the Desktop
Environment is *just* a collection of applications, it is perfectly
acceptable to run the Window Manager and then fire-up the desired
aspects of the Desktop Environment separately.

For example, running KWM (the KDE Window Manager) and then running
Kicker (the KDE taskbar) will produce a mostly-KDE-like environment but
will most likely use fewer resources than a full KDE session.

Grant.

-- 
The Mailing List for the Devon & Cornwall LUG
http://mailman.dclug.org.uk/listinfo/list
FAQ: http://www.dcglug.org.uk/linux_adm/list-faq.html