作業系統知識點總結(十七)檔案系統知識點總結

2021-09-02 07:55:52 字數 2117 閱讀 4729

引導控制塊(boot control block)包括系統從該分割槽引導作業系統所需要的資訊。如果 磁碟沒有作業系統,那麼這塊的內容為空。它通常為分割槽的第一塊。ufs稱之為引導塊(boot block); ntfs 稱之為分割槽引導扇區(partition boot sector)。

分割槽控制塊(partition control block)包括分割槽詳細資訊,如分割槽的塊數、塊的大小、 空閒塊的數量和指計、空閒fcb的數量和指標等。ups稱之為超級塊(superblock);而ntfs 稱之為主控檔案表(master file table)。

記憶體分割槽表包含所有安裝分割槽的資訊。

記憶體目錄結構用來儲存近來訪問過的目錄資訊。對安裝分割槽的目錄,可以包括乙個指向 分割槽表的指標。

系統範圍的開啟檔案表,包括每個開啟檔案的fcb複製和其他資訊。

單個程序的開啟檔案表,包括乙個指向系統範圍內已開啟檔案表中合適條目和其他資訊 的指標。

為了建立乙個檔案,應用程式呼叫邏輯檔案系統。邏 輯檔案系統知道目錄結構形式,它將分配乙個新的fcb 給檔案,把相應目錄讀入記憶體,用新的檔名更新該目錄 和fcb,並將結果寫回到磁碟。圖4-32顯示了乙個典型 的 fcb。

圖4-32  典型的fcb

一旦檔案被建立,它就能用於i/o,不過首先要開啟檔案。呼叫open將檔名傳給檔案 系統,檔案系統根據給定檔名搜尋目錄結構。部分目錄結構通常快取在記憶體中以加快目錄 操作。找到檔案後,其fcb複製到系統範圍的開啟檔案表。該錶不但儲存fcb,也有開啟 該檔案的程序數量的條目。

然後,單個程序的開啟檔案表中會增加乙個條目,並通過指標將系統範圍的開啟檔案表 的條目同其他域(檔案當前位置的指標和檔案開啟模式等)相連。呼叫open返回的是乙個 指向單個程序的開啟檔案表中合適條目的指標。所以檔案操作都是通過該指標進行。

檔名不必是開啟檔案表的一部分,因為一旦完成對fcb在磁碟上的定位,系統就不 再使用檔名了。對於訪問開啟檔案表的索引,unix稱之為檔案描述符(file descriptor);而windows 2000稱之為檔案控制代碼(file handle)。因此,只要檔案沒有被關閉,所有檔案操 作通過開啟檔案表來進行。

當乙個程序關閉檔案,就刪除乙個相應的單個程序開啟檔案表的條目即目錄項,系統範 圍內開啟檔案表的開啟數也會遞減。當開啟檔案的所有使用者都關閉了乙個檔案時,更新的文 件資訊會複製到磁碟的目錄結構中,系統範圍的開啟檔案表的條目也將刪除。

在實際中,系統呼叫open會首先搜尋系統範圍的開啟檔案表以確定某檔案是否已被其 他程序所使用。如果是,就在單個程序的開啟檔案表中建立一項,並指向現有系統範圍的打 開檔案表的相應條目。該演算法在檔案已開啟時,能節省大量開銷。

混合索引分配已在unix系統中釆用。在unk systemv的索引結點中,共設定了 13 個位址項,即iaddr(o)~iaddr(12),如圖4-33所示。在bsd unix的索引結點中,共設定了 13個位址項,它們都把所有的位址項分成兩類,即直接位址和間接位址。

圖4-33 unix系統的inode結構示意圖

1) 直接位址

為了提高對檔案的檢索速度,在索引結點中可設定10個直接位址項,即用iaddr(o)~iaddr(9)來存放直接位址。換言之,在這裡的每項中所存放的是該檔案資料所在盤塊的盤塊 號。假如每個盤塊的大小為4kb,當檔案不大於40kb時,便可直接從索引結點中讀出該文 件的全部盤塊號。

2)  一次間接位址

對於大、中型檔案,只釆用直接位址並不現實。可再利用索引結點中的位址項iaddr(lo) 來提供一次間接位址。這種方式的實質就是一級索引分配方式。圖中的一次間址塊也就是索 引塊,系統將分配給檔案的多個盤塊號記入其中。在一次間址塊中可存放1024個盤塊號, 因而允許檔案長達4mb。

3) 多次間接位址

當檔案長度大於4mb+40kb(—次間址與10個直接位址項)時,系統還須釆用二次間 址分配方式。這時,用位址項iaddr(11)提供二次間接位址。該方式的實質是兩級索引分配方 式。系統此時是在二次間址塊中記入所有一次間址塊的盤號。在釆用二次間址方式時,檔案 最大長度可達4gb。同理,位址項iaddr(12)作為三次間接位址,其所允許的檔案最大長度可 達 4tb。

作業系統知識點總結

共享 系統中的資源可以被記憶體中多個併發執行的進執行緒共同使用 虛擬 通過時分復用 如分時系統 以及空分復用 如虛擬記憶體 技術實現把乙個物理實體虛擬為多個 非同步 系統中的程序是以走走停停的方式執行的,且以一種不可預知的速度推進 儲存器管理 或者記憶體管理 記憶體分配,記憶體保護,位址對映,記憶體...

檔案系統知識點

1 堆檔案 類似資料庫的堆表,記憶體管理中的堆,記錄是無序儲存的,要訪問乙個記錄需要知道其位址 位移 mds的masterbin就是這種檔案,自己維護metadata pointer table 2雜湊檔案 記錄按照key雜湊到塊,hash key n,n是總塊數。然後存入相應塊裡,如果塊滿了,就插...

作業系統知識點

tcp的擁塞控制由4個核心演算法組成。https 把資料進行非對稱加密,然後客戶端從第三方伺服器獲取證書 加密後的公鑰 http完整請求 建立tcp連線,傳送http命令請求頭,web伺服器應答,關閉tcp連線 tcp 三次握手 缺陷 洪氾攻擊 解決辦法 四次揮手 長連線 短連線 程序 執行緒 併發...