你需要了解的嵌入式Linux
Linux在移動(dòng)設(shè)備中也獲得了青睞。In-Stat的報(bào)告顯示,移動(dòng)Linux將牢牢抓住中國(guó)巨大的市場(chǎng)占有率。該機(jī)構(gòu)認(rèn)為,到2012年,中國(guó)基于移動(dòng)Linux的智能手機(jī)總發(fā)貨量將達(dá)到中國(guó)智能手機(jī)總出貨量的25.4%。
本文引用地址:http://m.butianyuan.cn/article/152131.htm不斷改進(jìn)的Linux內(nèi)核
Linux當(dāng)面對(duì)特定的嵌入式應(yīng)用時(shí)仍存在很多挑戰(zhàn),包括那些內(nèi)存空間小或?qū)崟r(shí)確定性以及安全性能要求高的應(yīng)用。工具鏈的改進(jìn)、新的調(diào)試工具和性能、不斷為標(biāo)準(zhǔn)化演變的努力等,都將繼續(xù)提升Linux對(duì)于所有嵌入式應(yīng)用的價(jià)值。在這其中,Linux內(nèi)核的不斷改進(jìn)異常重要。
Linux內(nèi)核是應(yīng)用軟件采用的標(biāo)準(zhǔn)Linux API和處理器系統(tǒng)(應(yīng)用軟件運(yùn)行其上)底層硬件結(jié)構(gòu)之間的接口。該內(nèi)核是內(nèi)部元件和外部可加載模塊的復(fù)雜組合。在開機(jī)啟動(dòng)期間,內(nèi)核必須及時(shí)發(fā)現(xiàn),并正確布置核心系統(tǒng)處理器、系統(tǒng)存儲(chǔ)器、硬盤、視頻卡、USB端口、網(wǎng)卡和音頻處理器,而且要在開機(jī)啟動(dòng)期間提供足夠的顯示表明成功與否。
維持如此復(fù)雜的代碼收集很明顯是一個(gè)嚴(yán)峻的挑戰(zhàn)。內(nèi)核源代碼被劃分為標(biāo)準(zhǔn)“樹”結(jié)構(gòu),這樣子系統(tǒng)就能夠更好地彼此隔離,有助于實(shí)現(xiàn)幾個(gè)關(guān)鍵內(nèi)核維護(hù)工作的分布。這種分工可以最大限度地減少內(nèi)核某一部分發(fā)生重大變化對(duì)其他部分產(chǎn)生的影響。每個(gè)后續(xù)子系統(tǒng)的改變傳達(dá)給主要管理員,最終到達(dá)Linux內(nèi)核最上游的管理員。這些變化被稱為“修補(bǔ)(patch)”,在標(biāo)準(zhǔn)格式下創(chuàng)建和應(yīng)用。
供應(yīng)商和開發(fā)人員將他們的知識(shí)反饋到開源社群以改進(jìn)內(nèi)核。Linux開放、分散的本質(zhì),再加上背后強(qiáng)大的社群支持,使基于Linux的OS成為培養(yǎng)創(chuàng)新的良好選擇。
F1:為下一個(gè)項(xiàng)目計(jì)劃的Linux操作系統(tǒng)。資料來源:VDC,2007 年
“免費(fèi)”使用,但并非“零”成本
除了決定使用商用還是免費(fèi)發(fā)行版Linux,開發(fā)人員還必須認(rèn)識(shí)到其調(diào)試/開發(fā)工具的能力和局限。
充分發(fā)揮嵌入式Linux免費(fèi)發(fā)行版的優(yōu)勢(shì),已經(jīng)成為消費(fèi)產(chǎn)品領(lǐng)域被廣泛接收的現(xiàn)實(shí)。在這些市場(chǎng)上,產(chǎn)品運(yùn)行率非常高,對(duì)代碼的改善更新非常頻繁,而且產(chǎn)品的銷售成本至關(guān)重要,所有這些都使得開源模式極具吸引力。但是,能集成開源/免費(fèi)軟件,還可為處理器內(nèi)核提供無縫調(diào)試環(huán)境的工具要求對(duì)內(nèi)核和SoC元件互動(dòng)有深刻的了解。
現(xiàn)在有若干種“免費(fèi)軟件”調(diào)試解決方案,設(shè)計(jì)人員需要全面了解其局限性。比如,針對(duì)Linux內(nèi)核最常用免費(fèi)軟件調(diào)試器是KGDB。KGDB的主要缺點(diǎn)是要求重新編譯內(nèi)核。這對(duì)那些已經(jīng)在市場(chǎng)上通用的產(chǎn)品應(yīng)用來說產(chǎn)并不總是可行的。修補(bǔ)內(nèi)核還可能引入影響系統(tǒng)性能的代碼變化。
GDBServer是另一個(gè)面向應(yīng)用調(diào)試的頗受歡迎的免費(fèi)軟件調(diào)試器,但它主要問題是缺乏對(duì)同時(shí)調(diào)試大量線程/進(jìn)程的支持。隨著調(diào)試的線程/進(jìn)程數(shù)不斷增加,GDBServer性能迅速惡化,導(dǎo)致反應(yīng)時(shí)間太慢,進(jìn)而使目標(biāo)系統(tǒng)出現(xiàn)故障。其他問題還涉及到:不能在相同的目標(biāo)連接上調(diào)試驅(qū)動(dòng)程序和應(yīng)用;調(diào)試設(shè)備驅(qū)動(dòng)程序和調(diào)試共享庫(kù)。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論