中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
圖解--計算機(jī)啟動流程(軟硬詳解)(二)_→劉━╋宬偉
2008/04/30 15:53

前言

   對了解計算機(jī)啟動有什么用呢?不就是按一個電源就OK了,這可能是很多新手不解的問題。沒這么簡單的,這其中涉及到了大量的軟硬知識,如果真正了解這樣原理會對你今后有很大的幫助。各位看官在看完了這貼之后,可能會頭昏,眼花,精神不振,至精神失常,七孔流血,不孕不育(呵呵打?。?。雖說真是有點不好理解,但是我相信大家在看了七七四十九遍之后一定會明白的。好了不開玩笑了,下面是主題


   計算機(jī)啟動過程是個很復(fù)雜的過程,它有一個非常完善的硬件自檢機(jī)制,在通電自檢短暫的幾秒鐘里,計算機(jī)要完成100多個檢測步驟。首先我們先來了解兩個概念:第一個是BIOS(基本輸入輸出系統(tǒng)),BIOS是一組被“固化”在計算機(jī)主板中,直接與硬件打交道的程序,計算機(jī)的啟動過程是在主板BIOS的控制下進(jìn)行的.BIOS包括有系統(tǒng)BIOS,即常說的主板BIOS.其它設(shè)備(例如IDE控制器、SCSI卡或網(wǎng)卡等的BIOS)其中系統(tǒng)BIOS是本文要討論的主角.因為計算機(jī)的啟動過程正是在它的控制下進(jìn)行的.


   第二個基本概念是內(nèi)存的地址,我們的機(jī)器中一般安裝有32MB、64MB或128MB內(nèi)存,這些內(nèi)存的每一個字節(jié)都被賦予了一個地址,以便CPU訪問內(nèi)存。32MB的地址范圍用十六進(jìn)制數(shù)表示就是0~1FFFFFFH,其中0~FFFFFH的低端1MB內(nèi)存非常特殊,因為最初的8086處理器能夠訪問的內(nèi)存最大只有1MB,這1MB的低端640KB被稱為基本內(nèi)存,而A0000H~BFFFFH要保留給顯示卡的顯存使用,C0000H~FFFFFH則被保留給BIOS使用,其中系統(tǒng)BIOS一般占用了最后的64KB或更多一點的空間,顯卡BIOS一般在C0000H~C7FFFH處,IDE控制器的BIOS在C8000H~CBFFFH處。 下面將分為兩個部分介紹,硬件部分和軟件部分.

  計算機(jī)啟動原理(軟硬詳解)2

1.硬件部份


一.系統(tǒng)BIOS初始化
當(dāng)我們按下電源開關(guān)(POWER)時,電源開始供電,計算機(jī)的電源指示燈亮起.電源就開始向主板和其它設(shè)備供電,此時電壓還沒有完全穩(wěn)定,主板控制芯片組會根據(jù)CMOS中的CPU主頻設(shè)置向CPU發(fā)出一個Reset(重置)信號,讓CPU內(nèi)部自動恢復(fù)到初始狀態(tài),但CPU在此刻不會馬上執(zhí)行指令。當(dāng)芯片組檢測到電源已經(jīng)開始穩(wěn)定供電了(當(dāng)然從不穩(wěn)定到穩(wěn)定的過程只是一瞬間的事情),它便撤去RESET信號(如果是手工按下計算機(jī)面板上的Reset按鈕來重啟機(jī)器,那么松開該按鈕時芯片組就會撤去RESET信號),CPU馬上從地址FFFF0H處執(zhí)行一條跳轉(zhuǎn)指令,從前面的介紹可知,這個地址實際上在系統(tǒng)BIOS的地址范圍內(nèi),無論是Award BIOS還是AMI BIOSCPU放在這里的只是一條跳轉(zhuǎn)指令,跳到系統(tǒng)BIOS中真正的啟動代碼處。


二.POST(Power On Self Test,加電自檢)。
系統(tǒng)BIOS首先要做的事情就是進(jìn)行POST(Power On Self Test,加電自檢)。POST的主要任務(wù)是檢測系統(tǒng)中的一些關(guān)鍵設(shè)備電源、CPU芯片、BIOS芯片、定?.饜酒 ⑹ 菔輾⒙嘸 緶貳 MA控制器、中斷控制器以及基本的64K內(nèi)存和內(nèi)存刷新電路等是否存在和能否正常工作,如內(nèi)存和顯卡等。POST過程進(jìn)行得非???,我們幾乎無法感覺到它的存在.如果POST自檢不成功系統(tǒng)的喇叭發(fā)出刺耳的警報聲,具體的錯誤一般可以從警報聲的長短和次數(shù)來判斷.(小說明:為什么這時的錯誤要用聲音來報警而不是在屏幕上顯示呢,這是因為POST的檢測過程在顯示卡初始化之前,也就是說這時還是“黑屏”階段,所以在POST的過程中發(fā)現(xiàn)了一些致命錯誤是無法在屏幕上顯示出來的.)


三,顯卡檢測
自檢通過后,系統(tǒng)BIOS將查找顯示卡的BIOS,存放顯示卡BIOS的ROM芯片的起始地址通常在C0000H處,系統(tǒng)BIOS找到顯卡BIOS之后調(diào)用它的初始化代碼,由顯卡BIOS來完成顯示卡的初始化.顯示器開始有顯示,BIOS將檢查顯示卡的BIOS,找到之后調(diào)用它的初始化代碼,由顯卡BIOS找來完成顯示卡的初始化。大多數(shù)顯示卡在這個過程通常會在屏幕上顯示出一些顯示卡的信息,如生產(chǎn)廠商、圖形芯片類型、顯存容量等內(nèi)容,這也就是我們開機(jī)看到的第一個畫面了。如圖1:

   四.CPU,內(nèi)存檢測
自此系統(tǒng)就具備了最基本的運行條件.可以對主板上的其它部分進(jìn)行診斷和測試(例如CMOS錯誤)再發(fā)現(xiàn)故障時,屏幕上會有提示,但一般不死機(jī),當(dāng)查找完所有其他設(shè)備的BIOS之后,系統(tǒng)BIOS將顯示它自己的啟動畫面,其中包括有系統(tǒng)BIOS的類型,序列號和版本號等內(nèi)容,同?.聊蛔蟊咧猩轄腔岢魷種靼逍畔⒋ 耄 ˙IOS的日期、主板芯片組型號、廠家的代碼等。接著系統(tǒng)BIOS將檢測CPU的類型和工作頻率,并將結(jié)果顯示在屏幕上;然后BIOS開始測試主機(jī)的內(nèi)存容量,并在屏幕上顯示內(nèi)存測試數(shù)值。(就是大家所熟悉的屏幕上半部分那個飛速翻滾的內(nèi)存計數(shù)器)當(dāng)BIOS畫面最下方出行"DEL"的文字時就可以按下鍵盤上的"DEL"鍵(按照你的主板說明按下相應(yīng)的鍵)進(jìn)行BIOS設(shè)置了.如圖2:
四.標(biāo)準(zhǔn)硬件設(shè)備與即插即用設(shè)備檢測
下一步BIOS將開始檢測系統(tǒng)中安裝的一些標(biāo)準(zhǔn)硬件設(shè)備:硬盤、CD-ROM、軟驅(qū)、串行和并行接口等設(shè)備。標(biāo)準(zhǔn)設(shè)備檢測完畢后,系統(tǒng)BIOS內(nèi)部支持即插即用的代碼將開始檢測和配置系統(tǒng)中安裝的即插即用設(shè)備,同時為該設(shè)備分配中斷、DMA通道和I/O端口等資源,到此所有硬件都已經(jīng)檢測配置完畢.BIOS會重新清屏并在屏幕上方顯示出一個系統(tǒng)配置表,其中簡略地列出安裝的各種標(biāo)準(zhǔn)硬件設(shè)備及相關(guān)工作參數(shù)。最后系統(tǒng)BIOS將更新ESCD(Extended System Configuration Data,擴(kuò)展系統(tǒng)配置數(shù)據(jù))。(ESCD是系統(tǒng)BIOS用來與操作系統(tǒng)交換硬件配置信息的數(shù)據(jù),這些數(shù)據(jù)被存放在CMOS中。通常ESCD數(shù)據(jù)只在系統(tǒng)硬件配置發(fā)生改變后才會進(jìn)行更新,并不是每次啟動都需要更新。ESCD數(shù)據(jù)更新完畢后,系統(tǒng)BIOS的啟動代碼將進(jìn)行它的最后一項工作,即根據(jù)用戶指定的啟動順序從軟盤、硬盤或光驅(qū)啟動.)



六。 硬盤引導(dǎo)

一.上述過程完畢了之后,首先BIOS檢測硬盤并進(jìn)行復(fù)位,然后根據(jù)用戶在BIOS的設(shè)置來檢查從哪一個設(shè)置引導(dǎo)系統(tǒng),例如軟驅(qū),硬盤,光驅(qū)等,而其中最常用的就是硬盤引導(dǎo)了.從硬盤引導(dǎo)之后,BIOS把主引導(dǎo)記錄讀入內(nèi)存,關(guān)將控制權(quán)交給主引導(dǎo)程序,檢查分區(qū)表,尋找活動分區(qū)(這就是為什么在用Fdisk分區(qū)時要設(shè)置活動分區(qū)了)找到之后再將控制權(quán)交給活動分區(qū)的引尋記錄,由引尋記錄來引導(dǎo)操作系統(tǒng).若成功引導(dǎo)接著屏幕便出行系統(tǒng)啟動的界面如XP的標(biāo)志畫面,圖3
可以按下F8鍵選擇啟模式.如不成功將會出現(xiàn)出錯信息,例子:

如果硬盤上的分區(qū)表被破壞后,啟動系統(tǒng)時往往會出現(xiàn)“Non-System disk or disk error,replace disk and press a key to reboot”(非系統(tǒng)盤或盤出錯)、“Error Loading Operating System”(裝入DOS引導(dǎo)記錄錯誤)或者“No ROM Basic,System Halted”(不能進(jìn)入ROM Basic,系統(tǒng)停止響應(yīng))就無法啟動系統(tǒng)了.
為了照顧新手下面給出一下說明,請認(rèn)真看:
硬盤主引導(dǎo)記錄(MBR):硬盤主引導(dǎo)記錄區(qū)位于硬盤的首部,負(fù)責(zé)搜索硬盤可以啟動的分區(qū).對于DOS來說,它是由Fdisk生成的.主引導(dǎo)記錄著從分區(qū)表中找到第一個活動分區(qū),然后讀取并執(zhí)行這個活動分區(qū)的分區(qū)引導(dǎo)記錄

活動分區(qū):當(dāng)我們在DOS用Fdisk命令硬盤分區(qū)時,一定要設(shè)一個主分區(qū)為活動分區(qū),不然系統(tǒng)無法啟動.一般來說活動分區(qū)就是我們平時用的系統(tǒng)盤C盤.

分區(qū)表(DPT):分區(qū)表DPT則以80H或00H為開始標(biāo)志,以55AAH為結(jié)束標(biāo)志,位于主引導(dǎo)扇區(qū)的最末端。整個分區(qū)表決定了硬盤中的分區(qū)數(shù)量,每個分區(qū)的起始及終止扇區(qū)、大小以及是否為活動分區(qū)等。


活動分區(qū)的引尋記錄:對于不同的系統(tǒng),引導(dǎo)記錄讀取執(zhí)行的文件是不一樣的,對于DOS和WIN9X而言,分區(qū)引導(dǎo)記錄執(zhí)行"IO.sys"
對于WIN2000\XP來說,則是由"NTLDR"程序來執(zhí)行的.
    以上介紹的便是計算機(jī)在打開電源開關(guān)(或按Reset鍵)進(jìn)行冷啟動時所要完成的各種初始化工作,如果我們在DOS下按Ctrl+Alt+Del組合鍵(或從Windows中選擇重新啟動計算機(jī))來進(jìn)行熱啟動,那么POST過程將被跳過去,直接從第三步開始,另外的檢測CPU和內(nèi)存測試也不會再進(jìn)行。我們可以看到,無論是冷啟動還是熱啟動,系統(tǒng)BIOS都一次又一次地重復(fù)進(jìn)行著這些我們平時并不太注意的事情,然而正是這些單調(diào)的硬件檢測步驟為我們能夠正常使用電腦提供了基礎(chǔ)。
-------------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------------
  2.軟件部方(以XP系統(tǒng)為例說明)

注明:
要讓W(xué)indows XP正確啟動,在啟動和系統(tǒng)分區(qū)中必須有以下文件:

Ntldr                位于系統(tǒng)分區(qū)根目錄中
Boot.ini                位于系統(tǒng)分區(qū)根目錄中
Ntdetect.com        位于系統(tǒng)分區(qū)根目錄中
Ntoskrnl.exe          位于啟動分區(qū)中的Windows\System32目錄中
Hal.dll                位于啟動分區(qū)中的Windows\System32目錄中
注冊表文件                位于啟動分區(qū)中的Windows\System32 \Config\System目錄中
設(shè)備驅(qū)動程序        位于啟動分區(qū)中的Windows\System32 \Drivers目錄中

如果計算機(jī)中還裝有Win9X/Me,那么在系統(tǒng)分區(qū)根目錄中必須有Bootsect.dos;如果計算機(jī)中有SCSI設(shè)備,系統(tǒng)分區(qū)根目錄中還必須有Ntbootdd.sys。


1.系統(tǒng)啟動引導(dǎo)階段

Ntldr讀取將boot.ini的內(nèi)容, 定位操作系統(tǒng)所在的啟動分區(qū)。如果計算機(jī)中只有一個操作系統(tǒng),Ntldr會自動執(zhí)行下一步。如果計算機(jī)中有多個操作系統(tǒng),那么這時會有一個選單讓你選擇你要啟動的操作系統(tǒng),當(dāng)你選擇Windows NT 4.0/2000/XP/2003時,Ntldr也會執(zhí)行下一步;當(dāng)你選擇Windows 9X/Me時,Ntldr會把計算機(jī)的控制權(quán)交給Bootsect.dos.

檢測和配置硬件階段

啟動Windows XP后(以XP說明),Ntldr啟動ntdetect.com。ntdetect.com將收集計算機(jī)硬件信息列表并將列表返回到Ntldr,這樣做的目的是便于以后將這些硬件信息加入到注冊表HKEY_LOCAL_MACHINE下的hardware中。ntdetect.com的重要性在于在不兼容ACPI(Advanced Configuration and Power Interface)的計算機(jī)中列舉設(shè)備,這種情況下,設(shè)備資源是由硬件分配的。在兼容ACPI的計算機(jī)中,設(shè)備資源是由操作系統(tǒng)分配的。在這個過程中,ntdetect.com會查找Windows XP 創(chuàng)建的硬件配置文件。Windows XP會為桌面型電腦創(chuàng)建一個硬件配置文件,為移動型電腦創(chuàng)建兩個硬件配置文件,用戶也可以創(chuàng)建自己特定的硬件配置文件。硬件配置文件中沒有的設(shè)備的驅(qū)動程序不會在Windows XP啟動過程中加載。對于有多個硬件配置文件的計算機(jī),用戶可以選擇是否在啟動時顯示硬件配置文件選單以便用戶選擇特定的硬件配置文件。


2.內(nèi)核加載階段

在這個階段,ntldr首先加載稱為Windows XP內(nèi)核的ntokrnl.exe。這里,系統(tǒng)加載了Windows XP內(nèi)核但是沒有將它初始化。接著ntldr加載硬件抽象層(Hardware Abstraction Layer,hal.dll),然后,系統(tǒng)繼續(xù)加載HKEY_LOCAL_MACHINE\SYSTEM鍵,ntldr讀取HKEY_LOCAL_MACHINE\SYSTEM\Select中的鍵值來決定哪一個ControlSet(熟悉注冊表的朋友一定都發(fā)現(xiàn)在HKEY_LOCAL_MACHINE\SYSTEM下有好幾個ControlSet,比如ControlSet001,ControlSet002 )將被加載。ControlSet中包含設(shè)備的驅(qū)動程序以及需要加載的服務(wù)。ntldr加載HKEY_LOCAL_MACHINE\SYSTEM\ControlSetXXX\Services\...(這里,ControlSetXXX指Select中選定的ControlSet,...指服務(wù)的名稱)下start鍵值為0的最底層設(shè)備驅(qū)動。當(dāng)作為ControlSet鏡像的CurrentControlSet被加載時,ntldr將計算機(jī)的控制權(quán)交給Windows XP內(nèi)核的ntokrnl.exe,初始化內(nèi)核就開始了。

初始化內(nèi)核開始的時候,彩色的Windows XP的logo以及進(jìn)度條顯示在屏幕中央,在這個階段,系統(tǒng)完成了啟動的4項任務(wù):
1)內(nèi)核使用在硬件檢測時收集到的數(shù)據(jù)來創(chuàng)建HKEY_LOCAL_MACHINE\HARDWARE鍵。
2)內(nèi)核通過復(fù)制HKEY_LOCAL_MACHINE\ SYSTEM \CurrentControlSet的值來創(chuàng)建了HKEY_LOCAL_MACHINE\ SYSTEM \Clone。Clone是計算機(jī)數(shù)據(jù)的備份,不包括啟動中的改變,也不會被修改。
3)系統(tǒng)完成初始化以及加載設(shè)備驅(qū)動程序,內(nèi)核初始化那些在加載內(nèi)核階段被加載的底層驅(qū)動程序,然后內(nèi)核掃描HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\...下start鍵值為1的設(shè)備驅(qū)動程序。這些設(shè)備驅(qū)動程序在加載的時候便完成初始化,如果有錯誤發(fā)生,內(nèi)核使用ErrorControl鍵值來決定如何處理,值為3時,錯誤標(biāo)志為危機(jī)/關(guān)鍵,系統(tǒng)初次遇到錯誤會以HKEY_LOCAL_MACHINE\SYSTEM\Select中LastKnownGood 所指的ControlSet重新啟動,如果使用LastKnownGood ControlSet啟動仍然產(chǎn)生錯誤,系統(tǒng)報告啟動失敗,錯誤信息將被顯示,系統(tǒng)停止啟動;值為2時錯誤情況為嚴(yán)重,系統(tǒng)啟動失敗并且以LastKnownGood ControlSet重新啟動,如果系統(tǒng)啟動已經(jīng)在使用LastKnownGood值,它會忽略錯誤并且繼續(xù)啟動;當(dāng)值是1的時候錯誤為普通,系統(tǒng)會產(chǎn)生一個錯誤信息,但是會忽略這個錯誤并且繼續(xù)啟動;當(dāng)值是0的時候忽略,系統(tǒng)不會顯示任何錯誤信息而繼續(xù)運行。
4)內(nèi)核啟動Session Manager(Smss.exe)。Session Manager的作用是啟動Windows XP高級子系統(tǒng)以及服務(wù),啟動控制所有輸入、輸出設(shè)備以及訪問顯示器屏幕的Win32子系統(tǒng)以及Windows登陸進(jìn)程(Winlogon.exe)。到這里,初始化內(nèi)核就完成了。

