เดเตเดฒเตเดกเต เดธเดฟเดธเตเดฑเตเดฑเดเตเดเดณเดฟเดฒเต เดกเดพเดฑเตเดฑเดพ เดธเดเดญเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต เดธเตเดธเตเดฅเดฟเดฐเดคเดฏเตเดเตเดเตเดฑเดฟเดเตเดเต เดเดตเตเดทเดฃเด เดจเดเดคเตเดคเตเดจเตเดจเดคเดฟเดจเดฟเดเดฏเดฟเตฝ, เด
เดเดฟเดธเตเดฅเดพเดจ เดเดพเดฐเตเดฏเดเตเดเตพ เดเดจเดฟเดเตเดเต เดฎเดจเดธเตเดธเดฟเดฒเดพเดฏเดฟเดเตเดเตเดฃเตเดเตเดจเตเดจเต เดเดฑเดชเตเดชเดพเดเตเดเดพเตป เดเดพเตป เดเดจเตเดจเตเดคเตเดคเดจเตเดจเต เดชเดฐเตเดเตเดทเดฟเดเตเดเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต. เด
เด เดฒเตเดเดจเดคเตเดคเดฟเตฝ, Linux เดซเดฏเตฝ API-เดเตพ เดจเตฝเดเตเดจเตเดจ เดชเตเตผเดธเดฟเดธเตเดฑเตเดฑเตปเดธเต เดฎเตเดเตเดเดพเดจเดฟเดธเดเตเดเตพ เดเดพเตป เดชเดฐเตเดฏเดตเตเดเตเดทเดฃเด เดเตเดฏเตเดฏเตเดจเตเดจเต. เดเดฒเตเดฒเดพเด เดเดตเดฟเดเต เดฒเดณเดฟเดคเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเดฃเดฎเตเดจเตเดจเต เดคเตเดจเตเดจเตเดจเตเดจเต: เดชเตเดฐเตเดเตเดฐเดพเด เดเดฎเดพเตปเดกเดฟเดจเต เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต write()
, เด เดเดฎเดพเตปเดกเดฟเดจเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด เดชเตเตผเดคเตเดคเดฟเดฏเดพเดฏ เดถเตเดทเด, เดกเดพเดฑเตเดฑ เดธเตเดฐเดเตเดทเดฟเดคเดฎเดพเดฏเดฟ เดกเดฟเดธเตเดเดฟเตฝ เดธเดเดญเดฐเดฟเดเตเดเตเด. เดชเดเตเดทเต write()
RAM-เตฝ เดธเตเดฅเดฟเดคเดฟ เดเตเดฏเตเดฏเตเดจเตเดจ เดเตเตผเดฃเตฝ เดเดพเดทเตเดฏเดฟเดฒเตเดเตเดเต เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดกเดพเดฑเตเดฑ เดฎเดพเดคเตเดฐเด เดชเดเตผเดคเตเดคเตเดจเตเดจเต. เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดกเดพเดฑเตเดฑ เดเดดเตเดคเดพเตป เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต เดจเดฟเตผเดฌเดจเตเดงเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, เดเดฟเดฒ เด
เดงเดฟเด เดธเดเดตเดฟเดงเดพเดจเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต.
เดชเตเดคเตเดตเต, เด เดฎเตเดฑเตเดฑเตเดฐเดฟเดฏเตฝ เดเดจเดฟเดเตเดเต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดณเตเดณ เดเดฐเต เดตเดฟเดทเดฏเดคเตเดคเดฟเตฝ เดเดพเตป เดชเด เดฟเดเตเด เดเดพเดฐเตเดฏเดเตเดเดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเตเดเตเด เดเตเดฑเดฟเดชเตเดชเตเดเดณเตเดเต เดเดฐเต เดเตเดเตเดเดฎเดพเดฃเต. เดเดฑเตเดฑเดตเตเด เดชเตเดฐเดงเดพเดจเดชเตเดชเตเดเตเด เดเดพเดฐเตเดฏเดเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเต เดเดเตเดเตพ เดตเดณเดฐเต เดเตเดฐเตเดเตเดเดฎเดพเดฏเดฟ เดธเดเดธเดพเดฐเดฟเดเตเดเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เดธเตเดธเตเดฅเดฟเดฐ เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฃเด เดธเดเดเดเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดเตเดเตพ เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. fdatasync()
เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดซเตเดฒเดพเดเต เดเดชเดฏเตเดเดฟเดเตเดเต เดซเดฏเดฒเตเดเตพ เดคเตเดฑเดเตเดเตเด O_DSYNC
. เดเตเดกเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเตเดณเตเดณ เดตเดดเดฟเดฏเดฟเตฝ เดกเดพเดฑเตเดฑเดฏเตเดเตเดเต เดเดจเตเดคเต เดธเดเดญเดตเดฟเดเตเดเตเด เดเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเต เดเตเดเตเดคเดฒเดฑเดฟเดฏเดพเตป เดจเดฟเดเตเดเตพเดเตเดเต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดฃเตเดเตเดเตเดเดฟเตฝ, เดเดจเตเดจเต เดจเตเดเตเดเตเด
เดฑเตเดฑเตเดฑเต() เดซเดเดเตเดทเตป เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดฑเต เดธเดตเดฟเดถเตเดทเดคเดเตพ
เดธเดฟเดธเตเดฑเตเดฑเด เดเตเตพ write()
เดธเตเดฑเตเดฑเดพเตปเดกเตเตผเดกเดฟเตฝ เดจเดฟเตผเดตเดเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเต write()
เดกเดพเดฑเตเดฑ เดฑเตเดกเต เดเดชเตเดชเดฑเตเดทเดจเตเดเตพ เดฎเตเดฎเตเดชเต เดเดดเตเดคเดฟเดฏ เดฌเตเดฑเตเดฑเตเดเตพ เดเตเดคเตเดฏเดฎเดพเดฏเดฟ เดจเตฝเดเดฃเด, เดฎเดฑเตเดฑเต เดชเตเดฐเตเดธเดธเตเดธเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดคเตเดฐเตเดกเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑ เดเดเตโเดธเดธเต เดเตเดฏเตเดฏเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ เดชเตเดฒเตเด (
เดเดคเดฟเดจเตผเดคเตเดฅเด เดเดชเตเดชเดฑเตเดทเตป เดเดจเตเดจเดพเดฃเต write()
เดเดฃเดพเดฃเต? เดเดฐเต เดธเดพเดเตเดเตเดคเดฟเด เดเดพเดดเตเดเดชเตเดชเดพเดเดฟเตฝ, เด
เดคเต. เดกเดพเดฑเตเดฑ เดฑเตเดกเต เดเดชเตเดชเดฑเตเดทเดจเตเดเตพ เดเดดเตเดคเดฟเดฏเดคเต เดฎเตเดดเตเดตเตป เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดจเตเดจเตเด เดคเดจเตเดจเต เดจเตฝเดเดฃเด write()
. เดเดจเตเดจเดพเตฝ เดเดชเตเดชเดฑเตเดทเตป write()
, เดธเตเดฑเตเดฑเดพเตปเดกเตเตผเดกเต เด
เดจเตเดธเดฐเดฟเดเตเดเต, เด
เดคเต เดเดดเตเดคเดพเตป เดเดตเดถเตเดฏเดชเตเดชเตเดเตเดเดคเตเดฒเตเดฒเดพเด เดเดดเตเดคเดฟ เด
เดตเดธเดพเดจเดฟเดชเตเดชเดฟเดเตเดเดฃเดฎเตเดจเตเดจเดฟเดฒเตเดฒ. เดกเดพเดฑเตเดฑเดฏเตเดเต เดเดฐเต เดญเดพเดเด เดฎเดพเดคเตเดฐเด เดเดดเตเดคเดพเตป เด
เดตเตพเดเตเดเต เด
เดจเตเดตเดพเดฆเดฎเตเดฃเตเดเต. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดฐเต เดซเดฏเตฝ เดกเดฟเดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตผ เดตเดฟเดตเดฐเดฟเดเตเด เดเดฐเต เดซเดฏเดฒเดฟเดฒเตเดเตเดเต 1024 เดฌเตเดฑเตเดฑเตเดเตพ เดเตเดเตเดเดฟเดเตเดเตเตผเดเตเดเตเดจเตเดจ เดฐเดฃเตเดเต เดคเตเดฐเตเดกเตเดเตพ เดจเดฎเตเดเตเดเต เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด. เดธเตเดฑเตเดฑเดพเตปเดกเตเตผเดกเดฟเดจเตเดฑเต เดตเตเดเตเดทเดฃเดเตเดฃเดฟเตฝ เดจเดฟเดจเตเดจเต, เดเดฐเต เดฑเตเดฑเตเดฑเต เดเดชเตเดชเดฑเตเดทเดจเตเด เดซเดฏเดฒเดฟเดฒเตเดเตเดเต เดเดฐเต เดฌเตเดฑเตเดฑเต เดฎเดพเดคเตเดฐเดฎเต เดเตเตผเดเตเดเดพเตป เดเดดเดฟเดฏเต เดเดจเตเดจเดคเดพเดฃเต เดธเตเดตเตเดเดพเดฐเตเดฏเดฎเดพเดฏ เดซเดฒเด. เด เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเตพ เดเดฑเตเดฑเตเดฎเดฟเดเต เดเดฏเดฟ เดจเดฟเดฒเดจเดฟเตฝเดเตเดเตเด, เดชเดเตเดทเต เด
เดต เดชเตเตผเดคเตเดคเดฟเดฏเดพเดเตเดเดฟเดฏ เดถเตเดทเด, เด
เดตเตผ เดซเดฏเดฒเดฟเดฒเตเดเตเดเต เดเดดเตเดคเดฟเดฏ เดกเดพเดฑเตเดฑ เดฎเดฟเดถเตเดฐเดฟเดคเดฎเดพเดเตเด.
fsync(), fdatasync() เดซเดเดเตเดทเดจเตเดเตพ
เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดกเดพเดฑเตเดฑ เดซเตเดฒเดทเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดณเตเดชเตเดชเดตเดดเดฟ เดซเดเดเตเดทเดจเดฟเดฒเตเดเตเดเต เดตเดฟเดณเดฟเดเตเดเตเด เดเดจเตเดจเดคเดพเดฃเต fdatasync()
. เดฆเดฟ fdatasync()
เด เดซเดเดเตโเดทเดจเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดจ เดธเดฎเดฏเดคเตเดคเต, เดเดคเตเดฐเดฏเตเด เดฎเตเดฑเตเดฑเดพเดกเดพเดฑเตเดฑ เดกเดฟเดธเตโเดเดฟเดฒเตเดเตเดเต เดธเตเดตเต เดเตเดฏเตเดฏเดชเตเดชเตเดเตเดจเตเดจเต, เดเดคเต "เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดกเดพเดฑเตเดฑ เดฑเตเดกเดฟเดเดเต เดเดชเตเดชเดฑเตเดทเดจเตเดเดณเตเดเต เดถเดฐเดฟเดฏเดพเดฏ เดจเดฟเตผเดตเตเดตเดนเดฃเดคเตเดคเดฟเดจเต เดเดตเดถเตเดฏเดฎเดพเดฃเต." เดฎเดฟเดเตเด เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดเดณเตเด เดถเตเดฐเดฆเตเดงเดฟเดเตเดเตเดจเตเดจเดคเต เดเดคเดพเดฃเต.
เดธเดพเดงเตเดฏเดฎเดพเดฏ เดชเดฐเดพเดเดฏเดคเตเดคเดฟเดจเต เดถเตเดทเด เดซเดฏเตฝ เดเดฃเตเดเตเดคเตเดคเดพเดจเดพเดเตเดฎเตเดจเตเดจเต เด เดฎเตเดเตเดเดพเดจเดฟเดธเดเตเดเตพ เดเดฑเดชเตเดชเตเดจเตฝเดเตเดจเตเดจเดฟเดฒเตเดฒ เดเดจเตเดจเดคเดพเดฃเต เดเดตเดฟเดเต เดเดฏเตผเดจเตเดจเตเดตเดฐเตเดจเตเดจ เดเดฐเต เดชเตเดฐเดถเตเดจเด. เดชเตเดฐเดคเตเดฏเตเดเดฟเดเตเดเต, เดเดฐเต เดชเตเดคเดฟเดฏ เดซเดฏเตฝ เดธเตเดทเตเดเดฟเดเตเดเตเดฎเตเดชเตเตพ, เดจเดฟเดเตเดเตพ เดตเดฟเดณเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต fsync()
เด
เดคเต เด
เดเดเตเดเตเดจเตเดจ เดกเดฏเดฑเดเตโเดเดฑเดฟเดเตเดเดพเดฏเดฟ. เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ, เดเดฐเต เดเตเดฐเดพเดทเดฟเดจเตเดถเตเดทเด, เด เดซเดฏเตฝ เดจเดฟเดฒเดตเดฟเดฒเดฟเดฒเตเดฒ เดเดจเตเดจเต เดคเตเดณเดฟเดเตเดเตเดเตเดเดพเด. UNIX-เดจเต เดเตเดดเดฟเตฝ, เดนเดพเตผเดกเต เดฒเดฟเดเตเดเตเดเดณเตเดเต เดเดชเดฏเตเดเด เดเดพเดฐเดฃเด, เดเดฐเต เดซเดฏเตฝ เดเดจเตเดจเดฟเดฒเดงเดฟเดเด เดกเดฏเดฑเดเตเดเดฑเดฟเดเดณเดฟเตฝ เดจเดฟเดฒเดจเดฟเตฝเดเตเดเตเด เดเดจเตเดจเดคเดพเดฃเต เดเดคเดฟเดจเต เดเดพเดฐเดฃเด. เด
เดคเดฟเดจเดพเตฝ, เดตเดฟเดณเดฟเดเตเดเตเดฎเตเดชเตเตพ fsync()
เดเดคเต เดกเดฏเดฑเดเตโเดเดฑเดฟ เดกเดพเดฑเตเดฑเดฏเตเด เดกเดฟเดธเตโเดเดฟเดฒเตเดเตเดเต เดซเตเดฒเดทเต เดเตเดฏเตเดฏเดฃเดฎเตเดจเตเดจเต เดเดฐเต เดซเดฏเดฒเดฟเดจเต เด
เดฑเดฟเดฏเดพเตป เดฎเดพเตผเดเดฎเดฟเดฒเตเดฒ (fsync()
เด
เดจเตเดฌเดจเตเดง เดซเดฏเดฒเตเดเตพ เด
เดเดเตเดเตเดจเตเดจ เดกเดฏเดฑเดเตโเดเดฑเดฟเดเดณเดฟเดฒเตเดเตเดเต, เดเดจเตเดจเดพเตฝ เดฎเดฑเตเดฑเต เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดเตเดเดณเตเดเต เดเดพเดฐเตเดฏเด เด
เดเตเดเดจเตเดฏเดพเดเดฃเดฎเตเดจเตเดจเดฟเดฒเตเดฒ.
เดตเตเดฏเดคเตเดฏเดธเตเดค เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดเตเดเดณเดฟเตฝ เด เดธเดเดตเดฟเดงเดพเดจเด เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏเดฟ เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเดพเด. เดเดพเตป เดเดชเดฏเตเดเดฟเดเตเดเต fdatasync()
เด
เตฝเดชเตเดชเด เดตเตเดเดคเตเดคเดฟเตฝ fsync()
. เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟ blktrace
เดเดจเตเดจเต เดธเตเดเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต fdatasync()
เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดเตเดฑเดเตเดเต เดกเดพเดฑเตเดฑ เดเดดเตเดคเตเดจเตเดจเต (ext4 เตฝ fsync()
20 เดเดฟเดฌเดฟ เดเดดเตเดคเตเดจเตเดจเต, เดเดชเตเดชเด fdatasync()
- 16 เดเดฟเดฌเดฟ). เดเตเดเดพเดคเต, XFS ext4 เดจเตเดเตเดเดพเตพ เด
เตฝเดชเตเดชเด เดตเตเดเดคเดฏเตเดณเตเดณเดคเดพเดฃเตเดจเตเดจเต เดเดพเตป เดเดฃเตเดเตเดคเตเดคเดฟ. เดเดตเดฟเดเตเดฏเตเด เดธเดนเดพเดฏเดคเตเดคเตเดเต blktrace
เดเดจเตเดจเต เดเดฃเตเดเตเดชเดฟเดเดฟเดเตเดเดพเตป เดเดดเดฟเดเตเดเต fdatasync()
เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดเตเดฑเดเตเดเต เดกเดพเดฑเตเดฑ เดซเตเดฒเดทเต เดเตเดฏเตเดฏเตเดจเตเดจเต (XFS-เตฝ 4 KiB).
fsync() เดเดชเดฏเตเดเดฟเดเตเดเตเดฎเตเดชเตเตพ เด เดตเตเดฏเดเตเดคเดฎเดพเดฏ เดธเดพเดนเดเดฐเตเดฏเดเตเดเตพ
เด
เดตเตเดฏเดเตเดคเดฎเดพเดฏ เดฎเตเดจเตเดจเต เดธเดพเดนเดเดฐเตเดฏเดเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเต เดเดจเดฟเดเตเดเต เดเดฟเดจเตเดคเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด fsync()
เดเดพเตป เดชเตเดฐเดพเดฏเตเดเดฟเดเดฎเดพเดฏเดฟ เดเดฃเตเดเดคเต.
2008เดฒเดพเดฃเต เดเดคเตเดคเดฐเดฎเตเดฐเต เดธเดเดญเดตเด เดเดฃเตเดเดพเดฏเดคเต. เดงเดพเดฐเดพเดณเด เดซเดฏเดฒเตเดเตพ เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดเดดเตเดคเดฟเดฏเดพเตฝ เดซเดฏเตผเดซเตเดเตเดธเต 3 เดเดจเตเดฑเตผเดซเตเดธเต เดฎเดฐเดตเดฟเดเตเดเต. เดเดจเตเดฑเตผเดซเตเดธเต เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตเดจเตเดจเดคเต เด
เดคเดฟเดจเตเดฑเต เด
เดตเดธเตเดฅเดฏเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดตเดฟเดตเดฐเดเตเดเตพ เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดฐเต SQLite เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดเดชเดฏเตเดเดฟเดเตเดเดคเดพเดฃเต เดชเตเดฐเดถเตเดจเด. เดเดจเตเดฑเตผเดซเตเดธเดฟเตฝ เดธเดเดญเดตเดฟเดเตเด เดเดฐเต เดฎเดพเดฑเตเดฑเดคเตเดคเดฟเดจเตเด เดถเตเดทเด, เดซเดเดเตเดทเตป เดตเดฟเดณเดฟเดเตเดเดชเตเดชเตเดเตเดเต fsync()
, เดเดคเต เดธเตเดฅเดฟเดฐเดคเดฏเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฃเดคเตเดคเดฟเดจเต เดจเดฒเตเดฒ เดเตเดฏเดพเดฐเดฃเตเดเดฟ เดจเตฝเดเดฟ. เด
เดชเตเดชเตเตพ เดเดชเดฏเตเดเดฟเดเตเด ext3 เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ, เดซเดเดเตเดทเตป fsync()
เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเต เดเดฒเตเดฒเดพ "เดตเตเดคเตเดคเดฟเดเตเดเตเด" เดชเตเดเตเดเดณเตเด เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดซเตเดฒเดทเต เดเตเดฏเตเดคเต, เด
เดจเตเดฌเดจเตเดง เดซเดฏเดฒเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเตเดเตเดเดต เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ. เดเดคเดฟเดจเตผเดคเตเดฅเด เดซเดฏเตผเดซเตเดเตเดธเดฟเดฒเต เดเดฐเต เดฌเดเตเดเดฃเดฟเตฝ เดเตเดฒเดฟเดเตเดเตเดเตเดฏเตเดฏเตเดจเตเดจเดคเต เดเดฐเต เดฎเดพเดเตเดจเดฑเตเดฑเดฟเดเต เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดฎเตเดเดพเดฌเตเดฑเตเดฑเต เดกเดพเดฑเตเดฑ เดเดดเตเดคเดพเตป เดเดเดฏเดพเดเตเดเตเด, เดเดคเดฟเดจเต เดจเดฟเดฐเดตเดงเดฟ เดธเตเดเตเดเตปเดกเตเดเตพ เดเดเตเดคเตเดคเตเดเตเดเดพเด. เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดณเตเดณ เดชเดฐเดฟเดนเดพเดฐเด, เดเดพเตป เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเดฟเดฏเดฟเดเดคเตเดคเตเดณเด
เดฐเดฃเตเดเดพเดฎเดคเตเดคเต เดชเตเดฐเดถเตเดจเด 2009 เตฝ เดธเดเดญเดตเดฟเดเตเดเต. เดชเดฟเดจเตเดจเตเดเต, เดเดฐเต เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดฐเดพเดทเดฟเดจเต เดถเตเดทเด, เดชเตเดคเดฟเดฏ ext4 เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต เดเดชเดฏเตเดเตเดคเดพเดเตเดเตพเดเตเดเต เดชเตเดคเตเดคเดพเดฏเดฟ เดธเตเดทเตเดเดฟเดเตเด เดชเดฒ เดซเดฏเดฒเตเดเตพเดเตเดเตเด เดชเตเดเตเดฏเด เดจเตเดณเด เดเดฃเตเดเตเดจเตเดจ เดตเดธเตเดคเตเดค เด
เดญเดฟเดฎเตเดเตเดเดฐเดฟเดเตเดเต, เดเดจเตเดจเดพเตฝ เดชเดดเดฏ ext3 เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดเดคเต เดธเดเดญเดตเดฟเดเตเดเดฟเดฒเตเดฒ. เดฎเตเดฎเตเดชเดคเตเดคเต เดเดฃเตเดกเดฟเดเดฏเดฟเตฝ, ext3 เดเดเตเดเดจเตเดฏเดพเดฃเต เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดตเดณเดฐเตเดฏเดงเดฟเดเด เดกเดพเดฑเตเดฑ เดซเตเดฒเดทเต เดเตเดฏเตเดคเดคเตเดจเตเดจเต เดเดพเตป เดธเดเดธเดพเดฐเดฟเดเตเดเต, เดเดคเต เดเดพเดฐเตเดฏเดเตเดเตพ เดตเดณเดฐเตเดฏเดงเดฟเดเด เดฎเดจเตเดฆเดเดคเดฟเดฏเดฟเดฒเดพเดเตเดเดฟ. fsync()
. เดธเดพเดนเดเดฐเตเดฏเด เดฎเตเดเตเดเดชเตเดชเตเดเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต, เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดซเดฏเดฒเดฟเดจเต เดชเตเดฐเดธเดเตเดคเดฎเดพเดฏ "เดตเตเดคเตเดคเดฟเดเตเดเตเด" เดชเตเดเตเดเตพ เดฎเดพเดคเตเดฐเด ext4 เดซเตเดฒเดทเต เดเตเดฏเตเดฏเตเดจเตเดจเต. เดฎเดฑเตเดฑเต เดซเดฏเดฒเตเดเดณเตเดเต เดกเดพเดฑเตเดฑ ext3-เดจเตเดเตเดเดพเตพ เดเตเดเตเดคเตฝ เดธเดฎเดฏเด เดฎเตเดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดคเตเดเดฐเตเด. เดชเตเดฐเดเดเดจเด เดฎเตเดเตเดเดชเตเดชเตเดเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเดพเดฃเต เดเดคเต เดเตเดฏเตเดคเดคเต (เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ, เดกเดพเดฑเตเดฑ 30 เดธเตเดเตเดเตปเดกเต เด เด
เดตเดธเตเดฅเดฏเดฟเตฝ เดคเตเดเดฐเตเด, เดจเดฟเดเตเดเตพเดเตเดเต เดเดคเต เดเดชเดฏเตเดเดฟเดเตเดเต เดเตเตบเดซเดฟเดเตผ เดเตเดฏเตเดฏเดพเด fsync()
เดธเตเดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฃเด เดจเตฝเดเตเดฃเตเดเดคเตเด เดชเดฐเดพเดเดฏเดเตเดเดณเตเดเต เด
เดจเดจเตเดคเดฐเดซเดฒเดเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เด
เดตเดฐเต เดชเดฐเดฎเดพเดตเดงเดฟ เดธเดเดฐเดเตเดทเดฟเดเตเดเตเดฃเตเดเดคเตเดฎเดพเดฏ เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดเดณเดฟเตฝ. เดซเดเดเตเดทเตป fsync()
ext4 เดจเตเดเตเดเดพเตพ เดเตเดเตเดคเตฝ เดเดพเดฐเตเดฏเดเตเดทเดฎเดฎเดพเดฏเดฟ ext3 เดเดชเดฏเตเดเดฟเดเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต. เด เดธเดฎเตเดชเดจเดคเตเดคเดฟเดจเตเดฑเต เดชเตเดฐเดพเดฏเตเดฎ, เด
เดคเดฟเดจเตเดฑเต เดเดชเดฏเตเดเด, เดฎเตเดฎเตเดชเดคเตเดคเตเดชเตเดชเตเดฒเต, เดชเตเดฐเตเดเตเดฐเดพเดฎเตเดเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเดคเต เดชเตเดฒเตเดณเตเดณ เดเดฟเดฒ เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเต เดฎเดจเตเดฆเดเดคเดฟเดฏเดฟเดฒเดพเดเตเดเตเดจเตเดจเต เดเดจเตเดจเดคเดพเดฃเต. เดเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดตเดฟเดถเดฆเดพเดเดถเดเตเดเตพ เดเดพเดฃเตเด
เดธเดเดฌเดจเตเดงเดฟเดเตเด เดฎเตเดจเตเดจเดพเดฎเดคเตเดคเต เดชเตเดฐเดถเตเดจเด fsync()
, 2018-เตฝ เดเดคเตเดญเดตเดฟเดเตเดเดคเต. เดคเตเดเตผเดจเตเดจเต, PostgreSQL เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเดจเตเดฑเต เดเดเตเดเดเตเดเตเดเดฟเดจเตเดณเตเดณเดฟเตฝ, เดซเดเดเตเดทเตป เดเดฃเตเดเตเดเดฟเตฝ เดเดจเตเดจเต เดเดฃเตเดเตเดคเตเดคเดฟ fsync()
เดเดฐเต เดชเดฟเดถเดเต เดจเตเดฐเดฟเดเตเดจเตเดจเต, เด
เดคเต "เดตเตเดคเตเดคเดฟเดเตเดเตเด" เดชเตเดเตเดเดณเต "เดตเตเดคเตเดคเดฟเดฏเตเดณเตเดณเดคเต" เดเดจเตเดจเต เด
เดเดฏเดพเดณเดชเตเดชเตเดเตเดคเตเดคเตเดจเตเดจเต. เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดเตเดณเตเดเตพ fsync()
เด
เดคเตเดคเดฐเด เดชเตเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดจเตเดจเตเด เดเตเดฏเตเดฏเดฐเตเดคเต. เดเดเตเดเดพเดฐเดฃเดคเตเดคเดพเตฝ, เดชเดฐเดฟเดทเตเดเดฐเดฟเดเตเด เดชเตเดเตเดเตพ เดฎเตเดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดธเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเต, เดกเดฟเดธเตเดเดฟเตฝ เดเดดเตเดคเดฟเดฒเตเดฒ. เดเดคเตเดฐเต เดฏเดฅเดพเตผเดคเตเดฅ เดฆเตเดฐเดจเตเดคเดฎเดพเดฃเต, เดเดพเดฐเดฃเด เดเตเดฑเดเตเดเต เดกเดพเดฑเตเดฑ เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดเดดเตเดคเดฟเดฏเดฟเดเตเดเตเดฃเตเดเตเดจเตเดจเต เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดฐเตเดคเตเดจเตเดจเต, เดชเดเตเดทเต เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ เด
เดคเต เด
เดเตเดเดจเตเดฏเดพเดฏเดฟเดฐเดฟเดเตเดเดฟเดฒเตเดฒ. เด
เดคเตเดคเดฐเด เดชเดฐเดพเดเดฏเดเตเดเตพ fsync()
เด
เดชเตเตผเดตเดฎเดพเดฃเต, เด
เดคเตเดคเดฐเด เดธเดพเดนเดเดฐเตเดฏเดเตเดเดณเดฟเตฝ เดชเตเดฐเดฏเตเดเดคเตเดคเดฟเดจเต เดชเตเดฐเดถเตเดจเดคเตเดคเต เดจเตเดฐเดฟเดเดพเตป เดเดคเดพเดฃเตเดเต เดเดจเตเดจเตเด เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ. เด เดฆเดฟเดตเดธเดเตเดเดณเดฟเตฝ, เดเดคเต เดธเดเดญเดตเดฟเดเตเดเตเดฎเตเดชเตเตพ, PostgreSQL เดเด เดฎเดฑเตเดฑเต เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดเดณเตเด เดคเดเดฐเดพเดฑเดฟเดฒเดพเดเตเดจเตเดจเต. O_SYNC
เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฐเต เดชเดคเดพเด เดเดชเดฏเตเดเดฟเดเตเดเต O_DSYNC
. เด เดธเดฎเตเดชเดจเด เดเดชเดฏเตเดเดฟเดเตเดเต, เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเด เดกเดพเดฑเตเดฑ เดฑเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเตพ เดจเดเดคเตเดคเตเดฎเตเดชเตเตพ เดธเดเดญเดตเดฟเดเตเดเดพเดจเดฟเดเดฏเตเดณเตเดณ เดชเดฟเดถเดเตเดเตพ เดธเดฟเดธเตเดฑเตเดฑเด เดฑเดฟเดชเตเดชเตเตผเดเตเดเต เดเตเดฏเตเดฏเตเด, เดเดจเตเดจเดพเตฝ เด เดธเดฎเตเดชเดจเดคเตเดคเดฟเดจเต เดฌเดซเดฑเตเดเตพ เดคเดจเตเดจเต เดเตเดเดพเดฐเตเดฏเด เดเตเดฏเตเดฏเดพเตป เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดตเดถเตเดฏเดฎเดพเดฃเต. เด
เดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเต เดเตเดเตเดคเตฝ เดตเดพเดฏเดฟเดเตเดเตเด
O_SYNC, O_DSYNC เดซเตเดฒเดพเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดซเดฏเดฒเตเดเตพ เดคเตเดฑเดเตเดเตเดจเตเดจเต
เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฃเด เดจเตฝเดเตเดจเตเดจ เดฒเดฟเดจเดเตเดธเต เดฎเตเดเตเดเดพเดจเดฟเดธเดเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดเตผเดเตเดเดฏเดฟเดฒเตเดเตเดเต เดจเดฎเตเดเตเดเต เดฎเดเดเตเดเดพเด. เด
เดคเดพเดฏเดคเต, เดจเดฎเตเดฎเตพ เดธเดเดธเดพเดฐเดฟเดเตเดเตเดจเตเดจเดคเต เดชเดคเดพเดเดฏเตเดเต เดเดชเดฏเตเดเดคเตเดคเตเดเตเดเตเดฑเดฟเดเตเดเดพเดฃเต O_SYNC
เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดชเดคเดพเด O_DSYNC
เดธเดฟเดธเตเดฑเตเดฑเด เดเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดซเดฏเดฒเตเดเตพ เดคเตเดฑเดเตเดเตเดฎเตเดชเตเตพ write()
เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเต เดฏเดฅเดพเดเตเดฐเดฎเด เดเดฎเดพเตปเดกเตเดเตพ เดจเตฝเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต fsync()
ะธ fdatasync()
. เดฆเดฟ write()
ะธ fdatasync()
). เด เดธเดฎเตเดชเดจเดคเตเดคเดฟเดจเตเดฑเต เดชเตเดฐเดงเดพเดจ เดชเตเดฐเดพเดฏเตเดฎ, เด
เดจเตเดฌเดจเตเดง เดซเดฏเตฝ เดกเดฟเดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตผ เดเดชเดฏเตเดเดฟเดเตเดเตเดณเตเดณ เดเดฒเตเดฒเดพ เดฑเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเตเด เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดเตเดเดชเตเดชเตเดเตเด, เดเดคเต เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเตเดกเต เดฐเตเดชเดชเตเดชเตเดเตเดคเตเดคเดพเดจเตเดณเตเดณ เดเดดเดฟเดตเต เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเตเดเตเดคเตเดคเตเด.
O_DIRECT เดซเตเดฒเดพเดเต เดเดชเดฏเตเดเดฟเดเตเดเต เดกเดฏเดฑเดเตเดเต I/O เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต
เดธเดฟเดธเตเดฑเตเดฑเด เดเตเตพ open()
เดชเดคเดพเดเดฏเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเดเตเดเตเดจเตเดจเต O_DIRECT
, เดเดชเตเดชเดฑเตเดฑเตเดฑเดฟเดเดเต เดธเดฟเดธเตเดฑเตเดฑเด เดเดพเดทเต เดฎเดฑเดฟเดเดเดเตเดเตเดจเตเดจเดคเดฟเดจเตเด I / O เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเตพ เดจเดเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเด เดกเดฟเดธเตเดเตเดฎเดพเดฏเดฟ เดจเตเดฐเดฟเดเตเดเต เดธเดเดตเดฆเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเด เดฐเตเดชเดเตฝเดชเตเดชเดจ เดเตเดฏเตเดคเดฟเดเตเดเตเดณเตเดณเดคเดพเดฃเต. เดเดคเต, เดฎเดฟเดเตเด เดเตเดธเตเดเดณเดฟเดฒเตเด, เดชเตเดฐเตเดเตเดฐเดพเด เดจเตฝเดเตเดจเตเดจ เดฑเตเดฑเตเดฑเต เดเดฎเดพเตปเดกเตเดเตพ เดกเดฟเดธเตเดเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป เดฒเดเตเดทเตเดฏเดฎเดฟเดเตเดเตเดณเตเดณ เดเดฎเดพเตปเดกเตเดเดณเดฟเดฒเตเดเตเดเต เดจเตเดฐเดฟเดเตเดเต เดตเดฟเดตเตผเดคเตเดคเดจเด เดเตเดฏเตเดฏเดชเตเดชเตเดเตเด เดเดจเตเดจเดพเดฃเต. เดชเดเตเดทเต, เดชเตเดคเตเดตเต, เด เดธเดเดตเดฟเดงเดพเดจเด เดซเดเดเตเดทเดจเตเดเตพเดเตเดเต เดชเดเดฐเดฎเดพเดตเดฟเดฒเตเดฒ fsync()
เด
เดฅเดตเดพ fdatasync()
. เดกเดฟเดธเตเดเดฟเดจเต เดคเดจเตเดจเต เดเดดเดฟเดฏเตเด เดเดจเตเดจเดคเดพเดฃเต เดตเดธเตเดคเตเดค O_DIRECT
, O_DSYNC
, เดเดฐเต เดฑเตเดฑเตเดฑเต เดเดชเตเดชเดฑเตเดทเดจเตเด เดเดฐเต เดเตเตพ เดตเดฐเตเด เดเดจเตเดจเดพเดฃเต เด
เตผเดคเตเดฅเดฎเดพเดเตเดเตเดจเตเดจเดคเต fdatasync()
.
XFS เดซเดฏเตฝเดธเดฟเดธเตเดฑเตเดฑเด เด
เดเตเดคเตเดคเดฟเดเต เดเดฐเต "เดซเดพเดธเตเดฑเตเดฑเต เดชเดพเดคเตเดคเต" เดเตเตผเดคเตเดคเดฟเดเตเดเตเดฃเตเดเตเดจเตเดจเต เดฎเดจเดธเตเดธเดฟเดฒเดพเดฏเดฟ O_DIRECT|O_DSYNC
- เดกเดพเดฑเตเดฑ เดฑเตเดเตเดเตเตผเดกเตเดเตพ. เดฌเตเดฒเตเดเตเดเต เดเดชเดฏเตเดเดฟเดเตเดเต เดคเดฟเดฐเตเดคเตเดคเดฟเดฏเตเดดเตเดคเดฟเดฏเดพเตฝ O_DIRECT|O_DSYNC
, เดคเตเดเตผเดจเตเดจเต XFS, เดเดพเดทเต เดซเตเดฒเดทเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดชเดเดฐเด, เดเดชเดเดฐเดฃเด เดชเดฟเดจเตเดคเตเดฃเดฏเตเดเตเดเตเดจเตเดจเตเดตเตเดเตเดเดฟเตฝ FUA เดฑเตเดฑเตเดฑเต เดเดฎเดพเตปเดกเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเตเด. เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดพเตป เดเดคเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเต blktrace
เดเดฐเต Linux 5.4/Ubuntu 20.04 เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ. เด เดธเดฎเตเดชเดจเด เดเตเดเตเดคเตฝ เดเดพเดฐเตเดฏเดเตเดทเดฎเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเดฃเด, เดเดพเดฐเดฃเด เดเดคเต เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดเดฑเตเดฑเดตเตเด เดเตเดฑเดเตเด เดกเดพเดฑเตเดฑ เดเดดเตเดคเตเดเดฏเตเด เดเดฐเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด เดเดชเดฏเตเดเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต, เดฐเดฃเตเดเดฒเตเดฒ (เดเดพเดทเต เดเดดเตเดคเดฟ เดซเตเดฒเดทเต เดเตเดฏเตเดฏเตเด). เดเดจเตเดจเดคเดฟเดฒเตเดเตเดเตเดณเตเดณ เดฒเดฟเดเตเดเต เดเดพเตป เดเดฃเตเดเตเดคเตเดคเดฟ
sync_file_range() เดซเดเดเตโเดทเตป
เดฒเดฟเดจเดเตเดธเดฟเดจเต เดเดฐเต เดธเดฟเดธเตเดฑเตเดฑเด เดเตเตพ เดเดฃเตเดเต sync_file_range()
เด เดเดฎเดพเตปเดกเต "เดตเดณเดฐเต เด
เดชเดเดเดเดฐเดฎเดพเดฃเต" เดเดจเตเดจเต เดชเดฑเดฏเดชเตเดชเตเดเตเดจเตเดจเต. เดเดคเต เดเดชเดฏเตเดเดฟเดเตเดเดพเตป เดถเตเดชเดพเตผเดถ เดเตเดฏเตเดคเดฟเดเตเดเดฟเดฒเตเดฒ. เดธเดตเดฟเดถเตเดทเดคเดเดณเตเด เด
เดชเดเดเดเตเดเดณเตเด sync_file_range()
เดตเดณเดฐเต เดจเดจเตเดจเดพเดฏเดฟ เดตเดฟเดตเดฐเดฟเดเตเดเดฟเดเตเดเตเดฃเตเดเต fdatasync()
. เดฆเดฟ sync_file_range()
ZFS เดเดชเดฏเตเดเดฟเดเตเดเตเดฎเตเดชเตเตพ, เด
เดคเต เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดกเดพเดฑเตเดฑ เดซเตเดฒเดทเต เดเตเดฏเตเดฏเตเดจเตเดจเดฟเดฒเตเดฒ. เด
เดชเตเตผเดตเตเดตเดฎเดพเดฏเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดเตเดกเดฟเตฝ เดฌเดเตเดเตพ เดเดฃเตเดเดพเดเดพเตป เดธเดพเดงเตเดฏเดคเดฏเตเดฃเตเดเตเดจเตเดจเต เด
เดจเตเดญเดตเด เดชเดฑเดฏเตเดจเตเดจเต. เด
เดคเดฟเดจเดพเตฝ, เด
เดคเตเดฏเดพเดตเดถเตเดฏเดฎเดฒเตเดฒเดพเดคเต เด เดธเดฟเดธเตเดฑเตเดฑเด เดเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดคเดฟเดฐเต เดเดพเตป เดเดชเดฆเตเดถเดฟเดเตเดเตเดจเตเดจเต.
เดกเดพเดฑเตเดฑ เดธเตเดฅเดฟเดฐเดค เดเดฑเดชเตเดชเดพเดเตเดเดพเตป เดธเดนเดพเดฏเดฟเดเตเดเตเดจเตเดจ เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดณเตเดเตพ
เดธเตเดฅเดฟเดฐเดฎเดพเดฏ I/O เดเดชเตเดชเดฑเตเดทเดจเตเดเตพ เดจเดเดคเตเดคเดพเตป เดฎเตเดจเตเดจเต เดธเดฎเตเดชเดจเดเตเดเดณเตเดฃเตเดเตเดจเตเดจเต เดเดพเตป เดจเดฟเดเดฎเดจเดคเตเดคเดฟเดฒเตเดคเตเดคเดฟ. เด
เดตเดฏเตโเดเตเดเตเดฒเตเดฒเดพเด เดเดฐเต เดซเดเดเตโเดทเตป เดเตเตพ เดเดตเดถเตเดฏเดฎเดพเดฃเต fsync()
เดซเดฏเตฝ เดธเตเดทเตเดเดฟเดเตเด เดกเดฏเดฑเดเตโเดเดฑเดฟเดเตเดเดพเดฏเดฟ. เดธเดฎเตเดชเดจเดเตเดเตพ เดเดตเดฏเดพเดฃเต:
- เดซเดเดเตเดทเตป เดเตเตพ
fdatasync()
เด เดฅเดตเดพfsync()
เดเดเดเตเดเดฟเดจเต เดถเตเดทเดwrite()
(เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเตfdatasync()
). - เดเดฐเต เดซเตเดฒเดพเดเต เดเดชเดฏเตเดเดฟเดเตเดเต เดคเตเดฑเดจเตเดจ เดเดฐเต เดซเดฏเตฝ เดกเดฟเดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตผ เดเดชเดฏเตเดเดฟเดเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต
O_DSYNC
เด เดฅเดตเดพO_SYNC
(เดจเดฒเตเดฒเดคเต - เดเดฐเต เดชเดคเดพเด เดเดชเดฏเตเดเดฟเดเตเดเตO_DSYNC
). - เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเด
pwritev2()
เดชเดคเดพเดเดฏเตเดฎเดพเดฏเดฟRWF_DSYNC
เด เดฅเดตเดพRWF_SYNC
(เดตเตเดฏเดฟเดฒเดคเตเดคเต เดเดฐเต เดชเดคเดพเดRWF_DSYNC
).
เดชเตเดฐเดเดเดจ เดเตเดฑเดฟเดชเตเดชเตเดเตพ
เดเดพเตป เดชเดฐเดฟเดถเตเดงเดฟเดเตเด เดตเดฟเดตเดฟเดง เดฎเตเดเตเดเดพเดจเดฟเดธเดเตเดเดณเตเดเต เดชเตเดฐเดเดเดจเด เดเดพเตป เดถเตเดฐเดฆเตเดงเดพเดชเตเตผเดตเตเดตเด เด เดณเดจเตเดจเดฟเดเตเดเดฟเดฒเตเดฒ. เด เดตเดฐเตเดเต เดเตเดฒเดฟเดฏเตเดเต เดตเตเดเดคเดฏเดฟเตฝ เดเดพเตป เดถเตเดฐเดฆเตเดงเดฟเดเตเด เดตเตเดฏเดคเตเดฏเดพเดธเดเตเดเตพ เดตเดณเดฐเต เดเตเดฑเตเดคเดพเดฃเต. เดเดคเดฟเดจเตผเดคเตเดฅเด เดเดพเตป เดคเตเดฑเตเดฑเต เดเตเดฏเตเดคเตเดเตเดเดพเด, เดตเตเดฏเดคเตเดฏเดธเตเดค เดธเดพเดนเดเดฐเตเดฏเดเตเดเดณเดฟเตฝ เดเดฐเต เดเดพเดฐเตเดฏเด เดตเตเดฏเดคเตเดฏเดธเตเดค เดซเดฒเดเตเดเตพ เดเดฃเตเดเดพเดเตเดเดฟเดฏเตเดเตเดเดพเด เดเดจเตเดจเดพเดฃเต. เดเดฆเตเดฏเด, เดชเตเดฐเดเดเดจเดคเตเดคเต เดเตเดเตเดคเตฝ เดฌเดพเดงเดฟเดเตเดเตเดจเตเดจ เดเดพเดฐเตเดฏเดเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเต เดเดพเตป เดธเดเดธเดพเดฐเดฟเดเตเดเตเด, เดคเตเดเตผเดจเตเดจเต เดชเตเดฐเดเดเดจเดคเตเดคเต เดเตเดฑเดเตเดเต เดฌเดพเดงเดฟเดเตเดเตเดจเตเดจเดคเต.
- เดซเดฏเตฝ เดกเดพเดฑเตเดฑ เดเดตเตผเดฑเตเดฑเตเดฑเดฟเดเดเต เดเดฐเต เดซเดฏเดฒเดฟเดฒเตเดเตเดเต เดกเดพเดฑเตเดฑ เดเตเดเตเดเดฟเดเตเดเตเตผเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดเตเดเดพเตพ เดตเตเดเดคเดฏเตเดณเตเดณเดคเดพเดฃเต (เดชเตเดฐเดเดเดจ เดจเตเดเตเดเด 2-100% เดเดเดพเด). เดเดฐเต เดซเดฏเดฒเดฟเดฒเตเดเตเดเต เดกเดพเดฑเตเดฑ เด
เดฑเตเดฑเดพเดเตเดเตเดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดณเดฟเดจเต เดถเตเดทเดตเตเด เดซเดฏเดฒเดฟเดจเตเดฑเต เดฎเตเดฑเตเดฑเดพเดกเดพเดฑเตเดฑเดฏเดฟเตฝ เด
เดงเดฟเด เดฎเดพเดฑเตเดฑเดเตเดเตพ เดเดตเดถเตเดฏเดฎเดพเดฃเต
fallocate()
, เดเดจเตเดจเดพเตฝ เด เดซเดฒเดคเตเดคเดฟเดจเตเดฑเต เดตเตเดฏเดพเดชเตเดคเดฟ เดตเตเดฏเดคเตเดฏเดพเดธเดชเตเดชเตเดเดพเด. เดฎเดฟเดเดเตเด เดชเตเดฐเดเดเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ, เดตเดฟเดณเดฟเดเตเดเดพเตป เดเดพเตป เดถเตเดชเดพเตผเดถ เดเตเดฏเตเดฏเตเดจเตเดจเตfallocate()
เดเดตเดถเตเดฏเดฎเดพเดฏ เดธเตเดฅเดฒเด เดฎเตเตปเดเตเดเตเดเดฟ เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต. เด เดชเตเดชเตเตพ เด เดเดเด เดตเตเดฏเดเตเดคเดฎเดพเดฏเดฟ เดชเตเดเตเดฏเดเตเดเตพ เดเตเดฃเตเดเต เดชเตเดฐเดฟเดชเตเดชเดฟเดเตเดเต เดตเดฟเดณเดฟเดเตเดเดฃเดfsync()
. เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเต เด เดจเตเดฌเดจเตเดง เดฌเตเดฒเตเดเตเดเตเดเตพ "เด เตบเดฒเตเดเตเดเตเดฑเตเดฑเต" เดเดจเตเดจเดคเดฟเดจเตเดชเดเดฐเด "เด เดฒเตเดเตเดเตเดฑเตเดฑเดกเต" เดเดจเตเดจเต เด เดเดฏเดพเดณเดชเตเดชเตเดเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต เดเดคเต เดเดพเดฐเดฃเดฎเดพเดเตเด. เดเดคเต เดเดฐเต เดเตเดฑเดฟเดฏ (เดเดเดฆเตเดถเด 2%) เดชเตเดฐเดเดเดจ เดฎเตเดเตเดเดชเตเดชเตเดเตเดคเตเดคเตฝ เดจเตฝเดเตเดจเตเดจเต. เดเตเดเดพเดคเต, เดเดฟเดฒ เดกเดฟเดธเตเดเตเดเตพเดเตเดเต เดฎเดฑเตเดฑเตเดณเตเดณเดตเดฏเตเดเตเดเดพเตพ เดตเตเดเดค เดเตเดฑเดเตเด เดเดฆเตเดฏ เดฌเตเดฒเตเดเตเดเต เดเดเตเดธเดธเต เดเดชเตเดชเดฑเตเดทเตป เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด. เดเดคเดฟเดจเตผเดคเตเดฅเด เดชเตเดเตเดฏเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดธเตเดฅเดฒเด เดชเตเดฐเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเดคเต เดเดฐเต เดเดพเดฐเตเดฏเดฎเดพเดฏ (เดเดเดฆเตเดถเด 100%) เดชเตเดฐเดเดเดจ เดฎเตเดเตเดเดชเตเดชเตเดเตเดคเตเดคเดฒเดฟเดฒเตเดเตเดเต เดจเดฏเดฟเดเตเดเตเด เดเดจเตเดจเดพเดฃเต. เดชเตเดฐเดคเตเดฏเตเดเดฟเดเตเดเตเด, เดเดคเต เดกเดฟเดธเตเดเตเดเดณเดฟเตฝ เดธเดเดญเดตเดฟเดเตเดเดพเด.AWS EBS (เดเดคเต เด เดจเตเดฆเตเดฏเตเดเดฟเด เดกเดพเดฑเตเดฑเดฏเดพเดฃเต, เดเดจเดฟเดเตเดเต เดเดคเต เดธเตเดฅเดฟเดฐเตเดเดฐเดฟเดเตเดเดพเตป เดเดดเดฟเดเตเดเดฟเดฒเตเดฒ). เดธเดเดญเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต เดเดพเดฐเตเดฏเดคเตเดคเดฟเดฒเตเด เดเดคเตเดคเดจเตเดจเต เดชเตเดเตเดจเตเดจเตเดเดฟเดธเดฟเดชเดฟ เดชเตเตผเดธเดฟเดธเตเดฑเตเดฑเดจเตเดฑเต เดกเดฟเดธเตเดเต (เดเดคเต เดเดคเดฟเดจเดเด เดเดฆเตเดฏเตเดเดฟเด เดตเดฟเดตเดฐเดฎเดพเดฃเต, เดเตเดธเตเดฑเตเดฑเตเดเตพ เดธเตเดฅเดฟเดฐเตเดเดฐเดฟเดเตเดเต). เดฎเดฑเตเดฑเต เดตเดฟเดฆเดเตเดงเดฐเตเด เดเดคเตเดคเดจเตเดจเต เดเตเดฏเตเดคเตเดจเดฟเดฐเตเดเตเดทเดฃเด เดตเตเดฏเดคเตเดฏเดธเตเดค เดกเดฟเดธเตเดเตเดเดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเตเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต. - เดเตเดฑเดเตเดเต เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดณเตเดเตพ, เดเดฏเตผเดจเตเดจ เดชเตเดฐเดเดเดจเด (เดจเตเดเตเดเด เดเดเดฆเตเดถเด 5% เดเดเดพเด). เดเดฐเต เดเตเตพ เดชเตเดฒเต เดคเตเดจเตเดจเตเดจเตเดจเต
open()
เดชเดคเดพเดเดฏเตเดฎเดพเดฏเดฟO_DSYNC
เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดตเดฟเดณเดฟเดเตเดเตเดpwritev2()
เดชเดคเดพเดเดฏเตเดฎเดพเดฏเดฟRWF_SYNC
เดตเตเดเดคเตเดคเดฟเดฒเตเดณเตเดณ เดเตเตพfdatasync()
. เดเดฐเต เดชเตเดฐเดถเตเดจเด เดชเดฐเดฟเดนเดฐเดฟเดเตเดเดพเตป เดเตเดฑเดเตเดเต เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดณเตเดเตพ เดจเดเดคเตเดคเตเดฃเตเดเดฟเดตเดฐเตเดฎเตเดจเตเดจ เดตเดธเตเดคเตเดคเดฏเดฟเตฝ เด เดธเดฎเตเดชเดจเดคเตเดคเดฟเดจเต เดเดฐเต เดชเดเตเดเตเดฃเตเดเต เดเดจเตเดจเดคเดพเดฃเต เดเดตเดฟเดเตเดฏเตเดณเตเดณ เดเดพเดฐเตเดฏเด เดเดจเตเดจเต เดเดพเตป เดธเดเดถเดฏเดฟเดเตเดเตเดจเตเดจเต (เดฐเดฃเตเดเดฟเดจเต เดชเดเดฐเด เดเดฐเต เดเตเตพ). เดเดจเตเดจเดพเตฝ เดชเตเดฐเดเดเดจเดคเตเดคเดฟเดฒเต เดตเตเดฏเดคเตเดฏเดพเดธเด เดตเดณเดฐเต เดเตเดฑเตเดคเดพเดฃเต, เด เดคเดฟเดจเดพเตฝ เดจเดฟเดเตเดเตพเดเตเดเต เดเดคเต เดชเตเตผเดฃเตเดฃเดฎเดพเดฏเตเด เด เดตเดเดฃเดฟเดเตเดเดพเดจเตเด เด เดคเดฟเดจเตเดฑเต เดฏเตเดเตเดคเดฟเดฏเต เดธเดเตเดเตเตผเดฃเตเดฃเดฎเดพเดเตเดเดพเดคเตเดค เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเดฟเตฝ เดเดชเดฏเตเดเดฟเดเตเดเดพเดจเตเด เดเดดเดฟเดฏเตเด.
เดจเดฟเดเตเดเตพเดเตเดเต เดธเตเดธเตเดฅเดฟเดฐ เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฃ โโเดตเดฟเดทเดฏเดคเตเดคเดฟเตฝ เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดฃเตเดเตเดเตเดเดฟเตฝ, เดเดฟเดฒ เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฏ เดฎเตเดฑเตเดฑเตเดฐเดฟเดฏเดฒเตเดเตพ เดเดคเดพ:
I/O เดเดเตเดธเดธเต เดฐเตเดคเดฟเดเตพ โ เดเตปเดชเตเดเตเดเต / เดเดเตเดเตเดชเตเดเตเดเต เดฎเตเดเตเดเดพเดจเดฟเดธเดเตเดเดณเตเดเต เด เดเดฟเดธเตเดฅเดพเดจ เดเดพเดฐเตเดฏเดเตเดเดณเตเดเต เดเดฐเต เด เดตเดฒเตเดเดจเด.เดกเดพเดฑเตเดฑ เดกเดฟเดธเตเดเดฟเตฝ เดเดคเตเดคเตเดจเตเดจเตเดตเตเดจเตเดจเต เดเดฑเดชเตเดชเดพเดเตเดเตเดจเตเดจเต - เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเตเดณเตเดณ เดตเดดเดฟเดฏเดฟเตฝ เดกเดพเดฑเตเดฑเดฏเตเดเตเดเต เดเดจเตเดคเต เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเต เดเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดเดฐเต เดธเตเดฑเตเดฑเตเดฑเดฟ.เดเดชเตเดชเตเดดเดพเดฃเต เดจเดฟเดเตเดเตพ เด เดเดเตเดเตเดจเตเดจ เดกเดฏเดฑเดเตเดเดฑเดฟ fsync เดเตเดฏเตเดฏเตเดฃเตเดเดคเต - เดเดชเตเดชเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเดฃเด เดเดจเตเดจ เดเตเดฆเตเดฏเดคเตเดคเดฟเดจเตเดณเตเดณ เดเดคเตเดคเดฐเดfsync()
เดกเดฏเดฑเดเตเดเดฑเดฟเดเตพเดเตเดเดพเดฏเดฟ. เดเดคเต เดเตเดฐเตเดเตเดเดคเตเดคเดฟเตฝ เดชเดฑเดเตเดเดพเตฝ, เดเดฐเต เดชเตเดคเดฟเดฏ เดซเดฏเตฝ เดธเตเดทเตเดเดฟเดเตเดเตเดฎเตเดชเตเตพ เดจเดฟเดเตเดเตพ เดเดคเต เดเตเดฏเตเดฏเตเดฃเตเดเดคเตเดฃเตเดเต, เดฒเดฟเดจเดเตเดธเดฟเตฝ เดเดฐเต เดซเดฏเดฒเดฟเดฒเตเดเตเดเต เดจเดฟเดฐเดตเดงเดฟ เดฑเดซเดฑเตปเดธเตเดเตพ เดเดฃเตเดเดพเดเดพเด เดเดจเตเดจเดคเดพเดฃเต เด เดถเตเดชเดพเตผเดถเดฏเตเดเต เดเดพเดฐเดฃเด.เดฒเดฟเดจเดเตเดธเดฟเดฒเต SQL เดธเตเตผเดตเตผ: FUA เดเดจเตเดฑเตเดฃเตฝเดธเต โ Linux เดชเตเดฒเดพเดฑเตเดฑเตโเดซเตเดฎเดฟเดฒเต SQL เดธเตเตผเดตเดฑเดฟเตฝ เดเดเตเดเดจเตเดฏเดพเดฃเต เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฃเด เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตเดจเตเดจเดคเต เดเดจเตเดจเดคเดฟเดจเตเดฑเต เดเดฐเต เดตเดฟเดตเดฐเดฃเด เดเดตเดฟเดเตเดฏเตเดฃเตเดเต. เดตเดฟเตปเดกเตเดธเต, เดฒเดฟเดจเดเตเดธเต เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดณเตเดเตพ เดคเดฎเตเดฎเดฟเตฝ เดฐเดธเดเดฐเดฎเดพเดฏ เดเดฟเดฒ เดคเดพเดฐเดคเดฎเตเดฏเดเตเดเตพ เดเดตเดฟเดเตเดฏเตเดฃเตเดเต. XFS-เดจเตเดฑเต FUA เดเดชเตเดฑเตเดฑเดฟเดฎเตเดธเตเดทเดจเต เดเตเดฑเดฟเดเตเดเต เดเดพเตป เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเดฟเดฏเดคเต เด เดฎเตเดฑเตเดฑเตเดฐเดฟเดฏเดฒเดฟเดจเต เดจเดจเตเดฆเดฟเดฏเดพเดฃเตเดจเตเดจเต เดเดจเดฟเดเตเดเต เดเดคเดพเดฃเตเดเต เดเดฑเดชเตเดชเตเดฃเตเดเต.
เดเดฐเต เดกเดฟเดธเตเดเดฟเตฝ เดธเตเดฐเดเตเดทเดฟเดคเดฎเดพเดฏเดฟ เดธเดเดญเดฐเดฟเดเตเดเดฟเดเตเดเตเดฃเตเดเตเดจเตเดจเต เดจเดฟเดเตเดเตพ เดเดฐเตเดคเตเดจเตเดจ เดกเดพเดฑเตเดฑ เดจเดทเตเดเดชเตเดชเตเดเตเดเต?
เด
เดตเดฒเดเดฌเด: www.habr.com