金年会 金字招牌诚信至上,金年会 金字招牌诚信至上,金年会 金字招牌诚信至上,金年会 金字招牌诚信至上

 找回密碼
 注冊

QQ登錄

只需一步,快速開(kāi)始

查看: 1190|回復: 2
打印 上一主題 下一主題

[分享] 關(guān)于硬盤(pán)數據結構

跳轉到指定樓層
1#
wohamina520 發(fā)表于 2008-7-28 15:39:49 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式 來(lái)自 中國湖南長(cháng)沙

馬上注冊,結交更多好友,享用更多功能。

您需要 登錄 才可以下載或查看,沒(méi)有帳號?注冊

x
電腦硬盤(pán)數據結構
剛出廠(chǎng)一塊硬盤(pán),我們是沒(méi)有辦法使用的,你需要將它分區、格式化,然后再安裝上操作系統才可以使用。就拿我們一直沿用到現在的Win9x/Me系列來(lái)說(shuō),我們一般要將硬盤(pán)分成主引導扇區、操作系統引導扇區、FAT、DIR和Data等五部分(其中只有主引導扇區是唯一的,其它的隨你的分區數的增加而增加)。
主引導扇區:主引導扇區位于整個(gè)硬盤(pán)的0磁道0柱面1扇區,包括硬盤(pán)主引導記錄MBR(Main Boot Record)和分區表DPT(Disk Partition Table)。其中主引導記錄的作用就是檢查分區表是否正確以及確定哪個(gè)分區為引導分區,并在程序結束時(shí)把該分區的啟動(dòng)程序(也就是操作系統引導扇區)調入內存加以執行。至于分區表,很多人都知道,以80H或00H為開(kāi)始標志,以55AAH為結束標志,共64字節,位于本扇區的最末端。值得一提的是,MBR是由分區程序(例如DOS的Fdisk.exe)產(chǎn)生的,不同的操作系統可能這個(gè)扇區是不盡相同。如果你有這個(gè)意向也可以自己去編寫(xiě)一個(gè),只要它能完成前述的任務(wù)即可,這也是為什么能實(shí)現多系統啟動(dòng)的原因(說(shuō)句題外話(huà):正因為這個(gè)主引導記錄容易編寫(xiě),所以才出現了很多的引導區病毒)。
操作系統引導扇區: OBR(OS Boot Record)即操作系統引導扇區,通常位于硬盤(pán)的0磁道1柱面1扇區(這是對于DOS來(lái)說(shuō)的,對于那些以多重引導方式啟動(dòng)的系統則位于相應的主分區/擴展分區的第一個(gè)扇區),是操作系統可直接訪(fǎng)問(wèn)的第一個(gè)扇區,它也包括一個(gè)引導程序和一個(gè)被稱(chēng)為BPB(BIOS Parameter Block)的本分區參數記錄表。其實(shí)每個(gè)邏輯分區都有一個(gè)OBR,其參數視分區的大小、操作系統的類(lèi)別而有所不同。引導程序的主要任務(wù)是判斷本分區根目錄前兩個(gè)文件是否為操作系統的引導文件(例如MSDOS或者起源于MSDOS的Win9x/Me的IO.SYS和MSDOS.SYS)。如是,就把第一個(gè)文件讀入內存,并把控制權交予該文件。BPB參數塊記錄著(zhù)本分區的起始扇區、結束扇區、文件存儲格式、硬盤(pán)介質(zhì)描述符、根目錄大小、FAT個(gè)數、分配單元(Al本地 Unit,以前也稱(chēng)之為簇)的大小等重要參數。OBR由高級格式化程序產(chǎn)生(例如DOS 的Format.com)。
文件分配表:
FAT(File Al本地 Table)即文件分配表,是DOS/Win9x系統的文件尋址系統,為了數據安全起見(jiàn),FAT一般做兩個(gè),第二FAT為第一FAT的備份, FAT區緊接在OBR之后,其大小由本分區的大小及文件分配單元的大小決定。
FAT的格式歷來(lái)有很多選擇,Microsoft 的DOS及Windows采用我們所熟悉的FAT12、FAT16和FAT32格式,但除此以外并非沒(méi)有其它格式的FAT,像Windows NT、OS/2、UNIX/Linux、Novell等都有自己的文件管理方式。
目錄區:
DIR是Directory即根目錄區的簡(jiǎn)寫(xiě),DIR緊接在第二FAT表之后,只有FAT還不能定位文件在磁盤(pán)中的位置,FAT還必須和DIR配合才能準確定位文件的位置。DIR記錄著(zhù)每個(gè)文件(目錄)的起始單元(這是最重要的)、文件的屬性等。定位文件位置時(shí),操作系統根據DIR中的起始單元,結合FAT表就可以知道文件在磁盤(pán)的具體位置及大小了。在DIR區之后,才是真正意義上的數據存儲區,即DATA區。
數據區:
DATA雖然占據了硬盤(pán)的絕大部分空間,但沒(méi)有了前面的各部分,它對于我們來(lái)說(shuō),也只能是一些枯燥的二進(jìn)制代碼,沒(méi)有任何意義。在這里有一點(diǎn)要說(shuō)明的是,我們通常所說(shuō)的格式化程序(指高級格式化,例如DOS下的Format程序),并沒(méi)有把DATA區的數據清除,只是重寫(xiě)了FAT表而已,至于分區硬盤(pán),也只是修改了MBR和OBR,絕大部分的DATA區的數據并沒(méi)有被改變,這也是許多硬盤(pán)數據能夠得以修復的原因。但即便如此,如MBR/OBR/FAT/DIR之一被破壞的話(huà),也足夠咱們那些所謂的DIY老鳥(niǎo)們忙乎半天了……需要提醒大家的是,如果你經(jīng)常整理磁盤(pán),那么你的數據區的數據可能是連續的,這樣即使MBR/FAT/DIR全部壞了,我們也可以使用磁盤(pán)編輯軟件(比如DOS下的DiskEdit),只要找到一個(gè)文件的起始保存位置,那么這個(gè)文件就有可能被恢復(當然了,這需要一個(gè)前提,那就是你沒(méi)有覆蓋這個(gè)文件……)。
頭像被屏蔽
2#
hw0564 發(fā)表于 2008-7-28 19:18:08 | 只看該作者 來(lái)自 中國江蘇蘇州
提示: 作者被禁止或刪除 內容自動(dòng)屏蔽
3#
三六九等 發(fā)表于 2008-7-28 20:07:44 | 只看該作者 來(lái)自 中國吉林長(cháng)春
學(xué)習了。。。
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規則

快速回復 返回頂部 返回列表
新津县| 尼木县| 腾冲县| 滦南县| 盐亭县| 仪陇县| 巴彦县| 石嘴山市| 正阳县| 阿合奇县| 卢氏县| 榆林市| 武邑县| 伊金霍洛旗| 盐边县| 桂林市| 阳山县| 潢川县| 邳州市| 玛纳斯县| 肇庆市| 康保县| 精河县| 东平县| 阿勒泰市| 洪泽县| 胶南市| 洪江市| 黔江区| 兴业县| 江门市| 邹城市| 沁阳市| 高碑店市| 贡嘎县| 金湖县| 天气| 武宁县| 梁山县| 六安市| 东港市|