3.登陸階段

Winlogon.exe首先啟動服務(wù)管理(Service Control Manager,Services.exe)和本地安全認(rèn)證(Local Security Authority,Lsass.exe),同時顯示W(wǎng)indows XP歡迎屏幕,這時候,系統(tǒng)還可能在后臺繼續(xù)初始化剛才沒有完成的驅(qū)動程序。然后Winlogon會提示用戶輸入有效的用戶名或密碼(如果Windows XP中除了默認(rèn)的administrator和隱藏帳戶外只有一個用戶帳戶且沒有密碼,Windows XP會跳過這一步)。接著,服務(wù)管理最后執(zhí)行以及掃描HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servives來檢查是否還有服務(wù)需要加載,服務(wù)管理查找start鍵值為2或更高的服務(wù),服務(wù)按照start的值以及DependOnGroup和DepandOnService的值來加載。

只有用戶成功登陸到計算機(jī)后,Windows XP的啟動才被認(rèn)為是完成,在成功登陸后,系統(tǒng)拷貝HKEY_LOCAL_MACHINE\SYSTEM\Clone到LastKnownGood ControlSet,完成這一步驟后,系統(tǒng)才意味著已經(jīng)成功引導(dǎo)了
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【分享】深入Win XP之認(rèn)識神秘的引導(dǎo)文件NTLDR! 霏凡論壇
受用一生的電腦知識
電腦啟動過程
自己動手讓系統(tǒng)13秒開機(jī)速度提升6倍
我的RAMOS三步曲之一:安裝篇
Windows系統(tǒng)引導(dǎo)過程以及多系統(tǒng)引導(dǎo)原理
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服