你需要了解的嵌入式Linux-基礎(chǔ)電子_第1頁
你需要了解的嵌入式Linux-基礎(chǔ)電子_第2頁
你需要了解的嵌入式Linux-基礎(chǔ)電子_第3頁
你需要了解的嵌入式Linux-基礎(chǔ)電子_第4頁
你需要了解的嵌入式Linux-基礎(chǔ)電子_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

精品文檔-下載后可編輯你需要了解的嵌入式Linux-基礎(chǔ)電子今天,Linux正廣泛應(yīng)用于各種嵌入式設(shè)備的開發(fā)中,如數(shù)字電視、機頂盒、DVR播放器、xDSL/有線/PON調(diào)制解調(diào)器、家用路由器和網(wǎng)關(guān)。它尤其適合具有先進(jìn)網(wǎng)絡(luò)功能、大量設(shè)備驅(qū)動程序和免版稅運行時間的數(shù)字家庭和家庭網(wǎng)絡(luò)。除了嵌入式設(shè)備,Linux還支持企業(yè)級設(shè)備,如服務(wù)器和路由器。

Linux在移動設(shè)備中也獲得了青睞。In-Stat的顯示,移動Linux將牢牢抓住中國巨大的市場占有率。該機構(gòu)認(rèn)為,到2022年,中國基于移動Linux的智能手機總發(fā)貨量將達(dá)到中國智能手機總出貨量的25.4%。

不斷改進(jìn)的Linux內(nèi)核

Linux當(dāng)面對特定的嵌入式應(yīng)用時仍存在很多挑戰(zhàn),包括那些內(nèi)存空間小或?qū)崟r確定性以及安全性能要求高的應(yīng)用。工具鏈的改進(jìn)、新的調(diào)試工具和性能、不斷為標(biāo)準(zhǔn)化演變的努力等,都將繼續(xù)提升Linux對于所有嵌入式應(yīng)用的價值。在這其中,Linux內(nèi)核的不斷改進(jìn)異常重要。

Linux內(nèi)核是應(yīng)用軟件采用的標(biāo)準(zhǔn)LinuxAPI和處理器系統(tǒng)(應(yīng)用軟件運行其上)底層硬件結(jié)構(gòu)之間的接口。該內(nèi)核是內(nèi)部元件和外部可加載模塊的復(fù)雜組合。在開機啟動期間,內(nèi)核必須及時發(fā)現(xiàn),并正確布置系統(tǒng)處理器、系統(tǒng)存儲器、硬盤、視頻卡、USB端口、網(wǎng)卡和音頻處理器,而且要在開機啟動期間提供足夠的顯示表明成功與否。

維持如此復(fù)雜的代碼收集很明顯是一個嚴(yán)峻的挑戰(zhàn)。內(nèi)核源代碼被劃分為標(biāo)準(zhǔn)“樹”結(jié)構(gòu),這樣子系統(tǒng)就能夠更好地彼此隔離,有助于實現(xiàn)幾個關(guān)鍵內(nèi)核維護(hù)工作的分布。這種分工可以限度地減少內(nèi)核某一部分發(fā)生重大變化對其他部分產(chǎn)生的影響。每個后續(xù)子系統(tǒng)的改變傳達(dá)給主要管理員,終到達(dá)Linux內(nèi)核上游的管理員。這些變化被稱為“修補(patch)”,在標(biāo)準(zhǔn)格式下創(chuàng)建和應(yīng)用。

供應(yīng)商和開發(fā)人員將他們的知識反饋到開源社群以改進(jìn)內(nèi)核。Linux開放、分散的本質(zhì),再加上背后強大的社群支持,使基于Linux的OS成為培養(yǎng)創(chuàng)新的良好選擇。

F1:為下一個項目計劃的Linux操作系統(tǒng)。

“”使用,但并非“零”成本

除了決定使用商用還是發(fā)行版Linux,開發(fā)人員還必須認(rèn)識到其調(diào)試/開發(fā)工具的能力和局限。

充分發(fā)揮嵌入式Linux發(fā)行版的優(yōu)勢,已經(jīng)成為消費產(chǎn)品領(lǐng)域被廣泛接收的現(xiàn)實。在這些市場上,產(chǎn)品運行率非常高,對代碼的改善更新非常頻繁,而且產(chǎn)品的銷售成本至關(guān)重要,所有這些都使得開源模式極具吸引力。但是,能集成開源/軟件,還可為處理器內(nèi)核提供無縫調(diào)試環(huán)境的工具要求對內(nèi)核和SoC元件互動有深刻的了解。

現(xiàn)在有若干種“軟件”調(diào)試解決方案,設(shè)計人員需要全面了解其局限性。比如,針對Linux內(nèi)核常用軟件調(diào)試器是KGDB。KGDB的主要缺點是要求重新編譯內(nèi)核。這對那些已經(jīng)在市場上通用的產(chǎn)品應(yīng)用來說產(chǎn)并不總是可行的。修補內(nèi)核還可能引入影響系統(tǒng)性能的代碼變化。

GDBServer是另一個面向應(yīng)用調(diào)試的頗受歡迎的軟件調(diào)試器,但它主要問題是缺乏對同時調(diào)試大量線程/進(jìn)程的支持。隨著調(diào)試的線程/進(jìn)程數(shù)不斷增加,GDBServer性能迅速惡化,導(dǎo)致反應(yīng)時間太慢,進(jìn)而使目標(biāo)系統(tǒng)出現(xiàn)故障。其他問題還涉及到:不能在相同的目標(biāo)連接上調(diào)試驅(qū)動程序和應(yīng)用;調(diào)試設(shè)備驅(qū)動程序和調(diào)試共享庫。

