freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計算機軟件及應用]麥洛克菲內(nèi)核驅動開發(fā)第七課(編輯修改稿)

2025-02-15 17:40 本頁面
 

【文章內(nèi)容簡介】 回狀態(tài) status 給系統(tǒng)調用 ,如果注冊了 post 操作的話 ,post 操作將不會執(zhí)行 Callback 實現(xiàn)的功能 ? Modify 1. 修改 REG_xxx_KEY_INFORMATION 結構里面的然后 Callback 函數(shù)返回STATUS_SUCCESS 2. 修改REG_POST_OPERATION_INFORMATION 結構里的 ReturnStatus,然后 Callback 函數(shù)返回 STATUS_CALLBACK_BYPASS Callback 設計核心思想 ? Window 操作系統(tǒng)的設計核心 消息分發(fā):應用層 分層:從應用到內(nèi)核 回調:也相當于分層,其實回調應該是設計的一種接口形式 Callback 設計核心分層思想 Callback 設計核心思想 ntOpenKey() { ........ ........ if(isCallback()) return regcalllistpreOpen()。 ........ ........ if(isCallback()) return regcalllistpostOpen()。 } 冊的函數(shù)放到全局鏈表里 ,先判斷是否注冊,如果注冊,調用函數(shù) Callback 原理 ? NTSTATUS CmRegisterCallback(__in PEX_CALLBACK_FUNCTION Function, __in_opt PVOID Context,__out PLARGE_INTEGER Cookie) { PEX_CALLBACK_ROUTINE_BLOCK RoutineBlock。 ULONG i。 PCM_CALLBACK_CONTEXT_BLOCK CmCallbackContext。 PAGED_CODE()。 CmCallbackContext = (PCM_CALLBACK_CONTEXT_BLOCK)ExAllocatePoolWithTag (PagedPool, sizeof (CM_CALLBACK_CONTEXT_BLOCK), 39。bcMC39。)。 if( CmCallbackContext == NULL ) { return STATUS_INSUFFICIENT_RESOURCES。 } RoutineBlock = ExAllocateCallBack (Function,CmCallbackContext)。 if( RoutineBlock == NULL ) { ExFreePool(CmCallbackContext)。 return STATUS_INSUFFICIENT_RESOURCES。 } // init the context KeQuerySystemTime(amp。(CmCallbackContextCookie))。 *Cookie = CmCallbackContextCookie。 InitializeListHead(amp。(CmCallbackContextThreadListHead))。 ExInitializePushLock(amp。(CmCallbackContextThreadListLock))。 CmCallbackContextCallerContext = Context。 // find a spot where we could add this callback for( i=0。iCM_MAX_CALLBACKS。i++) { if( ExCompareExchangeCallBack (amp。CmpCallBackVector[i],RoutineBlock,NULL) ) { InterlockedExchangeAdd ((PLONG) amp。CmpCallBackCount, 1)。 return STATUS_SUCCESS。 } } // no more callback ExFreePool(CmCallbackContext)。 ExFreeCallBack(RoutineBlock)。
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1