• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            aurain
            技術(shù)文摘
            posts - 137,  comments - 268,  trackbacks - 0
            windows驅(qū)動(dòng)
            介紹Windows驅(qū)動(dòng)及其開發(fā)方面的知識
            IRP中I/O堆棧Parameters.Create參數(shù)      摘要: IRP中I/O堆棧Parameters.Create參數(shù)
            在IO_STACK_LOCATION結(jié)構(gòu)體中,Parameters這個(gè)union其中有個(gè)Create結(jié)構(gòu)體,對應(yīng)IRP_MJ_CREATE,此IRP的分發(fā)函數(shù)處理應(yīng)用層的CreateFile函數(shù),
            CreateFile函數(shù)進(jìn)入內(nèi)核后是調(diào)用ZwCreateFile
            在ZwCreateFile中設(shè)置的一些參數(shù),在Parameters.Create中可以獲取到。  閱讀全文
            posted @ 2011-09-01 15:27 水 閱讀(3688) | 評論 (0)  編輯
            UNICODE_STRING使用小提示      摘要: 使用UNICODE_STRING 時(shí),一定要手動(dòng)設(shè)置UNICODE_STRING 的Length和MaximumLength 成員,不要想當(dāng)然的認(rèn)為設(shè)置了Buffer后,Length和MaximumLength 成員就會(huì)根據(jù)Buffer被自動(dòng)設(shè)置。由其是當(dāng)自己寫的函數(shù)用UNICODE_STRING作為參數(shù)返回時(shí),一定要設(shè)置Length和 MaximumLength 成員,不然很可能得到非預(yù)期結(jié)果。  閱讀全文
            posted @ 2011-08-22 10:16 水 閱讀(682) | 評論 (0)  編輯
            如何編譯TrueCrypt 7.0a源碼      摘要: 如何編譯TrueCrypt 7.0a源碼。TrueCrypt是一款開源的虛擬加密磁盤工具,目前最新版本是7.0a,本文以該版本源代碼為基礎(chǔ),介紹了如何在VC2008下進(jìn)行編譯。  閱讀全文
            posted @ 2010-11-01 19:12 水 閱讀(6374) | 評論 (29)  編輯
            通過向設(shè)備對象\Device\Tcp發(fā)送IOCTL Code枚舉通信端口      摘要: 在應(yīng)用層,枚舉進(jìn)程及其通信端口一般可以用iphlpapi.dll中提供的函數(shù)來獲取。如獲取Tcp連接,則調(diào)用GetTcpTable或者AllocateAndGetTcpTableFromStack來查詢。這些API都是通過調(diào)用NtDeviceIoControlFile這個(gè)NativeAPI來進(jìn)入內(nèi)核查詢信息的,如果在內(nèi)核用SSDT Hook來掛鉤此函數(shù),從而隱藏特定的IP、端口信息的話,那么在應(yīng)用層,常規(guī)的查詢方法就查不到隱藏的端口了。
            本文通過直接向設(shè)備對象\Device\Tcp發(fā)送IOCTL Code=IOCTL_TCP_QUERY_INFORMATION_EX的命令,直接獲取進(jìn)程,端口信息。本文也同時(shí)實(shí)現(xiàn)了UDP端口的查詢。
            具體請參考下面的代碼,使用WinDDK 6001.18001編譯。
              閱讀全文
            posted @ 2010-07-09 18:28 水 閱讀(6000) | 評論 (3)  編輯
            用ZwQueryVirtualMemory枚舉進(jìn)程模塊      摘要: 枚舉進(jìn)程模塊通常可以使用諸如:CreateToolhelp32Snapshot,Module32First,Module32Next 等"Tool Help Functions"接口來實(shí)現(xiàn), 并且這也是最通用的方法(從Win95就開始支持了), 但是今天我們要介紹的是ntdll.dll導(dǎo)出的未文檔化接口ZwQueryVirtualMemory,。相比前面所介紹的方法,該方法可以檢測出隱藏的模塊(類似IceSword)。  閱讀全文
            posted @ 2010-07-05 16:32 水 閱讀(9575) | 評論 (3)  編輯
            Windows內(nèi)核驅(qū)動(dòng)中操作文件      摘要: 在Windows執(zhí)行體中,通過文件對象來代表文件,該文件對象是一種由對象管理器管理的執(zhí)行體對象。例如:目錄也是由文件對象代表的。

            內(nèi)核組件通過對象名來引用文件,即在文件的全路徑前面加\DosDevices。(在Windows 2000及后續(xù)操作系統(tǒng)中,\??等同于\DosDevices)。例如,文件C:\WINDOWS\example.txt的對象名為\DosDevices\C:\WINDOWS\example.txt。你需要用對象名來打開文件以獲取句柄。

              閱讀全文
            posted @ 2009-12-31 15:27 水 閱讀(10247) | 評論 (1)  編輯
            詳解IRP之?dāng)?shù)據(jù)傳輸?shù)臋C(jī)制      摘要: Windows 操作系統(tǒng)家族支持三種數(shù)據(jù)傳輸機(jī)制  閱讀全文
            posted @ 2009-09-27 13:50 水 閱讀(1562) | 評論 (0)  編輯
            中斷請求級(轉(zhuǎn))      摘要: Windows NT為每個(gè)硬件中斷和少數(shù)軟件事件賦予了一個(gè)優(yōu)先級,即中斷請求級(interrupt request level - IRQL)。IRQL為單CPU上的活動(dòng)提供了同步方法,它基于下面規(guī)則:

            一旦某CPU執(zhí)行在高于PASSIVE_LEVEL的IRQL上時(shí),該CPU上的活動(dòng)僅能被擁有更高IRQL的活動(dòng)搶先。

              閱讀全文
            posted @ 2009-08-13 11:34 水 閱讀(1140) | 評論 (0)  編輯
            【轉(zhuǎn)】驅(qū)動(dòng)和應(yīng)用層的三種通信方式      摘要: 驅(qū)動(dòng)程序和客戶應(yīng)用程序經(jīng)常需要進(jìn)行數(shù)據(jù)交換,但我們知道驅(qū)動(dòng)程序和客戶應(yīng)用程序可能不在同一個(gè)地址空間,因此操作系統(tǒng)必須解決兩者之間的數(shù)據(jù)交換。
            驅(qū)動(dòng)層和應(yīng)用層通信,主要是靠DeviceIoControl函數(shù)  閱讀全文
            posted @ 2009-03-30 16:31 水 閱讀(4382) | 評論 (0)  編輯
            NDIS網(wǎng)絡(luò)驅(qū)動(dòng)程序編程要點(diǎn)      摘要: 編寫Windows 2000的任何網(wǎng)絡(luò)驅(qū)動(dòng)程序時(shí)通常都需要考慮的幾點(diǎn)問題
            1 可移植性
            2 多處理器支持
            3 IRQLs
            4 同步和指示
            5 包結(jié)構(gòu)
            6 使用共享內(nèi)存
            7 異步I/O和完成函數(shù)
              閱讀全文
            posted @ 2009-02-22 22:43 水 閱讀(4024) | 評論 (0)  編輯
            驅(qū)動(dòng)編程中使用結(jié)構(gòu)化異常處理(SEH)      摘要: 摘自《Windows驅(qū)動(dòng)開發(fā)技術(shù)詳解》
            結(jié)構(gòu)化異常處理(SHE, Structured Exception Handling)是微軟編譯器提供的獨(dú)特處理機(jī)制,這種處理方式能在一定程度上在出現(xiàn)錯(cuò)誤的情況下,避免程序崩潰。先說明兩個(gè)概念。  閱讀全文
            posted @ 2009-02-16 10:36 水 閱讀(3317) | 評論 (0)  編輯
            使用Prefast測試驅(qū)動(dòng)問題      摘要: Prefast是MS開發(fā)的一個(gè)測試驅(qū)動(dòng)代碼的小工具,
            它的作用是盡早找出代碼中常的BUG.
            在編譯時(shí)參與進(jìn)來查找BUG.
              閱讀全文
            posted @ 2009-01-21 11:52 水 閱讀(1633) | 評論 (0)  編輯
            構(gòu)建Windows驅(qū)動(dòng)開發(fā)環(huán)境      摘要: 詳細(xì)介紹了三種構(gòu)造驅(qū)動(dòng)開發(fā)環(huán)境的方法  閱讀全文
            posted @ 2009-01-20 15:07 水 閱讀(9315) | 評論 (2)  編輯
            驅(qū)動(dòng)調(diào)試的一般性技巧      摘要: 一般性調(diào)試技巧包括打印調(diào)試信息、查看dump文件等。這些方法在調(diào)試驅(qū)動(dòng)中比較常見,使用也比較簡單。  閱讀全文
            posted @ 2009-01-15 15:31 水 閱讀(3681) | 評論 (2)  編輯
            驅(qū)動(dòng)調(diào)試的幾個(gè)細(xì)節(jié)問題IRQL_NOT_LESS_OR_EQUAL      摘要: 今天在調(diào)試驅(qū)動(dòng)的時(shí)候,發(fā)現(xiàn)一個(gè)開始覺得很奇怪的問題,就是調(diào)用RtlStringCbPrintfW函數(shù)來格式化WCHAR字符串時(shí),一定藍(lán)屏,提示
            IRQL_NOT_LESS_OR_EQUAL,并且比較郁悶的是,在虛擬機(jī)上有時(shí)不會(huì)出現(xiàn),有時(shí)會(huì)出現(xiàn),但在真正的主機(jī)上一定會(huì)出現(xiàn)(Windows xp sp2)。
            一般出現(xiàn)IRQL_NOT_LESS_OR_EQUAL,是IRQL在級別高的地方調(diào)用了分頁內(nèi)存,所以,我就想到把當(dāng)前的IRQL打出來看看,發(fā)現(xiàn)在進(jìn)入函數(shù)
            的時(shí)候,當(dāng)前的IRQL是0(PASSIVE_LEVEL),而在執(zhí)行這段代碼的地方,IRQL是2(DISPATCH_LEVEL),是什么原因使得IRQL發(fā)生了變化呢?
            仔細(xì)查看代碼后,發(fā)現(xiàn)了原因,因?yàn)樵趫?zhí)行這段代碼之前,通過NdisAcquireSpinLock獲取旋轉(zhuǎn)鎖,而在旋轉(zhuǎn)鎖釋放之前,其中的代碼是跑在
            IRQL=2的,另外,RtlStringCbPrintfW需要處理分頁內(nèi)存(PagedPool),但在IRQL=2的情況下,是只能處理非分頁內(nèi)存的(NonpagedPool),所以,
              閱讀全文
            posted @ 2009-01-14 17:05 水 閱讀(5031) | 評論 (0)  編輯

            Full windows驅(qū)動(dòng) Archive


            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(17)

            隨筆分類(138)

            隨筆檔案(137)

            網(wǎng)絡(luò)開發(fā)

            最新隨筆

            搜索

            •  

            積分與排名

            • 積分 - 497453
            • 排名 - 36

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            国产一区二区精品久久| 66精品综合久久久久久久| 日本久久久精品中文字幕| 青草国产精品久久久久久| 久久久久久久久久久| 亚洲国产精品狼友中文久久久| 久久99精品免费一区二区| 久久夜色tv网站| 88久久精品无码一区二区毛片 | 亚洲中文字幕久久精品无码喷水 | 久久伊人影视| 久久天天躁狠狠躁夜夜2020| 久久久久99精品成人片| 久久综合视频网站| 国内精品九九久久精品| 久久久久亚洲av无码专区喷水| 久久久久久久人妻无码中文字幕爆 | 久久人妻AV中文字幕| 久久精品成人欧美大片| 久久天天躁狠狠躁夜夜网站| 久久超碰97人人做人人爱| 青青草原1769久久免费播放| 久久亚洲国产成人精品无码区| 精品久久久一二三区| 久久久久人妻一区二区三区vr| 国产精品一久久香蕉国产线看| 成人久久精品一区二区三区| 久久精品国产一区二区| 久久久久亚洲AV成人网人人网站 | 亚洲综合日韩久久成人AV| 青青国产成人久久91网| 一本综合久久国产二区| 69久久精品无码一区二区| 久久久久综合国产欧美一区二区| 亚洲午夜久久久久久久久久| 色偷偷888欧美精品久久久| 久久综合伊人77777| 精品久久久久久无码中文字幕一区| 精品久久久久中文字| 九九精品99久久久香蕉| 日韩精品久久久久久久电影|