人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統 > 網絡技術教程 > 詳細頁面

文件分配表

文件分配表

更新時間:2021-02-24 文章作者:未知 信息來源:網絡 閱讀次數:

網絡技術是從1990年代中期發展起來的新技術,它把互聯網上分散的資源融為有機整體,實現資源的全面共享和有機協作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計算機、存儲資源、數據資源、信息資源、知識資源、專家資源、大型數據庫、網絡、傳感器等。 當前的互聯網只限于信息共享,網絡則被認為是互聯網發展的第三階段。
       FAT是DOS、Windows9X系統的文件尋址格式,位于DBR之后。
在解釋文件分配表的概念的時候,我們有必要談談簇(Cluster)的概念。文件占用磁盤空間,基本單位不是字節而是簇。一般情況下,軟盤每簇是1個扇區,硬盤每簇的扇區數與硬盤的總容量大小有關,可能是4、8、16、32、64……同一個文件的數據并不一定完整地存放在磁盤的一個連續的區域內,而往往會分成若干段,像一條鏈子一樣存放。這種存儲方式稱為文件的鏈式存儲。由于硬盤上保存著段與段之間的連接信息(即FAT),操作系統在讀取文件時,總是能夠準確地找到各段的位置并正確讀出。
為了實現文件的鏈式存儲,硬盤上必須準確地記錄哪些簇已經被文件占用,還必須為每個已經占用的簇指明存儲后繼內容的下一個簇的簇號。對一個文件的最后一簇,則要指明本簇無后繼簇。這些都是由FAT表來保存的,表中有很多表項,每項記錄一個簇的信息。由于FAT對于文件管理的重要性,所以為了安全起見,FAT有一個備份,即在原FAT的后面再建一個同樣的FAT。初形成的FAT中所有項都標明為“未占用”,但如果磁盤有局部損壞,那么格式化程序會檢測出損壞的簇,在相應的項中標為“壞簇”,以后存文件時就不會再使用這個簇了。FAT的項數與硬盤上的總簇數相當,每一項占用的字節數也要與總簇數相適應,因為其中需要存放簇號。FAT的格式有多種,最為常見的是FAT16和FAT32。
當一個磁盤Format后,在其邏輯0扇區(即BOOT扇區)后面的幾個扇區中存在著一個重要的數據表—文件分配(FAT),文件分配表一式兩份,占據扇區的多小憑磁盤類型大小而定。顧名思義,文件分配表是用來表示磁盤問件的空分配信息的。它不對引導區,文件目錄的信息進行表示,也不真正存儲文件內容。

我們知道磁盤是由一個一個扇區組成的,若干個扇區合為一個簇,文件存取是以簇為單位的,哪怕這個文件只有1個字節。每個簇在文件分配表中都有對應的表項,簇號即為表項號,每個表項占1.5個字節(磁盤空間在10MB以下)或2個字節(磁盤空間在10MB以上)。為了方便起見,以后所說的表項都是指2個字節的。


文件分配表結構如1(H表示16進制)
表1
第0字節 表頭,表磁盤類型。FFH雙面軟盤,每次道8扇區FEH單面軟盤,每磁道8扇區FDH雙面軟盤,每磁道9扇區FCCH單面軟盤,每磁道9扇區FC8H硬盤
第1~2字節 (表項號1)表示第一簇狀態,因第一簇被系統占據,故此兩字節為FFFFH
第3~4字節 (表項號2)表示第二簇狀態,若為FFFH表此簇為壞的,DOS已標記為不能用;0000H表示此簇為空,可以用;FFF8H表不能示該簇為文件的最后一簇;其余數字表示文件的下一個簇號,注意高字節在后,低字節在前。
第5~6字節 (表項號3)表示第三簇狀態,同上。


注意:
不要把表項內的數字誤認為表示當前簇號,而應是該文件的下一個簇的簇號。.高字節在后,低字節在前是一種存儲數字方式,讀出時應對其進行調整。是如兩字節12H,34H,應調整為3412H。
文件分配表與文件目錄(FDT)相配合,可以統一管理整個磁盤的文件。它告訴系統磁盤上哪些簇是壞的或已被使用,哪些簇可以用,并存儲每個文件所使用的簇號。它是文件的“總調度師”。
當DOS寫文件時,首先在文件目錄中檢查是否有相同文件名,若無則使用一個文件目錄表項,然后依次檢測FAT中的每個表項對應的簇中,同時將該簇號寫入文件目錄表項相的26-27字節,如文件長度不止一簇,則繼續向后尋找可用簇,找到后將其簇號寫入上一次找到的表項中,如此直到文件結束,在最后一簇的表項里填上FFF8H,形成單向鏈表。
DOS刪除文件時只是把文件目錄表中的該文件的表項第0個字節改為E5H,表此項已被刪除,并在文件分配表中把該文件占用的各簇的表項清0,并釋放空間。其文件的內容仍然在盤上,并沒有被真正刪除,這就是undelete.exe,unerase.exe等一類恢復刪除工具能起作用的原因。
文件分配表在系統中的地位十分重要,用戶最好不要去修改它,以免誤操作帶來嚴重的后果。


FAT表的定位
  硬盤分區的主要結構說明:
