Autor: Francois-Xavier Kowalski Datum: To: guilde Betreff: Re: Sawfish
Christian Marillat wrote:
>Patrick Dupre <pdupre@???> writes:
>
>[...]
>
>
>
>>Autre chose, pour que les menus du panneau soient mit à jour en temps
>>réel il faut que fam soit installé.
>>
>>Qu'est que fam ?
>>
>>
>
>C'est un programme qui scrute les changements sur ton sytème de fichier
>et en informe les applications quand un changement arrive. dans le cas
>ducpanel ça lui dit qu'il faut mettre son menu à jour car une entrée a
>été enlevée/ajoutée.
>
"File Alteration Monitor". C'est un portage d'une fonctionnalite IRIX
(Silicon Graphics UNIX) sur Linux. C'etait l'outil majeur qui permettait
au fantastique window+file manager de IRIX (4Dwm, un Motif-2 etendu avec
les widgets de SGI) de tourner. Je m'en rappelle encore avec nostalgie:
Une Sun sous Solaris faisait aussi pauvre que MS-DOS compare a une SGI
sous IRIX, qui faisait a l'epoque aussi "riche" que MacOS.
Il a fallu attendre Nautilus+fam+imon (fam utilise imon, fourni par le
noyau) sur GNOME-2.2 (10 ans) pour avoir une fonctionnalite qui commence
a ressembler a 4Dwm avec un impact CPU aussi ridicule que celui note a
l'epoque sur IRIX...
Plus en detail: fam permet d'agreger sur un meme descripteur de fichier
(fd) la surveillance de plusieurs inodes. Le terme surveillance incluant
sous Linux: "modification" & "access" (Sur IRIX, on avait aussi
"execution"). Du coup un gestionnaire de fichier (qui a plusieurs
fenetres ouvertes, une pour chaque repertoire) construit un fd fam
unique qui assemble tous les repertoires qu'il surveille. Il ne lui
reste plus qu'a se mettre en lecture bloquante (conso CPU == 0) sur ce
fd & attendre que des fichiers soient modifies, supprimes, ajoutes...
dans ces repertoires.