EFI是為了取代那個已經用了二十多年的舊IBM PC BIOS架構而演變出來的新產物
舊的IBM PC BIOS是組合語言架構 這年頭組合語言大學都不開課了
BIOS coding根本難找到新人可以馬上上手
順便修正這舊BIOS架構的一堆毛病: 不支援新的CPU, chipset指令, 一堆device要進OS掛上driver以後才能正確驅動, boot block只能load幾十K的指令 BIOS code要搬來搬去 try and error等等
所以intel才會主導新的EFI改為C/C++架構
至於看到那些圖形化介面, 那目前的BIOS就做的到, 根本不用轉到EFI
不過 EFI也是針對intel 微處理器架構最佳化的BIOS
其他vender想用, 困難重重而且加入還要給錢 才會另外再弄一個UEFI出來
EFI和UEFI都是未來的驅勢是沒錯,BIOS要做到圖型化也是可行。但是就如同上面個位所說的,要Try and error,且還有64K的限制啥鬼

改用C/C++去開發的EFI及UEFI,最強的地方不是圖型化的介面,而是在於它可以在BIOS內直接加入Driver,以及它的開機速度。
但是在BIOS內掛Driver有啥功用?例如今天有人想要在DOS下使用USB Mouse,此時若在在傳統x86的BIOS環境下,你要去找該支USB Mouse的Driver掛上,然後才可以正常使用。但是改用EFI或UEFI後,因為Driver市內建的,因此就可以隨插即用了。其它的裝置也是依此類推。
但是開機速度,因為它是對晶片組做最佳化,因此可以省掉很多之前x86架構的寫法,目前x86架構下的BIOS要讓一個裝置可以正常使用,首先要先對該裝置做一堆的確認、Initial、分配資源等動作,接著到了DOS下或是Windows下才可以正常使用。但是EFI和UEFI則是因為做了最佳化,幾乎只要直接填值就好了,因此遠比現在的速度快多了。
但是說到BIOS Code好不好改?嗯,因人而異了。我是覺得組語是最簡單的語言,所以在高二時上過後就沒在碰過了,直到大學畢業後開始工作接觸BIOS後,才又重新拿起組語的書來看,但是語法不難,難是難在整體的架構。單純說要改,大概只要一年就可以會基本的修改了,但是要深入..嗯~~看個人了。
也歡迎還在學的各位,可以一起來踏入這個不一樣的領域喔~~挺好玩的..^^..
---
但是忙起來時,就一點也不好玩了

過客過客,過往之客;
既是過客,何必留名?
內文搜尋

X