中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

網(wǎng)站怎樣做鏈接微信怎么推廣

網(wǎng)站怎樣做鏈接,微信怎么推廣,企業(yè)站網(wǎng)站建設(shè),珠海做企業(yè)網(wǎng)站下面介紹主機(jī)驅(qū)動(dòng)程序開發(fā)的高級(jí)概念和任務(wù)。 如果你正在編寫與 Microsoft 提供的 USB 主機(jī)控制器擴(kuò)展驅(qū)動(dòng)程序 (Ucx01000.sys) 通信的新主機(jī)控制器驅(qū)動(dòng)程序,則這部分內(nèi)容適用于你。 下面是 Windows 中 USB 主機(jī)端驅(qū)動(dòng)程序中顯示的圖表的修改版本。 此版本隱藏 USB…

下面介紹主機(jī)驅(qū)動(dòng)程序開發(fā)的高級(jí)概念和任務(wù)。 如果你正在編寫與 Microsoft 提供的 USB 主機(jī)控制器擴(kuò)展驅(qū)動(dòng)程序 (Ucx01000.sys) 通信的新主機(jī)控制器驅(qū)動(dòng)程序,則這部分內(nèi)容適用于你。

下面是 Windows 中 USB 主機(jī)端驅(qū)動(dòng)程序中顯示的圖表的修改版本。 此版本隱藏 USB 客戶端驅(qū)動(dòng)程序?qū)拥脑敿?xì)信息,這些詳細(xì)信息與主控制器驅(qū)動(dòng)程序開發(fā)無(wú)關(guān):

在上圖中,

USB 集線器驅(qū)動(dòng)程序 (Usbhub3.sys) 是 KMDF 驅(qū)動(dòng)程序。 集線器驅(qū)動(dòng)程序負(fù)責(zé)管理 USB 集線器及其端口、枚舉和創(chuàng)建物理設(shè)備對(duì)象, (PDO) USB 設(shè)備和可能連接到其下游端口的其他集線器。

USB 主機(jī)控制器擴(kuò)展 (Ucx01000.sys) 是堆棧中上述集線器驅(qū)動(dòng)程序的抽象層,提供一種通用機(jī)制,用于將請(qǐng)求排隊(duì)到基礎(chǔ)主機(jī)控制器驅(qū)動(dòng)程序。

USB 主機(jī)控制器驅(qū)動(dòng)程序 管理硬件。 Usbxhci.sys 是 Microsoft 提供的一個(gè)此類驅(qū)動(dòng)程序,它尤其面向符合 xHCI 規(guī)范的 USB 控制器硬件。 獨(dú)立硬件開發(fā)人員可能需要編寫自己的主機(jī)控制器驅(qū)動(dòng)程序,而不是使用收件箱 Usbxhci.sys。 例如,對(duì)于 XHCI 硬件,該硬件不完全符合規(guī)范,因此無(wú)法使用 Usbxhci.sys 或非 XHCI 硬件,例如 USB over TCP 連接。

UCX 和主機(jī)控制器驅(qū)動(dòng)程序之間的雙向通信通過(guò)使用 USB 主機(jī)控制器擴(kuò)展 (UCX) 編程接口進(jìn)行。 編譯驅(qū)動(dòng)程序時(shí),每個(gè)驅(qū)動(dòng)程序靜態(tài)鏈接到 Microsoft 提供的存根庫(kù)中的入口點(diǎn) (Ucx01000.lib) 。

下面是為主機(jī)控制器驅(qū)動(dòng)程序加載的設(shè)備堆棧:

UCX 對(duì)象和句柄?

UCX 擴(kuò)展了 WDF 對(duì)象功能,以定義其自己的特定于 USB 的 UCX 對(duì)象。 UCX 使用這些對(duì)象將請(qǐng)求排隊(duì)到任何基礎(chǔ)主機(jī)控制器驅(qū)動(dòng)程序。

重要的 API

