亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

我們每天都在和windows打交道,很多人可能每天都要面對多次Windows的啟動過程,可是您知道在Windows的啟動過程背后,隱藏著什么秘密嗎?在這一系列過程中都用到了哪些重要的系統文件?系統的啟動分為幾個步驟?在這些步驟中計算機中發生了什么事情?這些就是本文試圖告訴您的。

隨著技術的發展,我們能夠見到的計算機硬件種類越來越多。以計算機上最重要的組件CPU來說,目前就有很多選擇。當然,這里的選擇并不是說AMD或者Intel這種產品品牌,而是指其內部的體系結構。目前常見的CPU體系結構主要基于復雜指令集(Complex Instruction Set Computing,CISC)或者精簡指令集(Reduced Instruction Set Computing,RISC),我們常用的Intel的Pentium、Celeron系列以及AMD的Athlon、Sempron系列都是基于復雜指令集的,而這些基于復雜指令集的CPU還有32位和64位的寄存器數據帶寬區別。關于這些指令集以及寄存器數據帶寬之間的區別等內容比較繁雜,而且不是本文的重點,感興趣的朋友可以自己在網上搜索相關內容。因為CPU種類的不同,在不同CPU的系統中運行的Windows的啟動過程也有一些小的不同。

基本上,操作系統的引導過程是從計算機通電自檢完成之后開始進行的,而這一過程又可以細分為預引導、引導、載入內核、初始化內核,以及登錄這五個階段。

系統引導的不同階段所引用的文件如下:


預引導:
       這個過程就是當用戶按下電源開關進行冷啟動所要完成的各種初始化工作,在這文檔中,并不打算很祥細的講解硬件方面的初始化,如果讀者有興趣的話,可以查閱相關資料,我覺得 《電腦及操作系統的啟動過程》這個還是不錯的。

MBR(MAIn BootRecord):
       好了,我們跳過加電自檢,繼續,當計算機完成了加電自檢之后,系統BIOS根據用戶配置的指定順序從相關的介質啟動,當然,我們這里分析的是硬盤的。計算機就會檢查磁盤的第0磁道0磁頭1扇區,如果發現它以0xAA55結尾,則BIOS認為它是一個引導扇區(所以主引導扇區位于整個硬盤的0磁道0磁頭1扇區),然后將這512B的內容加載到內存0000:7c00處執行。
       Windows操作系統獲得控制權應該就是從這里開始的吧,一般MBR是在WindowsSetup程序在安裝Windows時填充的。
       其實主引導記錄的作用就是檢查分區表是否正確以及判別哪個分區為可引導分區,并在程序結束時把該分區的啟動程序(也就是操作系統引導扇區)調入內存加以執行。
       在真正開始看MBR的代碼時,我們先來了解一下MBR的結構。

如圖:

  上面提到了Windows磁盤簽名,這里講解一下,Windows磁盤簽名是Windows系統在對硬盤做初始化時寫入的一個標簽,它是MBR扇區不可或缺的一個組成部分。Windows系統依靠這個簽名來識別硬盤,如果硬盤的簽名丟失,Windows系統就會認為該硬盤沒有初始化。
  因為MBR代碼部分會對DPT(分區表)進行解析,所以這里再講一下DPT的結構:

       看到上面這表,可能讀者會問,為啥用了10位來記錄柱面號呢?
       其實這是歷史問題了,早期的硬盤是通過磁頭、柱面、扇區對硬盤進行訪問的,磁頭數表示硬盤總共有幾個磁頭,也就是有幾張盤,最大為255(剛好一個字節可以存下,8位),柱面數表示硬盤每一面盤片上有幾條柱面,最大為1023(10位了),扇區數表示每一條磁道上有幾個扇區,最大為63(6位)。

MBR代碼分析:

       這一段代碼實現了將內存中的MBR搬到安全的內存地址處,并通過push以及retf指令實現跳轉,將執行權交給MBR繼續執行。不過這里做了一個小小的優化,沒有將當前正在執行、且以后用不到的這個入口函數給優化掉了,在拷備的過程中沒有進行拷備。

       這段代碼對分區表進行檢測,檢測到某分區表項引導標識符小于0。小于0的話跳去CheckAnother,大于0的話跳去CannotBoot。因為前面的表格已經說明了,引導標識符只能為00H或80H,在這里80H其實是負數,所以如果標識符為80H的話,走的是上面CheckAnother分支。如果四個分區項的標識符都為0的話,就調用int 18H,跳入ROM BASIC。


DBR:
引導扇區中的代碼隨硬盤文件系統格式的不同而有所不同,其職責是,給windows提供有關該硬盤上卷結構和格式方面的信息,并且從該卷的根目錄中讀入windows的加載程序,即ntldr文件;然后將控制權交給ntldr的入口函數。為了能夠從根目錄中讀入加載程序,引導扇區包含了能理解文件系統結構和讀取文件的代碼,這通常只是文件系統極其簡單的一部分功能,而并非完整的實現。

分享到:
標簽:Windows
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定