Linux sync命令學習

來源:互聯網
上載者:User

先瞭解一下buffer與cache:
buffer,為瞭解決寫磁碟的效率;
cache,為瞭解決讀磁碟的效率。

Linux系統為了提高讀寫磁碟的效率,會先將資料放在一塊buffer中。
在寫磁碟時並不是立即將資料寫到磁碟中,而是先寫入這塊buffer中了。
此時如果重啟系統,就可能造成資料丟失。

sync命令用來flush檔案系統buffer,這樣資料才會真正的寫到磁碟中,並且buffer才能夠釋放出來。
flush就是用來清空buffer。
sync命令會強制將資料寫入磁碟中,並釋放該資料對應的buffer,
所以常常會在寫磁碟後輸入sync命令來將資料真正的寫入磁碟。

如果不去手動的輸入sync命令來真正的去寫磁碟,linux系統也會有兩種寫磁碟的時機:
1. kflush核心線程周期性的去寫磁碟;
2. buffer已滿不得不寫。

待確認問題:
是有一個kflush的thread去周期性的sync嗎?

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.