sync(2) - wariua/manpages-ko GitHub Wiki
sync, syncfs - νμΌ μμ€ν μΊμλ₯Ό λμ€ν¬λ‘ 보λ΄κΈ°
#include <unistd.h>
void sync(void);
int syncfs(int fd);
glibc κΈ°λ₯ νμΈ λ§€ν¬λ‘ μ건 (feature_test_macros(7) μ°Έκ³ ):
-
sync()
: -
_XOPEN_SOURCE >= 500
|| /* glibc 2.19λΆν°: */ _DEFAULT_SOURCE
|| /* glibc λ²μ <= 2.19: */ _BSD_SOURCE
-
syncfs()
: _GNU_SOURCE
sync()
λ νμΌ μμ€ν
λ©νλ°μ΄ν° λ° μΊμ± λ νμΌ λ°μ΄ν°μ λν λ―ΈκΈ°λ‘ λ³κ²½ λ΄μ©μ λͺ¨λ κΈ°λ° νμΌ μμ€ν
μ κΈ°λ‘νκ² νλ€.
syncfs()
λ sync()
μ λΉμ·νλ μ΄λ¦° νμΌ λμ€ν¬λ¦½ν° fd
κ° κ°λ¦¬ν€λ νμΌμ λ΄μ νμΌ μμ€ν
λ§ λκΈ°ννλ€.
syncfs()
λ μ±κ³΅ μ 0μ λ°ννλ€. μ€λ₯ μ -1μ λ°ννλ©° μ€λ₯λ₯Ό λνλ΄λλ‘ errno
λ₯Ό μ€μ νλ€.
sync()
λ νμ μ±κ³΅νλ€.
syncfs()
λ μ μ΄λ λ€μ μ΄μ λ‘ μ€ν¨ν μ μλ€.
EBADF
-
fd
κ° μ ν¨ν νμΌ λμ€ν¬λ¦½ν°κ° μλλ€.
리λ
μ€ 2.6.39μμ syncfs()
κ° μ²μ λ±μ₯νλ€. glibc λ²μ 2.14μμ λΌμ΄λΈλ¬λ¦¬ μ§μμ΄ μΆκ°λμλ€.
sync()
: POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.
syncfs()
λ 리λ
μ€ μ μ©μ΄λ€.
glibc 2.2.2λΆν° μ¬λ¬ νμ€μ λ°λΌμ 리λ
μ€μ sync()
μνμ΄ μμ κ°λ€. glibc 2.2.1 λ° μ΄μ μμλ "int sync(void)
"μμΌλ©° sync()
κ° νμ 0μ λ°ννλ€.
νμ€ λͺ
μΈ(κ°λ Ή POSIX.1-2001)μ λ°λ₯΄λ©΄ sync()
κ° μ°κΈ°λ₯Ό μμ½νλ μ€μ μ°κΈ°κ° λλκΈ° μ μ λ°νν μλ μλ€. νμ§λ§ 리λ
μ€μμλ I/O μλ£λ₯Ό κΈ°λ€λ¦¬λ©°, κ·Έλμ sync()
μ syncfs()
κ° μμ€ν
λ΄μ§ νμΌ μμ€ν
μ λͺ¨λ νμΌμ λν΄ fsync(2)λ₯Ό νΈμΆνλ κ²κ³Ό κ°μ 보μ₯μ ν΄ μ€λ€.
리λ μ€ λ²μ 1.3.20 μ μμλ λ°ν μ μ I/Oκ° μλ£λκΈ°λ₯Ό κΈ°λ€λ¦¬μ§ μμλ€.
sync(1)
, fdatasync(2), fsync(2)
2017-09-15