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