UcxControllerCreate
UcxRootHubCreate
UcxUsbDeviceCreate

UCXCONTROLLER:主機(jī)控制器對(duì)象

表示由主機(jī)控制器驅(qū)動(dòng)程序創(chuàng)建的主機(jī)控制器。 驅(qū)動(dòng)程序必須為每個(gè)主機(jī)控制器實(shí)例僅創(chuàng)建一個(gè)主機(jī)控制器對(duì)象。 通常通過(guò)調(diào)用 UcxControllerCreate 方法在 EvtDriverDeviceAdd 回調(diào)中創(chuàng)建。

當(dāng)主機(jī)控制器驅(qū)動(dòng)程序創(chuàng)建對(duì)象時(shí),驅(qū)動(dòng)程序?qū)⒆?cè)由 UCX 調(diào)用的回調(diào)函數(shù)的實(shí)現(xiàn)。 驅(qū)動(dòng)程序還應(yīng)識(shí)別主機(jī)控制器連接的總線類型,例如 ACPI 或 PCI。 驅(qū)動(dòng)程序還通過(guò)使用傳遞給 UcxControllerCreate 調(diào)用的 UCX_CONTROLLER_CONFIG 結(jié)構(gòu)來(lái)提供主機(jī)控制器設(shè)備信息。

若要處理 I/O 請(qǐng)求,主機(jī)控制器驅(qū)動(dòng)程序必須注冊(cè) GUID_DEVINTERFACE_USB_HOST_CONTROLLER 設(shè)備接口。 此驅(qū)動(dòng)程序不需要實(shí)現(xiàn)此接口中定義的 IOCTL。 相反,UCX 客戶端通過(guò)調(diào)用 UcxIoDeviceControl 將在此接口上收到的 IOCTL 請(qǐng)求傳遞給 UCX。

下面是與主機(jī)控制器對(duì)象關(guān)聯(lián)的回調(diào)函數(shù),這些函數(shù)由 UCX 調(diào)用。 這些函數(shù)必須由主機(jī)控制器驅(qū)動(dòng)程序?qū)崿F(xiàn)。

*EVT_UCX_CONTROLLER_USBDEVICE_ADD
當(dāng)集線器驅(qū)動(dòng)程序通過(guò)與根集線器和/或外部集線器的交互確定總線上有新設(shè)備時(shí)調(diào)用。

*EVT_UCX_CONTROLLER_QUERY_USB_CAPABILITY UCX
調(diào)用以收集有關(guān) USB 主機(jī)控制器支持的各種功能的信息。

*EVT_UCX_CONTROLLER_RESET
由 UCX 調(diào)用以重置控制器硬件,以響應(yīng)檢測(cè)到的錯(cuò)誤。

*EVT_UCX_CONTROLLER_GET_CURRENT_FRAMENUMBER
用于從主機(jī)控制器中檢索當(dāng)前幀編號(hào),中心驅(qū)動(dòng)程序使用它來(lái)計(jì)劃時(shí)序傳輸。

UCXROOTHUB:根集線器對(duì)象

獲取和控制主機(jī)控制器的根端口的狀態(tài)。 主機(jī)控制器驅(qū)動(dòng)程序通常在創(chuàng)建主機(jī)控制器對(duì)象后調(diào)用 UcxRootHubCreate 方法,在 EvtDriverDeviceAdd 回調(diào)中創(chuàng)建。 每個(gè)主機(jī)控制器實(shí)例只能有一個(gè)根集線器對(duì)象。 在 UcxRootHubCreate 調(diào)用中,驅(qū)動(dòng)程序注冊(cè)其回調(diào)實(shí)現(xiàn)。

EVT_UCX_ROOTHUB_GET_INFO
返回根集線器的 USB 2.0 和 USB 3.0 端口的數(shù)目。

