欧美日韩一区二区高清,久久视频这里只有精品,超黄网站在线观看,成人av影院在线观看

以文本方式查看主題

-  曙海教育集團(tuán)論壇  (http://m.martymets.com/bbs/index.asp)
--  Linux應(yīng)用開(kāi)發(fā)  (http://m.martymets.com/bbs/list.asp?boardid=32)
----  基于ARM嵌入式Linux應(yīng)用程序開(kāi)發(fā)研究(1)  (http://m.martymets.com/bbs/dispbbs.asp?boardid=32&id=1671)

--  作者:wangxinxin
--  發(fā)布時(shí)間:2010-11-23 11:03:16
--  基于ARM嵌入式Linux應(yīng)用程序開(kāi)發(fā)研究(1)
當(dāng)今社會(huì),嵌入式系統(tǒng)已經(jīng)滲透到人們工作、生活中的各個(gè)領(lǐng)域,嵌入式處理器已占分散處理器市場(chǎng)份額的94%。而嵌入式Linux系統(tǒng)也蓬勃發(fā)展,不僅繼承了Linux源碼開(kāi)放、內(nèi)核穩(wěn)定高效、軟件豐富等優(yōu)勢(shì),還具備支持廣泛處理器結(jié)構(gòu)和硬件平臺(tái)、占有空間小、成本低廉、結(jié)構(gòu)緊湊等特點(diǎn)。

  1 ARM處理器及開(kāi)發(fā)板

  在嵌入式領(lǐng)域,ARM已取得了極大的成功,造就了IP核商業(yè)化、市場(chǎng)化的神話。據(jù)統(tǒng)計(jì),全球有103家巨型IT公司在采用ARM技術(shù),20家最大的半導(dǎo)體,一商中有19家是ARM的用戶。ARM系列芯片已經(jīng)被廣泛的應(yīng)用于移動(dòng)電活、手持式計(jì)算機(jī)以及各種各樣的嵌入式應(yīng)用領(lǐng)域,成為世界上銷量最大的32 位微處理器。ARM已成為業(yè)界實(shí)際的RISC芯片標(biāo)準(zhǔn)。

  ARM系列處理器根據(jù)各自特點(diǎn)應(yīng)用于不同領(lǐng)域。從應(yīng)用的角度上ARM芯片選擇的一般原則:MMU;處理器速度;內(nèi)置存儲(chǔ)器容量;USB接口;GPIO 數(shù)量;中斷控制器;IIS(integrate interface ofsound)音頻接口;nWAIT信號(hào);RTC(real timeclock);LCD控制器;PWM輸出等各項(xiàng)指標(biāo)。

  本文使用的是ARM9,其性能遠(yuǎn)遠(yuǎn)高過(guò)ARM7。開(kāi)發(fā)板使用的是廣州斯道信息技術(shù)有限公司的開(kāi)發(fā)板,中央處理器是三星公司的S3C2410。ARM9具有以下特點(diǎn):5級(jí)流水線;采用哈佛結(jié)構(gòu);高速緩存和寫緩存的引入;支持MMU。

  2嵌入式Linux系統(tǒng)

  嵌入式操作系統(tǒng)是嵌入式應(yīng)用軟件的基礎(chǔ)和開(kāi)發(fā)平臺(tái),它的出現(xiàn)解決了嵌入式軟件開(kāi)發(fā)標(biāo)準(zhǔn)化的難題。嵌入式系統(tǒng)具有操作系統(tǒng)的最基本的功能。目前主流的嵌入式系統(tǒng)有以下兒種:Linux、VxWorks、QNX、Windows CE、Palm OS。

  嵌入式Linux操作系統(tǒng)具有一些獨(dú)特的優(yōu)勢(shì):層次結(jié)構(gòu)及內(nèi)核完全開(kāi)放;強(qiáng)大的網(wǎng)絡(luò)支持功能;具備一整套工具鏈;廣泛的硬件支持特性。

  嵌入式Linux系統(tǒng)有很多種。本文使用的是Red Hat9操作系統(tǒng)。

  在安裝有Windows和Linux雙系統(tǒng)的PC上,系統(tǒng)會(huì)以Linux的GRUB作為引導(dǎo)裝入器來(lái)選擇啟動(dòng)二者。此時(shí)若直接刪除Linux分區(qū),會(huì)導(dǎo)致系統(tǒng)無(wú)法啟動(dòng)Windows或者是需要用行命令才能啟動(dòng)Windows。可以先使用虛擬機(jī)安裝Linux系統(tǒng),練習(xí)使用,熟悉后再在PC上

安裝。

  3應(yīng)用程序開(kāi)發(fā)

  一般嵌入式開(kāi)發(fā)流程如圖1所示。圖片點(diǎn)擊可在新窗口打開(kāi)查看

  這里省略前面三步,從開(kāi)發(fā)應(yīng)用程序開(kāi)始。

  3.1交叉開(kāi)發(fā)環(huán)境建立

  對(duì)嵌入式系統(tǒng)而言,只裝備必要的資源是前提條件,這也決定了嵌入式應(yīng)用程序的開(kāi)發(fā)環(huán)境不可能是資源有限的嵌入式系統(tǒng),只能利用資源豐富的PC開(kāi)發(fā),然后建立交叉開(kāi)發(fā)平臺(tái)。

  交叉編譯器(cross-compiler)是進(jìn)行交叉平臺(tái)開(kāi)發(fā)的主要軟件工具。它是運(yùn)行在一種處理器體系結(jié)構(gòu)上,但是可以生成在另一種不同的處理器體系結(jié)構(gòu)上運(yùn)行的目標(biāo)代碼的編譯器。 要建立交叉開(kāi)發(fā)環(huán)境,主要需要幾個(gè)工具包:gcc,glib,binutils,gdb等。一般開(kāi)發(fā)板都提供這些工具,如果不是使用的開(kāi)發(fā)板,在網(wǎng)上也是可以下載到全部軟件包的。依次將它們安裝在PC上即可。

  Linux的軟件安裝方法與Windows不同。Linux中根據(jù)不同的壓縮打包方式使用不同的命令安裝。在安裝過(guò)程中,由于軟件包之間的依賴關(guān)系,系統(tǒng)可能會(huì)警告還有哪些沒(méi)有安裝,可以忽略這些警告。

  3.2 U-Boot

  在U-Boot(UniversalBootloader)之前,先介紹一下Bootloader。簡(jiǎn)單的說(shuō),Bootloader就是在操作系統(tǒng)內(nèi)核運(yùn)行之前的一段引導(dǎo)程序,類似于PC中的BIOS。通過(guò)它,可以完成對(duì)應(yīng)硬件設(shè)備的初始化,并建立內(nèi)存空間的映射圖的功能,為最終調(diào)用系統(tǒng)內(nèi)核做好準(zhǔn)備。

  U-Boot是遵循GPL條款的開(kāi)放源碼項(xiàng)目,它不僅僅支持嵌人式Linux系統(tǒng)的引導(dǎo),U-Boot中Universal的一層含義就是在于U- Boot支持多種嵌入式操作系統(tǒng),就目前來(lái)看,U-Boot對(duì)Linux的支持最完善。另外一層含義則是U-Boot支持多種常用系列的處理器。

  U-Boot支持的主要功能:系統(tǒng)引導(dǎo);基本輔助功能(操作系統(tǒng)接口功能;可靈活設(shè)置、傳遞多個(gè)關(guān)鍵參數(shù)給操作系統(tǒng);支持目標(biāo)板多種存儲(chǔ)方式;CRC32校驗(yàn));設(shè)備驅(qū)動(dòng);上電自檢功能;特殊功能(XIP內(nèi)核引導(dǎo))。

  U-Boot移植主要分為兩步:配置主板和設(shè)置Flash和SDRAM時(shí)序。

  3.3嵌入式Linux系統(tǒng)內(nèi)核編譯和移植

  嵌入式Linux內(nèi)核的編譯都是通過(guò)make的不同命令實(shí)現(xiàn)的,一般分為3步:(1)內(nèi)核配置。主要是用戶用于為目標(biāo)板選擇處理器架構(gòu)的選項(xiàng)。內(nèi)核支持4種方法的配置,


主站蜘蛛池模板: 饶河县| 湛江市| 剑阁县| 万全县| 泸溪县| 新民市| 麟游县| 定结县| 揭阳市| 西城区| 梧州市| 健康| 乡城县| 新巴尔虎左旗| 蚌埠市| 巴南区| 措勤县| 枣强县| 综艺| 射阳县| 福清市| 莆田市| 阿鲁科尔沁旗| 无棣县| 乌拉特前旗| 文水县| 越西县| 大宁县| 革吉县| 和林格尔县| 二连浩特市| 河津市| 汉川市| 昌平区| 长海县| 襄樊市| 大冶市| 湘乡市| 龙川县| 焦作市| 松原市|