Les entrées/sorties

A chaque création de processus, celui ci se voit affecté trois canaux de communication :

La figure [*] illustre les trois canaux de communications que possède chaque processus sur le système UNIX.

Figure: Entrées/Sorties d'un processus
\begin{figure}
\centering
\epsfbox{_Images/base-concepts/iochans.eps}
\end{figure}

Chacun des trois canaux se voit affecter un nom de fichier et un numéro :

Canal de communication Fichier Numéro logique
Entrée standard stdin 0
Sortie standard stdout 1
Sortie d'erreurs standard stderr 2

Le fichier stdin (entrée standard), est le fichier à partir duquel le process va lire les données nécessaires en entrée. Il est ouvert avec le numéro logique 0(file descriptor C), et il est, par défaut associé au clavier.

Le fichier stdout (sortie standard), est le fichier dans lequel le process va écrire les messages qu'il produit en sortie, dans le cas d'une exécution normale. Il est ouvert avec le numéro logique 1 (file descriptor C), et il est, par défaut associé à l'écran.

Le fichier stderr (sortie d'erreurs standard), est le fichier dans lequel le process va écrire les messages d'erreur. Il est ouvert avec le numéro logique 2 (file descriptor C), et il est par défaut associé à l'écran.

Remarque 1..7 :


On distingue toujours deux canaux de sorties (un pour les sorties normales et un pour les erreurs). En effet, si un process doit écrire dans un fichier et qu'une erreur se produit (impossibilité d'écrire par exemple), il faut afficher un message sur un canal de sortie différent.

Le tableau [*] donne les équivalences des noms des canaux d'entrées/sorties entre les systèmes UNIX et OpenVMS de Digital.


Table: Équivalences des noms des canaux d'entrées/sorties entre UNIX et OpenVMS
UNIX OpenVMS  
stdin SYS$INPUT  
stdout SYS$OUTPUT  
stderr SYS$ERROR  


baudry@esme.fr