歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux服務器 >> 系統學習嵌入式Linux 幾點非常實用的建議

系統學習嵌入式Linux 幾點非常實用的建議

日期:2017/3/2 16:54:12   编辑:Linux服務器

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

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

  一定首先搭建x86實驗環境。

  用舊計算機(周末電腦城拋售存貨,有新的),搭建一套 實驗環境。

  host主機: 一台PC機(能夠跑redhat linux,看問檔就可以了,配網卡與軟驅)。

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

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

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

  軟件全部到網站下載。

  先不管什麼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一樣。

  以後越來越難,堅持。

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

  下載編譯網卡驅動源碼

  跑通主機與目標機的 網絡通訊。

  不要太動頭想, ping 通就是了。

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

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

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

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

  主要是 調度/消息/存儲/文件/進程/線程/互斥 等

  單獨跑跑,了解內核功能就是了。

  第八個重點 TCP/IP的學習

  下載一個簡單的web server (http server)

  學習理解,並編譯加載運行。

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

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

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

  了解 PCI總線原理,嘗試獨立寫點網卡驅動程序,過濾以太報文的處理。 跟蹤處理特殊的報文。

  第十個重點USB和 FLASH文件系統練習。(可以跳過)

  可以分析修改 USB與FLASH文件系統源碼。

  一定要分析源碼,上網查FLASH的型號。

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

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

  嘗試分析NAT RIP等協議,將你的PC板目標機,變成一台簡單的路由器。

  以後的實驗 需要根據 行業來,

  例如,mini-GUI (圖形編程),或 DVR (硬盤錄象機),或IP Vedio WebTV 服務器。

  可以玩好幾年,當然最好找工作前,有針對地做實驗。

  一句話,動手修改編碼,不要只看看。

Copyright © Linux教程網 All Rights Reserved