原创 驅動開發網上關於重啓的網摘(3)

q:爲什麼在驅動中一運行READ_REGISTER_ULONG操作機器就重啓 想對一塊虛擬內存進行讀取,寫了一個小驅動,但是一調用WRITE_REGISTER_ULONG讀取指定的內核內存空間,機器就重啓,急死了,在這個地方耽擱了一個星

原创 驅動程序層次結構、PIRP結構、IO_STACK_LOCATION結構

一、驅動程序層次結構   在《Windows驅動開發詳解》的第四章簡單介紹了一下驅動程序的層次結構,但介紹得不清不楚,反覆看了幾遍,仍然是一分清楚,九分糊塗。爲此,花了幾個小時來查閱相關資料,最後分別參考《Windows驅動開發詳解》和《

原创 中國源碼網站大全

網址                            ALEXA排名www.chinaz.com          141www.cncode.com         20,083www.downcode.com     8367w

原创 基於Windriver的驅動開發——驅動基礎

基於Windriver的驅動開發——驅動基礎    在一般的操作系統(linux,Windows),不能夠從用戶空間直接訪問硬件,只能從系統內核訪問硬件。系統內核中訪問硬件的部分叫設備驅動。   設備驅動提供操作系統和硬件設備的接口,負責

原创 冰島另一處火山或將噴發

http://news.qq.com/a/20100528/001340.htm                                            冰島埃亞菲亞德拉火山   中新網5月28日電 據英國媒體報道,英國倫

原创 物理地址和虛擬地址(二)

Windows 2000 使用基於分頁機制的虛擬內存。每個進程有4GB的虛擬地址空間。基於分頁機制,這4GB地址空間的一些部分被映射了物理內存,一些部分映射硬盤上的交換文件,一些部分什麼也沒有映射。程序中使用的都是4GB地址空間中的虛擬地

原创 c/c++經典面試試題及標準答案

經過幾次面試,發現筆試題基本上都是那幾道,沒有什麼創新或者改變,總結出來給大家參考參考.   一、請填寫BOOL , float, 指針變量與“零值”比較的 if 語句。(10分)請寫出 BOOL flag 與“零值”比較的 if 語句。

原创 用VC6.0編譯驅動程序的工程設置方法

用VC6.0編譯驅動程序的工程設置方法   VC6.0編譯驅動程序的工程設置 一、編譯NT式驅動 1>     建立一個win32應用程序工程。 2>     修改工程屬性。Project --Setting-C/C++中的Project

原创 完成I/O請求

完成I/O請求 每個IRP都渴望被完成。在標準模型中,你至少有兩種完成IRP的環境。DpcForIsr通常用於完成導致最近中斷的IRP。派遣函數也可以在下面這兩種情況下完成IRP: 如果請求是錯誤的(可以以容易的檢測方式查明,例如要求打

原创 驅動程序內存分配

何謂可分頁和非分頁內存        默認情況下,內核加載器會加載所有的代碼部分和全局數據到非分頁內存中。而且,加載器是一次加載整個驅動的可執行文件,包括相關的DLL。加載後,內核加載器關閉驅動程序文件,甚至你可以刪除當前正在執行的驅動

原创 MmAllocateContiguousMemory&&MmGetPhysicalAddress

 /////////////////////// 申請全局物理連續內存,用於D1預覽及原始視頻/////////////////////  RtlZeroMemory(&g_DriverInfo,sizeof(g_DriverInfo))

原创 國外知名的源代碼網站

http://www.hotscripts.com-- ASP, C C++, CFML, flash, Java, Javascript, PHP, Perl, Python, Remote Hosts and XML scripts

原创 運動目標檢測跟蹤各過程算法綜述

圖像預處理數字圖像中的幾種典型噪聲有:高斯噪聲來源於電子電路噪聲和低照明度或高溫帶來的傳感器噪聲;椒鹽噪聲類似於隨機分佈在圖像上的胡椒和鹽粉微粒,主要由圖像切割引起或變換域引起的誤差;加性噪聲是圖像在傳輸中引進的信道噪聲。一般來說,引入

原创 物理地址和虛擬地址的概念

虛擬地址和物理地址的概念     CPU通過地址來訪問內存中的單元,地址有虛擬地址和物理地址之分,如果CPU沒有MMU(Memory Management Unit,內存管理單元),或者有MMU但沒有啓用,CPU核在取指令或訪問內存時發出

原创 DRIVER_OBJECT & DEVICE_OBJECT

驅動對象結構 DRIVER_OBJECT ,定義如下:(左側爲相對於結構體起始地址的偏移量)  struct _DRIVER_OBJECT (sizeof=168)  +00 int16 Type  +02 int16 Size  +04