国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

Linux 磁盤結(jié)構(gòu)

2016-12-14 18:16:25 9393

磁盤結(jié)構(gòu)


扇區(qū),磁道,柱面和磁頭數(shù)


  硬盤最基本的組成部分是由堅(jiān)硬金屬材料制成的涂以磁性介質(zhì)的盤片,不同容量硬盤的盤片數(shù)不等。每個(gè)盤片有兩面,都可記錄信息。每個(gè)磁道被分成許多扇形的區(qū)域,每個(gè)區(qū)域叫一個(gè)扇區(qū),每個(gè)扇區(qū)可存儲(chǔ)128×2的N次方(N=0.1.2.3)字節(jié)信息。在DOS中每扇區(qū)是128×2的2次方=512字節(jié),盤片表面上以盤片中心為圓心,不同半徑的同心圓稱為磁道。硬盤中,不同盤片相同半徑的磁道所組成的圓柱稱為柱面。磁道與柱面都是表示不同半徑的圓,在許多場(chǎng)合,磁?和柱面可以互換使用,我們知道,每個(gè)磁盤?兩個(gè)面,每個(gè)面都有一個(gè)磁頭,習(xí)慣用磁頭號(hào)來(lái)區(qū)分。扇區(qū),磁道(或柱面)和磁頭數(shù)構(gòu)成了硬盤結(jié)構(gòu)的基本參數(shù),幫這些 參數(shù)可以得到硬盤的容量,基計(jì)算公式為:
  存儲(chǔ)容量=磁頭數(shù)×磁道(柱面)數(shù)×每道扇區(qū)數(shù)×每扇區(qū)字節(jié)數(shù)

  其中整個(gè)磁盤的第一個(gè)扇區(qū)最重要(第一個(gè)扇區(qū)位于外圈。外圈周長(zhǎng)總大于內(nèi)圈周長(zhǎng),也即外圈存儲(chǔ)密度要小些,可靠性高些。),因?yàn)樗涗泝蓚€(gè)重要信息:

  • 主要啟動(dòng)記錄區(qū)(Master Boot Record,MBR)可以安裝開(kāi)?管理程序的地方,有446byte

  • 分割表:記錄整個(gè)磁盤分割的狀態(tài),有64byte

  MBR?重要,因?yàn)橄到y(tǒng)開(kāi)機(jī)的時(shí)候會(huì)主動(dòng)去讀取這個(gè)區(qū)塊的內(nèi)容,這樣系統(tǒng)才知道如何開(kāi)機(jī),如果你安裝了多重引導(dǎo)的系統(tǒng),MBR都會(huì)有記錄。

  分割表,一個(gè)磁盤只有先進(jìn)行分割,才能拿來(lái)被使用


磁盤分區(qū)表(分割表):

  前面看到的開(kāi)始和結(jié)束磁柱,那是文件系統(tǒng)的最小單位,也就是分隔槽的最小單位。

  同時(shí)可以看出第一個(gè)扇區(qū)是在分區(qū)之外的

  假設(shè)上面的硬盤裝置文件名為/dev/hda,那么這四個(gè)分隔槽?Linux系統(tǒng)中如下

  • P1 /dev/hda1

  • P2 /dev/hda2

  • P3 /dev/hda3

  • P4 /dev/hda4

  當(dāng)操作系統(tǒng)是window,代號(hào)就分別是C,D,E,F

  由于分隔表只有64字節(jié),而每個(gè)分區(qū)需要16字節(jié)來(lái)表示,所以最多只能容納四個(gè)分割,這四個(gè)分割叫做主分區(qū)或者擴(kuò)展分區(qū)

  • 其實(shí)所謂的『分割』叧是針對(duì)那個(gè) 64 bytes 的分割表進(jìn)行設(shè)定而已

  • 硬盤默訃的分割表僅能寫入四組分割信息

  • 這四組分割信息我們稱為主要(Primary)或者擴(kuò)展分區(qū)(Extended)分割槽

  • 分割槽的最小單位為磁柱(cylinder)

  • 當(dāng)系統(tǒng)要寫入磁盤時(shí),一定會(huì)參考磁盤分區(qū)表,才能針對(duì)某個(gè)分割槽進(jìn)行數(shù)據(jù)癿處理


為什么要分割:

