資料介紹
在近代歷史上,日志文件系統(tǒng)被認(rèn)為十分奇特,主要是處于研究階段。而如今,日志文件系統(tǒng)(ext3)已經(jīng)成為 Linux的缺省文件系統(tǒng)。本文向大家揭示了日志文件系統(tǒng)背后的一些思想,以及在電源故障或系統(tǒng)崩潰時,如何提供更好的完整性。此外本文還介紹了現(xiàn)行的幾種日志文件 系統(tǒng)和下一代日志文件系統(tǒng)。
定義日志文件系統(tǒng)的方法有很多種,但是讓我們抓住要點。日志文件系統(tǒng)就是專為那些厭倦了一直盯著啟動時 fsck(即文件系統(tǒng)一致性檢查)的人而設(shè)計的(日志文件系統(tǒng)同樣適用于希望文件系統(tǒng)具有故障恢復(fù)能力的群體)。如果系統(tǒng)采用傳統(tǒng)的未提供日志功能的文件系統(tǒng),那么操作系統(tǒng)在檢測到系統(tǒng)為非正常關(guān)機時,會使用 fsck 應(yīng)用程序執(zhí)行一致性檢驗。該應(yīng)用程序會掃描文件系統(tǒng)(這要花費很長的時間),并修復(fù)任何可安全修復(fù)的問題。而在某些情況下,當(dāng)文件系統(tǒng)損壞嚴(yán)重時,操作系統(tǒng)會啟動到單用戶模式,由用戶進行進一步的修復(fù)。
那么現(xiàn)在您應(yīng)該清楚日志文件系統(tǒng)針對的是哪類人群了,但是他們是如何取締 fsck 的呢?籠統(tǒng)地說,日志文件系統(tǒng)就是通過維護一份日志來防止文件系統(tǒng)崩潰。所謂日志就是一種特殊的文件,它會在一個循環(huán)的緩沖區(qū)內(nèi)記錄文件系統(tǒng)的修改,然后 將其定期提交到文件系統(tǒng)。一旦系統(tǒng)發(fā)生崩潰,日志文件就會起到一個檢查點的作用,用于恢復(fù)未保存的信息,防止損壞文件系統(tǒng)元數(shù)據(jù)。
總之,日志文件系統(tǒng)就是一種具有故障恢復(fù)能力的文件系統(tǒng),它利用日志來記錄尚未提交到文件系統(tǒng)的修改,以防止元數(shù)據(jù)破壞(請參見圖 1)。但是如眾多其他 Linux 解決方案一樣,日志文件系統(tǒng)有多種方案供您選擇。下面就讓我們一起簡短回顧一下日志文件系統(tǒng)的歷史,然后再看一看現(xiàn)行的幾種文件系統(tǒng),看看它們之間有什么 區(qū)別。//本文轉(zhuǎn)自www.45it.com電腦軟硬件應(yīng)用網(wǎng)

