fdatasync

Autres langues

Langue: ja

Version: 1996-04-13 (openSuse - 09/10/07)

Section: 2 (Appels système)

̾Á°

fdatasync - ¥Õ¥¡¥¤¥ë¤Î¥á¥â¥ê¾å¤Î¥Ç¡¼¥¿¤ò¥Ç¥£¥¹¥¯¾å¤Î¤â¤Î¤ÈƱ´ü¤µ¤»¤ë

½ñ¼°

#include <unistd.h>

int fdatasync(int fd);

ÀâÌÀ

fdatasync() ¤Ï (¥·¥¹¥Æ¥à¡¦¥³¡¼¥ë¤«¤éÌá¤ëÁ°¤Ë) ¥Õ¥¡¥¤¥ë¤ÎÁ´¤Æ¤Î¥Ç¡¼¥¿¡¦¥Ð¥Ã¥Õ¥¡¡¼¤ò ¥Ç¥£¥¹¥¯¤Ë¥Õ¥é¥Ã¥·¥å (flush) ¤¹¤ë¡£¤³¤ì¤Ï fsync(2) ¤Ë»÷¤Æ¤¤¤ë¤¬¡¢¥¢¥¯¥»¥¹»þ¹ï¤Î¤è¤¦¤Ê¥á¥¿¥Ç¡¼¥¿¤ò¹¹¿·¤·¤Ê¤¤¡£

¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¥¢¥¯¥»¥¹¤·¤¿¤ê¡¢¥í¥°¡¦¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤à¤è¤¦¤Ê ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¤·¤Ð¤·¤Ð¾®¤µ¤Ê¥Ç¡¼¥¿¤ÎÃÇÊÒ (Î㤨¤Ð¥í¥°¡¦¥Õ¥¡¥¤¥ë¤Î°ì¹Ô) ¤ò½ñ¤­¹þ¤ß¡¢¤½¤ì¤¬¥Ï¡¼¥É¥Ç¥£¥¹¥¯¤ËʪÍýŪ¤Ë³ÊǼ¤µ¤ì¤ë¤³¤È¤òÊݾڤ¹¤ë ¤¿¤á¤Ë¡¢¤¹¤°¤Ë fsync(2) ¤ò¸Æ¤Ó½Ð¤¹¡£ÉÔ¹¬¤Ê¤³¤È¤Ë¡¢ fsync(2) ¤Ï¾ï¤ËÆó²ó¤Î½ñ¤­¹þ¤ßÁàºî¤ò¹Ô¤Ê¤¦: °ì¤Ä¤Ï¿·¤·¤¯½ñ¤­¹þ¤Þ¤ì¤¿¥Ç¡¼¥¿¤ò¡¢ ¤â¤¦°ì¤Ä¤Ï inode ¤Î½¤Àµ»þ¹ï¤ò¹¹¿·¤¹¤ë¤¿¤á¤Ë¡£½¤Àµ»þ¹ï¤¬¥È¥é¥¶¥ó¥¯¥·¥ç¥ó ¤Ë´Ø·¸¤Ê¤±¤ì¤Ð¡¢ fdatasync() ¤ò»ÈÍѤ¹¤ë¤³¤È¤ÇÉÔɬÍפʥǥ£¥¹¥¯¤Ø¤Î inode ¤Î½ñ¤­¹þ¤ß½èÍý¤ò Èò¤±¤ë¤³¤È¤¬¤Ç¤­¤ë¡£

ÊÖ¤êÃÍ

À®¸ù¤·¤¿¾ì¹ç¤Ï 0 ¤¬ÊÖ¤µ¤ì¤ë¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ï -1 ¤òÊÖ¤·¡¢ errno ¤ËŬÀÚ¤ÊÃͤ¬ÀßÄꤵ¤ì¤ë¡£

¥¨¥é¡¼

EBADF
fd ¤¬½ñ¤­¹þ¤ß¤Î¤¿¤á¤Ë¥ª¡¼¥×¥ó¤µ¤ì¤¿Í­¸ú¤Ê¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼¤Ç¤Ï¤Ê¤¤¡£
EIO
Ʊ´üÁàºî¤Î´Ö¤Ë¥¨¥é¡¼¤¬µ¯¤³¤Ã¤¿¡£
EROFS, EINVAL
fd ¤¬Æ±´üÁàºî¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤Æüì¤Ê¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¤¤ë¡£

½àµò

POSIX.1-2001.

²ÄÍÑÀ­

fdatasync() ¤¬ÍøÍѲÄǽ¤Ê POSIX ¥·¥¹¥Æ¥à¤Ç¤Ï¡¢ <unistd.h> ¤Ë¤ª¤¤¤Æ _POSIX_SYNCHRONIZED_IO ¤¬ 0 ¤è¤êÂ礭¤¤ÃͤËÄêµÁ¤µ¤ì¤Æ¤¤¤ë (sysconf(3) ¤ò»²¾È¤¹¤ë¤³¤È)¡£

Ãí°Õ

Linux 2.2 °ÊÁ°¤Ç¤Ï¡¢ fdatasync() ¤Ï fsync(2) ¤ÈÅù²Á¤Ç¤¢¤ê¡¢¤·¤¿¤¬¤Ã¤ÆÀ­Ç½¾å¤ÎÍøÅÀ¤â¤Ê¤¤¡£

´ØÏ¢¹àÌÜ

fsync(2), sync_file_range(2)
B.O. Gallmeister, POSIX.4, O'Reilly, pp. 220-223 and 343.