1. 數(shù)據(jù)的安全性:
  因?yàn)槊總€(gè)分割槽的數(shù)據(jù)是分開(kāi)的!所以,當(dāng)你需要將某個(gè)分割槽的數(shù)據(jù)重整時(shí),例如你要將計(jì)算機(jī)中 Windows 癿 C 槽重新安裝一次系統(tǒng)時(shí), 可以將其他重要數(shù)據(jù)移動(dòng)到其他分割槽,例如將郵件、桌面數(shù)據(jù)移勱到 D 槽去,那舉 C 槽重灌系統(tǒng)幵丌會(huì)影響到 D 槽! 所以善用分割槽,可以數(shù)據(jù)更安全。

2. 系統(tǒng)的效能考慮:
  由二分割槽將數(shù)據(jù)集中在某個(gè)磁柱的區(qū)段,例如上圖當(dāng)中第一個(gè)分割槽位二磁柱號(hào)碼 1~100號(hào),如此一來(lái)當(dāng)有數(shù)據(jù)要讀取自該分割槽時(shí), 磁盤叧會(huì)搜尋前面 1~100 的磁柱范圍,由二數(shù)據(jù)集中了,將有助于數(shù)據(jù)讀取癿速度效能!所以說(shuō),分割是很重?癿!


邏輯分區(qū)

  既然分割表叧有記錄四組數(shù)據(jù)的空間,那舉是否代表我一顆硬盤最多只能分割出四個(gè)分割槽?當(dāng)然不是啦!一顆硬盤分割成十個(gè)以上的分割槽的!那又是如何達(dá)到呢?在Windows/Linux 系統(tǒng)?, 我們是透過(guò)剛剛談到的延伸(擴(kuò)展)分割(Extended)的方式來(lái)處理癿啦!擴(kuò)展分割的想法是:既然第一個(gè)分區(qū)所在的分割表只能記錄四個(gè)數(shù)據(jù), 那我可否利用額外癿分區(qū)來(lái)記錄更多的分割信息?實(shí)際上圖示有點(diǎn)像底下這樣:


  在上圖當(dāng)中,我們知道硬盤的四個(gè)分割記錄區(qū)僅使用到兩個(gè),P1 為主要分割,而 P2 則為擴(kuò)展分割。請(qǐng)注意, 擴(kuò)展目的是使用額外的分區(qū)來(lái)記錄分割信息擴(kuò)展分割本身并不能被拿來(lái)格式化。 然后我們可以透過(guò)擴(kuò)展分割所指向的那個(gè)區(qū)塊繼續(xù)作分割的記錄。


  如上圖右下方那個(gè)區(qū)塊有繼續(xù)分割出五個(gè)分割槽, 這五個(gè)由擴(kuò)展分割繼續(xù)切出來(lái)的分割槽,就被稱為邏輯分割槽(logical partition)。 同時(shí)注意一下,由于邏輯分割槽是由擴(kuò)展分割繼續(xù)分割出來(lái)的,所以他可以使用的磁柱范圍就是擴(kuò)展分割所設(shè)定的范圍喔! 也就是圖中的 101~400 啦!

  同樣癿,上述的分割槽在 Linux 系統(tǒng)中癿裝置文件名分別如下:

  • P1:/dev/hda1

  • P2:/dev/hda2

  • L1:/dev/hda5

  • L2:/dev/hda6

  • L3/dev/hda7

  • L4:/dev/hda8

  • L5:/dev/hda9

  怎么么有裝置文件名沒(méi)有/dev/hda3 不/dev/hda4 呢?因?yàn)榍懊嫠膫€(gè)號(hào)碼都是保留給 主分區(qū)和擴(kuò)展分區(qū)嘛! 所以邏輯分割槽的裝置名稱號(hào)碼就由 5 號(hào)開(kāi)始了!這是個(gè)很?要癿特性!

  window下C盤是主分區(qū),DEFGH等等都是擴(kuò)展分區(qū)下的一個(gè)邏輯分區(qū)(能格式化,能直接拿來(lái)使用的要么是主?區(qū),要么是邏輯分區(qū)

  主要分割、擴(kuò)展分割,與邏輯分割的特性我們作個(gè)簡(jiǎn)單的定義:

  1.  主要分割不延伸分割最多可以有四筆(硬盤的限制)

  2.  擴(kuò)展分割最多只能能有一個(gè)(操作系統(tǒng)的限制)

  3.  邏輯分割是由擴(kuò)展分割持續(xù)切割出來(lái)的分割槽;

  4.  能夠被格式化后,作為數(shù)據(jù)存取的分割槽為主要分割和邏輯分割。擴(kuò)展分割無(wú)法格式化;

  5.  邏輯分割的數(shù)量依操作系統(tǒng)而不同,在 Linux ?統(tǒng)中,IDE 硬盤最多有 59 個(gè)邏輯分割(5 號(hào)到63 號(hào)), SATA 硬盤則有 11 個(gè)邏輯分割(5 號(hào)到 15 號(hào))

  分割是個(gè)很麻煩的東西,因?yàn)樗?span style="box-sizing: border-box; color: rgb(0, 0, 255);">以磁柱為單位的『連續(xù)』磁盤空間, 擴(kuò)展分割又是個(gè)類似獨(dú)立?磁盤空間,所以在分割的時(shí)候得要特別注意。

  如果擴(kuò)展分區(qū)被破壞,那么它所有的邏輯分區(qū)將被刪除,因?yàn)檫壿嫹指钍怯涗浽跀U(kuò)展分區(qū)里的。


