通過本課程的學(xué)習(xí), 學(xué)員可以學(xué)習(xí)有關(guān)嵌入式Linux內(nèi)核的以下原理和實(shí)踐:
內(nèi)核發(fā)展演變與開發(fā)模式
內(nèi)核進(jìn)程調(diào)度
內(nèi)核內(nèi)存管理
內(nèi)核文件系統(tǒng)
內(nèi)核系統(tǒng)調(diào)用
內(nèi)核網(wǎng)絡(luò)協(xié)議棧
內(nèi)核編程
內(nèi)核模開發(fā)
內(nèi)核調(diào)試方法
BSP 構(gòu)建
培訓(xùn)大綱:
Linux 內(nèi)核發(fā)展演變與開發(fā)模式
patch 和郵件列表
源代碼演進(jìn)
商業(yè)發(fā)行版版本維護(hù)
源代碼與項(xiàng)目管理工具
內(nèi)核代碼檢查和check-in
Linux 內(nèi)核進(jìn)程調(diào)度
內(nèi)核總體結(jié)構(gòu)
進(jìn)程調(diào)度
Linux 進(jìn)程調(diào)度機(jī)制分析
調(diào)度時(shí)機(jī)與搶占調(diào)度
Linux 實(shí)時(shí)性與實(shí)時(shí)Linux
Linux 內(nèi)核內(nèi)存管理
Linux 進(jìn)程0~4GB 內(nèi)存的整體分布
進(jìn)程內(nèi)核空間(3GB 以上)內(nèi)存分布
進(jìn)程用戶空間(3GB 以下)內(nèi)存分布
page、zone、slab、kmalloc、vmalloc、mmap
slab
DMA 緩沖區(qū)
page cache
page fault
Linux 內(nèi)核文件系統(tǒng)
虛擬文件系統(tǒng)
磁盤與Flash 文件系統(tǒng)
superblock, inode, dentry 和file
EXT2 和EXT3 文件系統(tǒng)
Flash 文件系統(tǒng)與MTD
Linux 內(nèi)核系統(tǒng)調(diào)用
Linux 系統(tǒng)調(diào)用的工作原理
系統(tǒng)調(diào)用的進(jìn)入和退出
新增一個(gè)系統(tǒng)調(diào)用
Linux 內(nèi)核網(wǎng)絡(luò)協(xié)議棧
Linux 網(wǎng)絡(luò)協(xié)議棧的實(shí)現(xiàn)原理
Socket 層
系統(tǒng)調(diào)用層面
網(wǎng)卡數(shù)據(jù)收發(fā)流程
Linux 內(nèi)核編程
內(nèi)核編程主要API
同步與并發(fā)
等待隊(duì)列
內(nèi)核延時(shí)
內(nèi)存申請(qǐng)和釋放
定時(shí)器
中斷頂?shù)装氩?
軟中斷
tasklet
工作隊(duì)列
threaded_irq |