課程目標 嵌入式Linux系統開發班 |
掌握嵌入式系統開發的流程,系統移植的方法,Bootloader的原理,學會編寫Bootloader。能夠進行嵌入式系統相關的項目開發。 |
培養對象 |
嵌入式系統開發工程師、系統移植工程師。 |
上課時間和上課地點 |
上課地點:【【上海總部】:同濟大學(滬西)/星河世紀廣場(11號線上海西站) 【深圳分部】:電影大廈(地鐵一號線大劇院站) 【北京分部】:北京中山學院/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大厦(高新二路) 【成都分部】:領館區1號(中和大道)
最近開課時間(周末班/連續班/晚班):Linux系統開發:即将开课,详情请咨询客服。(请抓紧报名) |
學時和學費 |
★課時:
共5天,總計36學時
◆外地學員:代理安排食宿(需提前預定)
☆注重質量
☆邊講邊練
☆合格學員免費推薦工作 |
班級規模及環境 |
爲嚴控教學質量,讓學員有充分的提問機會,我們堅持超級小班教學,每個班級的人數限定爲5人,多余人員安排到下一期。人手一套開發板和實驗用的PC主機。 |
教學質量保障 |
1、學習中如有部分授課內容理解不透或消化不好,可免費在下期培訓班中重聽;
2、培訓結束後免費提供一個月的技術支持,充分保證培訓後出效果;
3、合格學員可免費享受推薦就業的機會。 |
課程進度安排 |
課程大綱 |
第一階段 |
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使系統獨立運行
|