fsync和fdatasync是否一定能保證數據寫入磁盤不會丟?

【page cache由來】         在UNIX和linux系統上,在數據被寫入到磁盤上之前,內核通常先將該數據複製到其中一個緩衝區中,如果該緩衝區尚未寫滿,則並不將其排入輸出隊列,而是等待其寫滿或者當內核需要重用該緩衝區以便存放其他磁盤塊數據時,再將該緩衝排入輸出隊列,然後待其到達隊首時,才進行實際的I/O操作。這種輸出方式被稱爲延遲寫(delayed write)。 【sync函數】
相關文章
相關標籤/搜索