新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于網絡加載的嵌入式BootLoader的設計與實現(xiàn)

        基于網絡加載的嵌入式BootLoader的設計與實現(xiàn)

        作者: 時間:2013-01-15 來源:網絡 收藏

        摘要:由于引導裝載程序()的加載方式在產品開發(fā)初期階段的廣泛應用,因此基于設計與實現(xiàn)具有較強的實際意義。提出了基于加載的整套設計與解決方案,并將該方案應用到實際產品;C中。最后,通過BootLoad er引導裝載過程的測試與分析,驗證該方案的可行性與高效性。
        關鍵詞:;BootLoader;網絡;;

        從軟件結構層次的角度來看,一般由引導裝載程序(BootLoader,BSP)、操作系統(tǒng)和應用程序幾部分組成。然而在有的嵌入式系統(tǒng)中,操作系統(tǒng)和應用程序存放在系統(tǒng)以外的設備中,如網絡、硬盤等,整個系統(tǒng)只有引導裝載程序。因此BootLoader是嵌入式系統(tǒng)設計中比較重要的一部分。
        在嵌入式系統(tǒng)的引導中,按照應用程序存放位置,可以有3種不同的加載方式:固態(tài)存儲媒體、磁盤以及網絡,每種方式都會有自己特有的配置和用法。3種設置方式各有其優(yōu)缺點,固態(tài)儲存媒體啟動方式一般適用于帶有ROM/FLASH的嵌入式系統(tǒng)中,是大多數(shù)嵌入式設備的首選方案如手機,mp3等,但當應用程序較大的情況下,為了降低嵌入式設備的單價,磁盤啟動方式也被大量使用,典型應用如SDH電信傳輸網絡設備測試儀ANT-20等,而基于網絡加載方式則是最便宜的嵌入式設備的應用方案,應用程序存放在網絡服務器端,嵌入式設備啟動時,只需要將它通過網絡當?shù)絻却娌⑦\行,一方面可以快速解決應用程序升級問題,另一方面也可以降低嵌入設備的整體成本,且在開發(fā)初期這種方式也能大幅提高調試速度,典型的應用如嵌入式設備的瘦客戶端。

        1 基于網絡加載的BootLoader方案設計
        這種方案重點解決兩個問題,一是嵌入式設備加電后啟動前與服務器端之間的通信與聯(lián)系,二是嵌入設備在啟動過程中應用程序下載方式的實現(xiàn)。前者需要將嵌入式設備驅動起來,實現(xiàn)通信能力,網卡驅動是必須實現(xiàn)的步驟,后者需要通過相關的協(xié)議棧將應用程序下載到系統(tǒng)內存,運行起來。本文重點介始基于UDP/IP協(xié)議棧的(DHCP、TFIP、NFS)加載方案設計。
        1.1 BooiLoader中網卡驅動的設計
        網絡適配器(網卡)一般由可編程數(shù)據(jù)鏈路控制器、曼徹斯特編碼/譯碼器、收發(fā)器接口和控制電路等幾部分組成,其中可編程數(shù)據(jù)鏈路控制器由微處理器和網絡管理部分等組成,如圖1所示。

        本文引用地址:http://www.104case.com/article/148141.htm

        c.JPG


        在BootLoader網卡驅動設計中,主要包括3種基本的操作(文中以Realtek8139網卡作為實例進行具體分析):
        1)網卡的初始化
        應完成的工作是初始化網卡中的相關硬件,包括網卡中斷向量的設置、網卡接收與發(fā)送緩沖區(qū)在內存中的映射、網卡數(shù)據(jù)結構的初始化等。
        2)數(shù)據(jù)包發(fā)送
        發(fā)送和發(fā)送控制部分負責幀的發(fā)送。發(fā)送部分接受來自“NBZ曼徹斯特轉換器”的曼徹斯特碼的數(shù)據(jù),并在發(fā)送控制部分允許的條件下將數(shù)據(jù)發(fā)送到媒體,發(fā)送的數(shù)據(jù)稱為TxD。發(fā)送控制部分判定是否進行發(fā)送,這種判定基于LAN管理部分和TxD來進行。
        3)數(shù)據(jù)包的接收
        接收和接收控制部分負責幀的接收。這一部分產生網絡是否有載波存在的信號,產生的依據(jù)是從RxD中獲得。因此,網絡上來的信號一方面饋送給接收器,另一方面要饋送給接收控制部分。接收控制部分根據(jù)LAN管理部分和媒體上接收的信號判定是否使接收器工作。
        1.2 網絡服務器端應用方案的設計
        在網絡加載BootLoader中,使用到的應用層協(xié)議有DHCP、TFTP和NFS。目標平臺在工作中,需要服務器端提供以上協(xié)議的服務:
        1)建立服務器端的DHCP服務
        該服務完成的功能是為目標平臺提供有效的IP地址分配,保證目標平臺與服務器之間正常通信時地址唯一。其配置過程如下:
        在確信DHCP協(xié)議已經被正確安裝后,需修改/etc/dhcpd.conf文件,例如:
        d.JPG


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 阿瓦提县| 辉县市| 万全县| 嘉善县| 黔西县| 永和县| 贡觉县| 蓬溪县| 朝阳市| 临夏市| 平果县| 平潭县| 连江县| 木兰县| 桐庐县| 克山县| 平果县| 金塔县| 大关县| 安溪县| 娄烦县| 仲巴县| 泗水县| 通辽市| 阿坝县| 镇江市| 唐山市| 长寿区| 天气| 麻栗坡县| 响水县| 武胜县| 阜康市| 龙南县| 罗定市| 松潘县| 页游| 兴和县| 镇江市| 休宁县| 福鼎市|