码迷,mamicode.com
首页 > 其他好文 > 详细

操作系统4-文件管理

时间:2020-03-14 01:23:26      阅读:66      评论:0      收藏:0      [点我收藏+]

标签:location   系统   元素   特殊   不同   方式   ati   cat   ext4   

操作系統4-文件系統

文件

  1. 文件是計算機系統中信息存放的一種組織形式

  2. 文件的分類

    • 系統文件
    • 庫文件:系統為用戶提供的各種庫函數和實用程序等,用戶只能實用不能修改。
    • 用戶文件
  3. 文件的性質

    • 普通文件
    • 目錄文件:記錄目錄裡面的文件列表信息
    • 設備文件:把設備作為文件管理和使用(typical Linux)
  4. 文件屬性:指定文件的類型、操作特性和存取保護等信息,存放在文件所在目錄的目錄文件中

    MS-DOS系統中:文件屬性佔目錄的一個字節

  5. 文件結構

    • 邏輯結構:強調文件信息項的構成方式和用戶的存取方式
      • 記錄式文件:文件頭要包含文件的各種控制信息和說明信息
      • 流式文件:只有文件的內容,沒有額外的內容。現在操作系統都是流式文件,由應用程序解釋和處理文件。
    • 物理結構:文件在存儲設備上的存儲結構
  6. 文件存取

    • 順序存取:文件讀取時,讀寫指針指向第一個信息項
    • 隨機存取:存取操作時指定存取的位置。

文件物理結構

  1. 連續文件:文件按邏輯塊的順序存放在硬盤連續的物理存儲塊中。

    文件目錄記錄文件的長度和第一個存儲塊的塊號。

    缺點:不利於文件的動態增長,不利於文件的插入和刪除。

  2. 索引文件

    不連續地存儲在物理塊中,文件目錄記錄文件的邏輯塊和物理塊之間的對應關係。

    顯然索引文件結構比連續文件結構更加適合更加頻繁更改的文件。

  3. 串聯文件

    不連續地存儲在物理塊中,每個存儲塊有一個指針指向下一個存儲塊。

    不利於文件的隨機存取。

    串聯文件的應用:FAT文件系統


FAT文件系統(File Allocation Table)

  1. 文件分配表(FAT表)

    FAT系統應用了串聯文件的結構,但是將每個文件的next指針統一地有序地存儲在了一個表中,稱為FAT表。

    訪問方式:如果當前的存儲塊號是i,那麼下一個存儲塊的地址就是FAT(i)。

    所以可以說FAT系統巧妙地結合索引和串聯系統的特點。

  2. 扇區

    磁盤上最小的可尋址的存儲單元(512字節)

  3. 簇(cluster) = 存儲塊

    設備的最小存取單元,固定數量的扇區

    示例:

    • 369KB硬盤:簇 = 2個扇區(1024字節)
    • 2GB硬盤:簇 = 64個扇區(32KB)

    一般硬盤容量越大,簇包含的扇區數量越大。

    FAT元素數目和簇的數目一致,FAT元素的寬度與可以標識的簇的數量的關係為\(2^n\)

    磁盤容量 = FAT長度 * 簇扇區數 * 扇區大小

    常說的FAT16文件系統就是說FAT表支持的最大的元素寬度為16位,能標識的簇容量為\(2^{16}\)位。通過FAT長度計算出來磁盤容量就是FAT支持的最大磁盤分區容量。

  4. FAT16格式化的磁盤

    啟動扇區 FAT1 FAT2 根目錄 其他目錄和文件

    FAT1和FAT2的內容一致,為了防止被破壞而有一個備份。


存儲空間管理

記錄磁盤使用情況,管理和分配、回收存儲空間

  1. 空閒文件目錄

    • 空閒文件:把連續空閒區看成一個特殊文件
    • 空閒文件目錄:每個表項對應一個空閒文件,記錄有第一個空閒塊號,空閒塊個數和響應的物理塊號。
  2. 空閒塊鏈

    把所有的空閒塊鏈接在一起,當申請者需要空閒塊時,從鏈頭開始搜索空閒塊直到遇到合適的空閒塊。回收空間時,把釋放的空閒塊逐個加在鏈尾。這個和內存管理的機制是一樣的。

  3. 位示圖

    從內存中劃出若干個字節,每個bit表示一個存儲塊空閒或佔用。1表示空閒。


文件目錄管理

  1. 文件目錄

    記錄文件名和存放地址的目錄表

    具有將文件名轉換為物理地址的功能

    還記錄有文件屬性

  2. 目錄文件:文件目錄以文件形式存與外存,這個文件叫做目錄文件。

  3. 目錄結構

    不同系統的結構不一樣

    • DOS系統(32字節):文件名 擴展名 屬性 保留 時間日期 首塊號 大小
    • Unix
      • 索引節點
      • 文件目錄項中的文件名和其他屬性信息分開,後者單獨組成一個定長數據結構:索引節點i_node

典型的文件系統

FAT16 FAT32 (Microsoft patent)

NTFS

EXT2 EXT3 EXT4 (Linux)

操作系统4-文件管理

标签:location   系统   元素   特殊   不同   方式   ati   cat   ext4   

原文地址:https://www.cnblogs.com/lunar-ubuntu/p/12490091.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!