Tube anonyme
# Tube anonyme

En génie logiciel, un tube anonyme ou canal de communication est un des mécanismes de gestion de flux de données appelé tube. Ce mécanisme inventé pour UNIX est principalement utilisé dans la communication inter-processus. Ouvrir un tube anonyme permet de créer un flux de donnée unidirectionnel FIFO entre un processus et un autre. Ces tubes sont détruits lorsque le processus qui les a créés disparait, contrairement aux tubes nommés qui sont liés au système d'exploitation et qui doivent être explicitement détruits. Pour établir une communication Full-duplex, c'est-à-dire bi-directionnelle, chaque processus doit réciproquement créer un tube anonyme.

Ce mécanisme permet la création de filtres.

## Unix

Ce mécanisme a été mis en place pour la plupart des systèmes d'exploitation de type Unix. Un tube anonyme est créé grâce à un appel système qui retourne un descripteur de fichier à la suite de la création d'un Fork qui permet d'assigner à chacun des processus son rôle de récepteur ou d'émetteur.

En langage C, On créé un pipe avec l'appel système Unix de même nom, qui créé deux descripteurs de fichiers permettant d'assurer une communication bidirectionnelle, par exemple lors de la création d'un sous-process:

## Microsoft Windows

L'API de Windows permet également de créer des tubes anonymes.