Linux內(nèi)核的維護(hù)

開發(fā)人員在決定將選擇哪種OS時,重要的是選擇一個完全支持其特定處理器的操作系統(tǒng),并能夠降低總成本和縮短上市時間。

從處理器供應(yīng)商的角度來看,積極參與與其內(nèi)核相關(guān)的Linux內(nèi)核的維護(hù)非常重要。

作為處理器IP公司,MIPS科技公司必須確保其新的處理器內(nèi)核正確集成到Linux源代碼樹,而且所有的改變都通過對舊內(nèi)核和平臺的回歸測試進(jìn)行正確驗證。

由于MIPSIP內(nèi)核是專有內(nèi)核,對于MIPS和Linux社區(qū)來說有益的,是確保MIPS內(nèi)核的所有性能和電源管理特性能夠在Linux內(nèi)核中完全實現(xiàn)。

對新內(nèi)核設(shè)計的支持不能破壞現(xiàn)有內(nèi)核支持結(jié)構(gòu)或降低其性能,而且還必須允許現(xiàn)有客戶快速轉(zhuǎn)移到新內(nèi)核技術(shù)。MIPS內(nèi)核的可配置性使得對Linux內(nèi)核代碼庫的維護(hù)更富挑戰(zhàn),因為許多內(nèi)核配置組合必須經(jīng)過測試,以確保新增加的功能在所有組合中操作正常。

內(nèi)核優(yōu)化1:多核支持

現(xiàn)在,為了實現(xiàn)單位面積計算能力(MIPS/每平方毫米)和單位功耗計算能力(MIPS/mW),許多處理器都利用了多核技術(shù),在幾個以較低時鐘頻率運行的內(nèi)核間分配處理負(fù)載。這些應(yīng)用能夠以對稱多處理(SMP)的方式進(jìn)行分配,其中一項任務(wù)是內(nèi)核間的基本平分;或者采用非對稱多處理(AMP),在這里特定任務(wù)被分配給一個特定內(nèi)核。不論是哪種方式,Linux內(nèi)核中必須有適當(dāng)?shù)闹С衷试S實現(xiàn)這些編程模型,同時對應(yīng)用開發(fā)者盡可能的透明。

MIPS科技的多線程34K內(nèi)核和多線程/多處理1004K內(nèi)核所要求的方式,與內(nèi)核內(nèi)的多核管理方法略微不同,因為34K內(nèi)核能夠在單一內(nèi)核的物理實例中提供多個虛擬內(nèi)核或虛擬處理單元(VPE),而1004K內(nèi)核則可提供多核器件的一致執(zhí)行。

對于每個內(nèi)核,我們執(zhí)行的Linux內(nèi)核多核支持和優(yōu)化都必須能夠正確識別所使用的內(nèi)核,并妥善初始化和無縫實現(xiàn)特定的多核功能。必須明白,執(zhí)行基于34K器件的任務(wù)共享模型時,一個物理內(nèi)核實際上是以多于一個虛擬內(nèi)核的形式出現(xiàn)的,這些內(nèi)核并不會自動進(jìn)行一致性管理。這種多核環(huán)境在某些情況下比較適合AMP環(huán)境,如每個VPE運行一個獨立操作系統(tǒng)。1004K內(nèi)核真正的一致性多核設(shè)計使傳統(tǒng)的SMP模式更具吸引力,在這里一個操作系統(tǒng)可以完全控制兩個內(nèi)核。

內(nèi)核優(yōu)化2:電源管理

在今天的綠色計算環(huán)境中,電源管理日漸重要,不僅體現(xiàn)在要求限度延長電池壽命的便攜式設(shè)備方面,而且體現(xiàn)在需要盡量減少能源浪費和熱量的AC供電系統(tǒng)中。目前Linux內(nèi)核電源管理支持主要集中在通過ACPI的標(biāo)準(zhǔn)PC。但是ACPI接口并不適合先進(jìn)的多核SoC,因為后者必須將一致性電源管理方案擴(kuò)展至多個內(nèi)核、內(nèi)部SoC外設(shè)以及的外部系統(tǒng)外設(shè)(如RF功率放大器)。

在MIPS,我們執(zhí)行了一個先進(jìn)的電源管理IP塊,稱為組群電源控制器(CPC),在具體的1004K執(zhí)行中,它允許對每個內(nèi)核的單獨控制,使內(nèi)核可以進(jìn)入或離開一致性操作,并在需要的情況下徹底關(guān)掉電源。這樣的電源管理模式能夠進(jìn)一步擴(kuò)展,使內(nèi)核電壓和頻率調(diào)制處于操作系統(tǒng)本身的控制之下。這個CPC塊的功能還必須擴(kuò)展至Linux內(nèi)核。我們現(xiàn)在正在構(gòu)建這個電源管理結(jié)構(gòu)的基礎(chǔ),以實現(xiàn)針對Linux內(nèi)核本身及在標(biāo)準(zhǔn)Linux應(yīng)用領(lǐng)域下運行的其他應(yīng)用的全面API。

F2:組群電源控制器允許在特定的多核實現(xiàn)中對每個內(nèi)核進(jìn)行單獨控制

Linux開發(fā)工具

當(dāng)考慮處理器對OS的支持時,開發(fā)工具很重要。

備受稱贊的內(nèi)核*測工具是Linux事件分析器,能夠剖析整個系統(tǒng)。通常這些工具可捕獲目標(biāo)內(nèi)發(fā)生的用戶

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論