Je vais faire une réponse globale et préciser ma question
Appli Gnome -> GTK/Glib -> compiz ->Xlib -> Pilote video -> carte video
G…. est ton ami, si tu veux quelque chose de global, fais une recherche sur "pile graphique linux"
Je ne cherche pas à descendre du serveur X vers le pilote vidéo jusqu'au niveau du noyau, google est assez bien documenté sur le sujet, ni même les définitions des différentes briques graphiques comme Unity ou lightdm, qui sont elles aussi bien documentées.
Ce qui m’intéresse c'est leur interactions lors de l'initialisation et du fonctionnement de la couche graphique. Le choix des briques liées à la couche graphique et leur assemblage est un choix particulier à chaque distributions dans sa version par défaut. Je cherche plus particulièrement des infos sur les choix d'Ubuntu en version 12.04, mais ceux d'autres distributions dans leur environnement graphique par défaut, m’intéressent aussi.
Pour être plus clair, j'ai lancé une Ubuntu 12.04 assez proche de la configuration de base, une fois en mode graphique, une fois en mode texte (équivalent à l'ancienne init 3). Dans les deux cas j'ai fait un ps -efH.
J'affiche ici un ps -efH ne montrant que les processus supplémentaires lorsqu'on lance la couche graphique.
UID PID PPID C STIME TTY TIME CMD
root 1255 1 0 10:55 ? 00:00:00 lightdm
root 1304 1255 1 10:55 tty7 00:00:02 /usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch -background none
root 1650 1255 0 10:56 ? 00:00:00 lightdm --session-child 12 19
roger 1809 1650 0 10:56 ? 00:00:00 gnome-session --session=ubuntu
roger 1844 1809 0 10:56 ? 00:00:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session gnome-session --session=ubuntu
roger 1858 1809 0 10:56 ? 00:00:00 /usr/lib/gnome-settings-daemon/gnome-settings-daemon
roger 1885 1858 0 10:56 ? 00:00:00 syndaemon -i 2.0 -K -R -t
roger 1876 1809 2 10:56 ? 00:00:03 compiz
roger 1945 1876 0 10:56 ? 00:00:00 /bin/sh -c /usr/bin/compiz-decorator
roger 1946 1945 0 10:56 ? 00:00:00 /usr/bin/gtk-window-decorator
roger 1893 1809 0 10:56 ? 00:00:00 bluetooth-applet
roger 1894 1809 0 10:56 ? 00:00:00 nautilus -n
roger 1897 1809 0 10:56 ? 00:00:00 /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
roger 1898 1809 0 10:56 ? 00:00:00 nm-applet
roger 1900 1809 0 10:56 ? 00:00:00 /usr/lib/gnome-settings-daemon/gnome-fallback-mount-helper
roger 2046 1809 0 10:56 ? 00:00:00 /usr/lib/gnome-disk-utility/gdu-notification-daemon
roger 2119 1809 0 10:56 ? 00:00:00 telepathy-indicator
roger 2144 1809 0 10:56 ? 00:00:00 gnome-screensaver
roger 2173 1809 0 10:57 ? 00:00:00 update-notifier
root 1329 1 0 10:56 ? 00:00:00 /usr/lib/accountsservice/accounts-daemon
root 1459 1 0 10:56 ? 00:00:00 /usr/lib/upower/upowerd
rtkit 1685 1 0 10:56 ? 00:00:00 /usr/lib/rtkit/rtkit-daemon
colord 1696 1 0 10:56 ? 00:00:00 /usr/lib/x86_64-linux-gnu/colord/colord
roger 1798 1 0 10:56 ? 00:00:00 /usr/bin/gnome-keyring-daemon --daemonize --login
roger 1847 1 0 10:56 ? 00:00:00 /usr/bin/dbus-launch --exit-with-session gnome-session --session=ubuntu
roger 1848 1 0 10:56 ? 00:00:00 //bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
roger 1866 1 0 10:56 ? 00:00:00 /usr/lib/gvfs/gvfsd
roger 1868 1 0 10:56 ? 00:00:00 /usr/lib/gvfs//gvfs-fuse-daemon -f /home/roger/.gvfs
roger 1884 1 0 10:56 ? 00:00:00 /usr/lib/x86_64-linux-gnu/gconf/gconfd-2
roger 1890 1 0 10:56 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog
roger 1927 1890 0 10:56 ? 00:00:00 /usr/lib/pulseaudio/pulse/gconf-helper
roger 1892 1 0 10:56 ? 00:00:00 /usr/lib/gvfs/gvfsd-metadata
roger 1910 1 0 10:56 ? 00:00:00 /usr/lib/gvfs/gvfs-gdu-volume-monitor
root 1912 1 0 10:56 ? 00:00:00 /usr/lib/udisks/udisks-daemon
root 1913 1912 0 10:56 ? 00:00:00 udisks-daemon: not polling any devices
roger 1917 1 0 10:56 ? 00:00:00 /usr/lib/gvfs/gvfs-afc-volume-monitor
roger 1920 1 0 10:56 ? 00:00:00 /usr/lib/gvfs/gvfs-gphoto2-volume-monitor
roger 1929 1 0 10:56 ? 00:00:00 /usr/lib/gvfs/gvfsd-trash --spawner :1.6 /org/gtk/gvfs/exec_spaw/0
roger 1932 1 0 10:56 ? 00:00:00 /usr/lib/gvfs/gvfsd-burn --spawner :1.6 /org/gtk/gvfs/exec_spaw/1
roger 1937 1 0 10:56 ? 00:00:00 /usr/lib/bamf/bamfdaemon
roger 1948 1 0 10:56 ? 00:00:00 /usr/lib/unity/unity-panel-service
roger 1950 1 0 10:56 ? 00:00:00 /usr/lib/indicator-appmenu/hud-service
roger 1962 1 0 10:56 ? 00:00:00 /usr/lib/indicator-printers/indicator-printers-service
roger 1964 1 0 10:56 ? 00:00:00 /usr/lib/indicator-session/indicator-session-service
roger 1967 1 0 10:56 ? 00:00:00 /usr/lib/indicator-sound/indicator-sound-service
roger 1968 1 0 10:56 ? 00:00:00 /usr/lib/indicator-application/indicator-application-service
roger 1974 1 0 10:56 ? 00:00:00 /usr/lib/indicator-messages/indicator-messages-service
roger 1975 1 0 10:56 ? 00:00:00 /usr/lib/indicator-datetime/indicator-datetime-service
roger 2010 1 0 10:56 ? 00:00:00 /usr/lib/geoclue/geoclue-master
roger 2015 1 0 10:56 ? 00:00:00 /usr/lib/ubuntu-geoip/ubuntu-geoip-provider
roger 2048 1 0 10:56 ? 00:00:00 /usr/lib/unity-lens-applications/unity-applications-daemon
roger 2050 1 0 10:56 ? 00:00:00 /usr/lib/unity-lens-files/unity-files-daemon
roger 2052 1 0 10:56 ? 00:00:00 /usr/lib/unity-lens-music/unity-music-daemon
roger 2054 1 0 10:56 ? 00:00:00 /usr/bin/python /usr/lib/unity-lens-video/unity-lens-video
roger 2078 1 0 10:56 ? 00:00:00 /usr/bin/zeitgeist-daemon
roger 2091 1 0 10:56 ? 00:00:00 /usr/lib/zeitgeist/zeitgeist-fts
roger 2095 2091 0 10:56 ? 00:00:00 /bin/cat
roger 2093 1 0 10:56 ? 00:00:00 zeitgeist-datahub
roger 2110 1 0 10:56 ? 00:00:00 /usr/lib/unity-lens-music/unity-musicstore-daemon
roger 2121 1 0 10:56 ? 00:00:00 /usr/bin/python /usr/lib/unity-scope-video-remote/unity-scope-video-remote
roger 2125 1 0 10:56 ? 00:00:00 /usr/lib/telepathy/mission-control-5
roger 2130 1 0 10:56 ? 00:00:00 /usr/lib/gnome-online-accounts/goa-daemon
root 2192 1 4 10:57 ? 00:00:02 /usr/bin/python /usr/sbin/aptd
On voit que Lightdm lance le serveur X, puis forke pour lancer Unity, compiz et quelques applets qui vont se positionner dans l'application indicator (bluetooth-applet, nm-applet, telepathy-indicator, update-notifier). Il ouvre également le gestionnaire de fichier nautilus, le démon de notification SMART, l'économiseur d'écran, l'agent d’élévation de privilèges (polkit) et l'automonteur de gnome je suppose (gnome-fallback-mount-helper).
Néanmoins il reste un paquet de services dans la liste qui sont démarrés par init, uniquement en mode graphique. Ils ne dépendent ni d'Unity, ni de Lightdm mais doivent interagir avec eux. Ce que je cherche c'est des infos* qui décrivent les interactions de ces services avec un environnement de bureau, à quoi servent-ils et les alternatives choisies par d'autres distributions. Un ou des schémas explicatifs en plus serait formidable.
Qui peuvent être des liens, mais aussi des bouquins (en vrai papier) ou des présentations (en vidéo ou en live) donc pas forcement que des url.
[^] # Re: un bout de reponse ?
Posté par jolitorax . En réponse au message Vue globale sur la couche graphique d'ubuntu 12.04. Évalué à 0.
Je vais faire une réponse globale et préciser ma question
Je ne cherche pas à descendre du serveur X vers le pilote vidéo jusqu'au niveau du noyau, google est assez bien documenté sur le sujet, ni même les définitions des différentes briques graphiques comme Unity ou lightdm, qui sont elles aussi bien documentées.
Ce qui m’intéresse c'est leur interactions lors de l'initialisation et du fonctionnement de la couche graphique. Le choix des briques liées à la couche graphique et leur assemblage est un choix particulier à chaque distributions dans sa version par défaut. Je cherche plus particulièrement des infos sur les choix d'Ubuntu en version 12.04, mais ceux d'autres distributions dans leur environnement graphique par défaut, m’intéressent aussi.
Pour être plus clair, j'ai lancé une Ubuntu 12.04 assez proche de la configuration de base, une fois en mode graphique, une fois en mode texte (équivalent à l'ancienne init 3). Dans les deux cas j'ai fait un ps -efH.
J'affiche ici un ps -efH ne montrant que les processus supplémentaires lorsqu'on lance la couche graphique.
On voit que Lightdm lance le serveur X, puis forke pour lancer Unity, compiz et quelques applets qui vont se positionner dans l'application indicator (bluetooth-applet, nm-applet, telepathy-indicator, update-notifier). Il ouvre également le gestionnaire de fichier nautilus, le démon de notification SMART, l'économiseur d'écran, l'agent d’élévation de privilèges (polkit) et l'automonteur de gnome je suppose (gnome-fallback-mount-helper).
Néanmoins il reste un paquet de services dans la liste qui sont démarrés par init, uniquement en mode graphique. Ils ne dépendent ni d'Unity, ni de Lightdm mais doivent interagir avec eux. Ce que je cherche c'est des infos* qui décrivent les interactions de ces services avec un environnement de bureau, à quoi servent-ils et les alternatives choisies par d'autres distributions. Un ou des schémas explicatifs en plus serait formidable.