Re: [問題] Linux Development

看板LinuxDev作者 (Mezzo DSA)時間18年前 (2007/05/15 00:04), 編輯推噓5(501)
留言6則, 3人參與, 最新討論串4/4 (看更多)
※ 引述《vvision ()》之銘言: : 感謝各位的回答 : 我是想要嘗試嵌入式系統 不過應該底子不是很好 (硬體部分) : 所以想說先從driver 學起 .. : 想請問各位前輩幾個問題 我是非相關背景 然後剛入門第一次接觸的初學者,希望大家也能不吝給與指教 ^^" : 1.在學driver前是否有什麼先修課程需要先學習的 : 2.我有上網查過一些資料 有的人有買板子 : 像我這種初學者 要馬上買嗎? 還是等學一陣子在買 : 3.我有上網看大家推薦driver的書籍 : 目前是考慮 歐萊禮的 Linux Device Drivers, Third Edition (不過是中文版的) : 請問這本適合初學者嗎? : 是否有需要搭配 歐萊禮Understanding the Linux Kernel, Third Edition(也是中文) : 因為之前OS恐龍本學的亂七八糟的 所以OS概念也不是很好... : 再書籍方面可否麻煩大家給點建議.. : 麻煩大家了..謝謝! 針對上述三個問題我用我目前的整個學習過程和方法一併回答提供給你參考一下 我使用的板子是 ADI 的 ADSP-BF537 STAMP Board http://www.analog.com/en/epProd/0,,BF537-STAMP,00.html 再加上 uClinux http://blackfin.uclinux.org/gf/ 這樣的搭配可以足夠讓你從底層的 driver 一直玩到 OS 層次上面 然後再來做一個軟硬體整合 所以這樣完整的玩過一次的話,對整個觀念也會更了解的 回到學習過程上來講 在正式開始學習寫 driver 之前 我是以 Understanding the Linux Kernel, Third Edition 為主 先在一般桌機的 linux 上 (看個人喜好哪個 linux distro,沒特別限定) 學習怎樣在 linux kernel 裡 trace 出一些我想知道的 data 所以在這部份我學會怎樣去新增或使用 system call 也知道和學會使用許多好用的 data structure, marcro 總之在這花時間培養和建立起對 OS 的整體感覺和觀念 之後要用到板子上的 uClinux 也就大同小異了 接著要開始寫 driver 時 我以 Linux Device Drivers, Third Edition 為輔和大量 google 來的網路資料為主 先學會最簡單的 character device driver (我目前也只懂得一點點這個而已...) 在這過程中就把前述學會的許多 OS data structure, marcro ...等拿來運用 還有一個最重要的是要學會看懂板子的 data sheet 看 data sheet 的過程真的要很有耐心和仔細的花時間去看和 try 如果手邊還有三用電表和視波器的話 可以拿來幫助你檢視輸出的波型對不對, 針腳是否正常在 work ...諸如此類的檢查驗證 就這樣 OS ok 了,driver 也 ok 了,最上層的 application 也會寫的話 那就做一個軟硬體整合 在玩完一整套的基本學習之後應該夠給你一個充分的感受也可以構成一個很好的開端 以上就是我這第一次接觸的初學者這半年多來的學習經驗 剛開始學時真的會很痛苦也很苦惱 但是若有心堅持用心去學習和挖資料的話 跨過去之後真的會越學越順暢 因為在這過程你會越來越懂得怎樣去克服同樣類似的困難 雖然還是很花時間就是了 希望對你有幫助 也希望有其他先進們能給我些建議 謝謝 :) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.212.44

05/15 18:48, , 1F
非常謝謝你,這樣我也知道我該如何起步,謝謝!
05/15 18:48, 1F

05/15 18:50, , 2F
不過我想請問一下 你在學之前是不是有 硬體與程式語言底子
05/15 18:50, 2F

05/15 23:51, , 3F
外系修過資工的 OS 和計算機組織,會一點點 C 而已...
05/15 23:51, 3F

05/16 00:20, , 4F
請問這塊版子多少錢要去哪買?
05/16 00:20, 4F

05/16 02:32, , 5F
在校在學學生請用 university program 方案購買會較便宜
05/16 02:32, 5F

05/16 02:36, , 6F
詳細價錢就煩請向網站上的台灣代理查詢了
05/16 02:36, 6F
※ 編輯: extrawave 來自: 140.115.212.44 (05/16 02:55)
文章代碼(AID): #16I8XxhH (LinuxDev)
討論串 (同標題文章)
文章代碼(AID): #16I8XxhH (LinuxDev)