檔案系統(一)

2021-05-02 16:05:53 字數 559 閱讀 8002

又是檔案系統。前面已經提到過一次檔案系統的實現了,為什麼這裡還要再介紹一邊檔案系統呢?原因是前面介紹的檔案系統訪問比較簡單,僅僅是讀取固定的幾個檔案。而這裡,為了保證裝載器的靈活性,這裡的檔案系統設計複雜多了。而且由於是c++實現,**可讀性也提高了。以後在核心中,我們還需要處理一次檔案系統,那是作業系統中正式使用的檔案系統。這裡我們先來看乙個相對簡單的實現。

上圖中,我們看到這裡一共有三個介面。ifilesystem代表乙個檔案系統,fat16類從這裡繼承。同時fat16類裡面包含有乙個塊裝置,檔案系統就建立在這個塊裝置上。ifilesystem介面只有乙個方法,那就是取根目錄

檔案系統中的目錄被抽象成idirectory介面,這個介面有3個方法。分別是取目錄名,列舉子目錄,和列舉檔案

最後ifile代表乙個檔案,在其上我們要實現讀檔案的介面。由於rmosldr中不需要進行檔案寫操作,所以我們也不會實現寫檔案操作。

在ifilesystem,idirectory和ifile三個介面下面,我們可以為每種檔案系統建立乙個實現。在最前面的圖中,我們看到這裡我們會為fat16檔案系統設計乙個實現。我們將從下節開始介紹這個實現。

檔案系統(一)

檔案系統占得 比較多,我們將從提供給使用者的api開始逐步進入核心,順藤摸瓜!最終獲取檔案系統的抽象 裝置的組織。裝置號 系統所含的裝置如下 與minix 系統的一樣,所以我們可以使用minix 的 檔案系統。以下這些是主裝置號。0 沒有用到 nodev 1 dev mem 記憶體裝置。2 dev ...

檔案系統(一)

檔案系統 檔案系統是某些作業系統必然包含的模組,對系統中儲存介質的訪問以統一的系統介面進行管理,完成read write ioctl等操作 1 分類 按實現分類 傳統的單機版的檔案系統和網路分布式的檔案系統。分布式檔案系統通常應用網路技術和協議,將分散的各個資料資源進行統一管理的系統形式。嵌入式作業...

檔案系統 一

一.檔案系統型別 ext2,ext3 帶日誌 nfs sun,網路檔案系統 msdos,vfat,ntfs,proc 虛擬的程序檔案系統 iso9660 光碟 ufs sun os xfs 目前最好的檔案系統 reiserfs 平衡樹 二.相關指令 1.mount unmount 掛載檔案系統 mo...