基于ARM的嵌入式Linux開(kāi)發(fā)平臺(tái)構(gòu)建
隨著計(jì)算機(jī)技術(shù)、通信技術(shù)的飛速發(fā)展和3C(計(jì)算機(jī)、通信、消費(fèi)電子)的融合,嵌入式系統(tǒng)已經(jīng)滲透到各個(gè)領(lǐng)域。在32位嵌入式微處理器市場(chǎng)上,基于ARM(Advanced RISC Machine)內(nèi)核的微處理器在市場(chǎng)上處于絕對(duì)的領(lǐng)導(dǎo)地位,因此追蹤ARM技術(shù)的發(fā)展趨勢(shì)顯得尤為重要。在嵌入式操作系統(tǒng)的選擇上,Linux一直因其內(nèi)核精簡(jiǎn)、代碼開(kāi)放、易于移植等特點(diǎn)受到廣大嵌入式系統(tǒng)工程師的青睞。另外,嵌入式系統(tǒng)一旦具備網(wǎng)絡(luò)接入功能,其信息處理能力更加強(qiáng)大,因此有必要為嵌入式系統(tǒng)構(gòu)建Web服務(wù)器。本文主要目的是研究基于ARM的嵌入式Linux開(kāi)發(fā)平臺(tái)構(gòu)建,并在此基礎(chǔ)上進(jìn)行網(wǎng)絡(luò)應(yīng)用程序的開(kāi)發(fā)。
本文引用地址:http://2s4d.com/article/149340.htm選用指南
在進(jìn)行嵌入式系統(tǒng)的開(kāi)發(fā)之前,首先必須要選擇恰當(dāng)?shù)?a class="contentlabel" href="http://2s4d.com/news/listbylabel/label/開(kāi)發(fā)平臺(tái)">開(kāi)發(fā)平臺(tái)。對(duì)于經(jīng)驗(yàn)豐富的開(kāi)發(fā)者來(lái)說(shuō),當(dāng)然可以自己動(dòng)手組裝硬件,然后挑選合適的嵌入式Linux系統(tǒng),將其移植到開(kāi)發(fā)平臺(tái)上。但對(duì)于初學(xué)者來(lái)說(shuō),可能更好的辦法是購(gòu)買(mǎi)硬件廠商已經(jīng)做好的開(kāi)發(fā)板,將精力集中在應(yīng)用程序的開(kāi)發(fā)上。
雖然ARM微處理器有多達(dá)十幾種的內(nèi)核結(jié)構(gòu)、幾十個(gè)芯片生產(chǎn)廠家和眾多的功能組合,但這也給廣大嵌入式開(kāi)發(fā)人員在確定方案時(shí)帶來(lái)了一定的困難??陀^上講,嵌入式系統(tǒng)一般都是量身打造的。開(kāi)發(fā)人員必須依據(jù)客戶需求選擇合適的軟硬件平臺(tái),否則的話要么無(wú)法完成所要求的功能,要么就會(huì)造成資源的浪費(fèi),挑選出一個(gè)合適的方案確實(shí)很不容易。初學(xué)者在做決定時(shí)不妨借鑒下面的一些經(jīng)驗(yàn)。
ARM處理器包含ARM7系列,ARM9系列,ARM9E系列,ARM10E系列,SecurCore系列,Inter的Xscale,Inter的StrongARM ARM11系列 其中,ARM7、ARM9、ARM9E和ARM10為4個(gè)通用處理器系列,每一個(gè)系列提供一套相對(duì)獨(dú)特的性能來(lái)滿足不同應(yīng)用領(lǐng)域的需求。SecurCore系列專門(mén)為安全要求較高的應(yīng)用而設(shè)計(jì)。
ARM7系列微處理器的典型處理速度為0.9MIPS/MHz,ARM9系列微處理器的典型處理速度為1.1MIPS/MHz,常見(jiàn)的ARM7芯片的系統(tǒng)主時(shí)鐘為20MHz到133MHz;常見(jiàn)的ARM9芯片的系統(tǒng)主時(shí)鐘為100MHz到233MHz;ARM10系列微處理器的典型處理速度為1.25MIPS/MHz,其時(shí)鐘頻率則可以高達(dá)400MHz。不同ARM芯片對(duì)時(shí)鐘的處理各不相同。有些芯片只有一個(gè)主時(shí)鐘頻率,而有些芯片的內(nèi)部時(shí)鐘控制器則可以分別為ARM核、USB、UART和DSP等功能部件提供不同頻率。
大多數(shù)ARM微處理器片內(nèi)存儲(chǔ)器的容量都不大,需要用戶在設(shè)計(jì)嵌入式系統(tǒng)時(shí)擴(kuò)充外部存儲(chǔ)器。
除了ARM微處理器核之外,幾乎所有的ARM芯片都根據(jù)各自不同的應(yīng)用領(lǐng)域擴(kuò)展了相應(yīng)的功能模塊,并集成在芯片之中,從而形成了片內(nèi)外圍電路,如USB接口、I/O接口、RTC和LCD控制器等。嵌入式系統(tǒng)的開(kāi)發(fā)人員應(yīng)該盡可能運(yùn)用這些外圍電路,來(lái)實(shí)現(xiàn)系統(tǒng)所要求的功能。這樣既可以簡(jiǎn)化系統(tǒng)的設(shè)計(jì),同時(shí)又能夠提高系統(tǒng)的可靠性。
為嵌入式系統(tǒng)挑選合適的硬件平臺(tái)是一件很復(fù)雜的工作。以上給出的只是一些基本的原則,實(shí)際應(yīng)用當(dāng)中還要根據(jù)情況靈活確定。筆者在展開(kāi)對(duì)嵌入式Linux的研究和開(kāi)發(fā)之時(shí),經(jīng)過(guò)比較和鑒別,選用了一款基于S3C4510B處理器的開(kāi)發(fā)板。它是由三星公司推出的一款具有很高性價(jià)比的16/32位RISC微控制器,采用的是ARM公司提供的ARM7TDMI RISC處理器核。由于它具有高性能、低功耗等優(yōu)點(diǎn),因此特別適合于對(duì)價(jià)格和功耗比較敏感的應(yīng)用場(chǎng)合,如手持設(shè)備、網(wǎng)絡(luò)通信和工業(yè)控制等。
S3C4510B整個(gè)開(kāi)發(fā)板的結(jié)構(gòu)大致如圖1所示。
圖1 基于S3C4510B的開(kāi)發(fā)板框圖
快速入門(mén)
下面就來(lái)一睹嵌入式Linux的芳容。如果用戶的開(kāi)發(fā)板是由專門(mén)的硬件廠商提供的,一般來(lái)說(shuō)都會(huì)預(yù)裝一個(gè)嵌入式操作系統(tǒng),如Windows CE、Palm OS或Linux等。此處介紹的S3C4510B開(kāi)發(fā)板預(yù)裝的是嵌入式Linux。我們不妨借用它來(lái)感受一下嵌入式Linux的開(kāi)發(fā)方法。如果用戶的開(kāi)發(fā)板是自己組裝的,或者買(mǎi)來(lái)時(shí)預(yù)裝的是其它的嵌入式操作系統(tǒng),那么就需要自己動(dòng)手來(lái)重新構(gòu)建系統(tǒng)了。
正如前面介紹過(guò)的,在開(kāi)發(fā)嵌入式系統(tǒng)時(shí)需要用到兩個(gè)平臺(tái):一個(gè)是開(kāi)發(fā)平臺(tái)(Host),另一個(gè)是目標(biāo)平臺(tái)(Target)。開(kāi)發(fā)平臺(tái)通常用普通的PC機(jī)充當(dāng)。它可以通過(guò)串行端口、并行端口和以太網(wǎng)等方式與目標(biāo)平臺(tái)相連,從而共同構(gòu)成一個(gè)嵌入式系統(tǒng)的基本開(kāi)發(fā)環(huán)境。對(duì)于嵌入式Linux系統(tǒng)來(lái)說(shuō),最簡(jiǎn)單的開(kāi)發(fā)環(huán)境只需要用到宿主機(jī)、目標(biāo)板和串行連接線。它們之間的連接如圖2所示。
圖2 最簡(jiǎn)單的開(kāi)發(fā)環(huán)境
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)linux相關(guān)文章:linux教程
評(píng)論