999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

嵌入式Linux在ARM9(TQ)上的移植

2014-05-04 00:24:54張先杰
山東工業技術 2014年11期

張先杰

(山東科技大學電氣與自動化工程學院,山東 青島 266510)

嵌入式Linux在ARM9(TQ)上的移植

張先杰

(山東科技大學電氣與自動化工程學院,山東青島266510)

【摘要】微處理器技術的發展使得小型、實時、性能良好的嵌入式操作系統得到廣泛的應用。分析了Linux操作系統的結構,描述了將Linux內核移植到ARM9開發板TQ2440上的方法和完整過程。介紹目標平臺以及移植環境的構建,重點介紹Bootloader的架構和功能以及Linux內核的移植,移植后運行結果良好可行。

【關鍵詞】TQ2440;ARM9;系統移植;Boot loader;Linux內核

0 引言

本文中使用的TQ2440開發板CPU是三星公司生產的S3C2440,內核為ARM 920T,采用0.13um CMOS標準單元和存儲器編譯器開發。以此作為硬件平臺來實現Linux系統的完整移植。而嵌入式系統其本身具有結構較小、穩定性好等優點,因為Linux本身具有良好的可移植性,通過構建相應的開發環境,能夠進行獨立的產品開發,使得它被廣泛應用于多種硬件平臺。

1 Linux系統分析

1.1Linux系統的基本體系結構

Linux系統主要由內核、shell、文件系統和應用程序4個部分組成。用戶通過它們來運行程序、管理文件和使用系統。

1.2Linux內核

內核是操作系統的核心,負責管理系統的進程、內存、設備驅動程序、文件和網絡系統,決定著系統的性能和穩定性。

Linux內核由如下幾部分組成:內存管理、進程管理、硬件驅動程序、文件系統和網絡管理等。

圖1 Linux內核結構圖

圖2 交叉編譯環境圖

2 Linux操作系統移植

2.1交叉編譯環境的搭建

硬件環境構建采用的是主機與目標板結合的交叉開發模式,TQ2440開發板配有S3C2440處理器,64MB的SDRAM內存,256MB的Nand lash,2MB的NOR LASH,串口,網絡接口,USB接口等強大的硬件系統。

軟件環境的搭建是由GNU 庫(glibc),GNU inutils以及GNU編譯器gee等一系列交叉開發工具組成,如下圖2所示。

2.2引導加載程序Boot oader

Bootloader是這么是一段系統上電時候開始執行,并初始化硬件設備,預備軟件環境,然后調用操作系統的程序。TQ2440開發板中ARM上電CPU是從0x0000000開始執行,Bootloader存放在此處。根據開發板的需要,我們適當的修改CPU的頻率、支持NOR LASH的支持和SDRAM的配置及大小、環境變量的位置等相關數據。

3 移植Linux內核

3.1Linux移植準備

載內核源文件linux-2.6.22.tar.bz2、補丁文件patch-2.6.22.6.bz2,將兩個文件放在同一個目錄下面解壓如下:

$tar jf inux-2.6.22.tar.bz2

結論:C、D泊位靠泊5000DWT油船時,A、B泊位可靠泊2000DWT及以下噸級雜貨船,5000DWT及3000DWT雜貨船不能在A、B泊位進行靠泊作業。

$tar jf atch-2.6.22.6.bz2.22.6

$cd inux-2.6.22

$patch p1< ./patch-2.6.22.6

由此我們得到了內核源碼。

Makef e由配置文件.confg確定部分文件與內核、模塊和子目錄的關系。在內核目錄下執行“make enuconfg RCH=arm ROSS_ OMPILE=arm-linux-”得到內核配置界面,通過配置界,我們可以選擇我們所需要的芯片類型,文件類型等。

3.2Linux內核移植

修改內核以支持TQ2440開發板,首先修改頂層(即是根目錄下)的Makefle文件,修改為ARCH=arm,cross_COMPILE=arm-linux-;修改時鐘:amdk2440_map_io()中的s3c24xx_init_(12000000);修改機器碼為168;通過內核的配置單按用戶需求配置好內核并保存為.confg,即可編譯。

使用命令:vim arch/arm/plat-s3c24xx/common-smdk.c修改文件內容,將NAND FLASH分為uboot,ysffs2和kernel這3個分區,并修改相關偏移量。

