<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于Xscale的PC/104 Linux系統構建

基于Xscale的PC/104 Linux系統構建

作者: 時(shí)間:2012-03-23 來(lái)源:網(wǎng)絡(luò ) 收藏

3.3 Boot Loader

引導加載程序Boot loader是在操作系統內核運行前運行的一小段程序。用來(lái)完成硬件和軟件運行環(huán)境的初始化,建立內存空間映射圖,以便最終調用操作系統內核。作用與PC機上的BIOS基本相同,是最底層的引導程序。

本文采用了功能最多、最具彈性的被最為積極開(kāi)發(fā)和維護的開(kāi)放源碼的bootloader,即U-BOOT。它除了提供引導功能外,還提供監控程序的功能,該功能在系統開(kāi)發(fā)期間非常有用。

Boot Loader操作如下:

首先確定在cpu./xscale/和board./pxa270下存在xscale.c和pxa270.c兩個(gè)文件,然后在根目錄下輸入:make pxa270_config得到U-Boot.bin映像文件,最后用JTAG燒錄到FLASH,完成Boot Loader的。

3.4 內核的配置與裁減

內核已經(jīng)發(fā)展到2.6.20版本,功能非常強大,但是,體積也變的異常龐大。因此,必須針對PC/104目標板的硬件配置進(jìn)行裁減。

根據目標板PXA270的資源配置,采用make menuconfig配置內核,將有關(guān)CPU、內存管理、JFFS2文件系統支持、串口支持、網(wǎng)口支持編譯進(jìn)內核,將音頻、觸摸屏接口、LVDS接口作為模塊編譯,需要時(shí)動(dòng)態(tài)載入,這樣編譯下來(lái)的內核只有300KB左右,大大減小了內核的體積,減輕了目標板有限的存儲空間和內存的壓力。

編譯并生成鏡像命令如下:

1)#tar jxvf my-linux-2.6.10..tar.bz2

2)#ln –s linux-2.6.10 linux

3)#cd linux

4)#make clean

5)#make dep

6)#make bzImage

3.5 文件系統的選擇和建立

根據文件系統的特性[5]和PC/104目標板的硬件環(huán)境,選擇JFFS2作為PC/104目標板的文件系統。JFFS2文件系統具有垃圾回收功能維護空間,并且它的元數據的結構允許文件系統的寫(xiě)入操作,故可提供對使用Flash系統而言非常重要的斷電可靠性和損耗平衡特性,能應對工作時(shí)的突發(fā)事件,避免系統由于突發(fā)事件造成崩潰,從而提高系統的安全性。

商用發(fā)行版Red Hat的文件系統內容來(lái)自GNU,體積龐大,不適合做嵌入式系統的文件系統,而B(niǎo)usybox是小型嵌入式系統常用的一個(gè)套件,它可以根據配置執行ash shell的基本功能,以及幾十個(gè)小應用程序的功能,而大小只有300K左右,是目前嵌入式領(lǐng)域最活躍的系統應用套件。故本文使用Busybox系統套件。

將全部的文件系統移植到目標板之前,需要用mkfs.jffs2工具打包。具體移植操作如下:

1) 解壓根文件系統,生成root目錄。

#tar jxf up-netpxa270_fs.tar.bz2

2) 解壓busybox

#cd up-techpxa270/kernel/02_root

#tar zxf busybox-1.00-pre9.tar.gz

#cd busybox-1.00-pre9

3) 配置安裝busybox

#make menucongfig

4) 生成JFFS2文件系統

#/mkfs.jffs2 -r root -o rootfs.img -e 0x20000 --pad=0xd00000

移植好文件系統后,便可以通過(guò)U-boot引導,并掛載該文件系統根分區啟動(dòng)。

4 系統測試

開(kāi)發(fā)的基于的PC/104 Linux系統硬件如圖1所示。室溫25℃,通風(fēng)良好條件下,經(jīng)測試,系統能夠啟動(dòng)并穩定運行(如圖2),通過(guò)PING命令測試表明,系統能夠與外網(wǎng)連通(如圖3),且工作穩定,系統構建成功。

圖1 PC/104開(kāi)發(fā)板

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


關(guān)鍵詞: PC104 Linux Xscale 移植

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>