• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 硬盤的物理結構

    發表于:2007-07-04來源:作者:點擊數: 標簽:
    硬盤的物理結構 硬盤的物理結構硬盤是現在計算機上最常用的存儲器。我們都知道,計算機之所以神奇,是因為它具有高速分析處理數據的能力。而這些數據都被以文件的形式存儲在硬盤里。不過,計算機可不像人那么聰明。在讀取相應的文件時,你必須要給出它相應的
    硬盤的物理結構

    硬盤的物理結構硬盤是現在計算機上最常用的存儲器。我們都知道,計算機之所以神奇,是因為它具有高速分析處理數據的能力。而這些數據都被以文件的形式存儲在硬盤里。不過,計算機可不像人那么聰明。在讀取相應的文件時,你必須要給出它相應的規則。這就是分區概念的形成。 分區從實質上說就是對硬盤的一種格式化。當我們創建分區時,就已經設置好了硬盤的各項物理參數,指定了硬盤主引導記錄(即MasterBootRecord,一般簡稱為MBR)和引導記錄備份的存放位置。而對于文件系統以及其他操作系統管理硬盤所需要的信息則是通過之后的高級格式化,即Format命令來實現。 硬盤分區后,將會被劃分為面、磁道和扇區。需要注意的是,這些只是個虛擬的概念,并不是真正在硬盤上劃道子^_^。先從面說起,硬盤一般是由一片或幾片圓形薄膜疊加而成。我們所說,每個圓形薄膜都有兩個"面"(Side),這兩個面都是用來存儲數據的。按照面的多少,依次稱為0面、1面、2面……由于每個面都專有一個讀寫磁頭,也常用0頭(head)、1頭……稱之。按照硬盤容量和規格的不同,硬盤面數(或頭數)也不一定相同,少的只有2面,多的可達數十面。各面上磁道號相同的磁道合起來,稱為一個柱面(cylinder)。 上面我們提到了磁道的概念。那么究竟何為磁道呢?大家都知道,讀寫硬盤時,磁頭依靠磁盤的高速旋轉引起的空氣動力效應懸浮在盤面上,與盤面的距離不到1微米(約為頭發直徑的百分之一)。由于磁盤是旋轉的,則連續寫入的數據是排列在一個圓周上的。我們稱這樣的圓周為一個磁道(Track)。如果讀寫磁頭沿著圓形薄膜的半徑方向移動一段距離,以后寫入的數據又排列在另外一個磁道上。 根據硬盤規格的不同,磁道數可以從幾百到數千不等;一個磁道上可以容納數KB的數據,而主機讀寫時往往并不需要一次讀寫那么多,于是,磁道又被劃分成若干段,每段稱為一個扇區(Sector)。一個扇區一般存放512字節的數據。扇區也需要編號,同一磁道中的扇區,分別稱為1扇區,2扇區。。。。這里需要注意的是,硬盤在劃分扇區時,和一般的軟盤有一定的區別。軟盤的一個磁道中,扇區號依次編排,即2號與1號相鄰,3號與2號相鄰,以此類推。而在硬盤的一個磁道中,扇區號是按照某個間隔跳躍著編排的。我們舉一個例子來說明:在某個硬盤上,以實際存儲位置而論,2號扇區并不是1號扇區后的第一個,而是第5個,3號扇區又是2號扇區后的第5個,以此類推。這個"5"就是我們說的交叉因子。當然,這個交叉因子的設定并不是絕對的,每個種類的硬盤為根據自身的情況加以變化。選擇適當的交叉因子,可使硬盤驅動器讀寫扇區的速度與硬盤的旋轉速度相匹配,提高存儲數據的速度。 計算機對硬盤的讀寫,處于效率的考慮,是以扇區為基本單位的。即使計算機只需要硬盤上存儲的某個字節,也必須一次把這個字節所在的扇區中的512字節全部讀入內存,再使用所需的那個字節。不過,在上文中我們也提到,硬盤上面、磁道、扇區的劃分表面上是看不到任何痕跡的,雖然磁頭可以根據某個磁道的應有半徑來對準這個磁道,但怎樣才能在首尾相連的一圈扇區中找出所需要的某一扇區呢?原來,每個扇區并不僅僅是由512個字節組成的,在這些由計算機存取的數據的前、后兩端,都另有一些特定的數據,這些數據構成了扇區的界限標志,標志中含有扇區的編號和其他信息。計算機就憑借著這些標志來識別扇區。 五、硬盤的數據結構 硬盤上的數據按照其不同的特點和作用大致可分為5部分:MBR區、DBR區、FAT區、DIR區和DATA區。我們來分別介紹一下: (1)MBR區 MBR(Main Boot Record),按其字面上的理解即為主引導記錄區,位于整個硬盤的0磁道0柱面1扇區。不過,在總共512字節的主引導扇區中,MBR只占用了其中的446個字節(偏移0--偏移1BDH),另外的64個字節(偏移1BEH--偏移1FDH)交給了DPT(Disk Partition Table硬盤分區表)(見下表),最后兩個字節"55,AA"(偏移1FEH- 偏移1FFH)是分區的結束標志。這個整體構成了硬盤的主引導扇區。 主引導記錄中包含了硬盤的一系列參數和一段引導程序。其中的硬盤引導程序的主要作用是檢查分區表是否正確并且在系統硬件完成自檢以后引導具有激活標志的分區上的操作系統,并將控制權交給啟動程序。MBR是由分區程序(如Fdisk.com)所產生的,它不依賴任何操作系統,而且硬盤引導程序也是可以改變的,從而實現多系統共存。 偏移 長度 所表達的意義 0 字節 分區狀態:如0-->非活動分區        80--> 活動分區 1 字節 該分區起始頭(HEAD) 2 字 該分區起始扇區和起始柱面 4 字節 該分區類型:如82--> Linux Native分區        83--> Linux Swap 分區 5 字節 該分區終止頭(HEAD) 6 字 該分區終止扇區和終止柱面 8 雙字 該分區起始絕對分區 C 雙字 該分區扇區數 下面,我們以一個實例讓大家更直觀地來了解主引導記錄: 例:80 01 01 00 0B FE BF FC 3F 00 00 00 7E 86 BB 00 在這里我們可以看到,最前面的"80"是一個分區的激活標志,表示系統可引導;"01 01 00"表示分區開始的磁頭號為01,開始的扇區號為01,開始的柱面號為00;"0B"表示分區的系統類型是FAT32,其他比較常用的有04(FAT16)、07(NTFS);"FE BF FC"表示分區結束的磁頭號為254,分區結束的扇區號為63、分區結束的柱面號為764;"3F 00 00 00"表示首扇區的相對扇區號為63;"7E 86 BB 00"表示總扇區數為12289622。 (2)DBR區 DBR(Dos Boot Record)是操作系統引導記錄區的意思。它通常位于硬盤的0磁道1柱面1扇區,是操作系統可以直接訪問的第一個扇區,它包括一個引導程序和一個被稱為BPB(Bios Parameter Block)的本分區參數記錄表。引導程序的主要任務是當MBR將系統控制權交給它時,判斷本分區跟目錄前兩個文件是不是操作系統的引導文件(以DOS為例,即是Io.sys和Msdos.sys)。如果確定存在,就把其讀入內存,并把控制權 交給該文件。BPB參數塊記錄著本分區的起始扇區、結束扇區、文件存儲格式、硬盤介質描述符、根目錄大小、FAT個數,分配單元的大小等重要參數。 (3)FAT區 在DBR之后的是我們比較熟悉的FAT(File Allocation Table文件分配表)區。在解釋文件分配表的概念之前,我們先來談談簇(cluster)的概念。文件占用磁盤空間時,基本單位不是字節而是簇。簇的大小與磁盤的規格有關,一般情況下,軟盤每簇是1個扇區,硬盤每簇的扇區數與硬盤的總容量大小有關,可能是4、8、16、32、64…… 通過上文我們已經知道,同一個文件的數據并不一定完整地存放在磁盤的一個連續的區域內,而往往會分成若干段,像一條鏈子一樣存放。這種存儲方式稱為文件的鏈式存儲。硬盤上的文件常常要進行創建、刪除、增長、縮短等操作。這樣操作做的越多,盤上的文件就可能被分得越零碎(每段至少是1簇)。但是,由于硬盤上保存著段與段之間的連接信息(即FAT),操作系統在讀取文件時,總是能夠準確地找到各段的位置并正確讀出。不過,這種以簇為單位的存儲法也是有其缺陷的。這主要表現在對空間的利用上。每個文件的最后一簇都有可能有未被完全利用的空間(稱為尾簇空間)。一般來說,當文件個數比較多時,平均每個文件要浪費半個簇的空間。 好了,我們言歸正傳,為了實現文件的鏈式存儲,硬盤上必須準確地記錄哪些簇已經被文件占用,還必須為每個已經占用的簇指明存儲后繼內容的下一個簇的簇號,對一個文件的最后一簇,則要指明本簇無后繼簇。這些都是由FAT表來保存的,表中有很多表項,每項記錄一個簇的信息。 由于FAT對于文件管理的重要性,所以FAT有一個備份,即在原FAT的后面再建一個同樣的FAT。初形成的FAT中所有項都標明為"未占用",但如果磁盤有局部損壞,那么格式化程序會檢測出損壞的簇,在相應的項中標為"壞簇",以后存文件時就不會再使用這個簇了。FAT的項數與硬盤上的總簇數相當,每一項占用的字節數也要與總簇數相適應,因為其中需要存放簇號。FAT的格式有多種,最為常見和為讀者所熟悉的是FAT16和FAT32,其中FAT16是指文件分配表使用16位數字,由于16位分配表最多能管理65536(即2的16次方)個簇,也就是所規定的一個硬盤分區。 由于每個簇的存儲空間最大只有32KB,所以在使用FAT16管理硬盤時,每個分區的最大存儲容量只有(65536×32 KB)即2048MB,也就是我們常說的2G?,F在的硬盤容量是越來越大,由于FAT16對硬盤分區的容量限制,所以當硬盤容量超過2G之后,用戶只能將硬盤劃分成多個2G的分區后才能正常使用,為此微軟公司從Windows 95 OSR2版本開始使用FAT32標準,即使用32位的文件分配表來管理硬盤文件,這樣系統就能為文件分配多達4294967296(即2的32次方)個簇,所以在簇同樣為32KB時每個分區容量最大可達65G以上。此外使用FAT32管理硬盤時,每個邏輯盤中的簇長度也比使用FAT16標準管理的同等容量邏輯盤小很多。由于文件存儲在硬盤上占用的磁盤空間以簇為最小單位,所以某一文件即使只有幾十個字節也必須占用整個簇,因此邏輯盤的簇單位容量越小越能合理利用存儲空間。所以FAT32更適于大硬盤。 (4)DIR區 DIR(Directory)是根目錄區,緊接著第二FAT表(即備份的FAT表)之后,記錄著根目錄下每個文件(目錄)的起始單元,文件的屬性等。定位文件位置時,操作系統根據DIR中的起始單元,結合FAT表就可以知道文件在硬盤中的具體位置和大小了。 (5)數據(DATA)區 數據區是真正意義上的數據存儲的地方,位于DIR區之后,占據硬盤上的大部分數據空間。 六、硬盤的工作模式 現在主板支持三種硬盤工作模式:NORMAL、LBA和LARGE模式。 NORMAL普通模式是最早的IDE方式。在此方式下對硬盤訪問時,BIOS和IDE控制器對參數不作任何轉換。該模式支持的最大柱面數為1024,最大磁頭數為16,最大扇區數為63,每扇區字節數為512。因此支持最大硬盤容量為:512×63×16×1024=528MB。在此模式下即使硬盤的實際物理容量更大,但可訪問的硬盤空間也只能是528MB。 LBA(Logical Block Addressing)邏輯塊尋址模式。這種模式所管理的硬盤空間突破了528KB的瓶頸,可達8.4GB。在LBA模式下,設置的柱面、磁頭、扇區等參數并不是實際硬盤的物理參數。在訪問硬盤時,由IDE控制器把由柱面、磁頭、扇區等參數確定的邏輯地址轉換為實際硬盤的物理地址。在LBA模式下,可設置的最大磁頭數為255,其余參數與普通模式相同。由此可計算出可訪問的硬盤容量為:512×63×255×1024=8.4GB。   LARGE大硬盤模式。當硬盤的柱面超過1024而又不為LBA支持時可采用此種模式。LARGE模式采取的方法是把柱面數除以2,把磁頭數乘以2,其結果總容量不變。例如,在NORMAL模式下柱面數為1220,磁頭數為16,進入LARGE模式則柱面數為610,磁頭數為32。這樣在DOS看來柱面數小于1024,即可正常工作。目前基本上只有LBA有實際意義了。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>