Écriture (appel système Unix)

L' écriture est l'une des routines les plus basiques fournies par un noyau de système d'exploitation de type Unix . Il écrit des données à partir d'un tampon déclaré par l'utilisateur sur un périphérique donné, tel qu'un fichier. Il s’agit de la principale façon de sortir des données d’un programme en utilisant directement un appel système. La destination est identifiée par un code numérique . Les données à écrire, par exemple un morceau de texte, sont définies par un pointeur et une taille, donnée en nombre d'octets.

  1. Le code du fichier ( descripteur de fichier ou fd ).
  2. Le pointeur vers un tampon où les données sont stockées ( buf ).
  3. Le nombre d'octets à écrire à partir du tampon ( nbytes ).

Utilisation de POSIX

L'interface d'appel d'écriture[1],[2] est normalisée par la spécification POSIX. Les données sont écrites dans un fichier en appelant la fonction write. Le prototype de la fonction est :

ssize_t write(int fd, const void *buf, size_t nbyte);
Argument Description
fd
Le descripteur de fichier obtenu à partir d'un appel à open() . C'est une valeur entière. Les valeurs 0, 1, 2 peuvent également être données, respectivement pour l'entrée standard, la sortie standard et l'erreur standard.
buf
Pointe vers un tableau de caractères, avec le contenu à écrire dans le fichier pointé par filedesc.
nbyte
Spécifie le nombre d'octets à écrire à partir du tableau de caractères, buf, dans le fichier pointé par files.

Dans la syntaxe ci-dessus, ssize_t est un typedef . Il s'agit d'un type de données signé défini dans stddef.h . Notez que write() ne renvoie pas de valeur non signée ; elle renvoie -1 en cas d'erreur, elle doit donc renvoyer une valeur signée. La fonction d'écriture renvoie le nombre d'octets écrits avec succès dans le fichier, qui peut parfois être inférieur aux nbytes spécifiés. Il renvoie -1 si une condition exceptionnelle est rencontrée.

Linux

Sous Linux, write est l'appel système numéro 1[3].

Voir aussi

  • fwrite
  • obtenirchar
  • fprintf
  • lire (appel système)
  • synchronisation (Unix)

Références

Liens externes

Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya