国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項超值服

開通VIP
為你解密電腦啟動的那一瞬間
網(wǎng)友巨獻(xiàn):為你解密電腦啟動的那一瞬間

    我們已經(jīng)使用BIOS超過了二十年.可是直到今天還友許多朋友不知道BIOS到底是什么,以及它主要做些什么事情,它在整個個人計算機(jī)之中所處的地位如何.事實上,BIOS是整個計算機(jī)系統(tǒng)中最重要的底層系統(tǒng)軟件.二十多年來,中國的程序員們紛紛忽略了BIOS,或者由BIOS衍生出的開發(fā)技術(shù),相反,我們對如何調(diào)整一兩個BIOS設(shè)置津津樂道.今天,BIOS業(yè)界開始悄悄的變革,EFI或者UEFI的到來即將改變世界,從而徹底改變我們對過去的計算機(jī)啟動過程的認(rèn)識.但是我們中國的開發(fā)者們?nèi)匀辉谡務(wù)揓AVA或NET,我想,是到了清晰的研究BIOS的時候了.

    小生不才,但也愿意就我所學(xué),貢獻(xiàn)成一篇簡短的入門文章,帶領(lǐng)大家進(jìn)入BIOS這個有趣而又充滿了神秘的地域,我們一起來探究BIOS,尤其是探究下一代個人計算機(jī)的基礎(chǔ)系統(tǒng)軟件,或者說基礎(chǔ)固件:UEFI bios的方方面面.由于類似的文章網(wǎng)上也比較多,所以我就重點談些別人一般忽略的部分吧.

BIOS Definitions

BIOS -- Basic Input and Output System,is used for initializing,testing and putting the PC into the ready state so that an OS may be started.Part of the BIOS remains in the system main memory after POST,or Power On Self Test.BIOS provides a consistent software interface to varying types of the hardware devices.It also provides the basic system level services to OS.The BIOS is also used for helping IHV to fix their hardware design bugs by using the SMM mode of the IA architechture.

上面這句話是我在初學(xué)BIOS的時候,我的老師,一位受到整個業(yè)界尊敬的杰出BIOS Engineer對我說的,這段話雖然短,但是卻清楚的道出了BIOS的基本功能,那就是:

1)  檢測硬件,又叫POST.

2)  初始化硬件,設(shè)置其基本狀態(tài),使得整個計算機(jī)達(dá)到所謂的"可用狀態(tài)"(Ready State).

3)  啟動OS Loader加載操作系統(tǒng).

4)  在操作系統(tǒng)啟動起來以后,一部分繼續(xù)駐留內(nèi)存,向操作系統(tǒng)以及其他軟件提供基本的系統(tǒng)級的服務(wù).如磁盤讀寫等.

5)  修復(fù)硬件缺陷.

下面我們一個一個的來看這些功能.
第一個檢測硬件可能比較好理解一點,就是看看你的硬件是否還正常的工作,但是從軟件的角度看.其中最重要的就是對內(nèi)存的檢測的.大家都還對剛開機(jī)的時候內(nèi)存的大小一直在跳的屏幕有記憶吧,那就是在做Memory Test,或者說Memory Sizing.

第二個功能是初始化硬件,可能有不少朋友問:為什么我的硬件還需要初始化?問的好,硬件的設(shè)計廠家往往為了通用市場的考慮,不愿意將硬件設(shè)計成定制的狀態(tài),可能一個網(wǎng)卡,可以安裝在PC,同樣也可以安裝在嵌入式系統(tǒng)上.所以為了使得硬件能夠按照PC的架構(gòu)工作,BIOS必須要按照由IHV(Indenpendent Hardware Vendor)提供的手冊將硬件設(shè)置好,比如寫幾個必須的寄存器之類的,做一些enable的工作.這點非常重要,如果一個硬件沒有enable,那么在OS下將不可見.

第三個功能是啟動操作系統(tǒng),這也是BIOS必須要做的事情之一.啟動的方式是由BIOS規(guī)定,操作系統(tǒng)必須按照BIOS的要求來設(shè)計.這也是為什么操作系統(tǒng)從DOS一直到Vista,都只能把自己的loader放在MBR,因為BIOS只讀MBR.強(qiáng)大的微軟都必須要按照這個不成標(biāo)準(zhǔn)的標(biāo)準(zhǔn)來:)當(dāng)然,在EFI時代,這一點有所改變,EFI支持的Boot From File不在需要MBR.

第四個功能可能之前作過DOS開發(fā)的朋友比較熟悉吧,還記得INT 10基本屏幕服務(wù),INT 13磁盤服務(wù)嗎?多少病毒正是靠INT 13來傳播.又有朋友曾經(jīng)試圖繞過INT 10來直接寫屏?Windows時代,這些東西事實上仍然存在,并且繼續(xù)發(fā)揮著基本的核心作用,只是他們被Windows包裝起來了,一般的程序無法接觸到,但這并不能說明他們就沒有用處了.MS的開發(fā)人員不久前還表示,事實上甚至就是開發(fā)中的Longhorn的安裝程序,目前仍然有許多code是基于INT 10來寫屏的.

