1.檔案緩存和打開檔案
檔案緩存的種類:磁盤控制器扇區緩存
記憶體裡面資料塊緩存/記憶體虛拟盤/打開檔案表
作業系統讨論的緩存:記憶體中資料塊的緩存
資料塊緩存按需讀入記憶體
* 提供read操作、預先讀取後面的資料塊
* 資料塊被使用後被緩存--後面可能用到,寫操作可能延遲
資料塊緩存的兩種方式:資料塊緩存、頁面緩存-統一緩存資料塊和記憶體頁
虛拟頁面對換和檔案讀寫--資料塊--檔案系統
虛拟頁對換和檔案讀寫--頁緩存<處理缺頁>
檔案系統中的打開檔案的資料結構:
*檔案描述符:每個打開檔案都有一個檔案描述符
*檔案描述符内容:檔案的狀态資訊
*每個程序具有一個打開檔案表
*每個檔案系統具有一個系統的打開檔案表
#打開檔案鎖:協調多程序的檔案通路
2.檔案配置設定
*檔案的大小:
大多數檔案很小,需要對小檔案很好的支援;塊空間不能太大
對于特定大的檔案的操作支援,通路的高效
*檔案配置設定:OS系統如何配置設定給一個檔案資料塊的位置和順序
連續配置設定:連續塊存儲
鍊式配置設定:類似于連結清單--無外碎片;順鍊通路
索引配置設定:設定索引--無外碎片
*檔案配置設定方式評價:存儲效率--外部碎片等;讀寫性能--通路速度
*3種配置設定方式的具體介紹
順序配置設定:檔案頭記錄:檔案起始塊和檔案長度--數組一樣
特點:檔案讀取性能表現好;高效的順序和随機通路;
缺點:碎片;檔案長度的增加處理
鍊式配置設定:檔案以資料塊連結清單的方式存儲;檔案頭包含頭和尾的指針--單向連結清單
優點:建立、增加、删除很容易--讀寫基本機關塊
缺點:沒有很友善的随機通路,可靠性差
索引配置設定:為每個檔案建立一個索引資料塊;檔案頭包含一個指向檔案索引的指針
特點:建立增大縮小很容易;沒有碎片,支援直接通路
缺點:檔案小的時候開銷大;檔案很大也比較麻煩
對于大檔案的處理:
鍊式索引/多級索引配置設定--減小了索引表的内容
注意:在真實的系統裡面通常幾種配置設定方式都是組合起來使用的。
eg:直接索引/間距索引
3.空閑空間管理:跟蹤記錄檔案卷中未配置設定的資料塊
采用什麼資料結構表示組織管理空閑塊:
#位圖:0代表空閑,1代表已經配置設定--10111011010
特點:使用簡單但可能會是一個很大的向量
#連結清單:組織已經配置設定和未配置設定的資料塊
#鍊式索引
注意:在實際的系統裡面是幾種方法的組合使用
4.磁盤陣列RAID--提高檔案系統可靠性與讀寫性能的技術
通常磁盤分區是限制尋道時間--半徑方向
分區:是一組柱面的集合
每個分區都視為邏輯上的獨立磁盤--半徑方向
檔案卷與磁盤分區的聯系:
*檔案卷:一個用于完整檔案系統的執行個體的外存空間;通常存儲在磁盤的單個分區
eg:A分區:目錄檔案;B分區:目錄檔案;C分區:目錄檔案(存儲在多個磁盤)
*多磁盤管理:
提高吞吐量--通過并行
可靠性和可用性--通過允餘
*RAID:多種磁盤管理技術,含有多種管理方式
*RAID技術的實作:軟體OS核心檔案卷管理、硬體RAID硬體控制器(I/O)
*RAID技術的分類:
RAID0:磁盤條帶化
把資料塊分為多個子塊,存儲在獨立的磁盤上;通過獨立磁盤的并行通路
來提供較大的磁盤帶寬。
RAID1:磁盤鏡像--給兩個中寫入相同的資料,讀可以從任意一個
可以提高可靠性
RAID4:帶校驗的磁盤條帶化--提高可靠性
允許從任意一個故障磁盤中恢複
RAID5:帶分布式校驗的磁盤條帶化