? 所以總的來(lái)說(shuō),如果一個(gè)磁盤的第一個(gè)扇區(qū)物理實(shí)體壞掉了,那么這個(gè)磁盤也就木有用處了。 因?yàn)橄到y(tǒng)如果找不到分割表,怎知道如何讀取磁柱區(qū)間呢

舉個(gè)栗子:

  假如我的PC 有兩顆 SATA 硬盤,我想在第二顆硬盤分割出 6 個(gè)可用的分割槽(可以存取數(shù)據(jù)), 那每個(gè)分割槽在 Linux 系統(tǒng)下癿裝置文件名為何?且分割類型各為何?至少寫出兩種不同的分割方式。
答:
  由于P(primary)+E(extended)最多只能有四個(gè),其中 E 最多只能有一個(gè)?,F(xiàn)在題目要求 6個(gè)可用分割槽,因此不可能分出四個(gè) P。 底下我們假設(shè)兩種環(huán)境,一種是將前四號(hào)全部用完,一種是僅花費(fèi)一個(gè) P 及一個(gè) E 的情況(window經(jīng)典分割方式):
? P+P+P+E 環(huán)境:

  P+E:

  


開(kāi)機(jī)程序

  操作系統(tǒng)也是軟件,那開(kāi)機(jī)的時(shí)候我的計(jì)算機(jī)是如何認(rèn)識(shí)這個(gè)操作系統(tǒng)軟件并執(zhí)行他的? 明明開(kāi)機(jī)時(shí)我的計(jì)算機(jī)還沒(méi)有任何軟件系統(tǒng),那他要如何讀取硬盤內(nèi)的操作系統(tǒng)檔案呢

  • CMOS 是記錄各項(xiàng)硬件參數(shù)且?入在主板上面癿儲(chǔ)存器

  • BIOS 則是一個(gè)寫入到主板上癿一個(gè)韌體( 韌體就是寫入到硬件上的一個(gè)軟件程序)

  這個(gè) BIOS 就是在開(kāi)機(jī)的時(shí)候,計(jì)算機(jī)系統(tǒng)會(huì)主動(dòng)執(zhí)行癿第一個(gè)程序了

  接下來(lái) BIOS 會(huì)去分析計(jì)算機(jī)里面有哪些儲(chǔ)存設(shè)備,我們以硬盤為例,BIOS 會(huì)依據(jù)使用者的設(shè)定去取得能夠開(kāi)機(jī)的硬盤(或者U盤,磁盤。BIOS可以設(shè)定開(kāi)機(jī)順序), 并且到該硬盤里面去讀取第一個(gè)扇區(qū)的MBR 位置。 MBR 這個(gè)僅有 446 bytes 的硬盤容量里面會(huì)放置最基本的開(kāi)機(jī)管理程序, 此時(shí) BIOS 就功成園滿,而接下來(lái)就是 MBR 內(nèi)的開(kāi)機(jī)管理程序的工作了。
  這個(gè)開(kāi)機(jī)管理程序的目的是在加載(load)核心檔案, 開(kāi)機(jī)管理程序是操作系統(tǒng)在安裝的時(shí)候所提供,所以他會(huì)認(rèn)識(shí)硬盤內(nèi)的文件系統(tǒng)格式,因此就能夠讀取核心檔案, 然后接下來(lái)就是核心檔案的工作,開(kāi)機(jī)管理程序也功成園滿,然后就是大家所知道的操作系統(tǒng)的任務(wù)啦!

  1. BIOS:開(kāi)機(jī)主動(dòng)執(zhí)行的韌體,會(huì)認(rèn)識(shí)第一個(gè)可開(kāi)機(jī)的裝置
  2. MBR:第一個(gè)可開(kāi)機(jī)裝置的第一個(gè)扇區(qū)內(nèi)癿?要啟動(dòng)記錄區(qū)塊,內(nèi)含開(kāi)機(jī)管理程序
  3. 開(kāi)機(jī)管理程序(boot loader):一支可讀取核心檔案來(lái)執(zhí)行的軟件
  4. 核心檔案:開(kāi)始操作系統(tǒng)的功能


  這個(gè) boot loader 癿主要任務(wù)有底下這些項(xiàng)目:

  •  提供選單:用戶可以選擇不同的開(kāi)機(jī)項(xiàng)目,這也是多重引導(dǎo)的重要功能!

  • 載入核心檔案:直接指向可開(kāi)機(jī)的程序區(qū)段來(lái)開(kāi)始操作系統(tǒng);

  • 轉(zhuǎn)交其他 loader:將開(kāi)機(jī)管理功能轉(zhuǎn)交給其他 loader 負(fù)責(zé)。

  第三點(diǎn)不好理解,其實(shí)同時(shí)還有一點(diǎn)狠狠重要

  • 開(kāi)機(jī)需要管理程序

  • 開(kāi)機(jī)管理程序可以安裝在MBR和每個(gè)分割槽的啟動(dòng)扇區(qū)(boot sector)

  

  其實(shí)可以理解的是一個(gè)磁盤不知?個(gè)MBR功能區(qū),只不過(guò)MBR是第一個(gè)扇區(qū)的主要啟動(dòng)記錄區(qū)塊,內(nèi)含開(kāi)機(jī)啟動(dòng)程序,但是其他分割槽還有各別的啟動(dòng)扇區(qū)!這個(gè)特色就能造就多重引導(dǎo)的功能??!

  假設(shè)個(gè)人計(jì)算機(jī)只有一個(gè)硬盤,里面切成四個(gè)分割槽,其中第一、二分割槽分別安裝了 Windows 及 Linux, 你要如何在開(kāi)機(jī)的時(shí)候選擇用 Windows 還是 Linux 開(kāi)機(jī)呢?假設(shè)MBR 內(nèi)安裝的是可同時(shí)認(rèn)識(shí) Windows/Linux 操作系統(tǒng)的開(kāi)機(jī)管理程序, 那舉整個(gè)流程可以圖標(biāo)如下:

  圖中藍(lán)色小方塊是各個(gè)分區(qū)的啟動(dòng)扇區(qū)(內(nèi)可能含開(kāi)機(jī)啟動(dòng)程序),橙色小方塊是各個(gè)分區(qū)的核心檔案。

  MBR內(nèi)含開(kāi)機(jī)啟動(dòng)程?,可以直接指向某個(gè)分區(qū)的核心檔案,也可以指向某個(gè)分區(qū)的啟動(dòng)扇區(qū)

