(1)本機開發模式:
人在本機上直接開發Driver, 本機可以是PC或Raspberry pi 這類的機器。當然你要能進入到本機裡開發,Toolchain (就是程式繑譯的相關工具),這個工具必須配合本機的作業系統環境安裝。編譯程式所編譯出來的code 是可以直接在本器上執行的。
P.S. 艾鍗的Linux Driver 課程是刻意準備成"本機開發模式"。為了給學員把學習重點放在"Linux Device Driver "上學習,而不要花太多時間在其他嵌式入開發的支微末節。這就好像學習"Window Device Driver"一樣,先專注Windows 作業系統驅動程式的軟體架構和流程。
(2)嵌入式開發模式:
通常本機是PC,而Target端是MCU/SoC開發板,當然也可以是Raspbeery Pi。 把Pi當作Target 端. 人在本機上寫Driver,但也得先安裝Toolchain ,這個工具也必須配合本機的作業系統環境安裝,但這個Toolchain 的Compiler 稱作Cross-compiler, 因為它產出的二進位檔是給Target 端執行的。本機多半和Target 端的CPU不同,是無法讀懂此二進位的指令格式,此二進位檔必會有一個方式傳到Target端去使用。
沒有留言 :
張貼留言