SYNC(2)

NOM
sync - Vider le tampon cache sur le disque

SYNOPSIS
#include <unistd.h>

void sync(void);

Exigences de macros de test de fonctionnalités pour la glibc (voir feature_test_macros(7)) :

sync() : _BSD_SOURCE || _XOPEN_SOURCE >= 500

DESCRIPTION
sync() synchronise d'abord les inœuds et les tampons, puis les tampons et le disque.

ERREURS
Cet appel système réussit toujours.

CONFORMITÉ
SVr4, BSD 4.3, POSIX.1-2001.

NOTES
Depuis la glibc 2.2.2, le prototype sous Linux est celui indiqué plus haut, ce qui correspond à divers standards. Dans les libc4, libc5, et glibc jusqu'à 2.2.1, c'était « int sync(void) », et sync() renvoyait toujours 0.

BOGUES
D'après les standards (par exemple, POSIX.1-2001) sync() ne fait que planifier les écritures, il peut donc revenir avant que la véritable synchronisation ne soit effectuée. Depuis la version 1.3.20, Linux attend effectivement la fin de l'écriture (néanmoins ceci ne garantit toujours pas l'intégrité des données, les disques modernes ont des tampons cache très grands).

VOIR AUSSI
bdflush(2), fdatasync(2), fsync(2), sync(8), update(8)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 15 octobre 1996 et révisée le 23 juin 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 sync ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.