更新時間:2020-12-15 17:49:47 來源:動力節點 瀏覽1438次
我們知道文件系統是位于磁盤之上的,那么為什么Linux系統不直接從磁盤上讀寫數據,而選擇使用文件系統呢?本文我們就來為大家揭秘為什么使用Linux文件系統。
首先,如果我們從磁盤上讀寫數據,從感官上應該是比較復雜的。我們需要知道在哪個盤片上,然后需要知道在盤片的什么位置,然后才能讀取或者寫入數據。實際上不用那么復雜,磁盤的控制器已經替我們做了很多事情,它對這些內部的結構進行了統一管理,呈現給我們的只是一個線性的地址。比如一個1T的硬盤,其呈現給我們的就是從0字節開始,以1字節遞增,直到1TB的地址空間。當然,機械磁盤可進行讀寫的最小粒度為1個扇區(512字節)。
既然可以這么方便的訪問磁盤空間了,那為什么還要使用linux文件系統呢?主要原因有如下三點:
1.便于磁盤空間管理
我們不考慮存儲操作系統的磁盤,即使是存放普通數據(例如放電影視頻文件)的磁盤,如果沒有文件系統會是什么樣子。
比如我們把音樂放到0到1GB的空間,電影放到1G到3G的空間。但是,我們還得找個地方記住這些音樂和電影的存儲起始位置和長度這些信息,否則我們就找不到我們想要的音樂和電影了。
而如果有了文件系統之后(格式化后)呢?我們只需要建立文件夾(當然也可以不創建),讓文件拷貝到里面就行了。我們根本不用考慮磁盤上的數據是怎么管理的。
2.方便數據的組織和查找
先感受一下在Linux操作系統下文件的組織形式,通常是一個樹狀的結構。也就是磁盤被格式化后通常用戶會創建若干個文件夾,然后在文件夾中再創建文件夾或者存儲文件。
比如我們用一個磁盤來專門存儲數據,格式化之后我們創建若干個文件夾,分別是“電影”、“音樂”、“照片”和“電子書”等。然后在電子書里面有分別創建“Linux”、“編程語言”、“歷史”和“小說”等等。這樣我們將所有數據組織成非常有條理的樹形結構。
3.提高磁盤空間的使用率
如前文所說,如果沒有文件系統,不需要的文件的空間再利用就會非常麻煩。有可能這塊空間的大小是1G或者1M,而新數據的大小是2G。那這個空間就無法使用。頻繁的釋放和使用空間之后,可能會留下很多小空間(空洞),而無法被使用,這樣就造成磁盤空間的極大浪費。
使用文件系統之后,文件系統會將磁盤空間切割為比較小的存儲單元(例如4K或者8K等)進行管理。如果出現釋放空間產生空洞的情況,文件系統內部會進行空洞和數據的交換,從而生成比較大塊的可用磁盤空間。這樣從整體來說就極大地提升了磁盤的整理使用率。
目前在Linux操作系統中支持很多種文件系統,包括Ext2、Ext4、Btrfs和XFS等,多達幾十個文件系統。從某種程度上極大地豐富了Linux系統文件系統,滿足了各種用戶的需求。想要體驗各種風格的Linux文件系統,可以在本站的Linux教程中下載使用。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習