基于Xscale的PC/104 Linux系統(tǒng)構(gòu)建
1 引言
PC/104是一種專門為嵌入式控制而定義的工業(yè)控制總線。其實(shí)質(zhì)是一種緊湊的IEEE-P996總線規(guī)范。PC/104的信號定義和PC/AT基本一致,但電氣和機(jī)械規(guī)范完全不同,是一種優(yōu)化的、低功耗的、小型的、堆棧式結(jié)構(gòu)的嵌入式控制系統(tǒng)[1]。
基于嵌入式PC/104的操作系統(tǒng)多為DOS或者Windows。采用DOS系統(tǒng)無圖形窗口,交互能力差;采用Windows系統(tǒng)則需要昂貴的版權(quán)費(fèi),成本高,且存在安全問題。
ARM(Advanced RISC Machines) 公司是全球領(lǐng)先的16/32位RISC微處理器知識產(chǎn)權(quán)設(shè)計(jì)供應(yīng)商[2]。 ARM處理器具有體積小、功耗低、性能優(yōu)良且成本低廉等優(yōu)點(diǎn),與PC/104的工作環(huán)境對其提出的要求相符,而且Linux具有開放源碼的特點(diǎn),用戶不必為昂貴的版權(quán)費(fèi)用擔(dān)心。因此,研究以基于ARM的Xscale處理器替代傳統(tǒng)的X86架構(gòu)的PC/104處理器,并以嵌入式Linux系統(tǒng)替代DOS或 Windows系統(tǒng)具有重要意義。
2 PC/104目標(biāo)硬件平臺介紹
本文采取博創(chuàng)公司的UP-PXA270 PC/104 CPU模塊作為構(gòu)建Linux的目標(biāo)硬件平臺。該模塊采用Intel PXA270 Xscale低功耗處理器,主頻104MHZ~520MHZ,集成了64M的SDRAM,有16M的Nor Flash存儲軟件程序及重要數(shù)據(jù),提供了CF卡接口、USB接口、VGA接口、LVDS接口、串口、以太網(wǎng)接口。
3 Linux系統(tǒng)在PC/104上的實(shí)現(xiàn)
3.1 內(nèi)核的選擇與下載
目前,Linux已經(jīng)正式發(fā)布了2.6.20內(nèi)核版本,綜合考慮先進(jìn)性和穩(wěn)定性兩個因素,本
文不采用最新的2.6.20版本,而是采用更穩(wěn)定和成熟的2.6.10版本,該版本可從下面的網(wǎng)址
3.2 交叉編譯環(huán)境的建立
由于宿主機(jī)和目標(biāo)板的處理器架構(gòu)不同,需要建立交叉編譯環(huán)境。在宿主機(jī)上完成程序的開發(fā)和編譯,在目標(biāo)板上執(zhí)行,可以充分利用宿主機(jī)的高性能,有效提高編譯效率。
主機(jī)采用商用版Redhat-Linux9.0,以解決基于Windows虛擬機(jī)環(huán)境存在兼容性及對速度產(chǎn)生影響等問題。
本文在X86架構(gòu)上的主機(jī)上采用針對ARM的工具鏈進(jìn)行開發(fā),開發(fā)工具鏈采用UP-PXA270 PC/104 CPU模塊配套光盤中提供的交叉編譯器arm-linux-gcc,安裝步驟如下:
以超級用戶root登陸,并打開一個shell,依次執(zhí)行如下操作:
1) #mkdir/usr/local/arm;創(chuàng)建開發(fā)工具目錄;
2) #cd/usr/local/arm;進(jìn)入該目錄;
3) #tar xvzf arm_linux_gcc.tar.gz;解壓縮交叉編譯工具;
4) #export PATH=/usr/local/arm/3.2.1/bin:¥PATH。設(shè)置環(huán)境變量。
便可完成安裝,建立好交叉編譯環(huán)境。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論