《WDM驅(qū)動程序簡介》PPT課件.ppt

上傳人:za****8 文檔編號:15805367 上傳時間:2020-09-07 格式:PPT 頁數(shù):13 大?。?5.02KB
收藏 版權(quán)申訴 舉報 下載
《WDM驅(qū)動程序簡介》PPT課件.ppt_第1頁
第1頁 / 共13頁
《WDM驅(qū)動程序簡介》PPT課件.ppt_第2頁
第2頁 / 共13頁
《WDM驅(qū)動程序簡介》PPT課件.ppt_第3頁
第3頁 / 共13頁

下載文檔到電腦,查找使用更方便

9.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《WDM驅(qū)動程序簡介》PPT課件.ppt》由會員分享,可在線閱讀,更多相關(guān)《《WDM驅(qū)動程序簡介》PPT課件.ppt(13頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、設(shè)備驅(qū)動程序設(shè)計,WDM驅(qū)動程序簡介,第二講,Windows XP 驅(qū)動程序分類,內(nèi)核模式驅(qū)動程序的屬性,可移植性:源代碼級可移植 可配置性:避免對硬件特征和系統(tǒng)設(shè)置作絕對假設(shè);避免在代碼中直接引用硬件 可搶先性和可中斷性 多處理器安全 基于對象 數(shù)據(jù)包驅(qū)動 異步,Windows XP 系統(tǒng)結(jié)構(gòu),WDM驅(qū)動程序模型,WDM模型主要包含以下內(nèi)容: 1、描述了設(shè)備驅(qū)動程序的標(biāo)準(zhǔn)結(jié)構(gòu)和應(yīng)該完成的主要功能。 2、描述了操作系統(tǒng)為設(shè)備驅(qū)動提供的各種服務(wù),以及操作系統(tǒng)與設(shè)備驅(qū)動程序之間詳細的交互過程 3、為常見類型的設(shè)備提供一系列的總線驅(qū)動程序和類驅(qū)動程序。,WDM驅(qū)動程序的分類,功能驅(qū)動:每個WDM驅(qū)動

2、都包含功能驅(qū)動;它了解使硬件工作的所有細節(jié),負(fù)責(zé)具體I/O過程,負(fù)責(zé)處理中斷事件,為用戶提供一種設(shè)備適合的控制方式。 總線驅(qū)動:查找并發(fā)現(xiàn)硬件設(shè)備,確定設(shè)備的資源使用情況,管理硬件與計算機的實際連接,負(fù)責(zé)物理的I/O過程 過濾器驅(qū)動:對功能驅(qū)動程序執(zhí)行I/O操作時進行過濾和監(jiān)視,修改現(xiàn)有功能驅(qū)動程序的行為,為用戶提供額外服務(wù) 類驅(qū)動:實現(xiàn)某種設(shè)備類型的共通功能,管理整個設(shè)備類的基本特征,規(guī)范該類設(shè)備與操作系統(tǒng)中其它軟件環(huán)境的接口。采用類驅(qū)動有利于分層和功能重用。 迷你驅(qū)動:包含在類驅(qū)動中,用于管理設(shè)備實例的廠商專有特征例程。類驅(qū)動和迷你驅(qū)動合在一起才構(gòu)成一個完整的功能驅(qū)動程序。,WDM驅(qū)動的層

3、次結(jié)構(gòu),驅(qū)動程序如何工作,驅(qū)動程序是一個收集讓操作系統(tǒng)調(diào)用的用來執(zhí)行各種涉及到硬件操作的子程序的容器。 一些例程,如DriverEntry和AddDevice例程和一些特定的I/O 請求包(IRP)的處理函數(shù)會出現(xiàn)在每個這樣的容器中 。 需要排隊請求的驅(qū)動程序可能還有一個StartIo例程。而執(zhí)行直接存儲器存?。―MA)操作的驅(qū)動程序會有一個AdapterControl例程。產(chǎn)生硬件中斷的驅(qū)動程序也會有一個中斷服務(wù)例程(ISR)和一個延遲過程調(diào)用(DPC)例程,sys和exe,像EXE程序一樣,驅(qū)動程序也是可執(zhí)行文件。其擴展名為.SYS 在結(jié)構(gòu)上嚴(yán)格地說驅(qū)動程序和任何32位的Windows或者

4、控制臺的應(yīng)用程序沒什么區(qū)別。和EXE程序一樣,一個驅(qū)動程序也需要許多輔助程序,許多也都是動態(tài)鏈接自操作系統(tǒng)內(nèi)核或來自一組驅(qū)動或者其他的支持庫。 但是驅(qū)動程序沒有主程序。取而代之的是其包含了一批系統(tǒng)可以在適當(dāng)?shù)臅r候調(diào)用的子程序集。驅(qū)動程序除了其自己的硬件外不關(guān)心任何別的事情:系統(tǒng)管理了其他的任何事務(wù),包括決定在何時運行你的驅(qū)動程序代碼。,操作系統(tǒng)與驅(qū)動的交互過程,系統(tǒng)運行時設(shè)備插入或者系統(tǒng)重新啟動發(fā)現(xiàn)了某個設(shè)備,系統(tǒng)就會裝載可執(zhí)行的驅(qū)動程序到內(nèi)存中,并且調(diào)用其DriverEntry例程。DriveEntry做了一些初始化操作之后返回。 即插即用管理器(PnP Manager)調(diào)用AddDevic

5、e例程,讓其做一些與設(shè)備實例相關(guān)的初始化操作之后返回。 即插即用管理器發(fā)送給驅(qū)動程序一些IRP,相應(yīng)的IRP處理函數(shù)處理完該IRP之后返回。 一個應(yīng)用程序打開了設(shè)備,因此系統(tǒng)發(fā)送給驅(qū)動另一個IRP,處理函數(shù)進行了少量的操作之后返回,操作系統(tǒng)與驅(qū)動的交互過程,應(yīng)用程序嘗試讀取或者寫入一些數(shù)據(jù),因此系統(tǒng)發(fā)送一個IRP,處理例程將IRP放入一個隊列之后返回。 某些I/O操作引發(fā)設(shè)備中斷,中斷服務(wù)例程做一些很少的操作,然后請求一個DPC,之后返回。 DPC例程運行了,它可能要讀回數(shù)據(jù),或者繼續(xù)下一次的寫操作等,然后開始下一個排在隊列中的IRP,之后DPC例程返回系統(tǒng)。 隨著時間變化,在這期間系統(tǒng)會發(fā)送各種IRP給驅(qū)動程序,驅(qū)動程序進行相應(yīng)的處理。 最后,用戶拔出設(shè)備或者關(guān)閉系統(tǒng),這時,系統(tǒng)發(fā)送一些IRP,分發(fā)例程做好相應(yīng)的處理,然后返回,系統(tǒng)把驅(qū)動程序代碼移出內(nèi)存。,應(yīng)用程序與驅(qū)動的交互,應(yīng)用程序里面要做的工作首先就是要調(diào)用CreatFile 打開設(shè)備,具體操作就像打開一個文件一樣。 應(yīng)用程序準(zhǔn)備好相應(yīng)的數(shù)據(jù)或者緩沖區(qū)等,調(diào)用相應(yīng)的WIN32 API如WriteFile,ReadFile,DeviceIoControl等,對設(shè)備進行讀寫等各種操作。 最后應(yīng)用程序關(guān)閉設(shè)備,具體操作就像關(guān)閉一個文件一樣 。,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!