5.20日(rì)音(yīn)訊,系統設備驅動→程序分(fēn)類
日(rì)期:2013-05-20發布:首創網絡浏覽:477次
5.20日(rì)音(yīn)訊,系統設備驅動程序分(fēn)類。在Windoα&wsI/O系統中,設備驅動程序不(bù)僅為(wèi)操≤作(zuò)系統提供了(le)支持各種I/×α$O設備的(de)能(néng)力,也(yě)是(shì)Windows內(∑≈£nèi)核本身(shēn)擴展的(de)§λ基礎。Windows可(kě)以動态地(dì)加載或卸載設備驅動程序✘ε,通(tōng)過這(zhè)些(xiē)驅動程序來(lái↑∑)調整或擴展內(nèi)核的(de)··&∏·
本文(wén)關鍵字:5.20日(rì),音(yīn)訊,系統,設備,÷™驅動程序,分(fēn)類,5.20日(rì),
5.20日(rì)音(yīn)訊,系統設備驅動↕γ程序分(fēn)類。在WindowsI/O系統中,設備驅動程序±↕不(bù)僅為(wèi)操作(zuò)系統提供了φφ↑←(le)支持各種I/O設備的(de)能(nén®®↔g)力,也(yě)是(shì)Windows內(nèi)核本身(shē××'×n)擴展的(de)基礎。Windows可(kě)以動态地(dì)加&載或卸載設備驅動程序,通(tōng)過這(zhè)些(xiē)驅動程序✘✘↑來(lái)調整或擴展內(nèi)核的(de)功能(néng)。Wind&Ω€owsI/O系統規定了(le)設備驅動程序應遵循的(de)σσφβ接口,這(zhè)組接口是(shì)通(tōn₽₩™g)用(yòng)的(de),可(kě)适用(yòng)于所有(yπ¥↔Ωǒu)的(de)內(nèi)核模式驅動程序。設備驅動程序依據其用(yò✘♦ng)途不(bù)同,可(kě)以分(fēn)≠$♣♣為(wèi)以下(xià)三類:
?即插即用(yòng)驅動程序,也(yě)稱為(wèi)WDM驅± ε動程序。它們通(tōng)常是(shì)為(w♥↑→¥èi)了(le)驅動硬件(jiàn)設備而由硬件(✘✔jiàn)廠(chǎng)商提供,與Windows的(de)I/O管理(l∏'ǐ)器(qì)、即插即用(yòng)管理(lǐ)器(qì)和♦ε₩∑(hé)電(diàn)源管理(lǐ)器(qì)一(yī)↕™€起工(gōng)作(zuò)。Windows自(zì)身(s ₩↓εhēn)攜帶了(le)大(dà)量即插即用(yòng)驅動程序,用(™←₽yòng)于支持各種常見(jiàn)的(de)存儲設備、視(shì)¶頻(pín)适配器(qì)、網絡适配器(qì)以及輸入設備等。
?內(nèi)核擴展驅動程序,也(yě)稱為(wèi)非即σ插即用(yòng)驅動程序。它們擴展內(nèi)核的(d✔₩>δe)功能(néng),或者提供了(le)訪問(wèn)內(nèi)核模式↔€代碼和(hé)數(shù)據的(de)一(yī)種途徑。它們并沒有(φyǒu)集成到(dào)即插即用(yòng'✔ )管理(lǐ)器(qì)和(hé)電(dià↑×n)源管理(lǐ)器(qì)的(de)管理(lǐ)框架中。 λ早期的(de)WindowsNT驅動程序(在引入即插即用(yòn∑σg)管理(lǐ)機(jī)制(zhì)以前)都(dōu☆λ)屬于這(zhè)一(yī)類型,現(xiàn)在仍然有(yǒu)大(dà)¥★☆↔量的(de)內(nèi)核擴展驅動程序。本書(shū)前幾章(zhān✘•Ω☆g)展示的(de)工(gōng)具都(dō☆δΩ•u)通(tōng)過這(zhè)種類型的(de)驅動程序來(lái₩π)獲得(de)內(nèi)核中的(de)信息。
?文(wén)件(jiàn)系統驅動程序。®≤€σ它們接收針對(duì)文(wén)件(jiàn)的(de)I↔/O請(qǐng)求,再進一(yī)步将這(zhè)些(xi•≈✔ē)請(qǐng)求轉變成真正對(duì)于存儲設備或網絡設備的(♠₹✔de)I/O請(qǐng)求,從(cóng)而滿足客戶的(d↓"≥e)原始請(qǐng)求。在6.2.1節我們曾經§≤≤看(kàn)到(dào)過,文(wén)件(jiàn)系統類☆↕δ型的(de)驅動程序被放(fàng)在對(duì)象管理(lǐ)器∑¥(qì)的(de)FileSystem目錄下(xiàλ>↓),其他(tā)的(de)驅動程序放(fàng)♦§★在Driver目錄下(xià)。表6.2中列出的(de)驅動程序€₽®α都(dōu)是(shì)文(wén)件(jiàn)系統驅動×λ←程序。
Windows驅動程序模型(WDM)在I/§γ♣₩O模型中增加了(le)對(duì)即插即用(yòng)、電 £&∏(diàn)源管理(lǐ)和(hé)Winγ₹dows管理(lǐ)規範(WMI)的(d& ≈ e)支持。而且,遵從(cóng)WDM的(de)驅動程序在Windows平 §σ♦台(包括Windows98/Windows200σε0以後的(de)所有(yǒu)版本)上(shàng)至少(shǎo)是$<✘(shì)源代碼兼容的(de),甚至也(yě)可(kě)能(néng)是(s®≈hì)二進制(zhì)兼容的(de)。WDM驅動程序又σγ¥(yòu)進一(yī)步可(kě)以劃分(fēn)成以下(xià)三類®±↓λ:
?總線驅動程序。顧名思義,總線驅動程序管理(lǐ✘÷≥π)一(yī)個(gè)總線設備,它負責檢測總線上(shàng)≤♥≥附載的(de)所有(yǒu)設備,并通(tōng↑&α≠)知(zhī)即插即用(yòng)管理(lǐ✘γ®)器(qì)關于這(zhè)些(xiē)設備的(de)情況。✔÷π總線驅動程序也(yě)負責總線的(de)™λ電(diàn)源管理(lǐ)。
?功能(néng)驅動程序。功能(néng)驅動程序管理(lǐ)具體(t<€§ǐ)的(de)設備,在一(yī)個(gè)設備的(de)≠≥♥設備棧中,功能(néng)驅動程序創建的(de)設備對(duì)象(即FDβ∏★αO)相(xiàng)當于操作(zuò)系統控制(zhì)該設備的(de→€)邏輯接口。功能(néng)驅動程序是(sh↑÷ì)實際管理(lǐ)該設備的(de)功能(néng)模塊。
?過濾驅動程序。在設備棧中,過濾驅動≥≈程序位于功能(néng)驅動程序之上(shàng)或之£ 下(xià),它的(de)用(yòng)途是(shì):監↕∑'視(shì)一(yī)個(gè)設備的(de)I/O請(qǐng)求£δ以及這(zhè)些(xiē)請(qǐng)求的(★∑©de)處理(lǐ)情況,或者,增加或改變一(yī)≈×"©個(gè)設備或另一(yī)個(gè)驅動程序的(de)行(xíngΩ✘σ$)為(wèi)。例如(rú),病毒掃描工(gōng)具常常≠≈利用(yòng)過濾驅動程序來(lái)監視(shì)被讀(¥×'dú)寫的(de)文(wén)件(jiàn∞←©≥)數(shù)據。
在WDM中,總線是(shì)指可(k¥$≠★ě)供其他(tā)設備附載的(de)設備,其中既有✔δ§(yǒu)像PCI和(hé)SCSI這(zhè)樣的(de)物(wùσ↕ ₩)理(lǐ)總線設備,也(yě)有(yǒu)像HAL這(zhèγ)樣的(de)虛拟總線設備。總線驅動程序負責檢測總線上(shà™<•'ng)的(de)設備,并且協助即插即用(yòng)管理(lǐ)器(qì)列舉♣∑✔↕這(zhè)些(xiē)設備,而且它也(yě)≤φ∑控制(zhì)該總線的(de)物(wù)理(lǐ)配置。相(xiàn↑ε" g)反地(dì),功能(néng)驅動程序要(yào)簡單得(de)♦多(duō),通(tōng)常隻是(shì)控制(z≥•hì)一(yī)個(gè)設備的(de)硬件(jiàn)而已。
在即插即用(yòng)管理(lǐ)器(qì)列λ₹¥舉得(de)到(dào)的(de)設備樹(shù)中,每個(gè)設備節點↓☆都(dōu)包含一(yī)個(gè)設備棧,設備棧中的(de)各個(gè)設∑φ 備對(duì)象分(fēn)别由對(duì)應的(de)驅動程序創γ∑建和(hé)實現(xiàn)。圖6.12顯示了(le)不(bù)同類型WDM驅≤®≠動程序在設備棧中的(de)角色,以及它們之間(jiān)的(₩σ★'de)關系。
每個(gè)設備對(duì)象都(dōu)是(shì)由對₹£(duì)應的(de)驅動程序創建的(de),設備的(de)PDO是™≠↔↔(shì)由總線驅動程序創建的(de),而Ωβ↑✘FDO是(shì)由功能(néng)驅動程序創建的(de)。在PDO和(hé)Ω∏↑FDO之間(jiān),緊挨著(zhe)PDO,可(kě)以© ♣有(yǒu)零個(gè)或多(duō)個(gè)總♣'•線過濾設備對(duì)象,它們由相(xiàng)應的(de)總★線過濾驅動程序創建。在總線過濾設備對(duì)φ★₹象和(hé)FDO之間(jiān),可(kě)以有(yǒu)零$♠個(gè)或多(duō)個(gè)下(xià)層過濾設備→λ©對(duì)象。而在FDO之上(shàng),則可(kě)以 >&有(yǒu)零個(gè)或多(duō)個(gè)上(shàng)層過濾設備¶§λ≠對(duì)象。這(zhè)些(xiē)下(xià)層或上←≠≥(shàng)層過濾設備對(duì)象分(fēn)别由相π×(xiàng)應的(de)下(xià)層或上(≠♦≥ shàng)層過濾驅動程序創建。WDM規定了(le)這(zhè)σ€≈∑樣的(de)設備棧結構,既合理(lǐ)地(dì)讓參與其中✘¥的(de)每個(gè)驅動程序實現(xiàn)它<₹所負責的(de)那(nà)部分(fēn)功能(néng)®✘™∑,也(yě)提供了(le)足夠的(de)擴展性,允許過濾驅動程序在不✘♥>(bù)同層次上(shàng)監視(shì)或修正一(yī)個(gè)設備的( ↔∑de)工(gōng)作(zuò)方式。後面6.5.4節将介紹過濾驅動÷↔程序的(de)加載以及過濾設備對(duì)象的$÷♥(de)創建順序。
對(duì)于一(yī)個(gè)具←••體(tǐ)的(de)設備而言,FDO代表了(le)"✔×←它對(duì)于操作(zuò)系統的(de)邏輯接口。功能(n♥≈¶εéng)驅動程序往往會(huì)創建一(yī)個(gè)代表相(xiàng≤☆)應PDO的(de)設備接口(通(tōng)過I$→•/O管理(lǐ)器(qì)函數(shù)IoRegisterDevice ☆₹Interface),因而應用(yòng)程序或內(nèi)核其 ≈£✔他(tā)部分(fēn)可(kě)以通(tōng)過此設備接口與該設ε ∏€備打交道(dào)。對(duì)于一(yī)些(§ ≠¶xiē)複雜(zá)而又(yòu)通(t÷•÷♥ōng)用(yòng)的(de)設備,例如(rú)磁盤設備和(hé)網絡∞&÷适配器(qì)等,功能(néng)驅動程序又(yòu)被♣"♣↕進一(yī)步分(fēn)成多(duō)個(gè)獨立的(de)§"驅動程序,由它們聯合起來(lái)管理(l$¥☆ǐ)該FDO的(de)I/O請(qǐng)求。從(có≠♥€ng)這(zhè)一(yī)層意義上(shàn ☆g),WDM驅動程序對(duì)硬件(jiàn)的(de) ↕∏支持可(kě)以進一(yī)步劃分(fēn)為(wèi)類驅動ε程序(classdriver)和(hé)端口驅動程序(portdriv₹§<÷er),以及小(xiǎo)端口驅動程序(miniportdri<βver)。
類驅動程序實現(xiàn)了(le)某一(yī)§↑✘₽種類型的(de)設備的(de)I/O處理(lǐ)。對(duì)于已經标準化(>™huà)的(de)設備類型,比如(rú)磁盤、網δ™≠ 絡适配器(qì)等,提供一(yī)個(gè)類驅動程序∑α✘可(kě)以為(wèi)不(bù)同廠(chǎn↑∞ g)商生(shēng)産的(de)設備實現(xiàn₩€)通(tōng)用(yòng)的(de)服務。≥≥λ端口驅動程序實現(xiàn)了(le)與某一(yīλ•↓)類型I/O端口相(xiàng)關的(de•∑<↑)I/O處理(lǐ),它們并不(bù)遵 從(cóng)驅動程序的(de)接口要(yào)求,而隻是λ®(shì)一(yī)些(xiē)內(nèi)核模式的(de&¥ )輔助例程。小(xiǎo)端口驅動程序則實現(xiàn)了(le↑π)驅動某一(yī)特定設備而需要(yào ←)的(de)I/O服務。類驅動程序和(hé)小(xiǎo)端口驅動ε&₹>程序的(de)分(fēn)工(gōng)可(kě)以看(kàn)成是(>♣←shì)針對(duì)一(yī)個(gè)或一(yī)類設備的(de)&ldπλquo;通(tōng)用(yòng)&rdquoβ×;和(hé)“特殊”的(de)功能(néng€↔←)部分(fēn)。類驅動程序實現(xiàn)的(de)是"<©₹(shì)“通(tōng)用(yòng)&rdq₽₽σuo;或“公共”的(de)I/O'♥服務,而小(xiǎo)端口驅動程序實現(xiàn)的(de)是(shì)針對(₽↔₽duì)某一(yī)特定設備的(de)“特殊π±α”功能(néng)部分(fēn)。
- 歡迎大(dà)家(jiā)閱讀(dú)浏覽,部分(fēn)內(nèi)¶£容來(lái)源于網絡,如(rú)有(yǒu)₩♦ε侵權,請(qǐng)聯系我們删除!
- 上(shàng)一(yī)條:5.20日(rì)音(yīn)訊,即插即用(yòng)的≈λ♥≈(de)基本要(yào)求
- 下(xià)一(yī)條:5.21日(rì)音(yīn)訊,objective-C-引用(yδ✘★òng)計(jì)數(shù)詳解
服務項目
熱(rè)門(mén)信息
- 邯鄲網絡公司:模闆建站(zhàn)的(de)好(h↓↕ <ǎo)處有(yǒu)哪些(xiē)?
- 3642024-04-25

- 邯鄲網絡公司:網站(zhàn)建設開(kāi)發有(yǒu)哪些(xi♣<Ωē)細節需要(yào)注意?
- 5402024-03-07

- 邯鄲網絡公司:外(wài)貿網站(zhàn)制(zhì)作(zuò)的(de)δ8個(gè)步驟
- 3772024-03-05

- 簡單3步,輕松做(zuò)企業(yè)官網
- 6822024-02-18