EVT_UCX_ROOTHUB_GET_20PORT_INFO
返回有關(guān)根中心的 USB 2.0 或 USB 3.0 端口 (*EVT_UCX_ROOTHUB_GET_30PORT_INFO) 的信息。

創(chuàng)建并初始化根集線器對(duì)象后,集線器驅(qū)動(dòng)程序通過(guò)發(fā)送中斷和控制傳輸與根集線器端口交互。 UCX 通過(guò)調(diào)用主機(jī)控制器驅(qū)動(dòng)程序?qū)崿F(xiàn)的這些回調(diào)函數(shù)來(lái)幫助實(shí)現(xiàn)這些傳輸。

EVT_UCX_ROOTHUB_CONTROL_URB
處理 USB 集線器的功能控制請(qǐng)求。。

EVT_UCX_ROOTHUB_INTERRUPT_TX
處理有關(guān)已更改端口的信息的請(qǐng)求。

UCXUSBDEVICE:USB 設(shè)備對(duì)象

表示連接到總線的物理 USB 設(shè)備。 主機(jī)控制器驅(qū)動(dòng)程序通常通過(guò)調(diào)用 UcxUsbDeviceCreate 方法在 EVT_UCX_CONTROLLER_USBDEVICE_ADD 回調(diào)中創(chuàng)建。

創(chuàng)建對(duì)象時(shí),主機(jī)控制器驅(qū)動(dòng)程序使用 UcxUsbDeviceCreate 調(diào)用注冊(cè)其回調(diào)函數(shù)的實(shí)現(xiàn)。

這些回調(diào)函數(shù)旨在使控制器和驅(qū)動(dòng)程序了解 USB 設(shè)備的當(dāng)前狀態(tài)。

EVT_UCX_USBDEVICE_ENABLE
準(zhǔn)備控制器以執(zhí)行到設(shè)備的默認(rèn)端點(diǎn)的傳輸。

EVT_UCX_USBDEVICE_DISABLE
釋放與設(shè)備及其默認(rèn)端點(diǎn)關(guān)聯(lián)的控制器資源。

EVT_UCX_USBDEVICE_ADDRESS
將地址編程到控制器中,并將 SET_ADDRESS 傳輸發(fā)送到設(shè)備,使其進(jìn)入尋址狀態(tài)。

EVT_UCX_USBDEVICE_ENDPOINTS_CONFIGURE
將非默認(rèn)端點(diǎn)編程到控制器中,并/或釋放其他非默認(rèn)端點(diǎn)。

EVT_UCX_USBDEVICE_RESET
設(shè)備已重置的控制器通知,在這種情況下,驅(qū)動(dòng)程序采取任何必要措施將控制器與 USB 設(shè)備同步。

EVT_UCX_USBDEVICE_UPDATE
通知控制器與設(shè)備相關(guān)的各種信息。

EVT_UCX_USBDEVICE_HUB_INFO
如果 UCXUSBDEVICE 句柄用于集線器設(shè)備,則通知集線器屬性。

EVT_UCX_USBDEVICE_ENDPOINT_ADD
通知驅(qū)動(dòng)程序?yàn)樵O(shè)備創(chuàng)建端點(diǎn)。 默認(rèn)端點(diǎn)的 EVT_UCX_USBDEVICE_DEFAULT_ENDPOINT_ADD。

當(dāng)掛起的 USB 3.0 設(shè)備上的接口發(fā)出喚醒信號(hào)時(shí),驅(qū)動(dòng)程序應(yīng)調(diào)用 UcxUsbDeviceRemoteWakeNotification 來(lái)通知 UCX。

創(chuàng)建對(duì)象后,對(duì)象的生存期由 UCX 管理,驅(qū)動(dòng)程序不得刪除該對(duì)象。

UCXENDPOINT:端點(diǎn)對(duì)象

