<abbr id="6vcb1"><tfoot id="6vcb1"><output id="6vcb1"></output></tfoot></abbr>

<style id="6vcb1"><u id="6vcb1"><thead id="6vcb1"></thead></u></style>

<sup id="6vcb1"></sup>
  • 我要提問

    sync是什么

    山茶花2008 2023-05-22 10:45:28

    sync是什么

    1個回答
    • 阿拉丁神蹬 2023-05-22 10:37:28

      sync(意指Synchronize,即“同步”)為UNIX操作系統的標準系統調用,功能為將內核文件系統緩沖區的所有數據。

      sync作為C語言的函數之一,sync()一般以void sync(void)的形式在unistd.h內聲明。該函數也可以從命令行執行sync命令的方式調用,同時在其他程序語言(如Perl)中也有名字與之相似的函數。

      UNIX中還有一些與sync相似的系統調用,如fsync與fdatasync。其中fsync負責寫入所有與特定文件描述符相關的緩沖區數據;fdatasync功能與fsync相似,但只負責寫入文件中被變更的數據,而不會修改文件的元數據(如文件屬性)。

      sync在數據庫中的應用

      在對數據進行修改操作(包括增、刪、改)時,被修改的數據一般僅是暫存于基于內存的寫入緩存,而當掉電時這些修改便會丟失;而為保證數據的持久性,數據庫必須使用某些形式的sync,以確保修改的內容切實寫入非易失性存儲器,如PostgreSQL就使用了多種sync類調用(包括fsync與fdatasync)來達到這一目的。

      但是,對于旋轉尋道的硬盤來說,每次旋轉只能完成一項“提交”操作以將客戶端的修改寫入,因此每秒最多只能完成幾百次的“提交”操作;而若關閉fsync的限定來放寬要求,則可大幅提升性能,但同時也會帶來系統崩潰后數據庫損毀的潛在危險。有鑒于此,數據庫也使用囊括最近修改信息的日志文件(一般比主題數據文件小得多)來保障可靠性:根據日志文件,系統管理員可以在系統崩潰后準確地重做修改操作,以此即可減少對主要數據文件的sync操作。

      0有用 0 回復
    申明:本文轉載自互聯網,轉載目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責。文章內容僅供參考。如因作品內容、版權和其他問題需要同本網聯系的,請發送郵件聯系刪除。

    相關問答

    一级a做免费大全在线观看_国产三级精品三级男人的天堂_欧美激情二区在线播放_人妻中文字幕无码中出
    <abbr id="6vcb1"><tfoot id="6vcb1"><output id="6vcb1"></output></tfoot></abbr>

    <style id="6vcb1"><u id="6vcb1"><thead id="6vcb1"></thead></u></style>

    <sup id="6vcb1"></sup>
  • 天天综合久久一区二区 | 午夜福利精品a在线观看 | 在线不卡日本v一区二区 | 热久久99精品综合久久 | 中文字幕婷婷丁香色五月 | 亚洲日本成熟女人性视频 |