複製鏈接
請複製以下鏈接發送給好友

MINIX文件系統

鎖定
MINIX文件系統(英語:MINIX file system),一種文件系統,是MINIX操作系統中的原生文件系統。
中文名
MINIX文件系統
外文名
MINIX file system
性    質
文件系統
領    域
計算機

MINIX文件系統簡介

安德魯·斯圖爾特·塔能鮑姆於1980年代創作,於1987年伴隨着Minix 1.0版一同釋出。它源自於Unix文件系統的基本結構,為了使源代碼簡潔,以方便教學,許多複雜的功能都沒有在這個文件系統中實作,但這也使得它的效能與功能受限。林納斯·託瓦茲在1991年創作Linux核心時,最初採用了Minix文件系統,直到1992年4月,才以延伸文件系統來取代它。 [1] 

MINIX文件系統設計與實現

一個MINIX文件系統由6個組成部分:
  • 引導塊是總是存儲在第一個塊。在系統啓動時,它包含了引導加載程序的加載和運行一個操作系統。
  • 第二個塊是超塊,它是存儲有關文件系統,即允許操作系統來定位和理解其它文件系統結構數據。例如,數i節點和區,兩個位圖的大小和的起始塊的數據區。
  • 該索引節點位圖是一個簡單的地圖索引節點跟蹤哪些是在使用中,哪些是免費的通過代表他們的任何一個(使用時)或零(免費)。
  • 該區域的位圖的工作原理相同的方式作為索引節點位圖,除了它跟蹤的區域。
  • 該索引節點區域。每個文件或目錄被表示為一個inode,它記錄元數據,包括類型(文件,目錄,塊炭,管道),標識為用户和組,三時間戳記錄的日期和上次訪問時間,最後修改和最後的狀態改變。一個inode還包含指向該區域中的地址的列表的數據區所在的文件或目錄的實際存儲數據。
  • 該數據區是在文件系統的最大組成部分,使用大部分空間。它是在實際的文件和目錄的數據被存儲。 [2] 

MINIX文件系統文件系統

計算機文件系統是一種存儲和組織計算機數據的方法,它使得對其訪問和查找變得容易,文件系統使用文件樹形目錄的抽象邏輯概念代替了硬盤和光盤等物理設備使用數據塊的概念,用户使用文件系統來保存數據不必關心數據實際保存在硬盤(或者光盤)的地址為多少的數據塊上,只需要記住這個文件的所屬目錄和文件名。在寫入新數據之前,用户不必關心硬盤上的那個塊地址沒有被使用,硬盤上的存儲空間管理(分配和釋放)功能由文件系統自動完成,用户只需要記住數據被寫入到了哪個文件中。
文件系統通常使用硬盤和光盤這樣的存儲設備,並維護文件在設備中的物理位置。但是,實際上文件系統也可能僅僅是一種訪問數據的界面而已,實際的數據是通過網絡協議(如NFSSMB9P等)提供的或者內存上,甚至可能根本沒有對應的文件(如proc文件系統)。
嚴格地説,文件系統是一套實現了數據的存儲、分級組織、訪問和獲取等操作的抽象數據類型(Abstract data type)。 [2] 

MINIX文件系統MINIX

Minix,是一個迷你版本的類Unix操作系統,由塔能鮑姆教授為了教學之用而創作,採用微核心設計。它啓發了Linux核心的創作。
它的名稱取自英語:Mini UNIX的縮寫。與Xinu、Idris、Coherent和Uniflex等類Unix操作系統類似,派生自Version 7 Unix,但並沒有使用任何AT&T的代碼。第一版於1987年發佈,只需要購買它的磁片,就提供完整的源代碼給大學系所與學生,做為授課及學習之用。2000年4月,重新以BSD許可協議發佈,成為開放源代碼軟件。
全套Minix除了啓動的部分以彙編語言編寫以外,其他大部分都是純粹用C語言編寫。分為:核心存儲器管理文件系統三部分。
Minix在設計之初,為了使程序簡化,它將程序模塊化,如文件系統存儲器管理,都不是在操作系統核心中運作,而是在用户空間運作。至Minix 3時,連IO設備都被移到用户空間運作。
另一個特點,則是Minix主要目的是用於教學,因此代碼撰寫上極力重視簡潔與可讀性。 [1] 
參考資料
  • 1.    Tanenbaum, Andrew S; Albert S. Woodhull. Operating Systems: Design and Implementation 3rd. Prentice Hall. 14 January 2006.
  • 2.    Giampaolo, Dominic. Practical File System Design with the Be File System (PDF). Morgan Kaufmann. 1999.