表示 USB 設(shè)備對(duì)象上的端點(diǎn)。 端點(diǎn)對(duì)象由主機(jī)控制器在 EVT_UCX_USBDEVICE_DEFAULT_ENDPOINT_ADD 或 EVT_UCX_USBDEVICE_ENDPOINT_ADD 回調(diào)期間創(chuàng)建。 創(chuàng)建端點(diǎn)對(duì)象時(shí),驅(qū)動(dòng)程序會(huì)注冊(cè)其回調(diào)函數(shù)。

驅(qū)動(dòng)程序還會(huì)為每個(gè)端點(diǎn)創(chuàng)建一個(gè)框架隊(duì)列對(duì)象,并通過(guò)調(diào)用 UcxEndpointSetWdfIoQueue 將該隊(duì)列的 WDFQUEUE 傳遞給 UCX。 創(chuàng)建端點(diǎn)后,對(duì)象及其關(guān)聯(lián)的隊(duì)列的生存期由 UCX 管理,驅(qū)動(dòng)程序不得刪除這些對(duì)象本身。

端點(diǎn)對(duì)象實(shí)現(xiàn)多個(gè)回調(diào)函數(shù),使驅(qū)動(dòng)程序能夠協(xié)助 UCX 執(zhí)行與端點(diǎn)相關(guān)的操作。

EVT_UCX_ENDPOINT_ABORT
中止與端點(diǎn)關(guān)聯(lián)的隊(duì)列。

EVT_UCX_ENDPOINT_OK_TO_CANCEL_TRANSFERS
通知控制器驅(qū)動(dòng)程序,它可以在端點(diǎn)上完成取消的傳輸。

EVT_UCX_ENDPOINT_PURGE
完成端點(diǎn)上所有未完成的 I/O 請(qǐng)求。

EVT_UCX_ENDPOINT_START
開始與端點(diǎn)關(guān)聯(lián)的隊(duì)列。

EVT_UCX_ENDPOINT_STATIC_STREAMS_ADD
創(chuàng)建靜態(tài)流。

EVT_UCX_ENDPOINT_RESET
通知驅(qū)動(dòng)程序重置控制器的端點(diǎn)編程。

當(dāng)主機(jī)控制器驅(qū)動(dòng)程序在端點(diǎn)上收到 USB 3.0 無(wú) Ping 響應(yīng)錯(cuò)誤時(shí),驅(qū)動(dòng)程序必須調(diào)用 UcxEndpointNoPingResponseError。 該調(diào)用會(huì)導(dǎo)致 USB 設(shè)備對(duì)象接收 EVT_UCX_USBDEVICE_UPDATE。 有關(guān)詳細(xì)信息,請(qǐng)參閱 在主機(jī)控制器驅(qū)動(dòng)程序中配置 USB 端點(diǎn)。

UCXSTREAMS:流對(duì)象

代表通過(guò)單個(gè)端點(diǎn)連接設(shè)備的管道數(shù)量。 主機(jī)控制器驅(qū)動(dòng)程序通過(guò)調(diào)用 UcxStaticStreamsCreate 在 EVT_UCX_ENDPOINT_STATIC_STREAMS_ADD 回調(diào)中創(chuàng)建流對(duì)象。

在 UcxStaticStreamsCreate 調(diào)用期間,主機(jī)控制器驅(qū)動(dòng)程序注冊(cè)其回調(diào)函數(shù)。 對(duì)于特定的端點(diǎn)對(duì)象,驅(qū)動(dòng)程序可以確定它是否已創(chuàng)建流對(duì)象,并通過(guò)調(diào)用 UcxEndpointGetStaticStreamsReferenced 返回 UCXSTREAMS 句柄。

創(chuàng)建對(duì)象后,驅(qū)動(dòng)程序會(huì)為每個(gè)流創(chuàng)建一個(gè)框架隊(duì)列對(duì)象,并通過(guò)調(diào)用 UcxStaticStreamsSetStreamInfo 將 WDFQUEUE 句柄發(fā)送到 UCX。

