由 andrew » 週二 11月 24, 2009 3:56 pm
(我盡量講簡單一點~ 剩下的給其他高手補充=_=)
首先~ 你的開發版的平台, 通常叫做 Target system
你用來 build code, 進行 cross-compiling 的環境, 叫做 Host system
如果沒有意外的話, 你的 Host PC 是 x86 的 Linux 環境
你的 target board 是 IXP425, arm base 的開發版.
你的 target board 應該會提供介面與 host pc 相連.
一般會有 RS232 的 serial port, 與 ethernet port.
所以你用的 minicom 其實只是連 console 而已~
用來下指令的!
至於你用 gcc build 出來的 binary 執行檔, 可以透過很多方式 load 到 target board 上,
一般可以在 host pc 上建立一個 tftp-server, 然後在 target board 上用 tftp client 把檔案抓回來執行.
或是使用 NFS, 使 target 一開機的時候, 就 mount 你 host PC 所設定的 NFS 分享夾.
兩種作法的前提是網路要通!
當然, 假如你的 target system 有 usb port, 也可以用隨身碟,
前提是你的 kernel 有 support USB, 而且你要知道怎麼 mount
但是你做的這些動作, 都只存在 RAM, 所以下次開機要一切從來~
所以你之後還必須知道怎麼把 filesystem 封裝成 image
然後把 kernel 的 image, filesystem 的 image, 都寫入 flash 中.
這樣你的系統一開機完成後, filesystem 裡面就會有你寫的程式了.
所以你還必須要知道 flash 怎麼劃分? 通常你要知道 mtd partition 怎麼規劃?
知道 bootloader 下怎麼操作 flash 的讀寫....等等
大概是這樣~
PS: 另外, minicom -s 是用來設定的, 設定好後, 下次直接用 minicom 即可
請參閱 minicom 手冊(-s 是 setup 的意思啦)