相信搞軟體開發的同學對文件系統都有一定的瞭解,即使不是做軟體開發工作的同學對文件系統也有感性的認識。其實回憶一下,無論是Linux操作系統也好,還是Windows或者Mac也好,在我們普通用戶的視角看到的其實就是一個個文件。比如電影是用視頻文件存儲,也就是表示某種視頻格式的文件;音樂是用音頻文件存儲的,像mp3、wave和midi等等格式;圖像是用圖片文件格式存儲的,像png、jpg和bmp等等。雖然文件中的內容和存儲格式不同,但其原理都是一樣的,都依賴於文件系統。
我們知道文件系統是位於磁碟之上的,但具體什麼原理可能不清楚。也沒考慮過為什麼不直接使用磁碟。我們先看一下磁碟的結構,磁碟內部如圖1所示,其內部有若干個碟片,數據存儲在磁碟的碟片上。而碟片又劃分為磁軌和扇區,具體細節本文就不深入分析了。