atitit.ntfs ext 文件系統新特性對比 1. 現代文件系統應該有的特性2 1.1. 恢復Log2 1.2. 壓縮2 1.3. Meta ext2 1.4. Fulltextཟsearch 全文2 1.5. Copy 校驗2 1.6. 稀疏文件,這是UNIX類和NTFS等文件系統的一個特性
atitit.ntfs ext 文件系統新特性對比
1.6. 稀疏文件,這是UNIX類和NTFS等文件系統的一個特性。2
2.1. EXT2第二代擴展文件系統(英語:second extended filesystem,縮寫為 ext2)3
6.4. NTFS 有五個正式發佈的版本: v3.1 來自 Windows XP(2001 年,有時稱作“NTFS 5.1”)8
1. 現代文件系統應該有的特性
1.1. 恢復Log
1.2. 壓縮
1.3. Meta ext
1.4. Fulltextཟsearch 全文
1.5. Copy 校驗
1.6. 稀疏文件,這是UNIX類和NTFS等文件系統的一個特性。
開始時,一個稀疏文件不包含用戶數據,也沒有分配到用來存儲用戶數據的磁碟空間。當數據被寫入稀疏文件時,NTFS逐漸地為其分配磁碟空間。
如果這些空餘空間被ASCII碼的NULL字元占據,並且這些空間相當大,那麼,這個文件就被稱為稀疏文件,而且,並不分配相應的磁碟塊。
這樣,會產生一個問題,文件已被創建了,但相應的磁碟空間並未被分配,只有在有真正的數據插入進來時,才會被分配磁碟塊,如果這時文件系統被占滿了,那麼對該文件的寫操作就會失敗。為防止這種情況,有兩種辦法:不產生稀疏文件或為稀疏文件留夠空間。
在電腦科學方面,稀疏文件是文件系統中的一種文件存儲方式,在創建一個文件的時候,就預先分配了文件需要的連續存儲空間,其空間內部大多都還未被數據填充現在有很多文件系統都支持稀疏文件,包括大部分的Unix和NTFS 。
稀疏文件被普遍用來磁碟圖像,資料庫快照,日誌文件,還有其他科學運用上。
作者:: 綽號:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿爾 拉帕努伊 ) 漢字名:艾龍, EMAIL:[email protected]
轉載請註明來源: http://www.cnblogs.com/attilax/
2. Ext2 特性
2.1. EXT2第二代擴展文件系統(英語:second extended filesystem,縮寫為 ext2)
,是LINUX內核所用的文件系統。它開始由Rémy Card設計,用以代替ext,於1993年1月加入linux核心支持之中。ext2 的經典實現為LINUX內核中的ext2fs文件系統驅動,最大可支持2TB的文件系統,
1、當創建Ext2文件系統時,系統管理員可以根據預期的文件平均長度來選擇最佳的塊大小(從1024B——4096B)。例如,當文件的平均長度小於幾千位元組時,塊的大小為1024B是最佳的,因為這會產生較少的內部碎片——也就是文件長度與存放塊的磁碟分區有較少的不匹配。另一方面,大的塊對於 大於幾千位元組的文件通常比較合合適,因為這樣的磁碟傳送較少,因而減輕了系統的開銷[1] 。
2、當創建Ext2文件系統時,系統管理員可以根據在給定大小的分區上預計存放的文件數來選擇給該分區分配多少個索引節點。這可以有效地利用磁碟的空間。
3、文件系統把磁碟塊分為組。每組包含存放在相鄰磁軌上的數據塊和索引節點。正是這種結構,使得可以用較少的磁碟平均尋道時間對存放在一個單獨塊組中的文件並行訪問。
4、在磁碟數據塊被實際使用之前,文件系統就把這些塊預分配給普通文件。因此當文件的大小增加時,因為物理上相鄰的幾個塊已被保留,這就減少了文件的碎片。
5、支持快速符號鏈接。如果符號鏈接表示一個短路徑名(小於或等於60個字元),就把它存放在索引節點中而不用通過由一個數據塊進行轉換。
1、文件更新策略的謹慎實現將系統崩潰的影響減到最少。我們只舉一個例子來體現這個優點:例如,當給文件創建一個硬鏈接時,首先增加磁碟索引節點中 的硬鏈接計數器,然後把這個新的名字加到合適的目錄中。在這種方式下,如果在更新索引節點後而改變這個目錄之前出現一個硬體故障,這樣即使索引節點的計數 器產生錯誤,但目錄是一致的。因此,儘管刪除文件時無法自動收迴文件的數據塊,但並不導致災難性的後果
2、在啟動時支持對文件系統的狀態進行自動的一致性檢查。這種檢查是由外部程式e2fsck完成的,
3. Ext3 特性
ext3文件系統增加的超越其前代的包括:
3.1. · 日誌
· 位目錄跨越多個塊提供基於樹的目錄索引
· 線上系統增長
如果沒有這些,ext3文件系統也同時是個有效的ext2文件系統。這樣,經過良好測試的、成熟的文件系統工具來管理和修複ext2文件系統工具,可以無需大的變動,就應用於ext3文件系統。ext2和ext3文件系統共用相同的工具集,帶有fsck工具的e2fsprogs。這種緊密的聯繫也將兩種文件系統之間進行轉換(包括升級到ext3和降級為ext2)變得非常容易。
3.2. 數據的完整性
4. ext4文件系統的特點編輯
4.0.1. 更大的文件系統和更大的文件
Ext3文件系統最多只能支持32TB的文件系統和2TB的文件,根據使用的具體架構和系統設置,實際容量上限可能比這個數字還要低,即只能容納2TB的文件系統和16GB的文件。而Ext4的文件系統容量達到1EB,而文件容量則達到16TB,這是一個非常大的數字了。對一般的台式機和伺服器而言,這可能並不重要,但對於大型磁碟陣列的用戶而言,這就非常重要了。
4.0.2. 更多的子目錄數量
Ext3目前只支持32000個子目錄,而Ext4取消了這一限制,理論上支持無限數量的子目錄。
4.0.3. 更多的塊和i-節點數量
Ext3文件系統使用32位空間記錄塊數量和i-節點數量,而Ext4文件系統將它們擴充到64位。
4.0.4. 多塊分配
當數據寫入到Ext3文件系統中時,Ext3的數據塊分配器每次只能分配一個4KB的塊,如果寫一個100MB的文件就要調用25600次數據塊分配器,而Ext4的多塊分配器“Multiblock Allocator(MBAlloc)”支持一次調用分配多個數據塊。
4.0.5. 持久性預分配
如果一個應用程式需要在實際使用磁碟空間之前對它進行分配,大部分文件系統都是通過向未使用的磁碟空間寫入0來實現分配,比如P2P軟體。為了保證下載文件有足夠的空間存放,常常會預先創建一個與所下載文件大小相同的空文件,以免未來的數小時或數天之內磁碟空間不足導致下載失敗。而Ext4在文件系統層面實現了持久預分配並提供相應的API,比應用軟體自己實現更有效率。
4.0.6. 延遲分配
Ext3的數據塊分配策略是儘快分配,而Ext4的策略是儘可能地延遲分配,直到文件在緩衝中寫完才開始分配數據塊並寫入磁碟,這樣就能優化整個文件的數據塊分配,顯著提升性能。
4.0.7. 盤區結構
Ext3文件系統採用間接映射地址,當操作大文件時,效率極其低下。例如,一個100MB大小的文件,在Ext3中要建立25600個數據塊(以每個數據塊大小為4KB為例)的映射表;而Ext4引入了盤區概念,每個盤區為一組連續的數據塊,上述文件可以通過盤區的方式表示為“該文件數據保存在接下來的25600個數據塊中”,提高了訪問效率。
4.0.8. 新的i-節點結構
Ext4支持更大的i-節點。之前的Ext3預設的i-節點大小128位元組,Ext4為了在i-節點中容納更多的擴展屬性,預設i-節點大小為256位元組。另外,Ext4還支持快速擴展屬性和i-節點保留。
4.0.9. 日誌校驗功能
日誌是文件系統最常用的結構,日誌也很容易損壞,而從損壞的日誌中恢複數據會導致更多的數據損壞。Ext4給日誌數據添加了校驗功能,日誌校驗功能可以很方便地判斷日誌數據是否損壞。而且Ext4將Ext3的兩階段日誌機制合併成一個階段,在增加安全性的同時提高了性能[1] 。
4.0.10. 支持“無日誌”模式
日誌總歸會占用一些開銷。Ext4允許關閉日誌,以便某些有特殊需求的用戶可以藉此提升性能。
4.0.11. 預設啟用Barrier
磁碟上配有內部緩存,以便重新調整批量數據的寫操作順序,優化寫入性能,因此文件系統必須在日誌數據寫入磁碟之後才能寫Commit記錄。若Commit記錄寫入在先,而日誌有可能損壞,那麼就會影響數據完整性。Ext4文件系統預設啟用Barrier,只有當Barrier之前的數據全部寫入磁碟,才能寫Barrier之後的數據。
4.0.12. 線上碎片整理
儘管延遲分配、多塊分配和盤區功能可以有效減少文件的碎片,但碎片還是不可避免會產生。Ext4支持線上碎片整理,並將提供e4defrag工具進行個別文件或整個文件系統的碎片整理。
4.0.13. 支持快速fsck
以前的文件系統版本執行fsck時很慢,因為它要檢查所有的i-節點,而Ext4給每個塊組的i-節點表中都添加了一份未使用i-節點的列表,所以Ext4文件系統做一致性檢查時就可以跳過它們而只去檢查哪些在使用的i-節點,從而提高了速度。
4.0.14. 支持納秒級時間戳
Ext4之前的擴展文件系統的時間戳都是以秒為單位的,這已經能夠應付大多數設置,但隨著處理器的速度和集成程度(多核處理器)不斷提升,以及Linux開始向其他應用領域發展,它將時間戳的單位提升到納秒。
Ext4給時間範圍增加了兩個位,從而讓時間壽命在延長500年,Ext4的時間戳支持的日期到2514年4月25日,而Ext3只達到2038年1月18日。
5. 計劃的ext特性
邏輯刪除
透明地處理壓縮和加密文件
undelete選項將允許用戶在必要時很容易恢復以前已刪除的文件內容。
恢復日誌 Ext2中缺少的最突出的功能就是日誌,日誌是高可用伺服器必需的功能。
日誌避免文件系統在被突然卸載(例如,作為系統崩潰的後果)時對其自動進行的耗時檢查。
儘管ext3缺少一些當代文件系統的特點,像是動態的inode、樹狀的資料儲放結構等等,都是被視作ext3的缺點之
5.0.1. 反刪除
和ext2不同,ext3會在刪除文件時把文件的節點(inode)中的塊指標清除。這樣做可以在unclean載入文件系統後,重放日誌時,可以減少對文件系統的訪問。但也同樣也增加了文件在反刪除上面的困難
Ext3不支持透明壓縮(Ext2以非官方補丁支持)。
5.0.2. 日誌中沒有校驗和
6. Ntfs 特性
6.1. 支持元數據
NTFS對FAT和HPFS作了若幹改進,例如,支持元數據,並且使用了高級數據結構,以便於改善性能、可靠性和磁碟空間利用率,並提供了若幹附加擴展功能。
6.2. 跨文件存儲,在多個硬碟上存儲文件(稱為捲)
6.3. 支持磁碟限額
6.4. NTFS 有五個正式發佈的版本: v3.1 來自 Windows XP(2001 年,有時稱作“NTFS 5.1”)
例如,一個大公司的資料庫可能大得必須跨越不同的硬碟。
NTFS 有五個正式發佈的版本:
v1.0,隨 NT 3.1 一起發佈,發佈於 1993 年中旬
v1.1,隨 NT 3.5 一起發佈,發佈於 1994 年秋季
v1.2,由 NT 3.51(1995 年中旬)和 NT 4(1996 年中旬)提供(有時候也被稱為“NTFS 4.0”,因為操作系統版本是 4.0)
v3.0 來自 Windows 2000(有時稱作“NTFS 5.0”)
v3.1 來自 Windows XP(2001 年,有時稱作“NTFS 5.1”),Windows Server 2003(2003 年春季,有時稱作“NTFS 5.2”), Windows Vista(2005 年中旬,有時稱作“NTFS 6.0”),Windows Server 2008(2008 年初),Windows Server 2008 R2(有時稱作“NTFS 6.1”)以及 Windows 7。
V1.0 和 V1.1 以及所有以後版本不相容,也就是說,使用 NT 3.5x 寫入的捲無法被 NT 3.1 讀取,除非使用 NT 3.5x 光碟更新 NT 3.1,並添加對 FAT 系統的長文件名支持。V1.2 支持壓縮文件、命名流、基於 ACL(訪問控制列表)的安全性等功能。
V3.0 支持磁碟限額、加密、稀疏文件、重解析點,更新串列數(USN)日誌、$Extend文件夾以及其中的文件,並改進了安全描述符,以便於使用相同安全設置的多個文件共用一個安全描述符。
V3.1 使用冗餘MFT 記錄數(用於恢復受損的 MFT文件)擴展了主文件表(MFT)項。
Windows Vista提供了事務&n