<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è) > 嵌入式系統 > 設計應用 > 基于A(yíng)RM處理器的嵌入式WEB服務(wù)器設計

基于A(yíng)RM處理器的嵌入式WEB服務(wù)器設計

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

2 軟件
2.1 Linux系統移植
采用Linux作為操作系統,Linux系統具有開(kāi)放源碼、軟件資源豐富、內核功能強大、性能高效、穩定、可支持多種硬件平臺等特點(diǎn)。除此之外,Linux還具有完善的網(wǎng)絡(luò )通信功能,可支持TCP/IP等多種協(xié)議,而且Linux系統內核中已經(jīng)緊密地集成了網(wǎng)絡(luò )功能并有大量的網(wǎng)絡(luò )應用程序,可為實(shí)現網(wǎng)絡(luò )通信提供有力的支持。Linux強大的網(wǎng)絡(luò )功能是選用其作為web軟件系統的一個(gè)重要原因。
一個(gè)系統通??梢苑忠龑Ъ虞d程序、內核、文件系統為3個(gè)層次。因此,Linux的系統移植也包括3個(gè)部分:即引導程序(BootLoa-der)移植、內核移植和文件系統制作。
Bootloader (引導加載程序)是系統加電后運行的第一段代碼。它的運行時(shí)間非常短,但對于系統來(lái)說(shuō)。這是一個(gè)非常重要的系統組成部分,主要負責硬件的初始化,設置Linux的啟動(dòng)參數,然后跳轉到Linux內核啟動(dòng)代碼的第一行語(yǔ)句引導Linux。本系統采用U-boot作為bootloader。U-Boot的全稱(chēng)是Universal Boot Loader,是遵循GPL條款的開(kāi)放源碼項目,它從FADSROM、8xxROM、PPCBOOT逐步發(fā)展演化而來(lái)。
內核是所有嵌入式Linux系統的核心軟件,內核移植是一個(gè)比較復雜的任務(wù),也是嵌入式系統開(kāi)發(fā)中非常重要的一個(gè)過(guò)程。內核移植一般包括內核配置、編譯和內核下載三大部分。移植過(guò)程的關(guān)鍵步驟如下:
(1)準備下載linux源碼
選用的內核版本是linux-26.22,然后通過(guò)解壓縮得到內核源碼。同時(shí)在linux系統開(kāi)發(fā)環(huán)境下安裝交叉編譯器arm-linux-gcc。
(2)修改內核代碼
修改內核代碼主要是選定Linux內核對的支持和修改以及與外部設備相關(guān)的內核代碼。首先在linux-2.6.22根目錄下修改Makefile文件,主要應當修改下面兩行內容:
ARCH=arm;說(shuō)明目標是體系結構;
CROSS_COMPILE =/usr/local/arm/1.3.1/bin/aim-linux-gcc;設置為宿主機上交叉編譯工具鏈的絕對路徑。
除此之外。還需要修改與AT91SAM9263相關(guān)的代碼,這些代碼集中在arch目錄中和include目錄下文件名以asm開(kāi)頭的子目錄中。
(3)配置和編譯內核
配置內核選項是移植內核過(guò)程中很重要的一步,主要是對內核功能模塊進(jìn)行選擇及參數設定。在內核源代碼目錄下運行make menuconfig可對內核進(jìn)行配置,主要是載入AT91SAM9263參考開(kāi)發(fā)板的默認配置,并在此基礎上進(jìn)行相關(guān)的驅動(dòng)選擇等。配置完成后,可保存退出配置菜單界面,然后在內核源代碼目錄上輸入命令make,這樣。編譯完成后,就會(huì )生成uImage文件。
本設計所采用的文件系統是直接從網(wǎng)絡(luò )上獲取一個(gè)已經(jīng)生成的文件系統,并在此基礎上進(jìn)行添加和修改,最后形成自己的文件系統。在開(kāi)發(fā)過(guò)程中,可利用Linux系統所提供的NFS服務(wù),并通過(guò)網(wǎng)絡(luò )掛載文件系統進(jìn)行系統調試。最后將Uboot映像文件、Linux內核文件uImage、文件系統鏡像文件燒寫(xiě)到NANDflash上相應的分區。
2.2 Web的移植
Web服務(wù)器Boa是一個(gè)單任務(wù)的小型HTTP服務(wù)器,源代碼開(kāi)放、性能優(yōu)秀,運行所需空間僅為140 KB左右。特別適合于在嵌入式系統中。本設計采用移植Boa的方法來(lái)實(shí)現嵌入式Web服務(wù)器部分,以滿(mǎn)足訪(fǎng)問(wèn)網(wǎng)頁(yè)的要求,其主要移植過(guò)程如下:
首先是下載Boa源代碼。Boa web服務(wù)器的源代碼可以從http:∥www.boa.org下載,本文中的下載文件為:boa-0.94.13.tar.gz.
其次是安裝并編譯Boa源代碼,操作時(shí)可執行以下命令:
#cd/home/
#tar zxvfboa.tar.gz
#cd boa/src
生成Makefile文件#./configure后,即可修改Makefile文件,找到CC=gcc,將其改成CC=armlinux-gcc;再找到CPP=gee-E,其將其改成CPP=arm-linux-gec-E,然后保存退出。
運行make進(jìn)行編譯后,即可在boa/src目錄下生成Boa文件,該文件即為Boa Web服務(wù)器執行文件。
勢頭應當配置Boa Web服務(wù)器。Boa啟動(dòng)時(shí)將加載一個(gè)配置文件boa.conf。用戶(hù)可以根據自己的需要對boa.conf進(jìn)行修改,但必須保證其它的輔助文件和設置必須與boa.conf里的配置相符,否則,Boa就不能正常工作。Boa源碼boa-0.94.13目錄下已有一個(gè)示例文件boa. conf位于boa/example下面,可以根據需要在其基礎上進(jìn)行修改。然后將修改好的配置文件Boa.conf存放于嵌入式系統根文件/etc/boa目錄下。
最后就是測試Boa的運行。在re文件中執行:#ifconfig eth0 192.168.0.1命令給嵌入式Web服務(wù)器配置IP。并通過(guò)IE瀏覽器連接到運行Boa的嵌入式系統http:∥192.168.0.1/,這樣,就可以訪(fǎng)問(wèn)到之前放置的index頁(yè)面了。

3 結束語(yǔ)
本設計以AT9lSAM9263為核心,在此基礎上給出了一個(gè)web服務(wù)器。并在硬件方面設計了一個(gè)嵌入式系統,該系統包括網(wǎng)絡(luò )接口、AD卡接
口、USB接口等各種外設。文中還在網(wǎng)絡(luò )接口的基礎上,給出了將Linux移植到硬件平臺,并最終移植web服務(wù)器的實(shí)現方法。這種方法通過(guò)頁(yè)
面訪(fǎng)問(wèn)的測試,結果表明,本系統運行穩定,且訪(fǎng)問(wèn)速度正常。

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

上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(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>