linux內(nèi)核構(gòu)建嵌入式操作系統(tǒng)培訓(xùn)課程
?
培訓(xùn)目標(biāo):
·對嵌入式系統(tǒng)的硬件構(gòu)造和器件特性深度理解
·掌握uboot的軟件架構(gòu)和開機到uboot運行的整個技術(shù)過程
·掌握linux內(nèi)核啟動過程和uboot啟動linux的傳參機制
·掌握linux的驅(qū)動框架和常見設(shè)備驅(qū)動
培訓(xùn)對象:嵌入式系統(tǒng)及架構(gòu)開發(fā)人員,操作系統(tǒng)內(nèi)核及其周邊組件開發(fā)人員
學(xué)員基礎(chǔ):熟悉C語言編程,對操作系統(tǒng)體系結(jié)構(gòu)基礎(chǔ)知識
培訓(xùn)大綱
?
|
主題
|
課程安排
|
|
嵌入式系統(tǒng)構(gòu)建和核心器件特性深度理解
|
當(dāng)前主流嵌入式SoC的架構(gòu)設(shè)計和特性、外設(shè)講解
SRAM、DRAM、Cache等內(nèi)存設(shè)備的特性講解
NorFlash、NandFlash、SD/EMMC、硬盤(IDE/SATA)等存儲設(shè)備的特性講解
內(nèi)存和IO統(tǒng)一編址,外設(shè)控制器的IO方法講解
SoC啟動設(shè)計和內(nèi)置iROM(BL0)的設(shè)計方法
SoC的異常處理機制和異常向量表
SoC的特權(quán)模式和普通模式
SoC的流水線設(shè)計以及流水線對異常處理的編程影響
ARM匯編基礎(chǔ)
實驗平臺:X210開發(fā)板介紹
|
|
嵌入式linux系統(tǒng)構(gòu)建
|
bootloader:uboot
linux kernel與device driver
rootfs與啟動腳本
app
|
|
uboot源碼解析與移植
|
uboot配置與編譯、下載、啟動、使用
uboot啟動第一階段分析
uboot啟動第二階段分析
uboot啟動linux kernel與傳參實現(xiàn)
uboot環(huán)境變量詳解
uboot的硬件驅(qū)動體系介紹
uboot中fastboot的實現(xiàn)
|
|
linux kernel源碼分析與移植
|
linux kernel源碼目錄詳解
linux kernel配置與編譯、下載、啟動、使用
linux kernel啟動第一階段分析
linux kernel啟動第二階段分析
|
|
rootfs構(gòu)建與解析
|
rootfs的設(shè)計理念與實現(xiàn)方法
最小rootfs的手把手構(gòu)建與掛載實驗
busybox
rootfs中的啟動腳本分析
rootfs中使用動態(tài)鏈接庫
rootfs中移植和運行應(yīng)用程序
|
|
常見linux驅(qū)動框架
|
linux設(shè)備驅(qū)動框架與編程實踐
LED與字符設(shè)備驅(qū)動
framebuffer與顯示設(shè)備驅(qū)動
按鍵與input設(shè)備驅(qū)動
|
|
根據(jù)需要構(gòu)建自己的操作系統(tǒng)
|
結(jié)合一個實例,講解如何根據(jù)自己的需求構(gòu)建嵌入式操作系統(tǒng):
·?嵌入式操作系統(tǒng)需求分析
·?嵌入式操作系統(tǒng)功能模塊設(shè)計
·?嵌入式操作系統(tǒng)內(nèi)核調(diào)度規(guī)則設(shè)計
·?基于Linux代碼裁剪
·?根據(jù)需要修改相關(guān)模塊
·?補充自己的特有的功能模塊
|
?
|
?
|
?