班級(jí)規(guī)模及環(huán)境--熱線:4008699035 手機(jī):15921673576( 微信同號(hào)) |
每期人數(shù)限3到5人。 |
上課時(shí)間和地點(diǎn) |
上課地點(diǎn):【上海】:同濟(jì)大學(xué)(滬西)/新城金郡商務(wù)樓(11號(hào)線白銀路站) 【深圳分部】:電影大廈(地鐵一號(hào)線大劇院站)/深圳大學(xué)成教院 【北京分部】:北京中山學(xué)院/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大廈(高新二路) 【成都分部】:領(lǐng)館區(qū)1號(hào)(中和大道) 【沈陽分部】:沈陽理工大學(xué)/六宅臻品 【鄭州分部】:鄭州大學(xué)/錦華大廈 【石家莊分部】:河北科技大學(xué)/瑞景大廈 【廣州分部】:廣糧大廈 【西安分部】:協(xié)同大廈
最近開課時(shí)間(周末班/連續(xù)班/晚班):2020年3月16日 |
實(shí)驗(yàn)設(shè)備 |
☆資深工程師授課
☆注重質(zhì)量
☆邊講邊練
☆合格學(xué)員免費(fèi)推薦工作
★實(shí)驗(yàn)設(shè)備請(qǐng)點(diǎn)擊這兒查看★ |
質(zhì)量保障 |
1、培訓(xùn)過程中,如有部分內(nèi)容理解不透或消化不好,可免費(fèi)在以后培訓(xùn)班中重聽;
2、培訓(xùn)結(jié)束后,授課老師留給學(xué)員聯(lián)系方式,保障培訓(xùn)效果,免費(fèi)提供課后技術(shù)支持。
3、培訓(xùn)合格學(xué)員可享受免費(fèi)推薦就業(yè)機(jī)會(huì)。 |
課程大綱 |
課程簡介:
????
嵌入式軟件的驅(qū)動(dòng),是所有處理的基礎(chǔ), Linux源代碼中85%是設(shè)備驅(qū)動(dòng),深刻的了解各種驅(qū)動(dòng)的原理和開發(fā)方法,可以為嵌入式開發(fā)工程師打下堅(jiān)實(shí)的工作基礎(chǔ)。
培訓(xùn)目標(biāo):
了解如下關(guān)鍵原理和實(shí)踐方法: ? Linux 設(shè)備驅(qū)動(dòng)模型
? Linux 字符設(shè)備驅(qū)動(dòng)結(jié)構(gòu)
? Linux 設(shè)備驅(qū)動(dòng)中的并發(fā)控制
? Linux 設(shè)備驅(qū)動(dòng)中的阻塞與非阻塞I/O
? Linux 設(shè)備驅(qū)動(dòng)中的異步通知
? 硬件和綜合因素:中斷、IO 訪問、驅(qū)動(dòng)分層結(jié)構(gòu)
? Linux 塊設(shè)備驅(qū)動(dòng)
? Linux Ethernet 設(shè)備驅(qū)動(dòng)
? LCD 驅(qū)動(dòng)
? Camera 驅(qū)動(dòng)
? 聲卡驅(qū)動(dòng)
? I2C 驅(qū)動(dòng)
? SPI 驅(qū)動(dòng)
? platform 設(shè)備驅(qū)動(dòng)
? USB 設(shè)備驅(qū)動(dòng)
課程大綱
主題 內(nèi)容?
Linux 設(shè)備驅(qū)動(dòng)模型
Linux 設(shè)備分類?
Sys,總線,設(shè)備和驅(qū)動(dòng)?
熱插拔?
udev?
Linux 字符設(shè)備驅(qū)動(dòng)結(jié)構(gòu)
Linux 字符設(shè)備驅(qū)動(dòng)結(jié)構(gòu)?
globalmem 虛擬設(shè)備實(shí)例描述?
globalmem 設(shè)備驅(qū)動(dòng)
? 加載與卸載設(shè)備驅(qū)動(dòng)
? 打開與釋放函數(shù)
? 讀寫函數(shù)
? seek 函數(shù)
? ioctl 函數(shù)
globalmem 驅(qū)動(dòng)的編譯與加載?
globalmem 驅(qū)動(dòng)在用戶空間的驗(yàn)證?
Linux 設(shè)備驅(qū)動(dòng)中的并發(fā)控制
并發(fā)控制的概念?
何時(shí)需要并發(fā)控制?
自旋鎖
? 自旋鎖的概念
? 自旋鎖相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)
信號(hào)量?
?信號(hào)量的概念
? 信號(hào)量與同步
? 信號(hào)量與互斥
? 信號(hào)量相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)
增加并發(fā)控制后的globalmem 驅(qū)動(dòng)?
? 在globalmem 驅(qū)動(dòng)中增加并發(fā)控制
? 在用戶空間驗(yàn)證globalmem 設(shè)備的并發(fā)控制
Linux 設(shè)備驅(qū)動(dòng)中的阻塞與非阻塞I/O ?
阻塞與非阻塞I/O?
poll 操作的概念?
何時(shí)需要poll 操作?
等待隊(duì)列waitqueues?
Linux poll 操作相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)
?應(yīng)用程序中的poll 相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)
? 設(shè)備驅(qū)動(dòng)中的poll 相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)
支持poll 操作的globalmem 驅(qū)動(dòng)?
? 在globalmem 驅(qū)動(dòng)中增加poll 操作
? 在用戶空間驗(yàn)證globalmem 設(shè)備的poll
Linux 設(shè)備驅(qū)動(dòng)中的異步通知
異步通知的概念?
何時(shí)需要異步通知?
Linux 異步通知相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)?
支持異步通知的globalmem 驅(qū)動(dòng)?
在globalmem 驅(qū)動(dòng)中增加異步通知?
在用戶空間驗(yàn)證globalmem 的異步通知?
硬件和綜合因素:中斷、IO 訪問、驅(qū)動(dòng)分層結(jié)構(gòu) 以觸摸屏驅(qū)動(dòng)為例剖析IO 訪問?
以觸摸屏驅(qū)動(dòng)為例剖析中斷的使用?
以音頻驅(qū)動(dòng)為例剖析剖析DMA 的使用?
范舉多個(gè)驅(qū)動(dòng)子系統(tǒng)剖析Linux 驅(qū)動(dòng)的框架結(jié)構(gòu)?
Linux 塊設(shè)備驅(qū)動(dòng)
塊設(shè)備的I/O 操作特點(diǎn)?
Linux 塊設(shè)備驅(qū)動(dòng)結(jié)構(gòu)?
塊設(shè)備驅(qū)動(dòng)注冊(cè)與注銷?
塊設(shè)備的打開與釋放?
塊設(shè)備驅(qū)動(dòng)的ioctl 函數(shù)?
塊設(shè)備I/O 請(qǐng)求隊(duì)列
? 請(qǐng)求隊(duì)列的概念
? 請(qǐng)求隊(duì)列的相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)
? 請(qǐng)求隊(duì)列的保護(hù)機(jī)制
塊設(shè)備的讀寫流程
SD 卡驅(qū)動(dòng)
NOR 和NAND Flash 驅(qū)動(dòng)?
Linux Ethernet 設(shè)備驅(qū)動(dòng)
Linux 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)結(jié)構(gòu)?
網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)注冊(cè)與注銷?
網(wǎng)絡(luò)設(shè)備初始化?
網(wǎng)絡(luò)設(shè)備打開與釋放?
數(shù)據(jù)發(fā)送流程?
數(shù)據(jù)接收流程?
網(wǎng)絡(luò)連接狀態(tài)?
參數(shù)設(shè)置和統(tǒng)計(jì)數(shù)據(jù)?
實(shí)例:DM9000 網(wǎng)卡設(shè)備驅(qū)動(dòng)?
LCD 驅(qū)動(dòng)
framebuffer 驅(qū)動(dòng)架構(gòu)?
LCD 的硬件timing?
framebuffer 的用戶空間編程?
Camera 驅(qū)動(dòng)
V4L2 驅(qū)動(dòng)架構(gòu)?
Camera 的用戶空間編程?
Radio 驅(qū)動(dòng)和用戶空間編程?
聲卡驅(qū)動(dòng) OSS 架構(gòu)?
ALSA 架構(gòu)?
ASoC 架構(gòu)?
I2C 驅(qū)動(dòng)
I2C 主機(jī)驅(qū)動(dòng)?
I2C client 驅(qū)動(dòng)?
I2C 驅(qū)動(dòng)電源管理?
I2C 板文件信息?
SPI 驅(qū)動(dòng)
SPI 主機(jī)驅(qū)動(dòng)?
SPI client 驅(qū)動(dòng)?
SPI 驅(qū)動(dòng)電源管理?
SPI 板文件信息?
platform 設(shè)備驅(qū)動(dòng)
SPI 主機(jī)驅(qū)動(dòng)?
SPI client 驅(qū)動(dòng)?
SPI 驅(qū)動(dòng)電源管理?
SPI 板文件信息?
USB 設(shè)備驅(qū)動(dòng)
USB host 控制器驅(qū)動(dòng)?
USB 外設(shè)驅(qū)動(dòng)?
USB 設(shè)備控制器驅(qū)動(dòng)?
gadget 驅(qū)動(dòng)?
mass storage
|
|
|
|
|
|
|