新聞中心

        EEPW首頁 > 嵌入式系統 > 學習方法與實踐 > 嵌入式linux的學習方法

        嵌入式linux的學習方法

        作者: 時間:2008-02-25 來源: 收藏

                 學習掌握嵌入Linux的開發與移植現在非常流行。各種學習文章與培訓班,充斥書店、街頭。筆者,也上了路,經歷漫長的摸索,終于一日開竅,但的確糟蹋了很多金錢與時間。作為窮人,現寫下自己的感受,供好學者參考。

        第一要點:實驗重于看書(多編碼,少翻書)

          一定要首先搭建X86實驗環境。用舊計算機(周末電腦城拋售存貨,有新的),搭建一套實驗環境。
          Host主機:一臺PC機(能夠跑redhat linux ,看文檔就可以了,配網卡與軟驅)。

          Target目標機一塊舊PC主板,配一張網卡和一個軟驅,電源。

          附件:交叉網線,交叉串口線。

          夠了,不會超過三千元(已經很滿足了)。

          軟件全部到電腦城/網站下載。

          先不管什么 arm ppc mips ,以后看看文檔吧。
         
        第二重點:GNU C編譯 

          在PC上安裝redhat linux包括開發工具。熟悉linux配置命令。   練習 linux 的 C 語言編程,多個程序的編譯工程制作。無聊的話,將C語言教材的例程,編譯十幾個,熟悉GNU 編譯器。 www.gnu.org

          包括gcc make ld objdump ar 等 GNU toolkit

        第三重點:realtime linux 內核編程/加載到目標板運行。 

        1. 下載 rt-linux ,或uclinux 或什么非 redhat的linux 源碼,一定是包括,編譯工程makefile, 并且for x86 PC的。

        2. 修改和配置程序,將 rtlinux的 標準 console口 改為串口,不是vga與鍵盤。

        3. 在redhat linux 環境下,編譯 這個 embedded linux內核。 用mkboot的這樣程序(或按代碼中工具,) 將編譯好的內核執行文件 拷貝定位軟盤引導區。 

        4. 用這張軟盤引導在目標PC主板 。 在PC主機的 串口終端上配置 PC主板目標機。 效果同 redhat linux terminal console一樣。以后越來越難,堅持。

        第四個重點 編譯跑通網卡的驅動程序 

        1. 下載編譯 你的網卡驅動源碼 

        2. 跑通 主機與目標機的 網絡通訊。 . 不要太動頭想, ping 通就是了。 

        第五個重點 用tftp 下載執行文件從 PC主機 到 目標機運行。

        第六個重點 GNU GDB 遠程在線調試(網口調試)

        第七個重點 實時內核學習/修改

          照文章/書 分析調試/破壞 內核的源碼。

          主要是 調度/消息/存儲/文件/進程/線程/互斥等。單獨跑跑,了解內核功能就是了。

        第八個重點 TCP/IP的學習。

                下載一個 簡單的web server (http server)學習理解,并編譯加載運行。 

          將 PC主板目標機 看作網站服務器,然后在PC主機的網絡瀏難器中 訪問這個 web server.

          有興趣,把你的照片加載到目標機的 html網頁中。 www.zebra.org

        九個重點 網卡驅動程序分析 

          了解PCI總線原理,嘗試獨立寫點網卡驅動程序,過濾以太報文的處理。 跟蹤處理特殊的報文。
         
        第十個重點USB和 FLASH文件系統練習。(可以跳過)
         
          可以分析修改 USB與FLASH文件系統源碼。
         
          一定要分析源碼,上網查 FLASH的型號。 

        第十一個重點 路由器實驗。 

          分析zebra方面的源碼,再買一張網卡。

          嘗試分析 NAT RIP等協議,將你的PC板目標機,變成一臺簡單的路由器。
         
          以后的實驗 需要根據 行業來,例如,mini-GUI (圖形編程),或 DVR (硬盤錄象機),或IP Vedio WebTV 服務器。可以玩好幾年,當然最好找工作前,有針對地做實驗。
         一句話,動手修改編碼,不要只看看。
        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 永寿县| 阳东县| 潮州市| 东方市| 连城县| 巴南区| 淅川县| 凌源市| 博野县| 乐都县| 潜江市| 深州市| 常宁市| 桂阳县| 略阳县| 泽普县| 白河县| 开远市| 淅川县| 长岛县| 汤阴县| 侯马市| 中宁县| 温泉县| 海南省| 巴彦淖尔市| 泰和县| 呼伦贝尔市| 基隆市| 公安县| 南投县| 沙坪坝区| 蛟河市| 石渠县| 汽车| 厦门市| 武汉市| 会东县| 观塘区| 武邑县| 巴林右旗|