Linux的開(kāi)?啟動(dòng)程序一般就是Grub軟件

  在上圖中我們可以看出,MBR 的開(kāi)機(jī)管理程序提供兩個(gè)選單,選單一(M1)可以直接加載 Windows 的核心檔案來(lái)開(kāi)機(jī); 選單二(M2)則是將開(kāi)機(jī)管理工作交給第二個(gè)分割槽的啟動(dòng)扇區(qū)(boot sector)。當(dāng)使用者在開(kāi)機(jī)時(shí)候選擇選單二時(shí), 那舉整個(gè)開(kāi)?管理工作就會(huì)交給第二分割槽的開(kāi)機(jī)管理程序了。 當(dāng)?shù)诙€(gè)開(kāi)機(jī)管理程序啟動(dòng)后,該開(kāi)機(jī)管理程序內(nèi)(上圖中)僅有一個(gè)開(kāi)機(jī)選單,因此就能夠使用 Linux 的核心檔案來(lái)開(kāi)機(jī)。 這就是多重引導(dǎo)的工作情況啦!我們將上圖作個(gè)總結(jié):

  • 每個(gè)分割槽都擁有自己的啟動(dòng)扇區(qū)(boot sector)

  • 圖中的系統(tǒng)槽為第一及第二分割槽,

  •  實(shí)際可開(kāi)機(jī)的核心檔案是放置到各分割槽內(nèi)的!

  •  loader 只會(huì)認(rèn)識(shí)自己的系統(tǒng)槽內(nèi)的可開(kāi)機(jī)核心檔案,以及其他 loader 而已;

  •  loader 可直接指向或者是間接將管理權(quán)轉(zhuǎn)交給另一個(gè)管理程序。




  如果要安裝多重引導(dǎo), 最好先安裝 Windows 再安裝Linux呢?這是因?yàn)椋?/span>

  

       Linux 在安裝的時(shí)候,你可以選擇將開(kāi)機(jī)管理程序安裝在 MBR 或者其他分割槽的啟動(dòng)扇區(qū), 而且Linux 癿 loader 可以手動(dòng)設(shè)定選單(就是上圖的M1, M2...),所以你可以在 Linux 癿 boot loader(開(kāi)機(jī)啟動(dòng)程序) 里面加入 Windows 開(kāi)機(jī)的選項(xiàng)
