Scroll to navigation

bdflush(8) System Manager's Manual bdflush(8)

NAME

bdflush - 將dirty緩存寫回到磁碟的核心守護進程。

總覽(SYNOPSIS)

bdflush [opt]

描述(DESCRIPTION)

bdflush 被用來啟動核心守護進程將記憶體中的dirty緩存寫到磁碟上。真正清潔工作是一個核心程式完成的。 bdflush實際上只是派生出一個新的進程調用這個永遠不會返回的核心程式。
bdflush 實際上也派生出第二個守護進程,這個進程實際上像一個傳統的更新程式,除了那些緩存在變化了一個位前 不會被考慮用來進行寫操作。當緩存的dirty位被置位時,時鐘開始計時。當經過一定的時間間隔後,緩存將 會被寫回到磁碟上。對於數據緩存和位元數據緩存(比如目錄,位圖,間接區塊等等)來說,時間間隔是不 同的。當你在運行bdflush時使用了一些命令行參數的時候,當前一些配置會顯示在螢幕上。數據緩存刷新間 隔的預設值是30秒,位元數據是5秒。
在正常情況下,兩個守護進程使用/etc/rc下的一個
/sbin/update
命令來執行。 值得注意的是你需要讓這個兩個守護進程同時運行,因為每個守護進程都有其作用。同時也要注意這個命令 需要在任何主I/O設備運行前執行。需要特別說明的是,在對檔案系統使用fsck命令檢查前或者將檔案系統激 活為讀寫模式前應該調用update這個命令。
當bdflush被一個沒有超級權限的使用者執行時,它就會調用flush和sync函數,然後退出。千萬不要同時運行20 個update守護進程……

「命令行選項」(COMMAND-LINE OPTIONS)

-d
顯示核心參數。使用這個選項可以防止守護進程的運行。
-h
列印出使用方法(幫助)。
-s
如果bdflush的預設為以前的update方法,就經常性的調用sync。 預設值:30秒。
-f
經常性的調用flush。預設值:5秒。
-0
檢測dirty緩存區塊時使用LRU算法的最大塊。
-1
bdflush激活時需要寫到磁碟上的最大dirty緩存數量。
-2
將clean緩存掛到標誌著空閒隊列的refill_freelist列表上的數字標識。
-3
在refill_freelist隊列中激活bdflush的dirty區塊臨界值。
-4
查詢空閒簇所使用的緩存百分比。
-5
數據緩存在刷新前的可更新時間。
-6
非數據(目錄,位圖等等)緩存在刷新前可更新時間。
-7
快速緩存調用平均持續時間。
-8
LAV比率(用來決定緩存更迭的臨界值)

作者(AUTHOR)

bdflush 是由Eric Youngdale <ericy@gnu.ai.mit.edu>編寫. 主要目的是提高核心刷新dirty緩存的靈活性,並且增加了緩存集群技術。 其他的作者還有Phil Bostley <bostley@cs.colorado.edu> 和 Daniel Quinlan <quinlan@yggdrasil.com>.

缺陷(BUGS)

如果有的話,那一定是在核心代碼中。

[中文版維護人]

billpan <billpan@netease.com>

[中文版最新更新]

2002/01/10

《中國linux論壇man手冊頁翻譯計劃》:

http://cmpp.linuxforum.net
Aug 1994