FILE_DESCRIPTOR - Kasimashi/Systemes-embarques GitHub Wiki

Les descripteurs de fichier (File Descriptor)

Les entrées/sorties d'un processus sont identifiés par un descripteur de fichier (nombre entier)

Le flux d'entrée est appelé « entrée standard » (standard input), le flux de sortie « sortie standard » (standard output), et le flux d'erreur est souvent appelé « erreur standard » (standard error). Ces noms sont abrégés dans les dénominations symboliques de ces fichiers : stdin , stdout , stderr.

Name File descriptor Description Abbreviation
Entrée standard 0 The default data stream for input, for example in a command pipeline. In the terminal, this defaults to keyboard input from the user. stdin
Sortie standard 1 The default data stream for output, for example when a command prints text. In the terminal, this defaults to the user's screen. stdout
Erreurs standard 2 The default data stream for output that relates to an error occurring. In the terminal, this defaults to the user's screen. stderr

Quand le système ouvrira d'autres fichiers :

  • Les descripteurs prendront pour valeur 3 , 4, ...

Open File Table (Kernel Space)

C'est une table que tout les processus peuvent partager entre eux : Cette table contient :

  • Le mode d'écriture / lecture du fichier
  • La position courante dans le fichier
  • Le nombre de processus qui pointe vers le fichier
  • Un pointeur vers une entrée de la table v-node. (Que nous verrons plus tard)

V-Node Table (Kernel Space)

Contient toutes les informations à propos d'un fichier. Egalement :

  • Les permissions
  • La taille du fichier
  • Le type du fichier

INode Table (Kernel Space)

image