新聞中心

EEPW首頁 > 網(wǎng)絡(luò)與存儲 > 設(shè)計(jì)應(yīng)用 > 硬盤基礎(chǔ)知識之磁盤分區(qū)

硬盤基礎(chǔ)知識之磁盤分區(qū)

作者: 時(shí)間:2017-12-07 來源:網(wǎng)絡(luò) 收藏

  磁盤的分區(qū)

本文引用地址:http://butianyuan.cn/article/201712/372677.htm

  裝過系統(tǒng)的人都知道必須要分區(qū)后才能安裝系統(tǒng),形象點(diǎn)的說比如windows里C:,D:之類的東西;如果你要問為什么要分區(qū),我也說不上來很嚴(yán)格的原因,首先從使用習(xí)慣上來講,我們不希望數(shù)據(jù)雜亂無章堆積在一起,其次,如果不分區(qū),如何才能在一塊上使用不同的文件系統(tǒng)(下面講到)呢,學(xué)院派的說法是:數(shù)據(jù)安全和性能考慮。

  先要說中最最重要的第一扇區(qū),因?yàn)檎麎K硬盤的重要信息都在這里:

  MBR(Master Boot Record 主啟動記錄):開機(jī)引導(dǎo)程序就在安裝在此,占用446byte;

  DPT(Disk Partition table 硬盤分區(qū)表):記錄硬盤上的分區(qū)元信息,占用64byte。

  MBR是如何工作的呢,不用深究,反正就是系統(tǒng)開始時(shí)會主動讀取數(shù)據(jù)的地方,這樣才能引導(dǎo)進(jìn)行操作系統(tǒng)的啟動;

  DPT要仔細(xì)的講講,分區(qū)的大致意思就如同搶地盤,不過人家比較規(guī)矩,按照柱面(最小的分區(qū)單位)分配,比如第一個(gè)分區(qū)從柱面1-200,第二個(gè)分區(qū)201-500,但三個(gè)分區(qū)501-1000...(省略并非可以無限分配下去哦)

    

 

    

 

  為啥說不能一直分配下去呢,技術(shù)柱面數(shù)量足夠,因?yàn)樯厦嬲f到硬盤分區(qū)表只有64個(gè)字節(jié),每條分區(qū)記錄需要占用16字節(jié),最多只能分4個(gè),疑問在此:我的電腦怎么分了5個(gè)(cdefg)?

  其實(shí)我說的4個(gè)分區(qū)是所謂的主分區(qū),為了能支持很多分區(qū)引入了擴(kuò)展分區(qū)的概念, 也就是說,可以使用DPT中一條記錄來記錄擴(kuò)展分區(qū)的信息,然后在擴(kuò)展分區(qū)中再繼續(xù)劃分邏輯分區(qū),而邏輯分區(qū)的分區(qū)信息則記錄在擴(kuò)展分區(qū)的第一個(gè)扇區(qū)中,如此則可以像鏈表一樣劃分出很多分區(qū)來。但注意,一個(gè)分區(qū)表中可以有1~4條主分區(qū),但是最多只能有1個(gè)擴(kuò)展分區(qū)

    

 

    

 

  分區(qū)表之間是如何關(guān)聯(lián)的,詳細(xì)講一下,分區(qū)表是一個(gè)單向鏈表,第一個(gè)分區(qū)表,也就是位于硬盤第一個(gè)扇區(qū)中的DPT,可以有一項(xiàng)記錄擴(kuò)展分區(qū)的起始位置柱面,類似于指針的概念,指向擴(kuò)展分區(qū)(圖3),根據(jù)這項(xiàng)記錄我們可以找到擴(kuò)展分區(qū)的某柱面0磁頭1扇區(qū)(CHS),而這個(gè)扇區(qū)中又存放了第二個(gè)分區(qū)表,第二個(gè)分區(qū)表第一項(xiàng)記錄一般表述了當(dāng)前所在的邏輯分區(qū)的起始/終止柱面,第二項(xiàng)記錄表述了下一個(gè)邏輯分區(qū)所在的0磁頭1扇區(qū)(CHS),第三、第四項(xiàng)記錄不存任何信息(圖4)。

  請看下圖,主引導(dǎo)記錄/分區(qū)表所在的是硬盤第一個(gè)分區(qū),基本分區(qū)1、基本分2、基本分區(qū)3都是主分區(qū)、擴(kuò)展分區(qū)內(nèi)有2個(gè)邏輯分區(qū),每個(gè)邏輯分區(qū)的第一個(gè)扇區(qū)都是分區(qū)表。

    

 

  分區(qū)后的系統(tǒng)啟動

  之前提到MBR中安裝的引導(dǎo)加載程序,他的作用是什么?

 ?、?nbsp;提供開機(jī)菜單選項(xiàng):可以供用戶選擇啟動哪個(gè)操作系統(tǒng),這是多重引導(dǎo)功能。

  ② 加載操作系統(tǒng)內(nèi)核:每個(gè)操作系統(tǒng)都有自己的內(nèi)核,需要引導(dǎo)程序來加載

 ?、?nbsp;轉(zhuǎn)交給其他引導(dǎo)程序:可以將工作移交給其他引導(dǎo)程序來進(jìn)行上述操作。

  其實(shí)引導(dǎo)加載程序除了可以安裝在MBR中,還可以直接安裝在每個(gè)分區(qū)的引導(dǎo)扇區(qū)(DBR)中,注意下,每個(gè)分區(qū)(主分區(qū)、邏輯分區(qū))都有一個(gè)自己的啟動扇區(qū),專門用來安裝引導(dǎo)加載程序,如上圖表3。

  系統(tǒng)啟動過程:

 ?、?nbsp;首先,BIOS啟動后,讀取硬盤第一個(gè)扇區(qū)MBR中的引導(dǎo)加載程序(可能是windows或者linux的grub)

 ?、?nbsp;MBR中的引導(dǎo)程序提供開機(jī)菜單,你可以選擇1)直接加載windows 內(nèi)核 2)將工作轉(zhuǎn)交給windows 分區(qū)內(nèi)的引導(dǎo)扇區(qū)中的加載程序,讓他自己去加載內(nèi)核 3)轉(zhuǎn)交給linux分區(qū)內(nèi)引導(dǎo)扇區(qū),讓他去加載linux.

 ?、?nbsp;根據(jù)用戶選擇的選項(xiàng)和引導(dǎo)加載程序中記錄的分區(qū),到分區(qū)表找對應(yīng)的分區(qū)柱面號等分區(qū)信息,啟動內(nèi)核或者分區(qū)加載程序。

  Window安裝時(shí)默認(rèn)會自動將MBR和windows所在分區(qū)的引導(dǎo)扇區(qū)都裝上引導(dǎo)程序,而不會提供任何選項(xiàng)給用戶選擇,因此如果之前裝過其他操作系統(tǒng),然后再另外裝一個(gè)windows時(shí),會把公用的MBR覆蓋掉,如此,原來的操作系統(tǒng)就無法啟動了。如果先裝windows,然后裝linux,linux 會覆蓋MBR,然后讓用戶選擇是否將windows等其他操作系統(tǒng)的啟動項(xiàng)添加進(jìn)來,如果你選擇了添加進(jìn)來,那么你在開機(jī)時(shí)就會有兩個(gè)選項(xiàng)讓用戶進(jìn)行選擇了。

  文件系統(tǒng)

  文件系統(tǒng)也是很大很復(fù)雜的話題,我們?nèi)匀灰员容^通俗、粗顆粒度來講解,試想一下,我們的文件如何對應(yīng)到磁盤的扇區(qū)上呢,所以光有底層的概念 磁道 扇區(qū)是沒有用的,需要更加抽象的數(shù)據(jù)類型或結(jié)構(gòu)來抽象底層的細(xì)節(jié)。

  文件系統(tǒng)是一套實(shí)現(xiàn)了數(shù)據(jù)的存儲、分級組織、訪問和獲取等操作的抽象數(shù)據(jù)類型(Abstract data type)。

  文件系統(tǒng)是一種用于向用戶提供底層數(shù)據(jù)訪問的機(jī)制。它將設(shè)備中的空間劃分為特定大小的塊(扇區(qū)),一般每塊512字節(jié)。數(shù)據(jù)存儲在這些塊中,大小被修正為占用整數(shù)個(gè)塊。由文件系統(tǒng)軟件來負(fù)責(zé)將這些塊組織為文件和目錄,并記錄哪些塊被分配給了哪個(gè)文件,以及哪些塊沒有被使用。

  不過,文件系統(tǒng)并不一定只在特定存儲設(shè)備上出現(xiàn)。它是數(shù)據(jù)的組織者和提供者,至于它的底層,可以是磁盤,也可以是其它動態(tài)生成數(shù)據(jù)的設(shè)備(比如網(wǎng)絡(luò)設(shè)備)。



關(guān)鍵詞: 硬盤 磁盤分區(qū)

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