亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲(chóng)蟲(chóng)首頁(yè)| 資源下載| 資源專輯| 精品軟件
登錄| 注冊(cè)

Irp

  • 介紹了驅(qū)動(dòng)開(kāi)發(fā)中取消Irp請(qǐng)求的想過(guò)操作。

    介紹了驅(qū)動(dòng)開(kāi)發(fā)中取消Irp請(qǐng)求的想過(guò)操作。

    標(biāo)簽: Irp 驅(qū)動(dòng)開(kāi)發(fā) 操作

    上傳時(shí)間: 2017-04-12

    上傳用戶:lacsx

  • 不必多說(shuō),驅(qū)動(dòng)開(kāi)發(fā)必需弄懂的概念之一,Irp,I/O Request Packets

    不必多說(shuō),驅(qū)動(dòng)開(kāi)發(fā)必需弄懂的概念之一,Irp,I/O Request Packets

    標(biāo)簽: Request Packets Irp 驅(qū)動(dòng)開(kāi)發(fā)

    上傳時(shí)間: 2013-12-10

    上傳用戶:sz_hjbf

  • 匯編語(yǔ)言教程.rar

    一本很好的匯編語(yǔ)言教程,跟大家一起分享 課程介紹 第1章 預(yù)備知識(shí)  1.1 匯編語(yǔ)言的由來(lái)及其特點(diǎn)   1 機(jī)器語(yǔ)言   2 匯編語(yǔ)言   3 匯編程序   4 匯編語(yǔ)言的主要特點(diǎn)   5 匯編語(yǔ)言的使用領(lǐng)域  1.2 數(shù)據(jù)的表示和類型   1 數(shù)值數(shù)據(jù)的表示   2 非數(shù)值數(shù)據(jù)的表示   3 基本的數(shù)據(jù)類型  1.3 習(xí)題 第2章 CPU資源和存儲(chǔ)器  2.1 寄存器組   1 寄存器組   2 通用寄存器的作用   3 專用寄存器的作用  2.2 存儲(chǔ)器的管理模式   1 16位微機(jī)的內(nèi)存管理模式   2 32位微機(jī)的內(nèi)存管理模式  2.3 習(xí)題 第3章 操作數(shù)的尋址方式  3.1 立即尋址方式  3.2 寄存器尋址方式  3.3 直接尋址方式  3.4 寄存器間接尋址方式  3.5 寄存器相對(duì)尋址方式  3.6 基址加變址尋址方式  3.7 相對(duì)基址加變址尋址方式  3.8 32位地址的尋址方式  3.9 操作數(shù)尋址方式的小結(jié)  3.10 習(xí)題 第4章 標(biāo)識(shí)符和表達(dá)式  4.1 標(biāo)識(shí)符  4.2 簡(jiǎn)單內(nèi)存變量的定義   1 內(nèi)存變量定義的一般形式   2 字節(jié)變量   3 字變量   4 雙字變量   5 六字節(jié)變量   6 八字節(jié)變量   7 十字節(jié)變量  4.3 調(diào)整偏移量偽指令   1 偶對(duì)齊偽指令   2 對(duì)齊偽指令   3 調(diào)整偏移量偽指令   4 偏移量計(jì)數(shù)器的值  4.4 復(fù)合內(nèi)存變量的定義   1 重復(fù)說(shuō)明符   2 結(jié)構(gòu)類型的定義   3 聯(lián)合類型的定義   4 記錄類型的定義   5 數(shù)據(jù)類型的自定義  4.5 標(biāo)號(hào)  4.6 內(nèi)存變量和標(biāo)號(hào)的屬性   1 段屬性操作符   2 偏移量屬性操作符   3 類型屬性操作符   4 長(zhǎng)度屬性操作符   5 容量屬性操作符   6 強(qiáng)制屬性操作符   7 存儲(chǔ)單元?jiǎng)e名操作符  4.7 表達(dá)式   1 進(jìn)制偽指令   2 數(shù)值表達(dá)式   3 地址表達(dá)式  4.8 符號(hào)定義語(yǔ)句   1 等價(jià)語(yǔ)句   2 等號(hào)語(yǔ)句   3 符號(hào)名定義語(yǔ)句  4.9 習(xí)題 第5章 微機(jī)CPU的指令系統(tǒng)  5.1 匯編語(yǔ)言指令格式   1 指令格式   2 了解指令的幾個(gè)方面  5.2 指令系統(tǒng)   1 數(shù)據(jù)傳送指令   2 標(biāo)志位操作指令   3 算術(shù)運(yùn)算指令   4 邏輯運(yùn)算指令   5 移位操作指令   6 位操作指令   7 比較運(yùn)算指令   8 循環(huán)指令   9 轉(zhuǎn)移指令   10 條件設(shè)置字節(jié)指令   11 字符串操作指令   12 ASCII-BCD碼調(diào)整指令   13 處理器指令  5.3 習(xí)題 第6章 程序的基本結(jié)構(gòu)  6.1 程序的基本組成   1 段的定義   2 段寄存器的說(shuō)明語(yǔ)句   3 堆棧段的說(shuō)明   4 源程序的結(jié)構(gòu)  6.2 程序的基本結(jié)構(gòu)   1 順序結(jié)構(gòu)   2 分支結(jié)構(gòu)   3 循環(huán)結(jié)構(gòu)  6.3 段的基本屬性   1 對(duì)齊類型   2 組合類型   3 類別   4 段組  6.4 簡(jiǎn)化的段定義   1 存儲(chǔ)模型說(shuō)明偽指令   2 簡(jiǎn)化段定義偽指令   3 簡(jiǎn)化段段名的引用  6.5 源程序的輔助說(shuō)明偽指令   1 模塊名定義偽指令   2 頁(yè)面定義偽指令   3 標(biāo)題定義偽指令   4 子標(biāo)題定義偽指令  6.6 習(xí)題 第7章 子程序和庫(kù)  7.1 子程序的定義  7.2 子程序的調(diào)用和返回指令   1 調(diào)用指令   2 返回指令  7.3 子程序的參數(shù)傳遞   1 寄存器傳遞參數(shù)   2 存儲(chǔ)單元傳遞參數(shù)   3 堆棧傳遞參數(shù)  7.4 寄存器的保護(hù)與恢復(fù)  7.5 子程序的完全定義   1 子程序完全定義格式   2 子程序的位距   3 子程序的語(yǔ)言類型   4 子程序的可見(jiàn)性   5 子程序的起始和結(jié)束操作   6 寄存器的保護(hù)和恢復(fù)   7 子程序的參數(shù)傳遞   8 子程序的原型說(shuō)明   9 子程序的調(diào)用偽指令   10 局部變量的定義  7.6 子程序庫(kù)   1 建立庫(kù)文件命令   2 建立庫(kù)文件舉例   3 庫(kù)文件的應(yīng)用   4 庫(kù)文件的好處  7.7 習(xí)題 第8章 輸入輸出和中斷  8.1 輸入輸出的基本概念   1 I/O端口地址   2 I/O指令  8.2 中斷   1 中斷的基本概念   2 中斷指令   3 中斷返回指令   4 中斷和子程序  8.3 中斷的分類   1 鍵盤(pán)輸入的中斷功能   2 屏幕顯示的中斷功能   3 打印輸出的中斷功能   4 串行通信口的中斷功能   5 鼠標(biāo)的中斷功能   6 目錄和文件的中斷功能   7 內(nèi)存管理的中斷功能   8 讀取和設(shè)置中斷向量  8.4 習(xí)題 第9章 宏  9.1 宏的定義和引用   1 宏的定義   2 宏的引用   3 宏的參數(shù)傳遞方式   4 宏的嵌套定義   5 宏與子程序的區(qū)別  9.2 宏參數(shù)的特殊運(yùn)算符   1 連接運(yùn)算符   2 字符串整體傳遞運(yùn)算符   3 字符轉(zhuǎn)義運(yùn)算符   4 計(jì)算表達(dá)式運(yùn)算符  9.3 與宏有關(guān)的偽指令   1 局部標(biāo)號(hào)偽指令   2 取消宏定義偽指令   3 中止宏擴(kuò)展偽指令  9.4 重復(fù)匯編偽指令   1 偽指令REPT   2 偽指令Irp   3 偽指令IrpC  9.5 條件匯編偽指令   1 條件匯編偽指令的功能   2 條件匯編偽指令的舉例  9.6 宏的擴(kuò)充   1 宏定義形式   2 重復(fù)偽指令REPEAT   3 循環(huán)偽指令WHILE   4 循環(huán)偽指令FOR   5 循環(huán)偽指令FORC   6 轉(zhuǎn)移偽指令GOTO   7 宏擴(kuò)充的舉例   8 系統(tǒng)定義的宏  9.7 習(xí)題 第10章 應(yīng)用程序的設(shè)計(jì)  10.1 字符串的處理程序  10.2 數(shù)據(jù)的分類統(tǒng)計(jì)程序  10.3 數(shù)據(jù)轉(zhuǎn)換程序  10.4 文件操作程序  10.5 動(dòng)態(tài)數(shù)據(jù)的編程  10.6 COM文件的編程  10.7 駐留程序  10.8 程序段前綴及其應(yīng)用   1 程序段前綴的字段含義   2 程序段前綴的應(yīng)用  10.9 習(xí)題 第11章 數(shù)值運(yùn)算協(xié)處理器  11.1 協(xié)處理器的數(shù)據(jù)格式   1 有符號(hào)整數(shù)   2 BCD碼數(shù)據(jù)   3 浮點(diǎn)數(shù)  11.2 協(xié)處理器的結(jié)構(gòu)  11.3 協(xié)處理器的指令系統(tǒng)   1 操作符的命名規(guī)則   2 數(shù)據(jù)傳送指令   3 數(shù)學(xué)運(yùn)算指令   4 比較運(yùn)算指令   5 超越函數(shù)運(yùn)算指令   6 常數(shù)操作指令   7 協(xié)處理器控制指令  11.4 協(xié)處理器的編程舉例  11.5 習(xí)題 第12章 匯編語(yǔ)言和C語(yǔ)言  12.1 匯編語(yǔ)言的嵌入  12.2 C語(yǔ)言程序的匯編輸出  12.3 一個(gè)具體的例子  12.4 習(xí)題 附錄

    標(biāo)簽: 匯編語(yǔ)言 教程

    上傳時(shí)間: 2013-07-05

    上傳用戶:hw1688888

  • 驅(qū)動(dòng)程序與應(yīng)用程序的接口

    有兩種方式可以讓設(shè)備和應(yīng)用程序之間聯(lián)系:1. 通過(guò)為設(shè)備創(chuàng)建的一個(gè)符號(hào)鏈;2. 通過(guò)輸出到一個(gè)接口WDM驅(qū)動(dòng)程序建議使用輸出到一個(gè)接口而不推薦使用創(chuàng)建符號(hào)鏈的方法。這個(gè)接口保證PDO的安全,也保證安全地創(chuàng)建一個(gè)惟一的、獨(dú)立于語(yǔ)言的訪問(wèn)設(shè)備的方法。一個(gè)應(yīng)用程序使用Win32APIs來(lái)調(diào)用設(shè)備。在某個(gè)Win32 APIs和設(shè)備對(duì)象的分發(fā)函數(shù)之間存在一個(gè)映射關(guān)系。獲得對(duì)設(shè)備對(duì)象訪問(wèn)的第一步就是打開(kāi)一個(gè)設(shè)備對(duì)象的句柄。 用符號(hào)鏈打開(kāi)一個(gè)設(shè)備的句柄為了打開(kāi)一個(gè)設(shè)備,應(yīng)用程序需要使用CreateFile。如果該設(shè)備有一個(gè)符號(hào)鏈出口,應(yīng)用程序可以用下面這個(gè)例子的形式打開(kāi)句柄:hDevice = CreateFile("\\\\.\\OMNIPORT3",  GENERIC_READ | GENERIC_WRITE,FILE_SHARE_READ,  NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL ,NULL);文件路徑名的前綴“\\.\”告訴系統(tǒng)本調(diào)用希望打開(kāi)一個(gè)設(shè)備。這個(gè)設(shè)備必須有一個(gè)符號(hào)鏈,以便應(yīng)用程序能夠打開(kāi)它。有關(guān)細(xì)節(jié)查看有關(guān)Kdevice和CreateLink的內(nèi)容。在上述調(diào)用中第一個(gè)參數(shù)中前綴后的部分就是這個(gè)符號(hào)鏈的名字。注意:CreatFile中的第一個(gè)參數(shù)不是Windows 98/2000中驅(qū)動(dòng)程序(.sys文件)的路徑。是到設(shè)備對(duì)象的符號(hào)鏈。如果使用DriverWizard產(chǎn)生驅(qū)動(dòng)程序,它通常使用類KunitizedName來(lái)構(gòu)成設(shè)備的符號(hào)鏈。這意味著符號(hào)鏈名有一個(gè)附加的數(shù)字,通常是0。例如:如果鏈接名稱的主干是L“TestDevice”那么在CreateFile中的串就該是“\\\\.\\TestDevice0”。如果應(yīng)用程序需要被覆蓋的I/O,第六個(gè)參數(shù)(Flags)必須或上FILE_FLAG_OVERLAPPED。 使用一個(gè)輸出接口打開(kāi)句柄用這種方式打開(kāi)一個(gè)句柄會(huì)稍微麻煩一些。DriverWorks庫(kù)提供兩個(gè)助手類來(lái)使獲得對(duì)該接口的訪問(wèn)容易一些,這兩個(gè)類是CDeviceInterface, 和 CdeviceInterfaceClass。CdeviceInterfaceClass類封裝了一個(gè)設(shè)備信息集,該信息集包含了特殊類中的所有設(shè)備接口信息。應(yīng)用程序能有用CdeviceInterfaceClass類的一個(gè)實(shí)例來(lái)獲得一個(gè)或更多的CdeviceInterface類的實(shí)例。CdeviceInterface類是一個(gè)單一設(shè)備接口的抽象。它的成員函數(shù)DevicePath()返回一個(gè)路徑名的指針,該指針可以在CreateFile中使用來(lái)打開(kāi)設(shè)備。下面用一個(gè)小例子來(lái)顯示這些類最基本的使用方法:extern GUID TestGuid;HANDLE OpenByInterface(  GUID* pClassGuid,  DWORD instance,  PDWORD pError){  CDeviceInterfaceClass DevClass(pClassGuid, pError);  if (*pError != ERROR_SUCCESS)    return INVALID_HANDLE_VALUE;  CDeviceInterface DevInterface(&DevClass, instance, pError);  if (*pError != ERROR_SUCCESS)    return INVALID_HANDLE_VALUE;  cout << "The device path is "    << DevInterface.DevicePath()    << endl;   HANDLE hDev;  hDev = CreateFile(   DevInterface.DevicePath(),    GENERIC_READ | GENERIC_WRITE,    FILE_SHARE_READ | FILE_SHARE_WRITE,    NULL,    OPEN_EXISTING,    FILE_ATTRIBUTE_NORMAL,    NULL  );  if (hDev == INVALID_HANDLE_VALUE)    *pError = GetLastError();  return hDev;} 在設(shè)備中執(zhí)行I/O操作一旦應(yīng)用程序獲得一個(gè)有效的設(shè)備句柄,它就能使用Win32 APIs來(lái)產(chǎn)生到設(shè)備對(duì)象的Irps。下面的表顯示了這種對(duì)應(yīng)關(guān)系。Win32 API  DRIVER_FUNCTION_xxxIrp_MJ_xxx  KDevice subclass member function CreateFile  CREATE  Create ReadFile  READ  Read WriteFile  WRITE  Write DeviceIoControl  DEVICE_CONTROL  DeviceControl CloseHandle  CLOSECLEANUP  CloseCleanUp 需要解釋一下設(shè)備類成員的Close和CleanUp:CreateFile使內(nèi)核為設(shè)備創(chuàng)建一個(gè)新的文件對(duì)象。這使得多個(gè)句柄可以映射同一個(gè)文件對(duì)象。當(dāng)這個(gè)文件對(duì)象的最后一個(gè)用戶級(jí)句柄被撤銷后,I/O管理器調(diào)用CleanUp。當(dāng)沒(méi)有任何用戶級(jí)和核心級(jí)的對(duì)文件對(duì)象的訪問(wèn)的時(shí)候,I/O管理器調(diào)用Close。如果被打開(kāi)的設(shè)備不支持指定的功能,則調(diào)用相應(yīng)的Win32將引起錯(cuò)誤(無(wú)效功能)。以前為Windows95編寫(xiě)的VxD的應(yīng)用程序代碼中可能會(huì)在打開(kāi)設(shè)備的時(shí)候使用FILE_FLAG_DELETE_ON_CLOSE屬性。在Windows NT/2000中,建議不要使用這個(gè)屬性,因?yàn)樗鼘?dǎo)致沒(méi)有特權(quán)的用戶企圖打開(kāi)這個(gè)設(shè)備,這是不可能成功的。I/O管理器將ReadFile和WriteFile的buff參數(shù)轉(zhuǎn)換成Irp域的方法依賴于設(shè)備對(duì)象的屬性。當(dāng)設(shè)備設(shè)置DO_DIRECT_IO標(biāo)志,I/O管理器將buff鎖住在存儲(chǔ)器中,并且創(chuàng)建了一個(gè)存儲(chǔ)在Irp中的MDL域。一個(gè)設(shè)備可以通過(guò)調(diào)用KIrp::Mdl來(lái)存取MDL。當(dāng)設(shè)備設(shè)置DO_BUFFERED_IO標(biāo)志,設(shè)備對(duì)象分別通過(guò)KIrp::BufferedReadDest或 KIrp::BufferedWriteSource為讀或?qū)懖僮鳙@得buff地址。當(dāng)設(shè)備不設(shè)置DO_BUFFERED_IO標(biāo)志也不設(shè)置DO_DIRECT_IO,內(nèi)核設(shè)置Irp 的UserBuffer域來(lái)對(duì)應(yīng)ReadFile或WriteFile中的buff參數(shù)。然而,存儲(chǔ)區(qū)并沒(méi)有被鎖住而且地址只對(duì)調(diào)用進(jìn)程有效。驅(qū)動(dòng)程序可以使用KIrp::UserBuffer來(lái)存取Irp域。對(duì)于DeviceIoControl調(diào)用,buffer參數(shù)的轉(zhuǎn)換依賴于特殊的I/O控制代碼,它不在設(shè)備對(duì)象的特性中。宏CTL_CODE(在winioctl.h中定義)用來(lái)構(gòu)造控制代碼。這個(gè)宏的其中一個(gè)參數(shù)指明緩沖方法是METHOD_BUFFERED, METHOD_IN_DIRECT, METHOD_OUT_DIRECT, 或METHOD_NEITHER。下面的表顯示了這些方法和與之對(duì)應(yīng)的能獲得輸入緩沖與輸出緩沖的KIrp中的成員函數(shù):Method  Input Buffer Parameter  Output Buffer Parameter METHOD_BUFFERED  KIrp::IoctlBuffer KIrp::IoctlBuffer METHOD_IN_DIRECT  KIrp::IoctlBuffer KIrp::Mdl METHOD_OUT_DIRECT  KIrp::IoctlBuffer KIrp::Mdl METHOD_NEITHER  KIrp::IoctlType3InputBuffer KIrp::UserBuffer 如果控制代碼指明METHOD_BUFFERED,系統(tǒng)分配一個(gè)單一的緩沖來(lái)作為輸入與輸出。驅(qū)動(dòng)程序必須在向輸出緩沖放數(shù)據(jù)之前拷貝輸入數(shù)據(jù)。驅(qū)動(dòng)程序通過(guò)調(diào)用KIrp::IoctlBuffer獲得緩沖地址。在完成時(shí),I/O管理器從系統(tǒng)緩沖拷貝數(shù)據(jù)到提供給Ring 3級(jí)調(diào)用者使用的緩沖中。驅(qū)動(dòng)程序必須在結(jié)束前存儲(chǔ)拷貝到Irp的Information成員中的數(shù)據(jù)個(gè)數(shù)。如果控制代碼不指明METHOD_IN_DIRECT或METHOD_OUT_DIRECT,則DeviceIoControl的參數(shù)呈現(xiàn)不同的含義。參數(shù)InputBuffer被拷貝到一個(gè)系統(tǒng)緩沖,這個(gè)緩沖驅(qū)動(dòng)程序可以通過(guò)調(diào)用KIrp::IoctlBuffer。參數(shù)OutputBuffer被映射到KMemory對(duì)象,驅(qū)動(dòng)程序?qū)@個(gè)對(duì)象的訪問(wèn)通過(guò)調(diào)用KIrp::Mdl來(lái)實(shí)現(xiàn)。對(duì)于METHOD_OUT_DIRECT,調(diào)用者必須有對(duì)緩沖的寫(xiě)訪問(wèn)權(quán)限。注意,對(duì)METHOD_NEITHER,內(nèi)核只提供虛擬地址;它不會(huì)做映射來(lái)配置緩沖。虛擬地址只對(duì)調(diào)用進(jìn)程有效。這里是一個(gè)用METHOD_BUFFERED的例子:首先,使用宏CTL_CODE來(lái)定義一個(gè)IOCTL代碼:#define IOCTL_MYDEV_GET_FIRMWARE_REV \CTL_CODE (FILE_DEVICE_UNKNOWN,0,METHOD_BUFFERED,FILE_ANY_ACCESS)現(xiàn)在使用一個(gè)DeviceIoControl調(diào)用:BOOLEAN b;CHAR FirmwareRev[60];ULONG FirmwareRevSize;b = DeviceIoControl(hDevice, IOCTL_MYDEV_GET_VERSION_STRING,  NULL, // no input  注意,這里放的是包含有執(zhí)行操作命令的字符串指針  0, FirmwareRev,      //這里是output串指針,存放從驅(qū)動(dòng)程序中返回的字符串。sizeof(FirmwareRev),& FirmwareRevSize,  NULL // not overlapped I/O );如果輸出緩沖足夠大,設(shè)備拷貝串到里面并將拷貝的資結(jié)束設(shè)置到FirmwareRevSize中。在驅(qū)動(dòng)程序中,代碼看起來(lái)如下所示:const char* FIRMWARE_REV = "FW 16.33 v5";NTSTATUS MyDevice::DeviceControl( KIrp I ){  ULONG fwLength=0;  switch ( I.IoctlCode() )  {    case IOCTL_MYDEV_GET_FIRMWARE_REV:      fwLength = strlen(FIRMWARE_REV)+1;      if (I.IoctlOutputBufferSize() >= fwLength)      {        strcpy((PCHAR)I.IoctlBuffer(),FIRMWARE_REV);        I.Information() = fwLength;         return I.Complete(STATUS_SUCCESS);      }      else      {              }    case . . .   } }

    標(biāo)簽: 驅(qū)動(dòng)程序 應(yīng)用程序 接口

    上傳時(shí)間: 2013-10-17

    上傳用戶:gai928943

  • CharFilter_Class實(shí)例是對(duì)CharFilter實(shí)例的完善。在CharFilter實(shí)例中

    CharFilter_Class實(shí)例是對(duì)CharFilter實(shí)例的完善。在CharFilter實(shí)例中,我們定義了四個(gè)全局變量,這不符合WDM驅(qū)動(dòng)程序的要求,它限制了Irp的可重入性,我們應(yīng)該使用局部變量。 該實(shí)例定義了一個(gè)READ_COMPLETION_INFO結(jié)構(gòu),當(dāng)有DeviceControl 調(diào)用時(shí),就分配一個(gè)結(jié)構(gòu)對(duì)象,參數(shù)設(shè)置完后,就將該結(jié)構(gòu)對(duì)象地址指針?lè)旁贗.FileObject()->FsContext中。

    標(biāo)簽: CharFilter CharFilter_Class

    上傳時(shí)間: 2014-01-22

    上傳用戶:watch100

  • 用戶態(tài)使用Win32 CreateFile訪問(wèn)驅(qū)動(dòng)程序

    用戶態(tài)使用Win32 CreateFile訪問(wèn)驅(qū)動(dòng)程序,dwShareMode為0時(shí)來(lái)請(qǐng)求獨(dú)占內(nèi)核對(duì)象在設(shè)備對(duì)象DEVICE_OBJECT結(jié)構(gòu)中存儲(chǔ)設(shè)備的信息,對(duì)于與設(shè)備的每個(gè)交互,相關(guān)的DEVICE_OBJECT被傳遞給驅(qū)動(dòng)的回調(diào)例程。,但是開(kāi)發(fā)者可以擴(kuò)展設(shè)備結(jié)構(gòu),稱為設(shè)備擴(kuò)展 在PnP Irp中我們加載設(shè)備NTSTATUS Wdm1AddDevice( IN PDRIVER_OBJECT DriverObject,

    標(biāo)簽: CreateFile Win 32 用戶

    上傳時(shí)間: 2014-01-03

    上傳用戶:luopoguixiong

  • slwqw_Irp說(shuō)明

    slwqw_Irp說(shuō)明,讓你了解Irp的內(nèi)部結(jié)構(gòu),傳遞流程,以及注意事項(xiàng)。

    標(biāo)簽: slwqw_Irp

    上傳時(shí)間: 2016-01-29

    上傳用戶:上善若水

  • 本書(shū)主要介紹DriverStudio開(kāi)發(fā)工具開(kāi)發(fā)Windows 2000/XP下的WDM設(shè)備驅(qū)動(dòng)程序的原理及編程方法。本書(shū)詳細(xì)介紹了WDM基本程序框架和編程

    本書(shū)主要介紹DriverStudio開(kāi)發(fā)工具開(kāi)發(fā)Windows 2000/XP下的WDM設(shè)備驅(qū)動(dòng)程序的原理及編程方法。本書(shū)詳細(xì)介紹了WDM基本程序框架和編程,Irp的基本概念及編程,WDM和應(yīng)用程序之間的通信、即插即用、電源管理、WMI的編程技術(shù),Irp串行處理、過(guò)濾器驅(qū)動(dòng)程序,WDM訪問(wèn)硬件設(shè)備、處理硬件中斷、實(shí)現(xiàn)DMA操作的編程技術(shù),以及大量的基本編程技術(shù),還USB接口和PCI接口設(shè)備驅(qū)動(dòng)程序WDM的開(kāi)發(fā)。   

    標(biāo)簽: DriverStudio WDM Windows 2000

    上傳時(shí)間: 2016-05-20

    上傳用戶:love_stanford

  • 本方案為解決當(dāng)前企業(yè)信息化建設(shè)中"信息孤島"叢生、信息流不暢通、信息不能共享的瓶頸問(wèn)題

    本方案為解決當(dāng)前企業(yè)信息化建設(shè)中"信息孤島"叢生、信息流不暢通、信息不能共享的瓶頸問(wèn)題,強(qiáng)調(diào)首先搞好信息資源規(guī)劃(Information Resource Planning,簡(jiǎn)稱Irp),建立全企業(yè)的信息資源管理(Information Resource Management,簡(jiǎn)稱IRM)基礎(chǔ)標(biāo)準(zhǔn),通過(guò)需求分析建立集成化信息系統(tǒng)的功能模型、數(shù)據(jù)模型和系統(tǒng)體系結(jié)構(gòu)模型,然后再實(shí)施通信-計(jì)算機(jī)網(wǎng)絡(luò)工程、數(shù)據(jù)庫(kù)工程和應(yīng)用軟件工程。

    標(biāo)簽: 方案 企業(yè)信息 瓶頸

    上傳時(shí)間: 2014-01-23

    上傳用戶:風(fēng)之驕子

  • 虛擬串口設(shè)備源碼

    虛擬串口設(shè)備源碼,虛擬的串口為com7,回應(yīng)com口標(biāo)準(zhǔn)的Irp.

    標(biāo)簽: 虛擬串口 源碼 設(shè)備

    上傳時(shí)間: 2016-10-01

    上傳用戶:541657925

亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
狠狠综合久久av一区二区小说| 亚洲日本视频| 亚洲欧美日本在线| 91久久午夜| 一区在线观看| 韩国一区电影| 国产日韩欧美一二三区| 国产精品va在线| 欧美日韩国产91| 欧美电影免费观看高清完整版| 久久成人免费网| 欧美一级久久久| 亚洲欧美日韩一区二区三区在线| 99日韩精品| 一区二区三区日韩精品| 亚洲激情一区二区| 亚洲精美视频| 亚洲精品一区久久久久久| 亚洲国产精品尤物yw在线观看| 精品福利电影| 伊人影院久久| 亚洲国产精品电影在线观看| 久久婷婷蜜乳一本欲蜜臀| 狂野欧美性猛交xxxx巴西| 国产精品久久久久久久午夜片| 亚洲激情在线| 亚洲激情二区| 一区二区免费在线视频| 一区二区三区精品在线 | 亚洲欧洲一区二区三区| 亚洲国产精品久久久| 亚洲精品乱码久久久久| 亚洲视频精品在线| 性欧美xxxx视频在线观看| 欧美一区二区在线播放| 噜噜噜91成人网| 欧美日韩国产美女| 国产精品日韩在线播放| 在线观看欧美成人| 99精品欧美一区| 欧美一乱一性一交一视频| 免费看亚洲片| 欧美亚州一区二区三区 | 一区二区在线观看视频| 亚洲黄网站黄| 午夜亚洲视频| 欧美成人黑人xx视频免费观看 | 国产精品成人在线观看| 国产视频精品免费播放| 91久久精品美女| 欧美在线视频在线播放完整版免费观看| 久久视频这里只有精品| 欧美日韩不卡在线| 国产一区日韩欧美| 日韩一本二本av| 久久精品人人做人人爽电影蜜月 | 久久久久免费视频| 欧美另类69精品久久久久9999| 国产精品你懂得| 亚洲精品小视频在线观看| 新狼窝色av性久久久久久| 欧美成人精品在线观看| 国产欧美日韩中文字幕在线| 91久久精品美女高潮| 欧美一级欧美一级在线播放| 欧美日韩高清免费| 精品不卡在线| 欧美在线黄色| 国产精品卡一卡二| 99国产精品99久久久久久| 可以免费看不卡的av网站| 国产精品久久久久久福利一牛影视 | 欧美揉bbbbb揉bbbbb| 亚洲欧美国产制服动漫| 亚洲欧美精品suv| 蜜臀va亚洲va欧美va天堂| 国产美女精品人人做人人爽| 亚洲激情成人| 久久免费视频在线观看| 国产精品专区一| 这里只有精品电影| 欧美极品aⅴ影院| 在线观看一区| 久久久久国产精品一区二区| 国产精品毛片一区二区三区| 亚洲在线电影| 国产精品豆花视频| 一区二区三区产品免费精品久久75| 免费成人av资源网| 韩曰欧美视频免费观看| 欧美一区免费视频| 麻豆国产精品777777在线| 国产一区二区三区四区三区四| 亚洲一区二区三区在线观看视频 | 韩国精品在线观看| 欧美在线视频观看| 国产精品视频yy9299一区| 中国亚洲黄色| 国产精品乱人伦一区二区| 亚洲午夜91| 国产精品国产三级国产普通话三级| 亚洲性视频h| 国产精品视频一二三| 亚洲欧美在线一区| 国产亚洲精品7777| 久久综合中文字幕| 亚洲美女在线一区| 国产精品www| 久久av二区| 在线精品视频一区二区三四| 你懂的网址国产 欧美| 日韩亚洲成人av在线| 欧美亚洲动漫精品| 久久久精品国产免费观看同学| 伊人久久久大香线蕉综合直播 | 在线观看不卡| 欧美精品国产精品| 亚洲一区二区不卡免费| 国产一区深夜福利| 欧美国产一区在线| 亚洲午夜影视影院在线观看| 国产久一道中文一区| 久久亚洲国产精品一区二区| 亚洲福利视频三区| 国产精品观看| 久久久欧美精品| 亚洲精品视频免费观看| 国产精品永久入口久久久| 久久亚洲春色中文字幕| 亚洲精品影院| 国产午夜精品全部视频在线播放 | 亚洲福利专区| 亚洲欧美怡红院| 亚洲国产日本| 国产精品护士白丝一区av| 久久久免费av| 亚洲一区国产| 亚洲大片一区二区三区| 国产精品成人va在线观看| 久久久91精品| 一片黄亚洲嫩模| 狠久久av成人天堂| 欧美日韩免费在线| 久久综合激情| 欧美怡红院视频| 亚洲国产欧美久久| 国产女优一区| 欧美三级免费| 久久综合狠狠综合久久综合88 | 羞羞答答国产精品www一本| 亚洲国产成人高清精品| 国产伦精品一区二区| 欧美日韩播放| 欧美成人一区二区在线 | 日韩午夜在线电影| 激情五月综合色婷婷一区二区| 亚洲韩国精品一区| 亚洲国产精品一区二区三区| 久久久国产91| 亚洲综合另类| 亚洲视频中文字幕| 91久久久久久| 国语自产在线不卡| 国产麻豆精品theporn| 欧美精品久久一区| 久久久午夜电影| 欧美伊人久久| 亚洲欧美欧美一区二区三区| 亚洲麻豆av| 亚洲激情校园春色| 亚洲高清成人| 亚洲国产精品久久久久秋霞影院| 久久久噜久噜久久综合| 欧美日韩精品三区| 一本色道久久| 最新国产成人在线观看| 黄色亚洲网站| 国产亚洲毛片在线| 国产九色精品成人porny| 国产精品v亚洲精品v日韩精品| 欧美精品色综合| 欧美日韩1区2区3区| 欧美精品色综合| 欧美—级a级欧美特级ar全黄| 蜜桃视频一区| 欧美激情精品久久久| 欧美成人精品高清在线播放| 欧美91视频| 欧美国产精品劲爆| 欧美日韩调教| 国产精品久久久久久久浪潮网站| 欧美午夜精品一区| 国产精品综合| 国产一区在线播放| 狠狠色丁香婷综合久久| 亚洲福利av| 一区二区三区 在线观看视| 亚洲资源av| 欧美在线观看视频一区二区| 欧美一区二区视频在线|