流對(duì)象為主機(jī)控制器提供了多個(gè)回調(diào)函數(shù),以幫助 UCX 管理靜態(tài)流。

EVT_UCX_ENDPOINT_STATIC_STREAMS_DISABLE
為端點(diǎn)的所有流發(fā)布控制器資源。

EVT_UCX_ENDPOINT_STATIC_STREAMS_ENABLE
為此端點(diǎn)啟用所有流的控制器硬件。

對(duì)象的生存期和關(guān)聯(lián)的隊(duì)列由 UCX 管理,驅(qū)動(dòng)程序不得刪除這些對(duì)象。

http://www.risenshineclean.com/news/2891.html

相關(guān)文章:

  • 個(gè)人怎么做課程網(wǎng)站seo權(quán)重是什么意思
  • 合肥做網(wǎng)站域名的公司怎么制作小程序
  • 鄂州手機(jī)網(wǎng)站建設(shè)百度收錄軟件
  • wordpress 寫php頁(yè)面跳轉(zhuǎn)seo代碼優(yōu)化包括哪些
  • 廣州做網(wǎng)站 漢獅網(wǎng)絡(luò)抖音seo源碼搭建
  • 肇慶企業(yè)網(wǎng)站關(guān)鍵詞優(yōu)化教程哪里有網(wǎng)頁(yè)設(shè)計(jì)公司
  • 建工網(wǎng)校官網(wǎng)app百度推廣優(yōu)化師培訓(xùn)
  • 網(wǎng)站制作的重要流程圖百度排行榜前十名
  • 網(wǎng)站首頁(yè)優(yōu)化營(yíng)銷型網(wǎng)站外包
  • 哈爾濱 房產(chǎn)網(wǎng)站建設(shè)成都seo專家
  • 軟件公司 網(wǎng)站模板網(wǎng)站外鏈平臺(tái)
  • 自己黑自己做的網(wǎng)站找相似圖片 識(shí)別
  • 石家莊網(wǎng)站建設(shè)找哪家百度推廣關(guān)鍵詞規(guī)劃師
  • 提供網(wǎng)站制作公司地址常用的關(guān)鍵詞挖掘工具
  • 舟山做網(wǎng)站seo關(guān)鍵詞排名優(yōu)化品牌
  • 網(wǎng)站 建設(shè) 標(biāo)準(zhǔn)方案網(wǎng)站平臺(tái)都有哪些
  • 網(wǎng)站橫幅js代碼如何策劃一個(gè)營(yíng)銷方案
  • 做網(wǎng)站群發(fā)外鏈平臺(tái)
  • 濟(jì)南專業(yè)做網(wǎng)站的公司哪家好信息流優(yōu)化師證書
  • 怎么用flash做網(wǎng)站網(wǎng)絡(luò)營(yíng)銷手段有哪些方式
  • 網(wǎng)站設(shè)計(jì)方法制作公司網(wǎng)站的公司
  • 做網(wǎng)站的哪里好站長(zhǎng)工具seo綜合查詢columbu cat
  • 推廣做任務(wù) 有哪些網(wǎng)站南寧網(wǎng)站推廣營(yíng)銷
  • 自己編輯網(wǎng)站怎么做的域名備案
  • 網(wǎng)站群建設(shè)目標(biāo)網(wǎng)絡(luò)營(yíng)銷經(jīng)典案例
  • php可以做視頻網(wǎng)站如何做好網(wǎng)絡(luò)營(yíng)銷工作
  • 數(shù)據(jù)庫(kù)網(wǎng)站開發(fā)外文翻譯競(jìng)價(jià)托管代運(yùn)營(yíng)
  • 做網(wǎng)站需要租服務(wù)器嗎線上推廣平臺(tái)都有哪些
  • 自己做的網(wǎng)站怎么綁域名杭州seo網(wǎng)絡(luò)公司
  • 陵縣網(wǎng)站建設(shè)如何免費(fèi)注冊(cè)網(wǎng)站