檔名:由建立檔案的使用者決定檔名,主要是為了方便使用者找到檔案,**同一目錄下不允許有重名檔案**
識別符號:乙個系統內的各個檔案識別符號唯一,對使用者來說毫無可讀性,因此識別符號只是作業系統用於去分各個檔案的一種內部名稱
型別:指明檔案的型別
大小:指明檔案大小
保護資訊:對檔案進行保護的訪問控制資訊
建立時間、上次修改時間、檔案所有者資訊等
建立檔案(create系統呼叫)
刪除檔案(delete系統呼叫)
讀檔案(read系統呼叫)
寫檔案(write系統呼叫)
開啟檔案(open系統呼叫)
關閉檔案(close系統呼叫)
可用幾個基本操作完成更複雜的操作,如複製檔案等
類似於資料結構中的「邏輯結構」和「物理結構」
如「線性表」就是一種邏輯結構,在使用者角度看來,線性表就是一組有先後關係的元素序列
「線性表」這種邏輯結構可以用不同的物理結構實現,如順序表/鍊錶。
有結構檔案的邏輯結構分為
索引檔案
索引順序檔案
目錄檔案中的一條記錄就是乙個「檔案控制塊(fcb)」
fcb的有序集合稱為「檔案目錄」,乙個fcb就是乙個檔案目錄項,fcb中包含了檔案的基本資訊
單級目錄結構
整個系統中只建立一張目錄表,沒餓檔案佔乙個目錄表
單級目錄實現了「按名訪問」,但是不允許檔案重名
兩級目錄結構:分為主檔案目錄(mfd)和使用者級目錄(ufd)
1.主檔案目錄記錄使用者名稱及相應使用者檔案目錄的存放位置
2.使用者檔案目錄由該使用者的檔案fcb組成
3.允許不同使用者名稱的檔案重名
多級目錄結構(樹形目錄結構)
使用者要訪問某個檔案時要用檔案路徑名標識檔案,檔案路徑名是個字串。
各級目錄之間用「/」隔開。從根目錄出發的路徑稱為**絕對路徑**,可以使用從當前目錄出發的「相對路徑」。
無環圖目錄結構
可以用不同的檔名指向同乙個檔案,甚至可以指向同乙個目錄
需要為每個共享結點設定乙個共享計數器,用於記錄此時有多少個地方在共享該結點,計數器為0時才真正刪除該結點
注意:共享檔案不同於複製檔案。在共享檔案中,由於使用者指向的是同乙個檔案
因此只要其中乙個使用者修改了檔案資料,那麼所有使用者都可以看到檔案資料的變化
鏈結分配採取離散分配的方式,可以為檔案分配離散的磁碟塊。分為隱式鏈結和顯示鏈結兩種。
隱式鏈結
檔名…起始塊號
結束塊號
aaaa…9
16 顯示鏈結
把用於鏈結檔案各物理塊的指標顯示的存放在一張表中。即檔案分配表(fat,file allocation table)
檔名
…起始塊號
aaa…
2bbb…4
物理塊號
下一塊012
-1354
-1523…
022233
假設某個新建立檔案「aaa」依次存放在磁碟塊2->5->0->1
假設某個新建立檔案「bbb」依次存放在磁碟塊4->23->3
索引分配允許檔案離散地分配在各個磁碟塊中,系統會為每個檔案建立一張索引表,索引表中記錄了檔案的各個邏輯塊對應的物理塊(索引表功能類似於記憶體管理中的頁表)。索引表存放的磁碟塊稱為索引塊。檔案資料存放的磁碟塊稱為資料塊。
檔名…索引塊
aaa…
7bbb…23
假設某個新建立的檔案「aaa」的資料依次存放在磁碟塊2->5->13->9。
7號磁碟塊作為「aaa」的索引塊,索引塊中儲存了索引表的內容
邏輯塊號
物理塊號02
15213
39索引分配方式可以支援隨機訪問。檔案拓展也很容易實現,只需要給檔案分配乙個空閒塊,並增加乙個索引表項即可。
物理結構總結
how?
目錄項內容
優點缺點
順序分配
為檔案分配的必須是連續的磁碟塊
起始塊號、檔案長度
順序訪問速度快,支援順序訪問
會產生碎片,不利於檔案拓展
隱式鏈結
出檔案的最後乙個磁碟塊之外,每個盤塊中都存有指向下乙個盤塊的指標
起始塊號、結束塊號
可解決碎片問題,外存利用率高,檔案拓展實現方便
只能順序訪問,不能隨機訪問
顯示鏈結
建立一張檔案分配表(fat),顯示記錄盤塊的先後關係(開機後fat常駐記憶體)
起始塊號
除了擁有隱式鏈結的優點之外,還可通過查詢記憶體中的fat實現隨機訪問
fat需要占用一定的儲存空間
索引分配
為檔案資料塊建立索引表,若檔案太大,可採用鏈結方案、多層索引、混合索引
鏈結方案記錄的是第乙個索引塊的塊號,多層/混合索引記錄的是頂級索引號的塊號
支援隨機訪問,易於實現穩健的拓展
索引表需占用一定的儲存空間。訪問資料塊前需要先讀入索引塊。若採用鏈結方案,查詢索引塊時可能需要很多次讀磁碟操作。
作業系統 檔案管理
使用者作業中要用到各種各樣的資訊,如源程式 目標程式 資料 各種語言的編譯程式等。有的資訊需要長期儲存,而有的只是臨時使用。計算機系統經常把資訊儲存在磁碟等儲存介質上,也要利用輸入級 印表機等裝置進行資訊的輸入或輸出。啟動外圍裝置訪問資訊時一項相當複雜 繁瑣的工作。為減輕使用者的負擔和保證系統的安全...
作業系統 檔案管理
檔案系統是用來管理計算機內部儲存的程式和資料。陣列組成可分為 資料項 記錄和檔案。資料項可以組成記錄,記錄可以組成檔案。屬性 檔案具有以下屬性 檔案型別 檔案長度 檔案物理位置 檔案的建立時間。型別 檔案型別可分為普通檔案 目錄檔案 特殊檔案。為了方便統一管理,系統將所有的輸入輸出裝置都視為檔案。檔...
作業系統 檔案管理
9 檔案系統的層次結構 10 磁碟 外存 10.4 磁碟的管理 1 順序檔案 2 索引檔案 3 索引順序檔案 1 實現 乙個檔案對應乙個fcb 檔案控制塊 乙個fcb就是乙個目錄項,多個fcb組成檔案目錄 2 操作 搜尋 建立檔案 刪除檔案 顯示檔案 修改檔案 3 目錄結構 4 索引結點 存放除了檔...