Êtes-vous un étudiant de l'EPFL à la recherche d'un projet de semestre?
Travaillez avec nous sur des projets en science des données et en visualisation, et déployez votre projet sous forme d'application sur Graph Search.
Les shell des systèmes d'exploitation de type Unix disposent d'un mécanisme appelé tube, pipeline ou pipe (). Ce mécanisme permet de chaîner des processus de sorte que la sortie d'un processus (stdout) alimente directement l'entrée (stdin) du suivant. Chaque connexion est implantée par un tube anonyme. Les programmes filtres sont souvent utilisés dans cette configuration. Douglas McIlroy a inventé ce concept pour les shells Unix et le nom anglais découle de l'analogie avec un pipeline physique. Le symbole utilisé pour créer des tubes dans les shells Unix est la barre verticale |, appelée communément tube ou pipe par extension. Par exemple : programme1 | programme2 Le programme programme1 est exécuté par le système qui envoie les résultats au programme2 qui à son tour renvoie les résultats sur la sortie standard du système. Le pipe est très utilisé sur Unix, par exemple pour associer plusieurs commandes dont on enchaîne les traitements. Par exemple, la commande : cut -d" " -f1 < access.log | sort | uniq -c | sort -rn | less Permet d'extraire et d'afficher les adresses IP des clients ayant accédé le plus fréquemment à un serveur web Apache. Dans les systèmes d'exploitation monotâches comme le MS-DOS, les processus chainés doivent être exécutés séquentiellement, c'est-à-dire l'un après l'autre. La sortie de chaque processus est alors enregistrée dans un fichier temporaire, qui est ensuite lu par le processus suivant. Dès lors d'une part la taille requise sur disque pour effectuer ces commandes peut être très importante et donc l'exécution très lente, d'autre part l'acquisition permanente est impossible puisqu'elle ne rendra jamais « la main » et enfin ces commandes ne peuvent pas permettre de traiter des acquisitions de données en temps réel puisque tout doit être écrit sur les disques avant que le second traitement soit effectué. La syntaxe en revanche est identique à celles des tubes des shell UNIX. Dès lors on parle de pseudo-tubes.
Meritxell Bach Cuadra, Cristina Granziera, Francesco La Rosa, Maxence Charles F Wynen
, , ,