隨著現(xiàn)代計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,嵌入式系統(tǒng)成為了當(dāng)前信息行業(yè)最熱門的焦點(diǎn)之一。而ARM以其高性能低功耗的特點(diǎn)成為目前應(yīng)用最廣泛的32位嵌入式處理器。在嵌入式操作系統(tǒng)方面,Linux憑借其性能優(yōu)異、結(jié)構(gòu)清晰、平臺(tái)支持廣泛、網(wǎng)絡(luò)支持強(qiáng)勁及開(kāi)放源代碼等多方面的優(yōu)勢(shì),被嵌入式系統(tǒng)開(kāi)發(fā)者廣泛地采用。Linux 2.6包含許多新的特性,為其在嵌入式領(lǐng)域的應(yīng)用提供了強(qiáng)有力的支持,新的內(nèi)核越來(lái)越多地應(yīng)用于嵌入式Linux系統(tǒng)中。 本文的工作基于艾科公司研發(fā)的硬件平臺(tái)Ark1600開(kāi)展。該平臺(tái)上集成了多個(gè)功能模塊,例如LCD、12S、GPIO、12C等,同時(shí)支持XD、CF、MMC、SD等多種硬件存儲(chǔ)設(shè)備,在設(shè)備通信方面提供了USB、串行通信等傳輸方式。本文的主要工作是研究Linux在ARM芯片上的移植,并在此基礎(chǔ)上闡述Linux設(shè)備驅(qū)動(dòng)的開(kāi)發(fā)。 首先構(gòu)建了交叉編譯環(huán)境,然后在分析Ark1600硬件體系結(jié)構(gòu)的基礎(chǔ)上詳細(xì)闡述了BootLoader程序設(shè)計(jì)與實(shí)現(xiàn)、Linux2.6內(nèi)核移植、Ramdisk文件系統(tǒng)移植的全過(guò)程,為后續(xù)項(xiàng)目的實(shí)施搭建了一個(gè)良好的開(kāi)發(fā)平臺(tái)。論文最后闡述了Linux 2.6內(nèi)核中開(kāi)發(fā)塊設(shè)備驅(qū)動(dòng)程序的實(shí)現(xiàn)方法,并以XD塊設(shè)備驅(qū)動(dòng)程序?yàn)槔敿?xì)闡述了Linux驅(qū)動(dòng)程序的開(kāi)發(fā)流程。 主要工作量在于BootLoader程序的設(shè)計(jì)與實(shí)現(xiàn)、Linux系統(tǒng)移植和XD塊設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā)。因?yàn)轫?xiàng)目平臺(tái)獨(dú)特的硬件環(huán)境,一些程序代碼要嚴(yán)格依賴硬件設(shè)備設(shè)計(jì)。在Linux移植中的主要工作包括串口控制臺(tái)的驅(qū)動(dòng)、設(shè)置系統(tǒng)的存儲(chǔ)布局、初始化系統(tǒng)定時(shí)器、初始化系統(tǒng)中斷、在Linux系統(tǒng)中建立標(biāo)識(shí)本硬件平臺(tái)的結(jié)構(gòu)體變量、配置并編譯Linux內(nèi)核等。
標(biāo)簽:
ARM
存儲(chǔ)卡
系統(tǒng)設(shè)計(jì)
上傳時(shí)間:
2013-05-18
上傳用戶:wzr0701