第五個功能估計一般的朋友可能就不知道了,就是之前稍微接觸過BIOS的朋友們可能也是第一次聽說吧!Intel在它的CPU里專門留了個模式叫System Managment Mode,擁有最高的權(quán)限.SMM中斷的時候,就連號稱無所不能的Windows的也不知道,這樣就可以給CPU撲bug了,舉個例子,比如某天Intel的一個CPU對ADD指令給出錯誤操作結(jié)果,那么就可以利用SMM在每次執(zhí)行這個指令的時候,中斷一下,由BIOS軟件給出正確的執(zhí)行結(jié)果.這就達(dá)到了給硬件修復(fù)缺陷的目的.這樣Intel也不用招回它的CPU了,呵呵.此外,每次BIOS開機(jī)的時候,事實上都會更新CPU Microcode,同樣是用來給CPU補(bǔ)bug的.所以很多時候,刷BIOS刷出問題,事實上某個CPU的bug沒有補(bǔ)上導(dǎo)致出了問題出現(xiàn).

BIOS在哪里

上面羅嗦了一大堆的BIOS Basics,那么BIOS到底在哪里呢?答案是在你的計算機(jī)里:) 的確有些無聊,事實上BIOS有三種狀態(tài),分別是:

1)  Before Build

2)  BIOS Image

3)  BIOS Runtime

第一種呢,這個時候BIOS表現(xiàn)為BIOS開發(fā)者硬盤上的一堆源代碼. 處于第二種的時候,BIOS則是沉睡在Flash里的一段image.BIOS真正發(fā)揮作用是在第三種模式下,哪個時候BIOS執(zhí)行,控制系統(tǒng),與操作系統(tǒng)交互.

EFI BIOS

EFI是由Intel提出的,目的在于為下一代的BIOS開發(fā)樹立全新的框架。EFI是英文Extensible Firmware Interfaces的縮寫。正如它的名字一樣,EFI不是一個具體的軟件,而是在操作系統(tǒng)與平臺固件(platform firmware)之間的一套完整的接口規(guī)范。EFI定義了許多重要的數(shù)據(jù)結(jié)構(gòu)以及系統(tǒng)服務(wù),如果完全實現(xiàn)了這些數(shù)據(jù)結(jié)構(gòu)與系統(tǒng)服務(wù),也就相當(dāng)于實現(xiàn)了一個真正的BIOS核心。

EFI最早是在Spring 2000 IDF(Intel Developer’s Forum)上提出的,當(dāng)時Intel認(rèn)為,隨著IBM在80年代初推出了第一臺個人計算機(jī)開始,直到今天為止,個人計算機(jī)硬件平臺已經(jīng)發(fā)生了翻天覆地的變化,相關(guān)的系統(tǒng)軟件如操作系統(tǒng)等也從最早的MS DOS1.0到今天的Windows XP,而作為整個系統(tǒng)的最底層也最為關(guān)鍵的系統(tǒng)軟件之一的BIOS卻基本上保持了架構(gòu)二十年不變。這在整個軟件史上都是一件不可思議的事情。如今,BIOS已經(jīng)變成了嚴(yán)重阻礙IT產(chǎn)業(yè)前進(jìn)的絆腳石,必須通過對BIOS的革新來為下一代的操作系統(tǒng)(如Windows Server Longhorn)提供更加強(qiáng)大的支持。

上面是我很早之前寫的一段對EFI的介紹,現(xiàn)在看來,難免有些錯誤,不過大致意思非常明確,EFI就是用來替換傳統(tǒng)BIOS.作為更好的BIOS,EFI可以提供過去無法在BIOS中作到的許多事情.后面的文章我會逐步展現(xiàn)給大家.

一些常見的關(guān)于BIOS/EFI的問題以及我的簡短回答:
1) BIOS一般有多大?
傳統(tǒng)bios(以后說legacy bios)一般都是512KB,而早期的EFI bios也是512KB.現(xiàn)在EFI基本上是1MB了.

2) BIOS用什么工具開發(fā)?
legacy bios一般用MASM 6.11開發(fā),同時還會配上一些廠商自己寫的buid tools. EFI則使用Viusal Studio.NET 2003以及MASM 6.11開發(fā)(沒想到吧~)

3) EFI boot是怎么一回事?
EFI有自己獨(dú)特的boot方式,完全拋棄掉了傳統(tǒng)的0磁道0扇區(qū)的MBR概念.EFI的boot方式與文件系統(tǒng)息息相關(guān).過去的legacy bios由于不帶文件系統(tǒng),不得已選擇從硬盤上特定空間裝載程序的辦法,而EFI則附帶了完整的文件系統(tǒng)支持,所以不再對硬盤有特定的要求,EFI下的操作系統(tǒng)加載程序事實上存儲在bootia32bootia32.efi文件里.(假定是IA32架構(gòu)).這是一個EFI應(yīng)用程序.

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
細(xì)說裝機(jī)的武功秘笈,深入剖析(Legacy BIOS和UEFI)
IT之家學(xué)院:BIOS、EFI與UEFI詳解
什么是 BIOS?Legacy BIOS 和 UEFI BIOS 又是什么?
BIOS、UEFI、MBR、GPT介紹
電腦故障維修判斷大全
C盤根目錄文件解析——必須清楚的20個文件(文件夾)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服