聯(lián)想到昨晚BIOS群里,有三家公司同時貼出來招聘信息,紅澄澄的接連三個廣告紅包,真是亮瞎人眼。什么時候,小眾、穩(wěn)定而神秘的BIOS圈變得這么缺人?每個上下游公司恨不得把員工劈成兩半用,同時還想把手伸到別人的口袋里面。據(jù)統(tǒng)計,國內(nèi)BIOS工程師不超過1000名,而這些工程師們此時正承受著項目經(jīng)理和獵頭的雙重炮火,痛并快樂著。隨著水漲船高的工資,工作時間也不斷延長,就連UEFI業(yè)界以準(zhǔn)時下班著稱的Intel BIOS Team也不能幸免??粗约翰粩嘧兇蟮亩请詈团笥讶Ω鞣N花式曬凌晨的太陽,我不禁發(fā)出了靈魂的拷問,發(fā)生了什么?這種日子什么是個頭?
BIOS工作的本質(zhì)
時間撥回今年年初,國內(nèi)最大BIOS廠商百敖軟件的董事長謝總,給我出了思考題:BIOS是個什么樣的商業(yè)?我不假思索的脫口而出:“當(dāng)然是個科技密集型企業(yè)”。謝總一笑,補充說:”BIOS除了是科技密集型企業(yè),還是人力密集型企業(yè)?!?/p>
是啊,BIOS對熟練工程師需求相當(dāng)大,與微軟一份拷貝可以安裝在地球上所有PC機器中不同,BIOS對硬件的改變相當(dāng)敏感,硬件小變需要小改,大變需要大改。如果說微軟是賣軟件的拷貝的話,BIOS就是賣移植服務(wù)和基礎(chǔ)軟件授權(quán)費。為什么同是軟件,差別就這么大呢?
一個簡單的計算機組成框圖
這是一個簡化的計算機系統(tǒng)框圖,我們的計算機系統(tǒng)可以粗粗看作由三部分組成,分別是硬件、BIOS固件和操作系統(tǒng)。微軟的操作系統(tǒng)可以在所有的計算機上運行,這是因為BIOS抽象了硬件的不同,向上提供了統(tǒng)一的接口,這個接口就是UEFI標(biāo)準(zhǔn)了:
如此Windows和Linux可以用UEFI標(biāo)準(zhǔn)定義的接口,了解硬件的差異,而不需要為每個硬件改變做出修改,開發(fā)出來,賣一套和賣一億套成本差異很小,擴展性極大,也就是我們說的Scale Out能力很大。而BIOS呢?
BIOS和硬件的操作界面是硬件寄存器,BIOS工程師需要根據(jù)各種Spec、原理圖和功能需求,填寫寄存器,最后抽象后向上匯報符合UEFI標(biāo)準(zhǔn)統(tǒng)一界面。比較坑爹的是,寄存器沒有標(biāo)準(zhǔn),張家李家不一樣,就算是張家也每代都會改,原理圖當(dāng)然要隨著改,于是BIOS也要不停的改,沒完沒了,無窮無盡,只為了讓操作系統(tǒng)保持優(yōu)雅,可以說BIOS干了產(chǎn)業(yè)鏈里面最臟最累的活。照理說,BIOS本來就是如此,為什么這兩年忽然BIOS界人才奇缺呢?
主要有兩個原因:I家的產(chǎn)品線混亂和國產(chǎn)CPU進入戰(zhàn)國時代。Intel的制程問題讓它已經(jīng)進退失據(jù),產(chǎn)品線徹底混亂,許多CPU亂哄哄重疊地一個個出來了,讓整個產(chǎn)業(yè)鏈上所有廠家人力資源嚴(yán)重短缺;CPU寄存器設(shè)計不考慮延續(xù)性,每代都變,而且變化很大,讓大量代碼都需要重復(fù)開發(fā)。雪上加霜的是,國產(chǎn)CPU被美國政府刺激(感謝特沒譜)后,開始加速發(fā)展,百花齊放,百家爭鳴,進入了繁榮的春秋時代。從此BIOS工程師,不但需要支持Intel,AMD,還要支持其他國內(nèi)國際的近十家CPU,和他們眼花繚亂的各種主板。你說,BIOS人能不缺嗎?
下一代BIOS展望
據(jù)我估算,國內(nèi)BIOS人才需要增長五成才能全部滿足需求,這在短時間顯然是不現(xiàn)實的。于是有些人開始另尋出路,國外大廠目光投入了LinuxBoot和CoreBoot,認(rèn)為兩者簡單高效,啟動速度快。實際上我并不認(rèn)同,他們啟動速度快,很大程度上是功能簡單導(dǎo)致的,UEFI內(nèi)核本身帶來的延遲不超過5%。兩者需要FSP提供芯片初始化,而FSP數(shù)千到上萬個參數(shù)才是系統(tǒng)復(fù)雜的難點所在。兩者相當(dāng)于將BIOS的難度前移到芯片廠家去了,對BIOS工程師整體上需求不見得會減少。
如何才能降低BIOS開發(fā)難度呢?UEFI標(biāo)準(zhǔn)的誕生加速了Windows和Linux的發(fā)展也許可以給我們提供一些思路。現(xiàn)在操作系統(tǒng)和BIOS之間的接口標(biāo)準(zhǔn)化了,但BIOS和硬件接口卻遠遠沒有標(biāo)準(zhǔn)化,能不能把寄存器標(biāo)準(zhǔn)化?
因為各種CPU硬件設(shè)計的巨大差異,寄存器的標(biāo)準(zhǔn)化似乎不太現(xiàn)實。我們可以換一個思路,我們知道CPU里面有很多IP,除了內(nèi)核之外,還有數(shù)個內(nèi)存控制器,數(shù)個PCIe Root Complex,QPI總線控制器等等。過去它們大都是死IP,也就是沒有自己的固件,需要BIOS這個最大的固件來一個個填寄存器,驅(qū)動它們運行。最近有自己固件的IP越來越多了,PCU就是一例,它自己有固件,可以按照邏輯來控制CPU的電源管理,它的接口是一組MailBox,通過發(fā)消息而不是直接操作寄存器的方式和BIOS協(xié)同工作。
如果CPU中每個大IP都有自己的固件,都暴露出一組MailBox作為接口,BIOS只作為居中協(xié)調(diào)人的角色來統(tǒng)籌啟動流程,并匯報UEFI接口,這樣整體系統(tǒng)就變成這樣:
標(biāo)準(zhǔn)化的mailbox還可以帶來很多別的好處:IP之間可以直接通信組成大IP;IP可以在正好進SOC之前進行充分測試,而不需要等待BIOS完成;模塊化IP更好移植等等。
這個MailBox標(biāo)準(zhǔn)如果出現(xiàn),它將極大的簡化BIOS的軟件架構(gòu),實際上,它才將是真正的固件標(biāo)準(zhǔn),而不僅僅是BIOS固件標(biāo)準(zhǔn)了。
結(jié)語
新的BIOS標(biāo)準(zhǔn)在5年之內(nèi)不會落地,BIOS工程師的短缺還需要通過大量培養(yǎng)新鮮血液來解決或者說是緩解。但不想當(dāng)將軍的士兵不是好士兵,不考慮5年后的工程師也不是好工程師。春雷陣陣,空氣也潮濕了起來,誰敢說春雨不會即將來臨呢?
編輯:hfy
-
Linux
+關(guān)注
關(guān)注
87文章
11506瀏覽量
213471 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
7135瀏覽量
125424 -
BIOS
+關(guān)注
關(guān)注
5文章
471瀏覽量
46969
發(fā)布評論請先 登錄
下一代高速芯片晶體管解制造問題解決了!
下一代PX5 RTOS具有哪些優(yōu)勢

硬件工程師看了只會找個角落默默哭泣#硬件工程師 #MDD #MDD辰達半導(dǎo)體 #產(chǎn)品經(jīng)理 #軟件工程師

如何成為一名合格的KaihongOS北向應(yīng)用開發(fā)工程師
如何成為一名嵌入式軟件工程師?
U-Boot 和 Bootloader,99% 的工程師都分不清?

如果不使用EEPROM的話,使用bios,BIOS來寫驅(qū)動填這個eeprom的值?
如何成為一名合格的北向應(yīng)用開發(fā)工程師

不同時期的硬件工程師,最怕發(fā)生的事 #電子工程師 #硬件工程師 #內(nèi)容過于真實 #YXC晶振 #揚興科技
研華工控一體機官網(wǎng)_研華工控610l進BIOS

電容式觸摸感應(yīng)和SYS/BIOS

將DSP/BIOS 5應(yīng)用程序遷移到SYS/BIOS 6


評論