Forum Linux.debian/ubuntu Vue globale sur la couche graphique d'ubuntu 12.04

Posté par .
Étiquettes :
0
11
sept.
2012

Bonjour,

Je cherche un ou des pointeurs vers de la documentation sur le fonctionnement et les interactions des différentes briques de la couche graphique de préférence sur Ubuntu 12.04, donc du serveur X jusqu’à Unity avec tous les composants intermédiaires qui sont lancés par la couche graphique.

J'ai bien vu des documentations spécifiques à Unity, à Lightdm mais rien de relativement global. Après si vous avez des pointeurs sur d'autres distributions ayant un environnent proche ça m’intéresse également.

  • # J'ai pas compris la question

    Posté par . Évalué à 4.

    J'ai pas compris :/ enfin c'est pas clair.

    donc du serveur X jusqu’à Unity avec tous les composants intermédiaires qui sont lancés par la couche graphique.

    Il y a des composants intermédiaires entre X et Unity ? (vrai question)

    Par contre une remarque. C'est quoi cette mode d'appeler un lien un pointeur ?

  • # un bout de reponse ?

    Posté par . Évalué à 2.

    tu veux un truc qui detaille les empilages de technos du genre

    Appli Gnome -> GTK/Glib -> compiz ->Xlib -> Pilote video -> carte video

    ???

    parce que sinon je n'ai pas non plus compris la question vu que :

    • Lightdm c'est le gestionnaire de connexion (la fenetre de login), ca remplace gdm (generalement fournit avec GNOME) kdm (fournit avec KDE), xdm (fournit par defaut)
    • Unity c'est le gestionnaire de fenetre (tout comme tu peux avoir Gnome, Kde, Lxde, Xfce, enlightenmet, etc)
    • [^] # Re: un bout de reponse ?

      Posté par . Évalué à 0.

      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 . Évalué à 2.

        commence par regrouper tous ceux qui sont similaires ca t'en fera moins

        • gvfs - /usr/lib/gvfs/
        • unity-lens
        • zeitgeist

        tous les GVFS, c'est GNOME Virtual File System,
        c'est nautilus

        roger 1894 1809 0 10:56 ? 00:00:00 nautilus -n

        qui les lance pour gerer le bureau, les disques durs, les clefs usb

        il ne reste plus grand monde quand tu fais le tour
        et meme là G… est ton ami

        ex : zeitgeist-daemon

        unity-lens, bah ca doit avoir rapport avec unity qui est l'interface ubuntu par defaut

  • # pile graphique

    Posté par . Évalué à 2.

    G…. est ton ami, si tu veux quelque chose de global, fais une recherche sur "pile graphique linux"

    http://libre-ouvert.toile-libre.org/?article75/la-pile-graphique-linux-demystifiee
    http://blog.mecheye.net/2012/06/the-linux-graphics-stack/
    https://fr.wikipedia.org/wiki/Pile_graphique_Linux

    Envoyé depuis mon Archlinux

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.