




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第五章文件系統(tǒng)P203
5.1文件和文件系統(tǒng)5.2文件邏輯結(jié)構(gòu)5.3目錄管理5.4外存存儲空間管理*5.5文件共享和保護(hù)內(nèi)存空間有限,無掉電保護(hù)不利于長期存放.解決辦法:必須將信息資源以文件的形式存放到外存介質(zhì)上軟件資源存放于外存的必要性外存文件的管理文件的邏輯組織文件的共享與保護(hù)文件在外存上的存放文件:具有文件名的一組相關(guān)信息的集合,是信息組織的一種通用形式。5.1文件及文件系統(tǒng)
1.基本概念2.文件的分類按用途分類: (1)系統(tǒng)文件(2)用戶文件(3)庫文件按文件中的數(shù)據(jù)形式分類: (1)源文件(2)目標(biāo)文件(3)可執(zhí)行文件文件按保護(hù)方式類: (1)只讀文件(2)讀寫文件(3)執(zhí)行文件按文件的性質(zhì)類: (1)普通文件(2)目錄文件(3)特殊文件文件系統(tǒng)是操作系統(tǒng)中含有大量文件及其屬性說明,對文件進(jìn)行操縱和管理的軟件,以及向用戶提供使用文件的接口的集合。3.文件系統(tǒng)模型
P206
文件系統(tǒng)接口對對象操縱和管理的軟件集合邏輯文件系統(tǒng)基本I/O管理程序(文件組織模塊)基本文件系統(tǒng)(物理I/O層)I/O控制層(設(shè)備驅(qū)動程序)對象及其屬性說明(文件、目錄、磁盤)文件和記錄的相關(guān)操作:允許用戶和應(yīng)用利用符號文件名訪問文件及其中的記錄。1)選擇文件所在設(shè)備2)邏輯塊號->物理塊號3)管理空閑盤塊4)指定I/O緩沖區(qū)最底層:啟動I/O操作,處理設(shè)備中斷處理內(nèi)外存間數(shù)據(jù)塊的交換(1)(2)(3)(4)例:用戶訪問文件的過程用戶通過符號文件名訪問文件(4)盤號變換:邏輯盤號->物理盤號(3)找到文件在外存上的位置啟動I/O操作(1)進(jìn)行內(nèi)存外存間數(shù)據(jù)塊的交換(2)在內(nèi)存中進(jìn)行進(jìn)一步的操作(.doc/.exe…)5.2文件邏輯結(jié)構(gòu)P208任何文件都存在兩種類型的結(jié)構(gòu):設(shè)計(jì)要求:
訪問性能:便于檢索;便于修改
存儲性能:向物理存儲轉(zhuǎn)換方便,節(jié)省空間
文件的物理結(jié)構(gòu)(物理組織):文件在外存上的存儲組織形式。文件的邏輯結(jié)構(gòu)(邏輯組織):文件的邏輯組織是指從用戶觀點(diǎn)出發(fā)討論文件內(nèi)部的邏輯結(jié)構(gòu)(logicalstructure)或用戶訪問模式;它可以獨(dú)立于外存上的物理存儲。1.文件邏輯結(jié)構(gòu)的類型1)有結(jié)構(gòu)文件:記錄式文件文件是記錄的集合.每個記錄由彼此相關(guān)的數(shù)據(jù)項(xiàng)構(gòu)成。如果文件中所有記錄的長度都相同,則這種文件為定長記錄文件,否則就是變長記錄文件。例如:學(xué)生登記表文件xsdjb.mdb姓名學(xué)號籍貫通信地址郵政編碼李銘925678武昌武昌關(guān)山街125號430074司馬樂925679北京北京海軍路88號100034文件由字節(jié)流組成,稱為流式文件。不劃分記錄,順序訪問,每次讀寫訪問可以指定任意數(shù)據(jù)長度。DOS、WINDOWS系統(tǒng)中的普通文件都是流式文件。UNIX中所有文件都看作是流式文件,系統(tǒng)不對文件進(jìn)行格式處理2)無結(jié)構(gòu)文件(如源程序、可執(zhí)行程序、庫函數(shù)):流式文件就象給一張白紙給用戶,用戶可將他的信息意地寫到紙上,沒有任何格式上的限制。記錄式文件就象給一張表格給用戶,用戶要按表規(guī)定格式填信息。顯然,結(jié)構(gòu)式文件對用戶的限制很大,使用起來就不方便,但處理起來簡便容易.3)兩種文件的比較2、文件的存取方法(訪問方法)順序存?。菏前凑瘴募倪壿嫷刂讽樞虼嫒?,后一次存取總是在前次存取的基礎(chǔ)上進(jìn)行的。
在有結(jié)構(gòu)文件中,這反映為按記錄的排列順序來存取, 例如:當(dāng)前記錄為Ri,則下一條記錄為Ri+1在流式文件中,順序存取反映當(dāng)前讀寫指針的變化, 例如:當(dāng)前指針rPtr,下一存取位置的指針為rPtr+1隨機(jī)存取(直接存?。涸试S用戶根據(jù)記錄的編號來存取文件的任一記錄,或者是根據(jù)存取命令把讀寫指針移動到欲讀寫處來讀寫。每次存取操作都要指定存取操作的開始位置.
對于有結(jié)構(gòu)文件:如果文件是定長記錄的,只要給出記錄號就能求出該記錄的首地址。如果文件是變長記錄結(jié)構(gòu)的,直接存取將是非常困難的。
對于流式文件:流式文件中提供文件存取操作有:fread(buffer,size,count,fp);fwrite(buffer,size,count,fp);這兩個操作總是從當(dāng)前位置開始讀(或?qū)懀?執(zhí)行順序存取操作fseek(fp,offset,mode)調(diào)整文件的讀寫起始位置,若在fread、fwrite之前執(zhí)行fseek操作,就調(diào)整了文件的讀寫指針(讀寫開始的位置),實(shí)現(xiàn)了隨機(jī)存取。流式文件的存取:根據(jù)存取命令把讀寫指針移動到欲讀寫處來讀寫。每次存取操作都要指定存取操作的開始位置3.有結(jié)構(gòu)文件的記錄組織方式:
1)順序文件(sequentialfile)邏輯記錄的排序:串結(jié)構(gòu)(記錄間順序由時間決定,與關(guān)鍵字無關(guān)); 順序結(jié)構(gòu)(記錄間順序按關(guān)鍵字排列)對順序文件的訪問性能:
順序存取,定長文件可以實(shí)現(xiàn)直接存?。篖LL…LLRptrRptr定長記錄文件不定長記錄文件優(yōu)點(diǎn):適于進(jìn)行批量存取;缺點(diǎn):查找或修改單個記錄時,性能較差。增刪記錄困難——事務(wù)文件2)索引文件(indexedfile)為變長記錄文件創(chuàng)建索引表,對于原文件中的每一個變長記錄,都對應(yīng)索引表中的一個表項(xiàng)。索引表是一個定長記錄的順序文件,可方便地實(shí)現(xiàn)直接存取。索引表表項(xiàng):索引號記錄長度m指針Ptr檢索過程:1.按關(guān)鍵字查表,找到相應(yīng)表項(xiàng)2.由表項(xiàng)中的指針值訪問相應(yīng)的記錄缺點(diǎn):占用了部分存儲空間,代價較高。3)索引順序文件(indexed-sequentialfile)是順序文件和索引文件結(jié)合的產(chǎn)物。實(shí)現(xiàn)變長記錄文件的直接存取,代價較低。也加快了順序文件的檢索速度。具體做法:將順序文件中的所有記錄按關(guān)鍵字的取值劃分若干個區(qū)間(或組)。為整個順序文件建立一張索引表,每一表項(xiàng)對應(yīng)一個分組,用組中的第一個記錄表示。檢索過程:1.按索引文件的檢索方式找到相應(yīng)的組,2.按順序文件的檢索方式找到相應(yīng)的記錄。鍵邏輯地址姓名其它屬性ABZAnBingAnKangAnQingBaoRongBiJingBonLong索引文件邏輯文件索引順序文件示意圖Hash文件:定義一個散列函數(shù)h(k),使得對于給定的鍵k,散列函數(shù)h(k)將其變換為k所對應(yīng)的地址例:記錄關(guān)鍵值為“ANDING”利用字母在字母表中排序的和計(jì)算出記錄地址或找出指向相應(yīng)記錄的指針1+14+4+9+14+7=594)
Hash文件目前應(yīng)用最廣泛的一種直接文件:直接文件:不需像前面的方法那樣按照鍵值進(jìn)行檢索,找到記錄的物理地址.而是根據(jù)給定的鍵值,直接獲得指定記錄的物理地址.5.3目錄管理P223
5.3.1目錄內(nèi)容5.3.2目錄結(jié)構(gòu)類型5.3.3目錄查詢技術(shù)5.3.1目錄內(nèi)容P224為了對一個文件進(jìn)行正確的存取,用文件控制塊(FCB)描述和控制文件訪問的控制信息(不包括文件內(nèi)容)。即:文件屬性信息(properties),其中的一部分是用戶可獲取的。文件與文件控制塊一一對應(yīng)。文件目錄是文件控制塊(FCB)的有序集合。文件目錄也是一個文件?;拘畔⒋嫒】刂菩畔⑹褂眯畔⑽募刂茐K(FCB)1、文件增多-->文件控制塊多-->目錄結(jié)構(gòu)龐大,檢索效率下降2、目錄檢索時僅需要文件名這一信息,因此考慮將文件名和文件描述信息分開,以簡化FCB結(jié)構(gòu)如:盤塊大小1KB,若一個FCB為64B則:每個盤塊存放16個FCB;若一個文件目錄中共有640個FCB,需要占用40個盤塊。查找一個文件平均需要啟動磁盤20次。實(shí)現(xiàn):目錄中僅放有文件名,文件的其他信息放在索引結(jié)點(diǎn)里文件名文件名文件名文件名索引結(jié)點(diǎn)目錄外存FCB簡化成只包含文件名和索引結(jié)點(diǎn)編號索引結(jié)點(diǎn)的引入:如:unix中一個目錄僅占16個字節(jié),其中14個字節(jié)是文件名,2個字節(jié)為索引節(jié)點(diǎn)指針例:目錄部分——啟動磁盤次數(shù)問題在某個文件系統(tǒng)中,每個盤塊512字節(jié),文件控制塊占64個字節(jié),其中文件名占8個字節(jié)。如果索引結(jié)點(diǎn)編號占2個字節(jié),對一個存放在磁盤上256個目錄項(xiàng)的目錄,試比較引入索引結(jié)點(diǎn)前后,為找到其中一個文件的FCB,平均啟動磁盤的次數(shù)。問題分析:未引入索引結(jié)點(diǎn)時:FCB占64字節(jié):則一個盤塊可存放512/64=8個FCB。因此一個含有256個目錄項(xiàng)的目錄需要存放在256/8=32個盤塊中。
檢索一個文件,需平均啟動磁盤次數(shù)為(32+1)/2=16.5次。引入索引結(jié)點(diǎn)后:FCB被簡化為由文件名和索引結(jié)點(diǎn)編號組成,即占8+2個字節(jié)。則一個盤塊可存放512/10=51.2個FCB,因此一個含有256個目錄項(xiàng)的目錄需要存放在256/51.2=5個盤塊中。
找到匹配的目錄項(xiàng)平均啟動磁盤次數(shù)為(5+1)/2=3次,得到索引結(jié)點(diǎn)編號后,還需啟動磁盤將對應(yīng)的索引結(jié)點(diǎn)讀入內(nèi)存,故平均啟動磁盤4次。目錄是由FCB構(gòu)成的。文件目錄管理的設(shè)計(jì)要求:目錄是由文件說明索引組成的用于文件檢索的特殊文件。 1.實(shí)現(xiàn)按名存取2.提高對目錄的檢索速度3.實(shí)現(xiàn)文件共享4.允許文件重名5.3.2目錄結(jié)構(gòu)類型設(shè)計(jì)目標(biāo):能提高檢索效率。單級目錄結(jié)構(gòu):整個目錄組織是一個線性結(jié)構(gòu),系統(tǒng)中的所有文件都建立在一張目錄表中。它主要用于單用戶操作系統(tǒng)。如下圖:特點(diǎn):結(jié)構(gòu)簡單、實(shí)現(xiàn)了按名存?。晃募鄷r,查找速度慢;不允許重名;不便于實(shí)現(xiàn)文件共享;兩級目錄結(jié)構(gòu)兩級目錄結(jié)構(gòu):在根目錄下,每個用戶對應(yīng)一個目錄(第二級目錄);在用戶目錄下是該用戶的文件。適用于多用戶系統(tǒng),各用戶可有自己的專用目錄。用戶名用戶的文件目錄zhaoqiansunli主目錄文件名programdocumentzhao的目錄qian的目錄文件名paperprogram2、文件共享1、提高了檢索速度3、文件重名目錄項(xiàng)描述一個子目錄表:描述一個文件目錄表記錄式文件包含三級或三級以上的文件目錄結(jié)構(gòu)稱為樹型結(jié)構(gòu)目錄。在文件數(shù)目較多時,便于系統(tǒng)和用戶將文件分散管理。但目錄級別太多時,會增加路徑檢索時間。1、樹型結(jié)構(gòu)的組成根結(jié)點(diǎn)——根目錄樹結(jié)點(diǎn)——各級子目錄葉結(jié)點(diǎn)——文件子目錄名文件名文件名子目錄名子目錄名文件名文件名子目錄名子目錄名文件名文件名子目錄名樹型目錄結(jié)構(gòu)(多級目錄結(jié)構(gòu))樹型目錄結(jié)構(gòu)2、文件路徑根目錄到數(shù)據(jù)文件之間的唯一通路,稱為路徑*絕對路徑:從根目錄開始,到達(dá)目的地所經(jīng)過的目錄名序列*相對路徑:從當(dāng)前目錄開始,到達(dá)目的地所經(jīng)過的目錄名序列文件路徑3、文件重名路徑+文件名可以唯一標(biāo)識文件不同目錄下的文件可以重名路徑名:DOSWINDOWS系統(tǒng)中文件路徑名
\A\R\T\B\IU\I\D\B\PNIX系統(tǒng)中文件路徑名/A/R/T/B/IU/I/D/B/P5.3.3目錄查詢技術(shù)文件的按名存取過程:1.按文件路徑名對文件目錄進(jìn)行查詢,找出該文件的文件控制塊或索引結(jié)點(diǎn)2.找到FCB或索引結(jié)點(diǎn)中的物理地址。3.啟動磁盤進(jìn)行I/O,讀入內(nèi)存。對目錄進(jìn)行查詢的兩種方法:線性檢索法 Hash方法線性檢索法——即順序檢索法。索引結(jié)點(diǎn)目錄中進(jìn)行線性檢索查詢的例子:1.1..4Bin7Dev14Lib9Etc6Usr8tmp6.1..19Dick30Erik51Jim26Ast45bal26.6..64Grants92Books60Mbox81Minix17src根目錄132#塊是/usr的目錄406#塊是/usr/ast的目錄結(jié)點(diǎn)6是/usr的索引結(jié)點(diǎn)132406結(jié)點(diǎn)26是/usr/ast的索引結(jié)點(diǎn)查找/usr/ast/mbox文件的過程:第6次上機(jī)模擬文件系統(tǒng)中的樹型目錄結(jié)構(gòu),并模擬實(shí)現(xiàn)常用Dos命令。如:Dir,Md,Cd,Rd,createfilename等1.
創(chuàng)建目錄結(jié)構(gòu)。操作:選擇一種樹的存儲結(jié)構(gòu),創(chuàng)建
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中糧貿(mào)易購銷合同范例
- app推廣合作合同范例
- 公路石料運(yùn)輸合同范例
- 修井協(xié)議合同范例
- 農(nóng)藥店合作合同范例
- 信封廠商銷售合同范本
- 保潔服務(wù)安全協(xié)議合同范例
- 分公司 銷售 合同范例
- 冷庫庫房長期租賃合同范例
- 先行合同范例
- 二年級下冊數(shù)學(xué)口算題-可打印
- 湖北云學(xué)名校聯(lián)盟2024-2025學(xué)年高二上學(xué)期期末考試英語試題 含解析
- 公司信息化安全規(guī)章制度及操作手冊
- 福建省南平市2024-2025學(xué)年九年級上學(xué)期期末語文試題(解析版)
- 第五周《春風(fēng)吹過正‘植’有我》主題班會
- 2025年湖南工程職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- 2025年包頭鐵道職業(yè)技術(shù)學(xué)院高職單招數(shù)學(xué)歷年(2016-2024)頻考點(diǎn)試題含答案解析
- 2024年長沙電力職業(yè)技術(shù)學(xué)院高職單招語文歷年參考題庫含答案解析
- 2024年山西工程職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年參考題庫含答案解析
- 2024年安徽醫(yī)學(xué)高等??茖W(xué)校高職單招職業(yè)技能測驗(yàn)歷年參考題庫(頻考版)含答案解析
- 養(yǎng)老院院感知識培訓(xùn)課件
評論
0/150
提交評論