課程目標 嵌入式Linux系統開發班 |
掌握嵌入式系統開發的流程,系統移植的方法,Bootloader的原理,學會編寫Bootloader。能夠進行嵌入式系統相關的項目開發。 |
培養對象 |
嵌入式系統開發工程師、系統移植工程師。 |
上課時間和上課地點 |
上課地點:【上海】:同濟大學(滬西)/新城金郡商務樓(11號線白銀路站) 【深圳分部】:電影大廈(地鐵一號線大劇院站)/深圳大學成教院 【北京分部】:北京中山/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大廈(高新二路) 【成都分部】:領館區1號(中和大道) 【沈陽分部】:沈陽理工大學/六宅臻品 【鄭州分部】:鄭州大學/錦華大廈 【石家莊分部】:河北科技大學/瑞景大廈 【廣州分部】:廣糧大廈 【西安分部】:協同大廈
近開課時間(周末班/連續班/晚班):Linux系統開發:即將開課,詳情請咨詢客服。..(歡迎您垂詢,視教育質量為生命!) |
實驗設備和授課方式 |
★課時:
請咨詢在線客服
☆注重質量
☆邊講邊練
☆合格學員免費推薦工作
專注高端培訓17年,曙海提供的課程得到本行業的廣泛認可,學員的能力
得到大家的認同,受到用人單位的廣泛贊譽。
★實驗設備請點擊這兒查看★ |
班級規模及環境--熱線:4008699035 手機:15921673576/13918613812( 微信同號) |
為嚴控教學質量,讓學員有充分的提問機會,我們堅持超級小班教學,每個班級的人數限定為5人,多余人員安排到下一期。人手一套開發板和實驗用的PC主機。 |
教學質量保障 |
1、學習中如有部分授課內容理解不透或消化不好,可免費在下期培訓班中重聽;
2、培訓結束后免費提供半年的技術支持,充分保證培訓后出效果;
3、合格學員可免費享受推薦就業的機會。 |
師資團隊 |
【李冠濤】
金牌講師,具有10幾年嵌入式技術從業經驗和十年嵌入式linux驅動開發經驗,對于嵌入式Linux的實現和應用有深入研究,主持開發過多個大型嵌入式項目,涉及網絡,通訊,控制,信息終端等各行各業,例如航天在軌數據采集系統、地震數據采集分析系統、車載MP4設備等。對系統移植有很強的經驗,在X86/ARM/XSCALE/PowerPC/MIPS等各種體系結構平臺上移植Linux內核;對于嵌入式Linux的實時性和uCLinux的特點有深入研究。
【陳亮宇】
著名IT企業硬件工程師,對于硬件產業的發展有詳細的了解,在嵌入式系統的講解和傳授中偏重于嵌入式軟件對硬件的技術支持方面的知識,在行業中能得到廣泛的應用。具有十多年嵌入式開發實戰經驗,6年嵌入式培訓經驗,熟悉ARM/PPC/MIP平臺,對嵌入式Linux、uc/OS、uClinux有深入的研究。目前專攻手機設計和培訓。曾為數個大型企業進行手機開發、Linux開發方面的培訓。在參與的項目中,曾使用了Coldfire、POWERPC、S3C2410、PXA255等多款處理器,完成了平臺移植、Bootloader移植等工作。
★更多師資力量請見曙海師資團隊。 |
課程進度安排 |
課程大綱 |
第一階段 |
1 嵌入式Linux開發環境構建
1.1 交叉開發環境介紹
1.2 編譯交叉開發工具鏈
1.3 配置主機開發環境
1.4 建立交叉開發環境
1.5 編譯器和二進制工具詳解
1.6 交叉調試應用程序
|
實驗內容:基于S3C2410 FS2410實驗板,建立Linux交叉開發環境,調試Linux應用程序。
(1) 熟悉Redhat Linux
9虛擬機環境
(2) 安裝開發工具和文件
(3) 配置超級終端/minicom
(4) 配置TFTP網絡服務
(5) 配置NFS網絡服務
(6) 引導目標板啟動Linux內核
(7) 交叉編譯應用程序
(8) 交叉調試應用程序
|
第二階段 |
2 開發系統引導程序
2.1 Bootloader介紹
2.2 u-boot工程介紹
2.3 u-boot的編譯使用
2.4 u-boot源碼分析
2.5 u-boot資源分配
2.6 u-boot移植過程
|
實驗內容:掌握u-boot常用命令,分析修改u-boot-1.1.2源代碼,移植到FS2410實驗板上。
(1) u-boot常用命令
(2) 添加u-boot新命令
(3) 設置u-boot環境變量
(4) 配置編譯u-boot
(5) 移植FS2410的u-boot
|
第三階段 |
3 vivi詳解
3.1 vivi的體系架構
3.2 vivi啟動的第一階段
3.3 vivi啟動的第二階段
vivi的基本命令
3.3 mem命令
3.4 load命令
3.5 part命令
3.6 param命令
3.7 boot命令
3.8 go命令
3.9 bon命令
3.10 reset命令
3.11 help命令 |
實驗內容:熟練掌握vivi常用命令
(1) 常用命令練習
(2) boot命令的使用
(3) part命令的使用 |
第四階段 |
4 Linux內核初步第一階段講解
4.1 Linux內核目錄結構
4.2 詳解Linux內核源代碼 |
實驗內容:熟悉Linux內核源代碼
(1) 掌握內核結構
(2) 把握內核關鍵點
(3) 學會閱讀分析內核 |
第五階段 |
5 ARM微處理器的結構
5.1 體系結構
5.2 寄存器結構
5.3 指令結構
ARM指令集詳解
5.4 跳轉指令
5.5 數據處理指令
5.6 乘法指令與乘加指令
5.7 程序狀態寄存器訪問指令
5.8 加載/存儲指令
5.9 批量數據加載/存儲指令
5.10 數據交換指令
5.11 移位指令
5.12 協處理器指令
5.13 異常產生指令 |
第六階段 |
6 配置編譯Linux內核
6.1 Linux內核介紹
6.2 Linux內核特點
6.3 Linux內核源代碼結構
6.4 Linux內核選項解析
6.5 Linux內核編譯鏈接
|
實驗內容:配置FS2410板的Linux內核,熟悉內核配置選項;編譯交叉開發環境所需要的內核
(1) 配置交叉開發環境
(2) 熟悉菜單配置文件的組織結構
(3) 熟悉內核配置過程選項
(4) 加入Kconfig新選項
(5) 編譯交叉開發環境所需要的內核
|
第七階段 |
7 移植Linux內核源碼
7.1 Linux內核移植介紹
7.2 Linux內核移植平臺相關代碼分析
7.3 動手修改Linux內核源代碼
7.4 分析編譯過程錯誤和宏定義的關系
7.5 Linux啟動過程源代碼分析
|
實驗內容:熟悉Linux內核平臺相關代碼,為FS2410板移植高版本的Linux內核
(1) 配置交叉開發環境
(2) 配置編譯高版本的Linux內核
(3) 移植FS2410板Linux內核支持到高版本
(4) 分析解決編譯過程中的錯誤 |
第八階段 |
8 調試Linux內核
8.1 Linux內核調試概述
8.2 Linux內核的打印函數
8.3 Linux內核啟動過程錯誤分析
8.4 解析oops信息
8.5 常用調試方法和工具
8.6 基本的驅動程序分析
|
實驗內容:熟悉Linux啟動過程信息打印函數,分析出錯信息的位置,掌握基本的調試方法
(1) 配置交叉開發環境
(2) 通過基本調試手段解決內核啟動過程錯誤
(3) 添加串口網口等基本驅動程序
(4) 為FS2410板添加MTD分區表 |
第九階段 |
9 集成部署Linux系統
9.1 Linux文件系統制作
9.2 Linux系統集成測試
9.3 文件系統和存儲設備的選擇
9.4 部署Ramdisk文件系統的過程
9.5 部署JFFS2文件系統的過程 |
實驗內容:基于ARM平臺上完成ramdisk文件系統的制作和部署
(1) 制作小的文件系統
(2) 部署ramdisk文件系統
(3) 部署jffs2文件系統
(4) 配置u-boot使系統獨立運行
|