windows-kernel

    0熱度

    2回答

    首先嚐試在Windows驅動程序開發。 如何將WCHAR數組(來自用戶空間)轉換爲UNICODE_STRING(在內核模式下),假定WCHAR數組是而不是以空終止? 我應該驗證它是否以null結束,如果它沒有分配一個新的緩衝區(+2爲null),然後使用RtlAnsiXXX函數?什麼是正確的方法? 謝謝!

    13熱度

    2回答

    我是一位主要在C#中工作的應用程序開發人員。我有一些C/C++的知識。我非常着迷並且對windows Kernel Development感興趣。我勾勒出一個佈局來學習這一點。 1. Understand Windows internals(By books) 2. Try Simple Modules and keep expanding. 要做到這一點,我需要一些幫助: 1. The b

    0熱度

    2回答

    我使用從MSDN爲基數刪除微過濾器例如: http://code.msdn.microsoft.com/windowshardware/Delete-File-System-b904651d 我需要做到的是: 獲取的句柄刪除候選人DfPreCleanupCallback。 在DfPostCleanupCallback中 - 確定文件應該被刪除,如果它不是獲取的句柄。 同樣在DfPostCleanu

    1熱度

    1回答

    我在寫一個Windows內核驅動程序,我試圖實現以下內容。 假設驅動程序已經通過DeviceIoControl函數用戶模式調用了特定的IOCTL代碼。在這種情況下駕駛員如何卸載?換句話說,如何實現與運行net stop命令一樣的行爲? 更確切地說,實施DispatchDeviceControl callback NTSTATUS IoctlDeviceControl(PDEVICE_OBJECT

    2熱度

    2回答

    我試圖建立內核調試與VS 2013年當我轉到驅動程序/添加,添加一個新的目標機器,它連接到遠程計算機,並貫穿了很多設置,但總是有2個命令失敗。 我擡頭即在日誌中失敗的命令,我貼成一個批處理文件並運行它在目標機器上。我運行得很好。但是當我嘗試從VS重新運行添加計算機時,我遇到了同樣的故障。 RemoteExecute: Binary: $KitRoot$\Testing\Runtimes\TAEF\

    0熱度

    2回答

    我想問一下PsCreateSystemThread和CreateThread之間有什麼區別。從MSDN描述看來,PsCreateSystemThread是針對內核線程的。 CreateThread看起來像一個內核線程,但共享一個進程相同的虛擬空間內存。這意味着我可以有許多線程一起運行,但我不能訪問其他進程內存空間。

    1熱度

    4回答

    我目前正在學習windows,我發現windows使用兩段內存,它們在系統空間地址空間中命名了分頁池和非分頁池。所以只有窗口的關鍵部分保存在非分頁池(不使用請求分頁)中。雖然我被教導,在Linux中所有的系統空間地址空間不使用請求分頁的概念?如果所有這些信息都是正確的,那麼我應該得出結論:Windows需要的內存少於Linux的運行量?

    0熱度

    1回答

    我讀到有關驅動程序同步的MSDN文檔和我遇到的是是這樣 聲明如果 •驅動程序在非任意線程上下文中執行駕駛者可以等待。即, 您可以識別將進入等待狀態的線程。實際上,在非任意線程上下文中執行的唯一驅動程序例程是任何驅動程序的DriverEntry,AddDevice,Reinitialize和Unload例程,以及最高級別驅動程序的調度例程。所有 這些例程被系統直接調用 現在我的問題是爲什麼在任意線程

    4熱度

    3回答

    我正在學習windows設備驅動程序,我發現很難區分PDO和FDO。讓我告訴你,如果我錯了,我腦中的流量會糾正我! 當系統啓動時加載將創建FDO的根總線驅動程序。現在它會枚舉它的子設備,並且我會推出一些公交車司機的熱插拔方法,當找到一個新的孩子並且該方法會通知PNP管理員。 PNP管理員會調用根總線驅動程序的AddDevice()例程,並且會爲PCI等新的總線創建PDO,請詳細解釋整個流程,這只是

    0熱度

    1回答

    我無法弄清楚爲什麼我的本地符號沒有加載用WDK和VS2013編譯的內核驅動程序。 我構建驅動程序並將myDriver.pdb放置在C:\ Symbols \ local中,並將myDriver.sys複製到我的虛擬機。使用VirtualKD,我啓動調試器,安裝驅動程序,並查看我加載的模塊或嘗試在myDriver!DriverEntry上設置斷點。當我嘗試斷點我得到: BP expression m