基于PXA255的嵌入式Linux應用平臺的構建
# 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
至此,交叉編譯環境建立完成。
2.2.2 加載和編譯Linux內核
Linux系統的內核采用單塊結構,可以動態地加載和卸載模塊。系統利用內核模塊的可動態加載和卸載功能,可以方便地在內核中添加新的組件或卸載不再需要的內核組件。內核模塊的動態裝載性使得內核映像的尺寸保持在最小,并且具有最大的靈活性,同時便于檢驗新的內核代碼,而不需重新編譯內核且重新引導,從而用戶可以根據自己系統的需要構筑自己的私有內核,其源碼的公開更為改造其內核提供了可能,尤其為重建有特殊要求的操作系統提供了可能。Linux的內核版本發行同Linux對嵌入式處理器支持程度的發展是不同步的,因此需要對特定的處理器體系結構選擇適合的內核,在本文中選用2.4.18的內核版本,下載已經打好補丁的內核資源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,下載到開發平臺上并燒寫到FLASH中。
2.3 配置根文件系統
Linux并不使用設備標志符(如設備號或驅動器名稱)來訪問獨立文件系統,而是通過一個將整個文件系統表示成單一實體的層次樹結構來訪問它。一個根文件系統需要包含支持Linux系統運行的所有文件,通常包括:
(1)基本的文件系統結構。
(2)基本的目錄: /dev, /proc, /bin, /sbin, /etc, /tmp等。
(3)基本的工具: sh, ls, cp, cd, mv等。
(4)基本的配置文件: rc, inittab, fstab等。
(5)設備: /dev/hd*, /dev/tty*, /dev/fd0, /dev/ram*, /dev/console等。
(6)基本的運行庫。
評論