在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于PowerPC的VPN網(wǎng)關(guān)設(shè)計(jì)

      基于PowerPC的VPN網(wǎng)關(guān)設(shè)計(jì)

      作者: 時(shí)間:2014-07-28 來源:網(wǎng)絡(luò) 收藏

        嵌入式L inux操作系統(tǒng)的構(gòu)建

      本文引用地址:http://www.biyoush.com/article/256143.htm

        通常的嵌入式系統(tǒng)開發(fā)大致可以分為硬件設(shè)計(jì)、裝載或引導(dǎo)嵌入式系統(tǒng)、在嵌入式系統(tǒng)上建立開發(fā)平臺(tái)以及開發(fā)應(yīng)用等四個(gè)步驟。

        利用ppcboot引導(dǎo)

        ppcboot是德國Denk軟件工程中心開發(fā)的引導(dǎo)程序,我們?cè)谘芯块_發(fā)中使用了其中的ppcboot-1. 1. 5作為開發(fā)藍(lán)本,對(duì)其代碼進(jìn)行了修改,以滿足硬件設(shè)計(jì)的要求。

        ppcboot源碼樹的目錄結(jié)構(gòu)

        CHANGELOG / /記錄歷次版本升級(jí)時(shí)的修改內(nèi)容

        COPYING

        CRED ITS

        MAKEALL

        Makefile / /制作文件

        README / /必讀的文件

        System. map / /當(dāng)編譯連接完成后,所生成的ppcboot二進(jìn)

        / /制中所有函數(shù)、數(shù)據(jù)的地址信息

        board / /各種與板子硬件關(guān)聯(lián)的. c模塊

        common / /一些通用ppcboot命令集的. c模塊

        config. mk

        cpu / /與MPC8xx硬件關(guān)聯(lián)的系統(tǒng)初始化. c代碼

        disk / /磁盤分區(qū)支持

        doc / /技術(shù)文檔目錄

        examp les / /一些簡單的、無需操作系統(tǒng)的應(yīng)用程序

        fs / /ppcboot中對(duì)文件系統(tǒng)的支持

        include / /頭文件

        net / /網(wǎng)絡(luò)協(xié)議支持

        ppc  / /處理器運(yùn)行時(shí)環(huán)境支持

        ppcboot / / elf32格式的ppcboot二進(jìn)制執(zhí)行文件

        ppcboot. bin / / raw二進(jìn)制格式的ppcboot執(zhí)行文件

        ppcboot. map / / s2record格式的ppcboot執(zhí)行文件

        rtc / /實(shí)時(shí)時(shí)鐘支持

        tools / /與ppcboot相關(guān)的一些工具軟件

        ppcboot的特點(diǎn)

        經(jīng)修改后, ppcboot-1. 1. 5 具有如下特性: ( 1 ) 支持bootm,直接從flash引導(dǎo)L inux,并提供軟件工具集,可構(gòu)建出最終燒結(jié)用的影像; (2) 支持從doc或flash memory引導(dǎo)L inux,并提供工具集,可構(gòu)建出最終燒結(jié)用的影像; (3) 板上flash /doc讀、寫、擦除功能; (4) 支持串行口kermit協(xié)議下載代碼或數(shù)據(jù); (5) 支持scc1以太網(wǎng)口啟動(dòng)tftp下傳數(shù)據(jù):如內(nèi)核、ramdisk、autoscrip t等影像; ( 6) 支持串行口srecord下載代碼或數(shù)據(jù); (7) 支持autoscrip t; (8) 提供板上內(nèi)存讀寫,格式化顯示,可進(jìn)行簡單測試。

        當(dāng)完成ppcboot-1. 1. 5的改寫后,對(duì)其進(jìn)行編譯,得到二進(jìn)制的ppcboot. bin代碼,然后將其燒錄在板上的BOOTEPROM中,這樣就可以在上電后完成對(duì)系統(tǒng)的引導(dǎo)。

        建立L inux開發(fā)平臺(tái)

        修改和編譯嵌入式L inux內(nèi)核

        Linux內(nèi)核有自己的結(jié)構(gòu)體系,進(jìn)程管理、內(nèi)存管理和文件系統(tǒng)是其最基本的三個(gè)子系統(tǒng)。圖2 為L inux 內(nèi)核的結(jié)構(gòu)。圖中虛線框中部分可以看成是Linux內(nèi)核的單內(nèi)核結(jié)構(gòu),因此修改內(nèi)核必須注意各子系統(tǒng)間的協(xié)調(diào)。



        Linux開發(fā)平臺(tái)使用內(nèi)核版本為2. 4. 4的嵌入式L inux操作系統(tǒng)作為 網(wǎng)關(guān)的基本軟件平臺(tái)。為了支持硬件平臺(tái),需要對(duì)內(nèi)核進(jìn)行修改,并增加相應(yīng)設(shè)備的驅(qū)動(dòng)程序。

        (1) 驅(qū)動(dòng)程序列表。

        DOC 驅(qū)動(dòng)程序源碼: /home / sjw01 / linux/drivers/mtd /devices/ doc2000. c;

        以太網(wǎng)驅(qū)動(dòng)程序源碼: / home / sjw01 / linux/ arch /ppc /8xx _ io / enet_scc1. c fec. c;

        RTC 驅(qū)動(dòng)程序源碼: /home / sjw01 / linux/drivers/unis _ rtc / rtc8xx. h rtc8xx. c setrtc8xx. cMkaefile setrtc8xx;

        串口驅(qū)動(dòng)程序源碼: /home / sjw01 / linux/ arch /ppc /8xx_ io / uart. c;

        flash memory 驅(qū)動(dòng)程序源碼: /home / sjw01 / linux/drivers/mtd / map s/unis. c。

        (2) 交叉編譯環(huán)境。

        使用hardhat CDK2. 0作為開發(fā)工具,需將下面的路徑加入用戶環(huán)境變量$PATH 中: /op t/hardhat/devkit/ppc /8xx/bin; #export PATH = $PATH: /op t/hardhat/devkit/ppc /8xx/bin或編輯“. bash_p rofile”文件的PATH行。對(duì)于應(yīng)用軟件,一般情況下只要替換編譯器cc為ppc_8xx-gcc,重新編譯一下源代碼即可。

        構(gòu)建目標(biāo)文件系統(tǒng)

        配置DOC或FlashMemory中的文件系統(tǒng)是件很講究的事情,主要是因?yàn)镈OC /Flash容量有限,在保證正常功能的前提下,要盡可能地少占用資源。

        總體上,文件分成如下幾類: (1)共享庫類:這類文件必不可少。(2) L inux/GNU系統(tǒng)實(shí)用工具:盡量用busybox、tinylogin代替,能減則減。(3)配置文件:多出現(xiàn)在/ etc下,不太占地方,但要注意協(xié)調(diào)關(guān)系。(4)用戶應(yīng)用程序:編譯時(shí)盡量使用動(dòng)態(tài)連接,編譯后strip一下,放到固定位置。

        目標(biāo)文件系統(tǒng)列表如表1所示。



        所有配置文件、可執(zhí)行文件、庫文件的位置均符合L inux操作系統(tǒng)的慣例。

        IPSec實(shí)現(xiàn)中的硬件加密算法

        在安全網(wǎng)關(guān)中,加密算法的安全、高效,是網(wǎng)關(guān)安全性和有效性的重要保證。為此,在設(shè)計(jì)中采用了一種硬件加密模塊的方式,使得我們的VPN網(wǎng)關(guān)可以在硬件上使用不同的加密算法。在我們的默認(rèn)配置中,使用國密辦批準(zhǔn)的分組加密算法芯片SSF10。

        為了使用硬件加密模塊,需要在L inux內(nèi)核的IPSec實(shí)現(xiàn)中添加和修改相應(yīng)的代碼,下面對(duì)其簡單說明。由于IPSec實(shí)現(xiàn)在內(nèi)核中的特殊位置,并且MPC855T的主頻較低 (80MHz) ,采用訪問設(shè)備驅(qū)動(dòng)文件的方式訪問硬件SSF10加密模塊會(huì)造成速率大幅降低。因此,我們采用I/O直接訪問硬件SSF10芯片。這需要將模塊驅(qū)動(dòng)中的操作分散到IPSec實(shí)現(xiàn)的相關(guān)部分,替換原來的軟件加密算法。同理,可以使用硬件DES/3DES、硬件AES算法和其他國密辦批準(zhǔn)的算法,用硬件實(shí)現(xiàn)數(shù)據(jù)加密。對(duì)IPSec的一個(gè)實(shí)現(xiàn)freeswan算法部分進(jìn)行修改,使其可以實(shí)現(xiàn)硬件算法。與硬件加密算法有關(guān)的文件如下:

        freeswan-1. 94 /klip s/net/ ip sec /Config. in;

        freeswan-1. 94 / libdes/des_enc. c;

        freeswan-1. 94 /klip s/net/ ip sec / ip sec_sa. h;

        freeswan-1. 94 /klip s/net/ ip sec / ip sec_tunnel. c;

        freeswan-1. 94 /klip s/net/ ip sec / ssf10. h;

        freeswan-1. 94 /klip s/net/ ip sec / ip sec_init. c;

        freeswan-1. 94 /klip s/net/ ip sec /pfkey_v2_parser. c;

        freeswan-1. 94 /klip s/net/ ip sec_rcv. c。

        完成修改后, 使用內(nèi)核make menuconfig 命令, 選中Networking op tions→[* ] IPSEC: Use SSF10..,重新編譯即可使用SSF10硬件算法模塊。

        結(jié)束語

        為了滿足VPN安全網(wǎng)關(guān)設(shè)計(jì)的目標(biāo),本文在基于Motorola 和嵌入式L inux的VPN網(wǎng)關(guān)設(shè)計(jì)中使用Motorola通信處理器PowerPC、采用L inux和加密算法,構(gòu)建出了具有自主知識(shí)產(chǎn)權(quán)的VPN安全網(wǎng)關(guān)。理論分析表明,本文提出的VPN安全網(wǎng)關(guān)設(shè)計(jì)方案、嵌入式L inux操作系統(tǒng)的構(gòu)建方法以及硬件加密模塊的實(shí)現(xiàn)方法能夠滿足10Mbp s的網(wǎng)絡(luò)環(huán)境中提供虛擬專用網(wǎng)的安全服務(wù)。但是,由于其定位在低端,不適合在100Mbp s的網(wǎng)絡(luò)環(huán)境中使用。如果要在100Mbp s的環(huán)境中使用VPN網(wǎng)關(guān),就要考慮使用基于PowerPCMPC82xx的硬件平臺(tái)。

      linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


      上一頁 1 2 下一頁

      關(guān)鍵詞: PowerPC VPN 嵌入式Linux

      評(píng)論


      相關(guān)推薦

      技術(shù)專區(qū)

      關(guān)閉