圖 1. 典型的日志文件系統(tǒng)
Linux 日志文件系統(tǒng)的歷史
最早的日志文件系統(tǒng)是 IBM-Journaled File System(JFS)。JFS 于 1990 年首次發(fā)行,而當(dāng)前 Linux 支持的版本是后期開發(fā)的 JFS2。1994 年,Silicon Graphics 為 IRIX 操作系統(tǒng)引進了高性能的 XFS。XFS 于 2001 年被植入 Linux 系統(tǒng)中。1998 年開發(fā)的智能文件系統(tǒng)(SFS)起初是為 Amiga 開發(fā)的,但之后卻在 GNU Lesser General Public License(LGPL)下發(fā)行,并于 2005 年獲得了 Linux 的支持。最常用的日志文件系統(tǒng) ext3fs(third extended file system)是 ext2 的擴展,它增加了記錄日志的功能。從 2001 年起,Linux 系統(tǒng)中就開始支持 ext3fs。最終,ReiserFS 日志文件系統(tǒng)在其被引入之后,力壓群雄,被廣泛使用。但由于其原開發(fā)者的一些法律糾紛,ReiserFS 日志文件系統(tǒng)未能得到進一步的發(fā)展。
日志的幾種變體
日志文件系統(tǒng)是使用日志來緩沖文件系統(tǒng)的修改(同時也可以應(yīng)用于緊急故障恢復(fù))的,但可以根據(jù)記錄的時間與內(nèi)容采取不同的策略。其中,三種常見的策略為:回寫(writeback)、預(yù)定(ordered)和數(shù)據(jù)(data)。
在回寫模式 中,僅有元數(shù)據(jù)被記錄到日志,數(shù)據(jù)塊則被直接寫入到磁盤位置上。這樣可以保存文件系統(tǒng)結(jié)構(gòu),防止崩潰,但卻有可能發(fā)生數(shù)據(jù)崩潰(比如:在元數(shù)據(jù)記錄到日志后,數(shù)據(jù)塊寫入磁盤前,系統(tǒng)崩潰)。要想解決這個問題,您可以使用預(yù)定模式。預(yù)定模式 只將元數(shù)據(jù)記錄到日志,但是在此之前將數(shù)據(jù)寫入到磁盤。這樣就可以保證系統(tǒng)恢復(fù)后數(shù)據(jù)和文件系統(tǒng)的一致性。最后一種模式將數(shù)據(jù)也記錄到了日志中。在數(shù)據(jù)模式 中,元數(shù)據(jù)和數(shù)據(jù)都被記錄到日志中。這種模式可以最大限度地防止文件系統(tǒng)崩潰與數(shù)據(jù)丟失,但由于全部數(shù)據(jù)都寫入了兩次(先寫入日志,再寫入磁盤),系統(tǒng)性能可能會降低。
日志的提交也有很多種不同的策略。比如,是在日志將滿時,還是在超時后?
定義日志文件系統(tǒng)的方法有很多種,但是讓我們抓住要點。日志文件系統(tǒng)就是專為那些厭倦了一直盯著啟動時 fsck(即文件系統(tǒng)一致性檢查)的人而設(shè)計的(日志文件系統(tǒng)同樣適用于希望文件系統(tǒng)具有故障恢復(fù)能力的群體)。如果系統(tǒng)采用傳統(tǒng)的未提供日志功能的文件系統(tǒng),那么操作系統(tǒng)在檢測到系統(tǒng)為非正常關(guān)機時,會使用 fsck 應(yīng)用程序執(zhí)行一致性檢驗。該應(yīng)用程序會掃描文件系統(tǒng)(這要花費很長的時間),并修復(fù)任何可安全修復(fù)的問題。而在某些情況下,當(dāng)文件系統(tǒng)損壞嚴(yán)重時,操作系統(tǒng)會啟動到單用戶模式,由用戶進行進一步的修復(fù)。
那么現(xiàn)在您應(yīng)該清楚日志文件系統(tǒng)針對的是哪類人群了,但是他們是如何取締 fsck 的呢?籠統(tǒng)地說,日志文件系統(tǒng)就是通過維護一份日志來防止文件系統(tǒng)崩潰。所謂日志就是一種特殊的文件,它會在一個循環(huán)的緩沖區(qū)內(nèi)記錄文件系統(tǒng)的修改,然后 將其定期提交到文件系統(tǒng)。一旦系統(tǒng)發(fā)生崩潰,日志文件就會起到一個檢查點的作用,用于恢復(fù)未保存的信息,防止損壞文件系統(tǒng)元數(shù)據(jù)。
總之,日志文件系統(tǒng)就是一種具有故障恢復(fù)能力的文件系統(tǒng),它利用日志來記錄尚未提交到文件系統(tǒng)的修改,以防止元數(shù)據(jù)破壞(請參見圖 1)。但是如眾多其他 Linux 解決方案一樣,日志文件系統(tǒng)有多種方案供您選擇。下面就讓我們一起簡短回顧一下日志文件系統(tǒng)的歷史,然后再看一看現(xiàn)行的幾種文件系統(tǒng),看看它們之間有什么 區(qū)別。//本文轉(zhuǎn)自www.45it.com電腦軟硬件應(yīng)用網(wǎng)

