基于PXA255的嵌入式Linux應(yīng)用平臺(tái)的構(gòu)建
# cd usr/local
# tar zxvf hybus-arm-linux-R1.1.tar.gz
生成hybus-arm-linux-R1.1目錄,然后在/root/.bash_profile下修改添加以下路徑:
PATH=$PATH:/usr/local/ hybus-arm-linux-R1.1/bin
export PATH
至此,交叉編譯環(huán)境建立完成。
2.2.2 加載和編譯Linux內(nèi)核
Linux系統(tǒng)的內(nèi)核采用單塊結(jié)構(gòu),可以動(dòng)態(tài)地加載和卸載模塊。系統(tǒng)利用內(nèi)核模塊的可動(dòng)態(tài)加載和卸載功能,可以方便地在內(nèi)核中添加新的組件或卸載不再需要的內(nèi)核組件。內(nèi)核模塊的動(dòng)態(tài)裝載性使得內(nèi)核映像的尺寸保持在最小,并且具有最大的靈活性,同時(shí)便于檢驗(yàn)新的內(nèi)核代碼,而不需重新編譯內(nèi)核且重新引導(dǎo),從而用戶(hù)可以根據(jù)自己系統(tǒng)的需要構(gòu)筑自己的私有內(nèi)核,其源碼的公開(kāi)更為改造其內(nèi)核提供了可能,尤其為重建有特殊要求的操作系統(tǒng)提供了可能。Linux的內(nèi)核版本發(fā)行同Linux對(duì)嵌入式處理器支持程度的發(fā)展是不同步的,因此需要對(duì)特定的處理器體系結(jié)構(gòu)選擇適合的內(nèi)核,在本文中選用2.4.18的內(nèi)核版本,下載已經(jīng)打好補(bǔ)丁的內(nèi)核資源linux-2.4.18-rmk7.tar.bz2。
# tar jxvf linux-2.4.18-rmk7.tar.bz2
# cd linux-2.4.18-rmk7
# make menuconfig
# make dep
# make zImage
完成后在arch/arm/boot 路徑下生成映像文件zImage,下載到開(kāi)發(fā)平臺(tái)上并燒寫(xiě)到FLASH中。
2.3 配置根文件系統(tǒng)
Linux并不使用設(shè)備標(biāo)志符(如設(shè)備號(hào)或驅(qū)動(dòng)器名稱(chēng))來(lái)訪問(wèn)獨(dú)立文件系統(tǒng),而是通過(guò)一個(gè)將整個(gè)文件系統(tǒng)表示成單一實(shí)體的層次樹(shù)結(jié)構(gòu)來(lái)訪問(wèn)它。一個(gè)根文件系統(tǒng)需要包含支持Linux系統(tǒng)運(yùn)行的所有文件,通常包括:
(1)基本的文件系統(tǒng)結(jié)構(gòu)。
(2)基本的目錄: /dev, /proc, /bin, /sbin, /etc, /tmp等。
(3)基本的工具: sh, ls, cp, cd, mv等。
(4)基本的配置文件: rc, inittab, fstab等。
(5)設(shè)備: /dev/hd*, /dev/tty*, /dev/fd0, /dev/ram*, /dev/console等。
(6)基本的運(yùn)行庫(kù)。
評(píng)論