Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

Linux : Les disques et le stockage

Appréhender les fichiers de communication

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Découvrez de quelle manière les fichiers de types tube ou socket jouent le rôle de vecteurs de communication entre les processus.
03:53

Transcription

On a également d'autres types de fichiers qui ne sont pas liés aux données sur le disque et qui servent à autre chose. En l'occurrence, qui peuvent servir à la communication qu'on va avoir entre deux processus. Un exemple de ce type de fichier-là, c'est le fichier ici que j'ai appelé « tube », et qui est un fichier spécial, vu qu'il n'est pas un fichier régulier, ce n'est pas un répertoire, c'est un fichier de type petit p, qui veut dire « pipe », c'est ce qu'on appelle en anglais « a named pipe », un tube nommé. C'est tout simplement un tuyau qu'on va pouvoir insérer entre deux processus, de la même manière qu'on a la caractère « pipe », que vous connaissez peut-être, voilà, avec le caractère Alt + 6 qui me permet d'envoyer ce qui est à gauche du « pipe » dans le processus qui va être lancé à droite du « pipe », le ls-pipe par exemple, fonctionne comme ça. Ici, c'est la généralisation de ce comportement-là, avec des fichiers qui vont être sur le disque. A quoi cela sert-il ? Ça va me permettre qu'un premier programme envoie des données dans ce fichier-là et qu'un autre programme va pouvoir les lire. Si jamais je tape : écho-bonjour, que je redirige ça dans Tube, ce qui va se passer, c'est que le contenu Bonjour est envoyé dans Tube, ça ne consomme pas d'espace sur le disque dur, c'est mis en mémoire, comme si j'avais un « pipe » entre deux programmes, sauf que là, le support qui sert à passer le Bonjour d'un premier programme à un deuxième programme, c'est ce fichier Tube. J'ai lancé le deuxième programme dans un autre terminal qui existe ici et ça va me permettre de communiquer une information depuis mon premier terminal jusqu'à mon deuxième terminal. J'ai besoin de passer par ça, car les processus ne peuvent pas écrire dans la mémoire d'un autre processus, mon grand terminal ne peut pas écrire dans la mémoire du petit terminal, ce n'est pas possible. Si jamais il le faisait, le programme serait éjecté de la mémoire, j'aurais une erreur de segmentation, c'est un fonctionnement global protégé, un processus ne peut pas écrire ailleurs que dans sa propre mémoire, notamment, pas dans la mémoire d'autres processus. On utilise donc le Tube Nommé, pour pouvoir passer une info du grand terminal au petit terminal. Je suis dans le répertoire, si je fais : ls-l de Tube, je vois qu'il est là aussi, qu'il a toujours une taille de zéro, cela n'a donc pas consommé d'espace. Par contre, si j'essaie de faire apparaître le contenu de Tube, on va voir sur la gauche qu'il va me rendre la même, puisque l'autre processus a lu les données. En même temps, ça veut dire que ça joue le rôle de synchronisation entre les deux processus. Et dans mon petit terminal, je verrai la donnée que j'avais envoyé dans le grand terminal. Ça apparaît immédiatement ! L'intérêt d'utiliser ces mécanismes-là, ces fichiers-là, c'est que, d'une part, cela n'utilise pas d'espace sur le disque et que d'autre part, le processus qui va lire la donnée va voir les données apparaître dans l'ordre dans lequel elles ont été mises. Et il n'y a pas besoin de savoir où aller lire dans le fichier, il y a un mécanisme de synchronisation qui fait que, si jamais je me mets à lire avant qu'un autre processus écrive, il va me faire patienter, donc, pour ces raisons-là, c'est extrêmement puissant. Ici, on le voit, c'est : ls-tube, un fichier de type « pipe » nommée, j'ai bien mon petit p qui est ici, il y a un système équivalent qui s'appelle la « socket » de type unix qui ne passe pas par le réseau, qui passe par un fichier et au lieu d'avoir un petit p, j'aurai un petit s. La différence, c'est que je suis un peu obligé de faire de la programmation pour vous le montrer en cours de fonctionnement, je ne vais pas vous le montrer en démonstration. Le fonctionnement est le même que celui que je vois ici, avec le tube nommé. Ce sont deux types de fichier qui vont me permettre de faire communiquer des processus entre eux.

Linux : Les disques et le stockage

Initiez-vous à la gestion des volumes de stockage sous Linux. Abordez les notions de fichier et de partitionnement de disques, découvrez les systèmes RAID, etc.

2h28 (25 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :25 avr. 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !