All KDE background services are user-specific: unlike system daemons
they are not shared between users. As well as being unique per user they are
also unique per X-server display. The processes are:
kdeinit
is used to start all other KDE
programs.
kdeinit
can start normal binary program files
as well as
kdeinit
loadable modules
(KLMs). KLMs work just like binary
program files but can be started more efficiently. KLMs
live in $
KDEDIR
/lib/kde3
The drawback is that programs started this way appear as
kdeinit
in the output of
top
and
ps
. Use
top
-c
or
ps
aux
to see the actual program name:
%
ps
aux
waba 23184 0.2 2.1 23428 11124 ? S 21:41 0:00 kdeinit: Running...
waba 23187 0.1 2.1 23200 11124 ? S 21:41 0:00 kdeinit: dcopserver --nosid
waba 23189 0.2 2.4 25136 12496 ? S 21:41 0:00 kdeinit: klauncher
waba 23192 0.7 2.8 25596 14772 ? S 21:41 0:00 kdeinit: kded
waba 23203 0.8 3.4 31516 17892 ? S 21:41 0:00 kdeinit:
knotify
kdeinit: Running...
indicates the
master
kdeinit
process. The other processes listed are
programs started as KLMs.
When
kdeinit
starts for the first time it will
launch
dcopserver
,
klauncher
, and
kded
, as well as any additional programs specified on its
command line in the
startkde
script, normally
kcminit
and
knotify
.
dcopserver
is a daemon which provides inter-process
communication (DCOP) facilities to all KDE applications. The DCOP
facilities are accessible from the command shell via the
dcop
command line tool. DCOP is essential for all KDE
applications.
Some related files:
-
$
HOME
/.DCOPserver_$
HOSTNAME
_$
DISPLAY
-
e.g. .DCOPserver_linux__0
. Controlled by $
DCOPAUTHORITY
-
/tmp/.ICE-unix/dcop
pid
-
number
-
e.g. dcop7634-1069677856
. This is
the file that the DCOPserver
file above points to.
-
$
HOME
/.ICEauthority
-
Authorization information controlled by
$
ICEAUTHORITY
kcminit
executes initialization services during
startup. Initialization services are specified in the .desktop files of
applications or services via the X-KDE-Init
line:
[Desktop Entry]
Encoding=UTF-8
Exec=kcmshell energy
Icon=energy_star
Type=Application
X-KDE-Library=energy
X-KDE-Init=energy
Initialization services are typically used for initializing
hardware based on user-specified settings.
kcminit
--list
can be used to show all
initialization services and
kcminit
service
can be used to
execute a single service explicitly. This can be useful when investigating
startup problems.
klauncher
is a daemon which is responsible for
service activation within KDE. It operates in close connection with the
kdeinit
master process to start new processes. KDE
applications communicate with
klauncher
over DCOP in
order to start new applications or services.
Best known from the error message:
KLauncher could not be reached via DCOP
which
either indicates a serious problem with the
dcopserver
or
that
klauncher
crashed.
klauncher
can be restarted by restarting
kdeinit
from a console window. Make sure that
$
HOME
, $
DISPLAY
and the various
$
KDEDIR(S)
are set correctly when doing so!
The primary task of
knotify
is to relay sound
notifications to the sound server, it also provides alternative notification
methods.