這是一班【嵌入式系統 Linux 實戰基礎班】( Embedded System Linux )課程。課程大綱如下:
1.建立有效率的嵌入式 Linux 開發環境(How to Build an Effective Embedded Linux Environment)
2.建立嵌入式Linux GNU Toolchain 開發系統( Create Embedded System GNU Development Toolchain )
3.Boot Loader Brief Introduction
4.Configure and Make Embedded Linux Kernel / Create Root-File System
5.How to Porting the Embedded Linux Image to a New ARM Board
6.介紹 Linux Kernel 載入程式( Introduction the Linux kernel startup process )
7.如何使用嵌入式Linux的 GNU C Lib 程式函式庫來撰寫程式
8.如何撰寫一嵌入式Linux驅動程式及將其加入Linux核心(How to create an Embedded linux Device Driver and adding the Driver to kernel)
9.如何移植Linux應用系統至ARM開發板上:以 BoA Web Server為主
整個課程上下來,學員反應良好,很感謝全體學員再度支持與鼓勵,謝謝您們^^,課程上完後,與【C&C++程式設計實務實戰班】一樣有高達八位學員願意分享學習心得,以鼓勵大家,謝謝您們。
這裡我先將騰出的文字稿先貼上,再來後補原稿囉。
吳盈漢:
上完 江 老師的Linux基礎班,對Linux核心架構有初步瞭解,也對 江 老師熟悉C語言的程度感到十分佩服,在寫Code的手法上,也已經到了神的地步,對我這個剛從研究所畢業的學生來說有相當大的啟發,也許上完江老師的課,整體實力還是與江老師相差甚遠,不過對我來說最大的收穫是”那裡是我需要加強的地方”,使我有方法來學習,提升自己,相信日後進入科技公司能比同時期的同事有更大的進步空間,江老師也分析了目前科技業所需要的人才需求及產品開發,更深入認識RD所具備的基礎能力,這門課使我收穫良多。
黃鴻奇:
從一開始上老師的課,就大大推翻自己學程式的經驗,學程式也可以是很享受的事,看著老師不斷推翻一些我以往錯誤的觀念,除了讚嘆之外,還有大開眼界的感覺,真是「K書數不如名師指路!」老師除了有豐富的軟體功力,硬體的背景也是很深厚,更重要的是可以建立你正確的程式學習觀念,可以少走許多錯路和遠路,相信上過老師課的人都由衷地有這種感覺,希望老師繼續加油,再來教我們更新更正確的技術。
王雪萍:
江老師講的觀念非常清楚,追蹤到Bootloader source、Linux kernel Source.使學員真正了解系統運作與驅動程式架構與核心,應用程式之關係,而能夠真正瞭解驅動程式的運作,了解核心程式,驅動程式與應用程式的寫法與函數參數的傳遞,指標的運用,也學會如何追蹤函數原型,與看原始文件的方法,並提供現場coding的程式,學員回去後可對照程式瞭解觀念與程式的寫法,使觀念更加清楚,建立真正紥實的根基,經由上課後,自己已經建立了驅動程式與應用程式的觀念與運作,與Kernel之間相依的關係,知道如何追蹤函式原型,原始文件追蹤的方法,與Kernel的追蹤,使得不僅知道結果,也知道源頭,可謂受益非淺。
只覺得可惜的是,本以為自己已會C與C++。而未報名當初江老師開的60hrs C與C++課程。相信若上了 江 老師的C與C++,必更能得心應手於Linux Kernel的追蹤與了解與程式寫法的技巧。
石恆文:
原本以為Linux驅動程式是很複雜的結構,經由老師逐步拆解,將Linux的架構解析的十分清楚,無論是Linux的環境Toochain、BootLoader、Kernal及GNU函數,都讓我能夠清楚的明瞭,尤其本身所唸的是工工,程式語言和電腦架構,不是那麼專精,在經由江老師於課堂中,藉由實例的演練和當場的coding以及不厭其煩的回答學生的問題,在上完課之後真的獲益良多,感謝江義華老師盡心盡力的教學,在此表達真摯的謝意。
謝鈺滉:
一直對Linux Embedded 興趣,但資料繁多無統一系統的介紹,而零亂無章,無意間上了江老師的課後,發現把Embedded system及Linux系統化的分割介紹,讓初學者很容易的進入情況,因老師經驗豐富,所以上課內容很充實,要很專心以免漏了精采的部份。
江老師在課上實際寫程式、馬上驗證,讓人理解寫程式方式及思考模式,更重要是老師無私的精神把所知完全解囊相授,如把Linux系統完全解析,”C”程式技巧在其他書上無說明的方式,能上江老師的課是種幸福,可學到很多東西,當然也很累,要消化太多東西了,很幸運的上江老師課,節省很多摸索時間,感謝自強能找到如此好老師,讓學習者提升技能,如能讓更多人上江老師課,對業界是很大的貢獻。
黃健雄:
江老師從Makefile、CPU架構、AP coding、Driver、實作、現場coding,以PXA270實作。在學習的過程中,我發現C語言的基礎很重要,硬體的spec也要了解,才能做好產品的實現。課程從ARM開發板平台開始介紹,講解ARM板子,GNU Tool,Boot Loader,建立嵌入式Kernel與Root file system,建立嵌入式Linux的指令與開機管理與網路設計。
在驅動程式部份,從Linux架構入手,Character Device Driver的撰寫。並當場撰寫,且於現場上機測試。在最後的實作,Web Serve( BoA )移植,還是應繼續上長期班,才能了解嵌入式的實作,才能瞭解更多的問題與實作。
潘德儒:
1、上課前對Linux完全沒有經驗,尤其對embedded Linux底層及與硬體的溝通控制深感興趣。於是報名江老師的Linux基礎班。
2、老師深入淺出的上課方式,讓我們由完全不懂到了解Linux的架構,甚至到driver的撰寫。一層一層的剖析,不僅學到理論也從程式中理解到實際的運作方式。
3、老師最讓我敬佩的地方是,同學的背景不一,問題也很廣泛。 江 老師總是能讓所有同學了解,若是某一角度的解釋不能瞭解,老師便從不同角度切入,讓我們完全理解。而且老師從硬體、程式語言,到Linux架構的觀念非常清楚,透過不同角度的解釋,便能融會貫通。
4、最後,感謝老師上課期間的細心教導,讓所有學員都能有非常充實的收穫。
郭琳揚:
本人於2009年12月,經朋友介紹,剛好有這個機會來自強基金會上Embedded Linux的課,之前對ARM開發板一無所悉,更甭談如何撰寫在ARM板上跑的Diver Program了,非常棒而實用,且對於本人將來工作上幫助很大。
在上課的過程中,老師以當場寫作Coding的方式進行授課,並不斷反覆進行結果驗證,讓學員更清楚程式的來龍去脈,絲毫不會有任何含糊籠統的地方。
由於江老師對於coding及硬體非常有經驗,能夠在軟體與硬體間澄清了很多連結的觀念,也認識了很多硬體規格,教我們如何看硬體規格書,總是很有耐心且白話的方式詳細解說,解答了不少學員心中的疑惑,本人在此由衷的感謝。
總之,若下次還有機會的話,我會再來上課,希望還能遇到江老師,呵呵…