1、文件系統是操作系統中管理和存取文件的軟件機構,由負責文件操作和管理的程序模塊、所需的數據結構、以及訪問文件的一組操作組成
2、功能:
用戶:實現“按名存取”的功能
系統:構造文件結構、提供存取文件的方法、提供文件共享功能、文件保護、輔存空間管理、提供一組文件操作命令
3、文件的邏輯結構:
流式文件(無結構):流式文件是按信息的個數或以特殊字符爲界進行存取的;
記錄式文件(有結構的文件):定長記錄、變長記錄(需要一個字節記錄記錄的大小)
4、文件存取方法:順序存取、任意存取(要指出起始存取位置(例如記錄號))
5、物理結構:
連續文件:由一組分配在磁盤連續區域的物理塊組成的。
特點:速度快、長度一經固定不易改變、增生和擴充不易
串聯文件:串聯文件結構是按順序由串聯的塊組成的,即文件的信息存於若干塊物理塊中,每個物理塊的最末一個字作爲鏈接字,它指出後繼塊的物理地址。文件的最後一塊的鏈接字爲結束標記“∧”,它表示文件至本塊結束。
特點:較好地利用輔存、易於文件進行擴充和增生、連續存儲時速度較快
索引文件:系統爲每個文件建立邏輯塊號與物理塊號的對照表。這張表稱爲該文件的索引表。文件由數據文件和索引表構成。這種文件稱爲索引文件。
特點:易於文件的增刪、直接讀寫任意記錄
間接索引:文件目錄項中有一組表項,其內容登記的是第一級索引表塊的塊號。第一級索引表塊中的索引表項登記的是文件邏輯記錄所在的磁盤塊號。
二級間接索引
注意二級在前面
6、UNIX系統的索引文件結構
目錄項=文件名(不是塊)+對應i節點(索引節點)編號
i節點:UNIX系統把文件目錄項中除了名字以外的信息全部存放到一個數據塊上
索引節點
7、
小型文件
8、
大型文件
巨型文件
9、文件物理結構
物理結構
10、文件目錄:文件目錄是記錄文件的名字、存放地址及其他有關文件的說明信息和控制信息的數據結構。
一級文件目錄:系統將已建立的所有文件的文件名、存放地址及有關的 說明信息放在一張表中,這張表稱爲一級文件目錄。
特點:按名存取較容易、不允許兩個文件有相同的名字。
多級(樹型)文件目錄:在多級目錄系統中(除最末一級外),任何一級目錄的目錄項可以描述一個目錄文件,也可以描述一個非目錄文件(數據文件),而數據文件一定在樹葉上。
11、
所謂“鏈接”,就是在相應目錄表目之間進行鏈接,即:一個目錄中的表目直接指向另一個目錄表目所在的物理位置。
這種鏈接不是直接指向文件,而是指向相應的目錄表目。這種辦法也稱爲連訪,被共享的文件稱爲連訪文件。
鏈接技術
12、文件的保護是指文件本身不得被未經文件主授權的任何用戶存取,而對於授權用戶也只能在允許的存取權限內使用文件。
如何進文件的保護: 需要對用戶的權限進行驗證。
13、VFS:虛擬文件系統也成稱虛擬文件系統轉換,它是一個內核軟件層,用來處理與UNIX標準文件系統相關的所有系統調用。
一個用戶程序中的寫操作請求通過VFS的映射、實際文件系統的具體實施,最終將信息寫到物理介質上。
VFS虛擬文件系統、支持的文件系統類型: 磁盤文件系統、網絡文件系統、特殊文件系統
VFS通用的文件系統模型包含的內容 :
該模型包括了所有不同類型的文件系統常用的功能和操作,它定義了所有文件系統都支持的基本的、概念上的接口和數據結構。
14、fs_struct結構體和file_struct結構體的作用
描述進程的當前目錄(或根目錄)的信息;描述與每個進程所有相關的信息,如打開的文件及文件
描述符等;
15、open( )系統調用的主要工作:調用的服務例程爲sys_open()函數