檔案系統mount的過程

2021-04-12 20:06:54 字數 1003 閱讀 8488

把自己以前對 檔案系統mount的過程 的理解貼出來,下面肯定有很多錯誤,希望高手多多指教啊。

假如你的系統只有c盤,當你插入行動硬碟,系統會接到通知,由mountmgr.sys來建立d盤,並由物件管理器來建立符號連線/??/d:,被ftdisk解析為/device/harddiskvolume2,由file_object的deviceobject來對應,如果有多個partion,就再建立乙個e盤等,例如,當你來訪問d:/temp/test.txt,由object manager解析driver letter(d:),被解析為/device/harddiskvolume2,還有temp/test.txt沒有解析,這個時候需要i/o manager來檢視/device/harddiskvolume2裝置的vpb,發現vpb為空, i/o manager 會詢問註冊了的檔案系統,看他們是否識別這個partion格式,檔案系統會讀boot record看是否是自己識別的格式,如果有檔案系統識別,會告訴 i/o manager,這個時候vpb由 i/o manager 來填充,然後把這個訪問irp導向這個檔案系統,如果當前沒有檔案系統識別,i/o manager 會載入raw檔案系統,訪問irp也導向這個檔案系統,但是這個檔案系統對這個irp只是返回錯誤,為了不讓每個檔案系統都載入進來,可以節約空間,我們需要乙個檔案系統fs_rec.sys,來識別大多數windows下儲存檔案(partion)格式,檔案系統結構就變成以下這樣了,i/o manager 只會詢問fs_rec.sys,來識別partion格式,檔案識別就不會詢問檔案系統了,相當裝了乙個路由,系統啟動的時候會載入 fs_rec.sys,當第一次訪問乙個partion時,fs_rec.sys會載入相應的驅動,然後把mount請求傳送到這個檔案系統,並做記錄,如果再插入的行動硬碟是這個格式的,就不會載入驅動了,前面做記錄了,這個時候就直接把mount請求發給這個檔案系統,讓檔案系統來建立乙個裝置,由io 管理器來填充vpb。

ps: d:這個符號是由物件管理器來解析的,temp/test.txt這個是由檔案系統來解析的,是檔案的組織結構

看完後,左邊的廣告,謝謝!!

mount與檔案系統

檔案系統是對乙個儲存裝置上的資料和元資料進行組織的機制。由於定義如此寬泛,支援它的 會很有意思。正如前面提到的,有許多種檔案系統和 由於存 在這麼多型別,可以預料到 linux 檔案系統介面實現為分層的體系結構,從而將使用者介面層 檔案系統實現和操作儲存裝置的驅動程式分隔開。在 linux 中將乙個...

Linux遠端mount檔案系統

nfs network file system,網路檔案系統 可以通過網路將分享不同主機 不同的os 的目錄 可以通過nfs掛載遠端主機的目錄,訪問該目錄就像訪問本地目錄一樣 一般而言,使用nfs能夠方便地使各unix like系統之間實現共享.但如果需要在unix like和windows系統之間...

Linux指令篇 檔案系統 mount

名稱 mount 使用許可權 系統管理者或 etc fstab中允許的使用者 使用方式 mount mount a mount device dir mount device dir 說明 將某個檔案的內容解讀成檔案系統,然後將其掛在目錄的某個位置之上。當這個命令執行成功後,直到我們使用 umnou...