(Cylinder柱面/磁道-Side磁頭-Sector扇區地址以下簡稱為?-?-?)
《主分區》
名稱 地址 長度(扇區)
主引導記錄(Main Boot Record) 0-0-1 1
系統扇區(System Secotrs) 0-0-2,0-0-63 62
引導扇區(Boot) 0-1-1 1
FAT16系統中,此扇區包含BPB(BIOS Parameter Block)表,描述邏輯盤結構組成,包含隱藏扇區數目(從0-1-1開始計算)、FAT扇區數、FAT拷貝數、硬盤磁頭總數、根目錄表項最大值等。
FAT32系統中,BPB表的偏移與FAT16不同,但表項基本相同。整個隱藏扇區部分都作為邏輯盤的描述區域。
隱藏扇區(Hidden Secotrs):
FAT16 0-1-1 1
FAT32 0-1-1 32
文件分配表(File Allocation Table):
FAT16 0-1-2 根據邏輯盤容量變化
FAT32 0-1-33 根據邏輯盤容量變化
說明:
FAT16的每個表項由2字節(16位)組成,通常每個表項指向的簇包含64個扇區,即32K字節。
邏輯盤容量最大為2047MB。
FAT32的每個表項由4字節(32位)組成,通常每個表項指向的簇包含8個扇區,即4K字節。
邏輯盤容量最小為512MB。
對于C分區,在MBR的偏移01c2H處,FAT16為06H,FAT32為0CH。
有關計算公式為:
每個扇區長度=512字節
總簇數=邏輯盤容量/簇容量
總簇數=FAT表長度(字節)/每個表項長度(字節)-2
FAT表長度=邏輯盤容量/簇容量*每個表項長度
FAT表的開始由介質描述符+一串“已占用”標志組成:
FAT16硬盤----F8 FF FF 7F
FAT32硬盤----F8 FF FF 0F FF FF FF 0F
每個有效的FAT結構區包含兩個完全相同的拷貝:FAT1、FAT2
文件目錄表(File Directory Table),即根目錄區,又稱為ROOT區:
緊跟在FAT2的下一個扇區,長度為32個扇區(256個表項)。如果支持長文件名,則每個表項
為64個字節,其中,前32個字節為長文件鏈接說明;后32個字節為文件屬性說明,包括文件長
度、起始地址、日期、時間等。如不支持長文件名,則每個表項為32個字節的屬性說明。
數據區(Data Area):
緊跟在FDT的下一個扇區,直到邏輯盤的結束地址。
《擴展分區》
名稱 地址 長度(扇區)
擴展分區(Extend Partition) ?-y-1 1
系統扇區(System Secotrs) ?-y-2,?-y-63 62
引導扇區(Boot) ?-(y+1)-1 1
其后各項與主分區相同……


FAT表引起的讀寫故障

硬盤文件分配表龐大無法手工修復,只能依靠工具。
FAT表記錄著硬盤數據的存儲地址,每一個文件都有一組FAT鏈指定其存放的簇地址。FAT表的損壞意味著文件內容的丟失。慶幸的是DOS系統本身提供了兩個FAT表,如果目前使用的FAT表損壞,可用第二個進行覆蓋修復。但由于不同規格的磁盤其FAT表的長度及第二個FAT表的地址也是不固定的,所以修復時必須正確查找其正確位置,一些工具軟件如NU等本身具有這樣的修復功能,使用也非常的方便。采用DEBUG也可實現這種操作,即采用其m命令把第二個FAT表移到第一個表處即可(不建議這樣做)。如果第二個FAT表也損壞了,則也無法把硬盤恢復到原來的狀態,但文件的數據仍然存放在硬盤的數據區中,可采用CHKDSK或SCANDISK命令進行修復,最終得到*.CHK文件,這便是丟失FAT鏈的扇區數據。如果是文本文件則可從中提取出完整的或部分的文件內容。

軟盤文件分配FAT表修復

在運行某個程序時,有時會在屏幕上看到:File allocation table bad,drive A(文件分配表壞)的錯誤信息,導致程序不能正常運行。
我們知道,在磁盤中有兩個文件分配表:FAT1和FAT2。FAT1用于日常工作,FAT2備用。因此,在FAT1損壞時,可用FAT2表修補。
具體方法是:運行DEBUG,將FAT2讀入緩沖區,用緩沖區的FAT2數據覆蓋磁盤中的FAT1。
例:修復3寸1.44M軟盤,在A驅
在DOS環境下進入debug環境
在“-”提示符下進行如下操作:
-L 100 0 0A 9
-W 100 0 1 9
-q
其它類型的軟盤的修復方法參照下表進行。
起止邏輯扇區 5.25"低密 5.25"高密 3.5"低密 3.5"高密
BOOT區 0 0 0 0
FAT1 1-2 1-7 1-3 1-9
FAT2 3-4 8-0EH 4-6 0A-12H
例如我們要修復5.25"高密軟盤的FAT,則需將上述參數改為:
-L 100 0 8 7
-W 100 0 1 7
-q


網絡的神奇作用吸引著越來越多的用戶加入其中,正因如此,網絡的承受能力也面臨著越來越嚴峻的考驗―從硬件上、軟件上、所用標準上......,各項技術都需要適時應勢,對應發展,這正是網絡迅速走向進步的催化劑。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 田东县| 昆明市| 万盛区| 夏河县| 兴国县| 罗源县| 历史| 湘潭市| 南江县| 当雄县| 泰安市| 时尚| 鄂尔多斯市| 永顺县| 三穗县| 贵德县| 明星| 安义县| 南昌市| 钦州市| 疏附县| 山东| 理塘县| 广水市| 凤山市| 杭锦旗| 定远县| 咸丰县| 奉新县| 苗栗县| 涡阳县| 津市市| 通化县| 白水县| 河源市| 嘉定区| 湖州市| 昌邑市| 绥阳县| 阿克| 横峰县|