關於電腦的開機機制

2021-07-08 14:45:14 字數 2613 閱讀 6355

我們都了解,沒有執行軟體癿硬體是沒有用的,除了會電人之外..., 而為了計算機硬體系統的資源合理分配,因此有了作業系統這個系統軟體的產生。由於作業系統會控制所有的硬體並且提供核心功能, 因此我們的計算機就能夠認識硬碟內的檔案系統,並且進一步讀取硬碟內的軟體檔案不執行該軟體來達成各項軟體的執行目的。問題是,你有沒有發現,既然作業系統也是軟體,那麼我的計算機又是如何認識這個作業系統軟體並執行它的? 明明開機時我的計算機還沒有任何軟體系統,那他要如何讀取硬碟內的作業系統檔案啊?嘿嘿!這就得要牽涉到計算機的開機程式了! 下面就讓我們來談一談這個開機程式吧!

在計算機中有可愛的bios和cmos這兩個東西, cmos是記錄各項硬體引數並嵌入在主機板上面的儲存器,bios則是乙個寫入到主機板上的乙個韌體(再次說明, 韌體就是寫入到硬體上的乙個軟體程式)。這個bios就是在開機的時候,計算機系統會主動執行的第乙個程式了! 接下來bios會去分析計算機裡面有哪些儲存裝置,我們以硬碟為例,bios會依據使用者的設定去取得能夠開機的硬碟, 並到該硬碟裡面去讀取第乙個扇區的mbr位置。 mbr這個僅有446 bytes的硬碟容量裡面會放置最基本的開機管理程式, 此時bios就功成圓滿,而接下來就是mbr內的開機管理程式的工作了。 這個開機管理程式的目的是在載入(load)核心檔案, 由於開機管理程式是作業系統在安裝時所提供的,所以它會認識硬碟內的檔案系統格式,因此就能夠讀取核心檔案, 然後接下來就是核心檔案的工作,開機管理程式也功成圓滿,之後就是大家所知道的作業系統的任務啦! 簡單的說,整個開機流程到作業系統之前的動作應該是這樣的:

1. bios:開機主動執行的韌體,會認識第乙個可開機的裝置;

2. mbr:第乙個可開機裝置的第乙個扇區內的主要啟動記錄區塊,內含開機管理程式;

3. 開機管理程式(boot loader):一支可讀取核心檔案來執行的軟體;

4. 核心檔案:開始作業系統的功能

由上面的說明我們會知道,bios與mbr都是硬體本身會支援的功能,至於boot loader則是作業系統安裝在mbr上面的一套軟體了。由於mbr僅有446 bytes而已,因此這個開機管理程式是非常小而美的。 這個boot loader的主要任務有底下這些專案:

1.提供選單:使用者可以選擇不同的開機專案,這也是多重引導的重要功能!

2. 載入核心檔案:直接指向可開機的程式區段來開始作業系統;

3. 轉交其他loader:將開機管理功能轉交給其他loader負責。

上面前兩點還容易理解,但是第三點很有趣喔!那表示你的計算機系統裡面可能具有兩個以上的開機管理程式呢! 有可能嗎?我們的硬碟不是只有乙個mbr嗎?是沒錯啦!但是開機管理程式除了可以安裝在mbr之外, 還可以安裝在每個分割槽的啟動扇區(boot sector)喔!納尼?分割槽還有各自的啟動扇區喔? 沒錯啊!這個特色功能造就『多重引導』的功能啊! 我們舉乙個例子來說,假設你的個人計算機只有乙個硬碟,裡面切成四個分割槽,其中第

一、二分區分別安裝了windows及linux, 你要如何在開機的時候選擇用windows還是linux開機呢?假設mbr內安裝的是可同時認識windows/linux作業系統的開機管理程式, 那舉整個流程可以圖示如下:

在上圖中我們可以發現,mbr的開機管理程式提供兩個選單,選單一(m1)可以直接載入windows的核心檔案來開機; 選單二(m2)則是將開機管理工作交給第二個分割槽的啟動扇區(boot sector)。當使用者在開機的時候選擇選單二時, 那麼整個開機管理工作就會交給第二分割槽的開機管理程式了。 當第二個開機管理程式啟動後,該開機管理程式內(上圖中)僅有乙個開機選單,因此就能夠使用linux的核心檔案來開機囉。 這就是多重引導的工作情況啦!我們將上圖作個總結:

1. 每個分割槽都擁有自己的啟動扇區(boot sector)

2. 圖中的系統槽為第一及第二分割槽,

3. 實際可開機的核心檔案是放置到各分區內的!

4. loader只會認識自己的系統槽內的可開機核心檔案,以及其他loader而已;(感覺和資料結構的鍊錶有點像)

5.loader可直接指向或者是間接將管理權轉交給另乙個管理程式。

那現在想一想,為什麼人家常常說:『如果要安裝多重引導, 最好先安裝windows再安裝linux』呢?這是因為:

1.linux在安裝的時候,你可以選擇將開機管理程式安裝在mbr或各別分割槽的啟動扇區, 而且linux的loader可以手動設定選單(就是上圖的m1, m2...),所以你可以在linux的boot loader裡面加入windows開機的選項;

2.windows在安裝的時候,他的安裝程式會主動地覆蓋掉mbr以及自己所在分割槽的啟動扇區,你沒有選擇的機會, 而且他沒有讓我們自己選擇選單的功能。

因此,如果先安裝linux再安裝windows的話,那mbr的開機管理程式就叧會有windows的專案,而不會有linux的專案 (因為原本在mbr內的linux的開機管理程式就會被覆蓋掉)。 那需要重新安裝linux一次嗎?當然不需要,你只要用盡各種方法來處理mbr的內容即可。 例如利用全中文癿spfdisk(軟體來安裝認識windows/linux的管理程式, 也能夠利用linux的救援模式來挽救mbr即可。

乙個小小的電腦開機卻可以牽扯到這麼多的知識,本來覺的計算機原理課是一門水課,現在為了學習linux卻不得不返回去重新看過。感覺是有點印證了那句話「存在即合理」,不得不說先得了解機器才可以更加深入地學習計算機!

關於電腦開機自檢聲音的檢測

主機板報警聲 1 報警聲 1短 一聲短暫的聲音 表示系統正常啟動,機器沒有任何問題。2 報警聲 2短 常規錯誤,重新設定bios中不正確的選項。3 報警聲 1長1短 一聲長長的聲音和一聲短暫的聲音 ram或主機板出錯。換一條內在試試,若還是不行,只好更換主機板。4 報警聲 1長2短 顯示器或顯示卡錯...

電腦開機沒反應

電腦情況 按下開機鍵沒反應,電源風扇不轉,但是主機板燈亮沒有報錯 首先將cpu,電源,記憶體,顯示卡,顯示器,以外的都拆下進行排錯 1.檢查電源 將電源排線的綠黑兩根短接,電源風扇轉了正常,如果不轉就是電源壞了 2,檢查開機鍵 將電源按鍵拔出然後短接兩針 電腦啟動了就是開機鍵壞了,啟動不來就是其他問...

電腦開機報警聲

今天有朋友問我電腦開機了就報警,問我是什麼原因。相信很多人都遇到過這樣的問題。開機報警音很多種。award bios 1短 系統正常啟動。2短 常規錯誤。解決方法 重設bios。1長1短 ram或主機板出錯。1長2短 顯示器或顯示卡錯誤。1長3短 鍵盤控制器錯誤。1長9短 主機板flash ram或...