原创 疑問:數據包Length增大的原因

現象: 自己定義一個僅含有Ethernet Header的數據包,其大小爲80.使用有線和無線網卡發送,監聽到的結果顯示大小分別爲80 和 130,爲何? 寫道 284 7.437500 [002586 EB7B0C] [USI 5

原创 縱橫捭闔C++之從異步談起

一般來說,簡單的異步(Asynchronous)調用是這樣一種調用方式:發起者請求一個異步調用,通知執行 者,然後處理其他工作,在某一個同步點等待執行者的完成;執行者執行調用的實際操作,完成後通知發起者。可以看出,在異步調用中有兩種角色

原创 使用DeviceIoControl通信

   在很多時候,某些用戶需要與底層驅動有一個交互式的操作,所以需要尋找一個架構能夠做到應用程程序和驅動程序進行有效的溝通,而Microsoft Windows 家族操作系統通過發送 I/O 請求數據包 (IRP) 與驅動程序通信。所以今

原创 內核中線程的創建與銷燬

本文轉載自:http://hi.baidu.com/sysinternal/blog/item/f2b877084535c532e92488cc.html 用PsCreateSystemThread來在內核中創建線程。讀書筆記而已,高手

原创 關於DeviceIoControl實現異步的筆記【1】

一直所做的都是同步實現的。當然很多情況這並不是很好的解決問題。現在手上的問題是:用戶層通知底層驅動(Filter Driver)做某件事,然後返回該事件執行的結果。如果該事件是一件簡單的事情,這裏是指極短時間內可以完成的,那麼在允許範圍內

原创 Windows NT 驅動程序開發人員提示 -- 應注意避免的事項

原討論鏈接: http://community.csdn.net/expert/topicview1.asp?id=4738353 所屬論壇: 硬件/系統 審覈組: VC/MFC 提問者: codewarrior 解決者: codewa

原创 關於DeviceIoControl實現異步的筆記【2】

前面我們談到了關於異步I/O的實現:關於DeviceIoControl實 現異步的筆記【1】 。可是實現起來,你會發現你的程序在DevieIoControl已經被掛起,而且返回的結果是非0。這就與真正的異步調用返回結果有出入,理論上應該返

原创 今天你微博了嗎

    近日來,誕生了各種微博,顯示網易微博 ,騰訊微博 內測,剛纔有看到了鳳凰微博 的內測,(4月7號搜狐微博 ),看來全國各地掀起微博熱浪,各家都在爭先恐後想拿下那些還在徘徊的網民。    個人倒是很少玩微博,平時大部分時間都是在

原创 值得收藏的23個搜索下載免費PDF電子書的網站

我們常常需要尋找一些電子書PDF 文件,特別是一些國外的英文版電子書,因爲很難在國內買得到,所以一些好的網站是非常值得收藏的。以下這22個都是免費的PDF 網站,需要尋找國外資料的朋友就多去看看吧,說不定有驚喜呢…… 1. PDF-Sea

原创 WDK+Visual Studio 2008配置編譯驅動

Introduction  As it is known, Microsoft officially doesn't support integration of DDK with Visual Studio (any version)

原创 在驅動中使用鏈表

文章作者:grayfox 作者主頁:http://nokyo.blogbus.com 原始出處:http://nokyo.blogbus.com/logs/33271026.html       在驅動程序的開發中經常需要用到鏈表

原创 佳能EOS 450D固件升級過程

平常升級電腦軟件習慣了,今天晚上閒來無事,偶然間想看看我的450D有沒有最新的固件可以升級。於是上網搜索一番,居然還真有。我檢查了一下當前的相機 中的固件版本是1.0.4,而佳能最新發布的450D固件版本是1.0.9,網上說它主要修正的內

原创 開通騰訊微博

在卡卡西的新浪微博期待了N久,就連做夢也在想這個事情,我想我是瘋了。 多虧卡卡西慷慨,期間爲新浪的小氣感到憤慨。玩不起就不要玩。 我的微博,以圖爲證:      所以多謝卡卡西http://url.cn/3i9ufv 好了,我也不知道

原创 無法安裝 Windows Internet Explorer

安裝IE8發現安裝過程出錯:  在網上找到一個解決的方法,可以完美的安裝IE8. 首先打開一個文本編輯器(摘自:http://blog.sina.com.cn/s/blog_4c59c08a0100cg29.html ): 寫道 @e

原创 疑問:關於內存釋放

今天碰到一個比較棘手的內存處理問題。 首先來看一個數據結構: typedef struct _IRP_AND_FILTER { PIRP pIrp; PMS_FILTER pFilter;