YAFFS是專門為NAND FLASH存儲器設計的嵌入式文件系統,遵循GPL協議。添加YAFFS2文件系統的支持,就是在內核上打支持YAFFS2的補丁,之后對內核添加YAFFS的相關配置。

內核配置完畢后保存退出,最后編譯內核,輸入命令#make zImage,成功編譯后,生成zlmage內核映像文件,該文件在arch/arm/boot目錄下產生,完成內核的配置編譯,只需要將編譯好的內核映像文件zllnage下載到開發板的Flash中就可以了,使用以下命令:

set bootcmd 'nboot 0x32000000 0 0; bootm 0x32000000'

saveenv

開發板上電后內核自動啟動,到此我們就完成了Linux在TQ2440開發板上的移植工作。

4 結束語

本文通過TQ2440開發板,研究了將Linux移植到ARM9統上的整個移植流程。ARM平臺下嵌入式Linux的移植,包括熟悉硬件平臺,構建嵌入式Linux系統的軟件平臺,建立交叉編譯環境,Bootioader的移植,Linux內核的配置與編譯等許多相關內容,對于學習ARM的人員來書具有很好的指導和實踐意義。

【參考文獻】

[1]李延鵬.嵌入式開發工程師入行手冊[M].北京:中國鐵道出版社,2013-8.

[2]韋東山.嵌入式Linux應用開發完全手冊[M].北京:人民郵電出版社,2012-1.

[3]曾福振,閔聯營.基于ARM和Linux的嵌入式平臺的構建[J].微型機與應用,2011,30(12).

主站蜘蛛池模板: 91精品专区国产盗摄| 精品国产免费人成在线观看| 亚洲国产综合自在线另类| 精品亚洲国产成人AV| 97se亚洲| 久久国语对白| 最新精品国偷自产在线| 亚洲视频三级| 小说区 亚洲 自拍 另类| 欧美精品H在线播放| 5388国产亚洲欧美在线观看| 中文字幕一区二区视频| 一级毛片免费不卡在线视频| 2020亚洲精品无码| 久久免费视频6| 亚洲色欲色欲www网| 国产91在线|中文| 在线另类稀缺国产呦| 99久久精品免费观看国产| 国产一区成人| 制服无码网站| 99国产精品一区二区| 伊人国产无码高清视频| 国产精品第| 小蝌蚪亚洲精品国产| 亚洲天堂色色人体| 亚洲av无码片一区二区三区| 国产成人永久免费视频| 国产精品女同一区三区五区| 99热这里都是国产精品| 亚洲第一成年人网站| 2021最新国产精品网站| 少妇露出福利视频| 欧美激情综合一区二区| 成人午夜在线播放| 极品性荡少妇一区二区色欲| 亚洲成人手机在线| 亚洲天堂高清| 成人免费视频一区| …亚洲 欧洲 另类 春色| 久久黄色视频影| 精品人妻系列无码专区久久| 久久免费精品琪琪| 无码丝袜人妻| 欧美日韩亚洲国产主播第一区| 青草午夜精品视频在线观看| 欧美啪啪精品| 99re热精品视频国产免费| 日韩乱码免费一区二区三区| 香蕉视频在线观看www| 亚洲国产精品人久久电影| 日韩欧美中文在线| 亚洲人成人伊人成综合网无码| 中文精品久久久久国产网址| 国产欧美日韩在线一区| 天天躁夜夜躁狠狠躁躁88| 国产无遮挡猛进猛出免费软件| 亚洲清纯自偷自拍另类专区| 曰韩免费无码AV一区二区| 国产午夜精品一区二区三区软件| 91香蕉国产亚洲一二三区| 欧美性精品| 最新国产网站| 一区二区午夜| 日本高清免费一本在线观看| 亚洲品质国产精品无码| 亚洲男人天堂久久| 亚洲天堂视频网| 日韩黄色在线| 国产成人高精品免费视频| 国产成年无码AⅤ片在线| 一本色道久久88综合日韩精品| 亚洲成人在线网| 在线观看无码a∨| 国产精品一区二区在线播放| 国产黑人在线| 婷婷五月在线视频| 暴力调教一区二区三区| 亚洲一区二区约美女探花| 欧美国产日产一区二区| 在线综合亚洲欧美网站| 伊人成人在线|