? Windows 在安裝的時(shí)候,他的安裝程序會(huì)主動(dòng)的蓋掉 MBR 以及自己所在分割槽癿啟動(dòng)扇區(qū),你沒(méi)有選擇的機(jī)會(huì), 而他沒(méi)有譏我們自己選擇選單癿功能。
  因此,如果先安裝 Linux 再安裝 Windows 癿話,那 MBR 的開(kāi)機(jī)管理?序就只會(huì)有 Windows 的項(xiàng)目,而不會(huì)有 Linux 癿項(xiàng)目 (因?yàn)樵驹?MBR 內(nèi)的 Linux 癿開(kāi)機(jī)管理程序就會(huì)被覆蓋掉)。 那需要重新安裝 Linux 一次嗎?當(dāng)然不需要,你叧要用盡各種方法來(lái)處理 MBR 癿內(nèi)容即可。 例如利用全中文癿spfdisk(http://www.tjdsmy.cn/)軟件來(lái)安裝訃認(rèn)識(shí)Windows/Linux 癿管理程序, 也能夠利用Linux 癿救援來(lái)挽救 MBR 即可。


先裝了window再裝Linux,你的 Linux 不可以隨便的刪除! 因?yàn)?grub 會(huì)去讀取 Linux 根目錄下的/boot/目錄內(nèi)容,如果你將 Linux 移除了,你的 Windows 也就無(wú)法開(kāi)機(jī)了! 因?yàn)檎麄€(gè)開(kāi)機(jī)選單都會(huì)不見(jiàn)! 

總結(jié)


  • 磁盤的第一個(gè)扇區(qū)主要記錄了兩個(gè)重要信息,分別是: (1)主要啟動(dòng)記錄區(qū)(Master Boot Record, MBR):內(nèi)含開(kāi)機(jī)管理程序,有 446 bytes (2)分割表(partition table):記錄整個(gè)硬盤分割狀態(tài),有 64 bytes;

  • 第一個(gè)扇區(qū)是不加入分區(qū)的

  • 磁盤癿主要不延伸分割最多可以有四個(gè),逡輯分割癿裝置文件名號(hào)碼,一定由 5 號(hào)開(kāi)始;

  • 開(kāi)機(jī)的流程由:BIOS-->MBR-->-->boot loader(開(kāi)機(jī)啟動(dòng)程序)-->核心檔案;

  • boot loader 癿功能主要有:提供選單、加載核心、轉(zhuǎn)交控制權(quán)給其他 loader

  • boot loader 可以安裝癿地點(diǎn)有兩個(gè),分別是 MBR 不 boot sector(啟動(dòng)扇區(qū),在每一個(gè)分區(qū)中)




提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題: