
教學優(yōu)勢
曙海教育的課程培養(yǎng)了大批受企業(yè)歡迎的工程師。大批企業(yè)和曙海
建立了良好的合作關(guān)系。曙海集團的課程在業(yè)內(nèi)有著廣泛的美譽度和響亮的知名度。
秉承二十幾年積累的教學品質(zhì),本課程以真實項目實戰(zhàn)為導向,授課工程師將會與您分享設計的全流程及工具的綜合使用技巧、經(jīng)驗。
課程簡介:
本課程詳解Linux內(nèi)核的組成、編程環(huán)境搭建、調(diào)試方法,并深度剖析內(nèi)核的進程調(diào)度、內(nèi)存管理、文件系統(tǒng)等子系統(tǒng),后深入分析內(nèi)核編程的并發(fā)、同步、中斷、定時器、內(nèi)存、DMA和cache等問題,最后結(jié)合實例講解Linux驅(qū)動架構(gòu)、I/O模型以及底層BSP的開發(fā)。
? ?
?
? ? ? 課程內(nèi)容:
|
模塊名稱 |
課程內(nèi)容 |
|
進入Linux的精彩世界 |
·?Linux的特點、版本演進與發(fā)展方向 ·?GNU與GPL ·?Linux系統(tǒng)組成、啟動流程 ·?開發(fā)環(huán)境構(gòu)建 ·?GNU工具鏈 ·?文件系統(tǒng)組成 |
|
Linux內(nèi)核進程調(diào)度 |
·?進程生命周期 ·?進程調(diào)度算法 ·?進程調(diào)度時機 ·?Linux實時性 ·?SMP、CPU熱插拔與負載均衡 ·?Cgroups |
|
【實驗課】 |
·?【實驗課】 |
|
Linux內(nèi)核內(nèi)存管理 |
·?MMU系統(tǒng) ·?page與zone ·?buddy系統(tǒng) ·?slab、kmalloc ·?進程的內(nèi)存消耗 ·?page cache與swap ·?內(nèi)存泄露剖析 |
|
Linux內(nèi)核文件系統(tǒng) |
·?虛擬文件系統(tǒng) ·?inode、dentry、file和superblock ·?文件系統(tǒng)與block層 |
|
【實驗課】 |
·?【實驗課】 |
|
內(nèi)核編程主要API剖析 |
·?同步與并發(fā) ·?等待隊列 ·?內(nèi)核延時 ·?內(nèi)存申請和釋放 ·?定時器與高精度定時器 ·?中斷頂?shù)装氩?/span> ·? ·?軟中斷 ·?tasklet ·?工作隊列 ·?threaded_irq ·?中斷及軟中斷負載均衡 ·?Linux內(nèi)核線程 ·?IO與內(nèi)存訪問 ·?DMA與cache一致性 |
|
Linux內(nèi)核模塊 |
·?內(nèi)核模塊init和exit ·?輸入?yún)?shù) ·?輸出參數(shù) |
|
Linux內(nèi)核調(diào)試方法 |
·?printk ·?Oops和panic ·?initcall_debug ·?suspend/resume debug ·?earlyprintk與low level debug ·?使用仿真器 ·?proc和sys ·?grabserial ·?soft和hard lockup |
|
Linux設備驅(qū)動模型 |
·?Linux設備分類 ·?Sys,總線,設備和驅(qū)動 ·?熱插拔 ·?電源管理 ·?udev |
|
【實驗課】 |
·?【實驗課】 |
|
設備驅(qū)動并發(fā)控制與I/O模型 |
·?Linux字符設備驅(qū)動結(jié)構(gòu) ·?Linux設備驅(qū)動中的并發(fā)控制 ·?Linux設備驅(qū)動中的阻塞與非阻塞I/O ·?Linux多路復用I/O ·?Signal IO與AIO ·?用戶空間I/O與多線程設計原則 ·?C10K問題 |
|
Linux復雜設備驅(qū)動 |
·?設備驅(qū)動分層框架 ·?platform驅(qū)動 ·?基于I2C/SPI/USB等總線的驅(qū)動 ·?塊設備驅(qū)動與塊I/O調(diào)度 ·?網(wǎng)絡設備驅(qū)動 |
|
將Linux移植到一個新的SoC |
·?early_printk ·?L2 cache ·?OS timer ·?clk tree ·?GPIO ·?pinmux ·?IRQ chip ·?DMA ·?MACH_INIT ·?設備樹(device tree) ·?社區(qū)維護 |
|
? |
·? |
?