|
Dans le système X Window, un modèle client-serveur régit la manière dont les applications (clients) interagissent avec l'affichage (serveur). Il ne s'agit pas d'un programme unique, mais d'une conception architecturale fondamentale.
Voici une répartition :
* Serveur X : Il s'agit du composant principal, exécuté sur la machine d'affichage. Il gère le matériel d'affichage (écran, clavier, souris), le dessin des graphiques, la gestion des événements d'entrée et la gestion des fenêtres. Considérez-le comme la « planche à dessin » centrale et le gestionnaire d’événements. Il fonctionne toujours sur la machine d'affichage.
* X clients : Il s'agit d'applications (comme un navigateur Web, un éditeur de texte ou un jeu) qui demandent au serveur X d'afficher des graphiques et de gérer les entrées de l'utilisateur. Ils n'accèdent pas directement au matériel ; au lieu de cela, ils communiquent avec le serveur X via des protocoles réseau (généralement localement, mais peuvent l'être à distance). Ils envoient des commandes de dessin (par exemple, « dessinez un rectangle ici ») et reçoivent des événements (par exemple, « cliquez avec la souris à cette position »).
Comment ça marche :
1. Demande du client : Un client X veut afficher quelque chose. Il envoie une requête au serveur X via une connexion réseau.
2. Traitement du serveur : Le serveur X reçoit la requête, la valide (contrôles de sécurité, etc.) et l'exécute. Cela implique de manipuler le matériel d’affichage pour restituer les visuels.
3. Réponse du serveur (facultatif) : Le serveur peut renvoyer des informations au client, telles que la confirmation de la demande ou l'envoi de notifications d'événements (comme un clic de souris).
4. Mise à jour de l'affichage : Les modifications sont visibles à l'écran.
Aspects clés du modèle client-serveur dans X :
* Transparence du réseau : Le client et le serveur peuvent résider sur des machines différentes. Cela permet aux utilisateurs d'accéder aux applications exécutées sur un serveur puissant à partir d'un ordinateur client moins puissant. C'est la base du transfert X11 (par exemple, utiliser SSH pour accéder à un bureau distant).
* Conception modulaire : Les clients sont indépendants les uns des autres et du serveur. De nouvelles applications peuvent être facilement ajoutées sans modifier le serveur.
* Implications en matière de sécurité : Étant donné que les clients communiquent avec le serveur via un réseau, la sécurité est une préoccupation majeure. X11 dispose de mécanismes pour gérer le contrôle d'accès et l'authentification.
En résumé, le « client-serveur » dans le système X Window n'est pas une application spécifique mais l'architecture sous-jacente qui permet à plusieurs applications indépendantes d'interagir avec un seul écran, potentiellement sur un réseau. Le serveur X est l'autorité centrale gérant le matériel d'affichage, et les clients X sont les applications qui lui demandent des services.
|