En réponse à Thomas Pimmel <[EMAIL PROTECTED]>:
> Je ne suis pas spécialiste Linux mais je peux te dire ce que j'ai
> compris et
> lu. Que les "vrais" me corrigent.
Je ne suis pas si je suis un "vrai", mais il y a effectivement besoin de
corrections.
> Les couches sont imbriquées avec l'histoire de Linux.
Vi, enfin faudrait voir a ne pas confondre Unix/Linux...
>
> Au début était juste le kernel, grâce à Saint Linus, et le mode
> console.
Soit...
>
> X a permis de gérer le graphisme, tant sous Unix que Linux. X gère les
> cartes
> graphiques, les layers (différentes zones affichées sur une même zone
> mémoire)
> et bien sûr la souris, les polices graphiques etc...
Oui.
> De là date StarOffice, qui se contente de X et offre un environnement
> complet
> de travail bureautique. Mais quelle lourdeur ! D'autres programmes
> utilisent
> aussi simplement X, et gèrent pas mal de choses elles-mêmes (d'où une
> certaine anarchie dans le look).
Non, pas du tout...
StarOffice est arrivé bien après tout ça, et n'a rien à voir à l'histoire.
Au debut fut le mode "console" comme tu dis... En fait il faut être plus précis :
Au début dut le mode "ligne". A l'époque, le tube cathodique n'existaiat pas,
enfin si mais on ne savait pas l'utiliser pour afficher des caractères etc. Un
terminal était donc composé d'un clavier, et d'une imprimante.
Là je parle des débuts d'Unix hein ? paske au debut-debut de l'informatique le
clavier c'était une rangée d'interrupteurs, et l'écran c'était une rangée
d'ampoules électriques qui répondaient en binaire (allumées ou pas).
Donc heureux Unixiens, nous avions un Booo clavier, et une merveilleuse
imprimante. On tapait "L", et clac, un 'l' etait imprimé sur le papier sous le
curseur de l'imprimante, en suite on tapait "s" et un joli "s" s'imprimait a
côté du l. Du coup on tapait sur la touche "XMIT" ("Transmit", Send, ca
dépendait des clavier) et clac-clac-clac-clac, s'imprimait sur le papier le
résultat de la commande "ls"...
Ces "terminaux" (imprimante et clavier) s'appelaient des télétypes (du nom d'une
marque je crois, qui est devenue générique comme caddie, frigidaire etc.)
C'est pourquoi les gestionnaires de terminaux sous unix se sont appelés TTY
(télétypes).
Donc, comme à l'époque on "afficait" sur des imprimantes, fallait que tout
puisse se faire sur une seule ligne de saisie. D'où les outils comme "ed" pour
editer un fichier. Et c'est aussi pour ça que si votre terminal est configuré
n'importe comment, et que vous lancez "vi" vous risquer de vous retrouver sous
"ed"...
Ensuite sont arrivé les terminaux "pleine page". Les VT quoi.. du coup le
programme pouvait ballader le curseur n'importe ou.. alors est arrivée la
librairie "curse". C'est grace à ca qu'on a pu faire un truc comme "vi", une
version pleine page de "ed", une vraie révolution !!!
Plus tard, dans une boite (j'sais plus laquelle, AT&T peut être); ya des gars
qui bossaient sur l'informatique répartie... mais pour faire les tests c'était
pas facile... alors ils ont créer "X", un outil de test qui permet sur un même
écran de voir ce qui se passe sur plusieurs machines en même temps. Ouah, la
révolution.
> Les gestionnaires de fenêtres sont venus après, ils offrent une
> interface
> user-friendly supplémentaire, gèrent les menus et les panels, le drag
> des
> fenêtres et l'icônification. Ils se greffent sur X.
Ben non... po tout a fait. Ils gèrent tout simplement le fenêtrage. Les menus et
panels ce ne sont que des fenêtres...
> Ils sont suffisants pour lancer des applications autrement qu'en mode
> texte
> (menus et panels).
Euh, si bien sur.
>
> Les bureaux, dont la montée en puissance ne date vraiment que de deux
> ans
> environ (je crois),
Oui... m'enfin depuis un moment il y avait un truc qui s'appelait "CDE".
> offrent en plus un bureau
> (des icônes sur l'écran pour lancer les applis et un navigateur de
> partition), mais surtout des bibliothèques de codes et d'objets
> (gadgets,
> liste etc...), des applets et des applications diverses (la série des k
> pour
> kde et des g pour gnome).
Bouh... là faut pas tout confondre...
Les applications "k" fournies avec, c'est du packaging. On dit aux gens, on vou
file "KDE" avec tout un tas d'applications expressément faites pour cette
version de KDE. Comme ca il récupèrent en même temps tout ce qui leur faut...
mais ca ne fait pas partie du desktop KDE.
Prenons l'exemple du drag&drop :
Quand on dit qu'un indow manager "gère" le d&d, ca veut dire qu'il est capable
de dire "coucou mon gars, v'l'a ty pas que l'utilisateur vient de déposer un
truc dans ta fenêtre et que ca vient de telle fenetre".
Bien, mais c'est quoi qu'il a déposé ? Du texte, une icone, une image, une piste
de CDAudio ???
Ca c'est le boulot du desktop manager...
>
> Ces bibliothèques sont la partie immergée de l'iceberg (et constituent
> les
> 2/3 de la masse, comme vous le savez :)
Pour m'amuser, j'ai fait le compte des lignes de c++ dans KDE 2.0.1 :
kwin le window manager fourni avec KDE (qu'on est pas obligé d'utiliser avec KDE
d'ailleurs) fait 14900 lignes e C++
KDE (sans KOffice) fait la bagatelle de 724 000 lignes de c++
Le gestionnaire de fenetre ne représente donc 2% de KDE...
>
> Gnome (ou kde) est un bureau, donc charge en mémoire des bibliothèques
> (gdk
> et gtk si je ne divague pas) qui sont des monstres (au niveau mémoire
> mais
> aussi puissance).
gtk et qt. Et ce ne sont là que les toolkits graphiques (affichage des boutons,
des icones etc.)
Ce qui bouffe, c'est surtout les goodies comme le kpartserver, ksoundserver etc..
> Pour résumer, on pourrait faire le shéma suivant :
>
> Kernel -> X -> winmanager -> bibliothèques gnome ou kde -> bureau et
> applications spécifiques à gnome ou kde.
Non, ce ne sont pas des "couches" comme dans un protocole réseau, mais des
"services" :
kernel--->> X--+
! !
+------>> WM-+---fait appel à<---APPLICATION
! !
+------>> KDE+
>
> Le tout se compliquant lorsque tu exécutes une application kde sous
> gnome :)
Non, ca ne se complique pas, ca va tout simplement lancer les serveurs KDE pour
que l'application puisse avoir les services dont elle a besoin.
>
> En tant que programmeur (débutant pour moi), on choisit de réaliser une
> application en partant d'une de ces couches, qui gèrent les autres
> en-dessous
> :)
--
H.Lefebvre [EMAIL PROTECTED]
LINUX : Ne jetez plus votre argent par les fenêtres !