圖 1. 典型的日志文件系統(tǒng)
Linux 日志文件系統(tǒng)的歷史
最早的日志文件系統(tǒng)是 IBM-Journaled File System(JFS)。JFS 于 1990 年首次發(fā)行,而當(dāng)前 Linux 支持的版本是后期開發(fā)的 JFS2。1994 年,Silicon Graphics 為 IRIX 操作系統(tǒng)引進了高性能的 XFS。XFS 于 2001 年被植入 Linux 系統(tǒng)中。1998 年開發(fā)的智能文件系統(tǒng)(SFS)起初是為 Amiga 開發(fā)的,但之后卻在 GNU Lesser General Public License(LGPL)下發(fā)行,并于 2005 年獲得了 Linux 的支持。最常用的日志文件系統(tǒng) ext3fs(third extended file system)是 ext2 的擴展,它增加了記錄日志的功能。從 2001 年起,Linux 系統(tǒng)中就開始支持 ext3fs。最終,ReiserFS 日志文件系統(tǒng)在其被引入之后,力壓群雄,被廣泛使用。但由于其原開發(fā)者的一些法律糾紛,ReiserFS 日志文件系統(tǒng)未能得到進一步的發(fā)展。
日志的幾種變體
日志文件系統(tǒng)是使用日志來緩沖文件系統(tǒng)的修改(同時也可以應(yīng)用于緊急故障恢復(fù))的,但可以根據(jù)記錄的時間與內(nèi)容采取不同的策略。其中,三種常見的策略為:回寫(writeback)、預(yù)定(ordered)和數(shù)據(jù)(data)。
在回寫模式 中,僅有元數(shù)據(jù)被記錄到日志,數(shù)據(jù)塊則被直接寫入到磁盤位置上。這樣可以保存文件系統(tǒng)結(jié)構(gòu),防止崩潰,但卻有可能發(fā)生數(shù)據(jù)崩潰(比如:在元數(shù)據(jù)記錄到日志后,數(shù)據(jù)塊寫入磁盤前,系統(tǒng)崩潰)。要想解決這個問題,您可以使用預(yù)定模式。預(yù)定模式 只將元數(shù)據(jù)記錄到日志,但是在此之前將數(shù)據(jù)寫入到磁盤。這樣就可以保證系統(tǒng)恢復(fù)后數(shù)據(jù)和文件系統(tǒng)的一致性。最后一種模式將數(shù)據(jù)也記錄到了日志中。在數(shù)據(jù)模式 中,元數(shù)據(jù)和數(shù)據(jù)都被記錄到日志中。這種模式可以最大限度地防止文件系統(tǒng)崩潰與數(shù)據(jù)丟失,但由于全部數(shù)據(jù)都寫入了兩次(先寫入日志,再寫入磁盤),系統(tǒng)性能可能會降低。
日志的提交也有很多種不同的策略。比如,是在日志將滿時,還是在超時后?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式Linux系統(tǒng)移植-(Linux文件系統(tǒng))
- 嵌入式Linux開發(fā)之文件系統(tǒng)目錄結(jié)構(gòu)介紹
- linux文件系統(tǒng)基礎(chǔ) 0次下載
- Linux.文件系統(tǒng)的精通指南 7次下載
- 《Linux設(shè)備驅(qū)動開發(fā)詳解》第5章、Linux文件系統(tǒng)與設(shè)備文件系統(tǒng) 0次下載
- 分析YAFFS文件系統(tǒng)在Linux系統(tǒng)中的構(gòu)建 0次下載
- 細(xì)數(shù)那些流行的 Linux 文件系統(tǒng) 0次下載
- 嵌入式開發(fā)板無界面linux文件系統(tǒng)的制作 12次下載
- Linux虛擬文件系統(tǒng)實現(xiàn)技術(shù)探討 32次下載
- 嵌入式Linux文件系統(tǒng)的研究與應(yīng)用
- 構(gòu)造嵌入式Linux的文件系統(tǒng)
- 用Busybox制作嵌入式Linux根文件系統(tǒng)
- 適合嵌入式Linux應(yīng)用的文件系統(tǒng)—— JFFS
- 適合嵌入式Linux應(yīng)用的文件系統(tǒng)—— JFFS
- Linux文件系統(tǒng)課程 0次下載
- 如何更改Linux文件系統(tǒng)終端顯示顏色 642次閱讀
- 事務(wù)性日志結(jié)構(gòu)文件系統(tǒng)的設(shè)計及實現(xiàn) 770次閱讀
- Linux 文件系統(tǒng)層的主要結(jié)構(gòu) 1034次閱讀
- 解析Linux系統(tǒng)日志 1658次閱讀
- 深入剖析Linux文件系統(tǒng)的架構(gòu) 1068次閱讀
- Linux文件系統(tǒng)的類型及工作原理 650次閱讀
- 深入剖析Linux內(nèi)核虛擬文件系統(tǒng) 3108次閱讀
- 基于Buildroot的Linux系統(tǒng)構(gòu)建之根文件系統(tǒng) 2620次閱讀
- 如何區(qū)別Linux文件系統(tǒng)呢? 3720次閱讀
- 了解Linux默認(rèn)文件系統(tǒng)的發(fā)展歷史 6507次閱讀
- 快速了解Linux文件系統(tǒng) 3702次閱讀
- 文件系統(tǒng)是什么?淺談EXT文件系統(tǒng)歷史 5723次閱讀
- 玩轉(zhuǎn)Linux,先把文件系統(tǒng)搞懂 2083次閱讀
- 制作ZedBoard上linux根文件系統(tǒng)(ramdisk) 1603次閱讀
- 基于zynq的Linux根文件系統(tǒng)生成 5841次閱讀
下載排行
本周
- 1EMC電路設(shè)計工程師必備的EMC基礎(chǔ)
- 0.42 MB | 4次下載 | 2 積分
- 2AU3116 2×60W模擬輸入雙通道Class-D 音頻功率放大器數(shù)據(jù)手冊
- 1.19 MB | 1次下載 | 免費
- 3低壓降肖特基整流管SR340L數(shù)據(jù)手冊
- 0.78 MB | 1次下載 | 免費
- 4ZX8002E 觸摸調(diào)光LED集成IC數(shù)據(jù)手冊
- 2.27 MB | 次下載 | 免費
- 5SOD-323塑料封裝ESD保護二極管SD05T系列規(guī)格書
- 1.07 MB | 次下載 | 免費
- 6SOT-23塑料封裝ESD保護二極管SMxx Series系列規(guī)格書
- 0.93 MB | 次下載 | 免費
- 7高效率整流二極管HER151 THRU HER158數(shù)據(jù)手冊
- 0.54 MB | 次下載 | 免費
- 8低壓降肖特基整流管SL22 THRU SL210數(shù)據(jù)手冊
- 1.03 MB | 次下載 | 免費
本月
- 1三相逆變主電路的原理圖和PCB資料合集免費下載
- 27.35 MB | 111次下載 | 1 積分
- 2運算放大器基本電路中文資料
- 1.30 MB | 16次下載 | 免費
- 3蘋果iphone 11電路原理圖
- 4.98 MB | 11次下載 | 5 積分
- 4TL494工業(yè)用開關(guān)電源原理圖資料
- 0.22 MB | 10次下載 | 1 積分
- 5常用電子元器件介紹
- 3.21 MB | 8次下載 | 免費
- 6QW2893應(yīng)急燈專用檢測芯片
- 590.40 KB | 4次下載 | 免費
- 7相關(guān)協(xié)議信號總結(jié)
- 0.94 MB | 4次下載 | 免費
- 8EMC電路設(shè)計工程師必備的EMC基礎(chǔ)
- 0.42 MB | 4次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935130次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183344次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81591次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論