【操作系统】系统引导
加載內(nèi)核以啟動計算機的過程,稱為系統(tǒng)引導boosting。
大多數(shù)計算機系統(tǒng)都有一小塊代碼,稱為引導程序或引導加載程序,這段代碼能夠定位內(nèi)核并且加載到內(nèi)存以開始執(zhí)行。
有的計算機系統(tǒng)采用的方式是兩步走:先用一個簡單的引導程序從磁盤上調(diào)入一個更復雜的引導程序,后者再加載到內(nèi)核。
當CPU收到一個重置事件時,例如上電開機或重新啟動,指令寄存器會加載某個預先定義的內(nèi)存位置,并從該位置開始執(zhí)行。該位置就是初始引導程序所在。該程序為ROM形式,因為系統(tǒng)啟動時RAM處于未知狀態(tài)。由于不需要初始化和不受計算機病毒的影響,用ROM是很方便的。
引導程序可以完成一系列任務。通常,有一個任務需要運行診斷程序來確定機器狀態(tài)。如果通過診斷,則程序可以繼續(xù)啟動步驟。引導程序也能初始化系統(tǒng)的所有方面:從CPU寄存器到設備控制器以及內(nèi)存內(nèi)容。最終,它啟動操作系統(tǒng)。
有些系統(tǒng),如手機、平板電腦和游戲控制器,將整個操作系統(tǒng)保存在ROM中。對于小型的操作系統(tǒng)、簡單的支持硬件和耐用的操作,將操作系統(tǒng)存儲在ROM中是適合的。該方法有一個問題:改動引導程序代碼需要改動ROM芯片。為了解決這個問題,有些系統(tǒng)采用可擦可編程只讀存儲器(EPROM),這是一種ROM,但當明確給定一個命令時就會變?yōu)榭蓪懙摹K行问降腞OM都是固件(firmware),因為它的特性介于硬件與軟件之間。通常,固件存在的問題是:執(zhí)行代碼比在RAM中慢。有些系統(tǒng)將操作系統(tǒng)保存在固件中,而在要執(zhí)行時將其復制到RAM中,以便執(zhí)行更快。固件的最后一個問題是相對較貴,所以通常只有少量可用。
對大型操作系統(tǒng)(包括大多數(shù)的通用操作系統(tǒng),如 Windows、Mac OS X和 UNIX)或經(jīng)常改變的系統(tǒng),引導程序存放在固件上
總結
以上是生活随笔為你收集整理的【操作系统】系统引导的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【JSON】JSON入门详解(二)
- 下一篇: 【操作系统】信号量的用法