W驱开技详.第12章_ZC

PS:"第12章 分层驱动程序"

1、代码:"...\01_Windows驱动开发技术详解-源代码\chapter12\Test1" 里面的 DriverDevA 和 DriverDevB,编译出来的 驱动为 

  ...\Windows驱动开发技术详解-源代码\chapter12\Test1\DriverDevA\MyDriver_Check\HelloDDKA.sys

  ...\Windows驱动开发技术详解-源代码\chapter12\Test1\DriverDevB\MyDriver_Check\HelloDDKB.sys

2、

3、PDF.P351:“12.1.6 转发 IRP示例” 中,将 加载 DriverA 再加载 DriverB 后,打印出来的信息:

  

  3.1、运行 ConsoleTest.exe 后的打印数据为:

  

  3.2、打印信息,保存成Log文件:

   ZC:1~5、9~13 应该是 OS在操作驱动程序(此时 驱动应该还未安装) (叫什么名字来着:驱动加载器?PNP管理器?)

00000001	0.00000000	Enter HelloWDMPnp	
00000002	0.00000307	PNP Request (IRP_MN_QUERY_DEVICE_RELATIONS)	
00000003	0.00000531	Enter DefaultPnpHandler	
00000004	0.00000670	Leave DefaultPnpHandler	
00000005	0.00001369	Leave HelloWDMPnp	
00000006	49.44680023	DriverA:Enter A DriverEntry	
00000007	49.44693375	DriverA:Leave A DriverEntry	
00000008	79.08039093	watchdog!WdUpdateRecoveryState: Recovery enabled.	
00000009	109.45754242	Enter HelloWDMPnp	
00000010	109.45754242	PNP Request (IRP_MN_QUERY_DEVICE_RELATIONS)	
00000011	109.45754242	Enter DefaultPnpHandler	
00000012	109.45754242	Leave DefaultPnpHandler	
00000013	109.45755005	Leave HelloWDMPnp	
00000014	166.77734375	DriverB:Enter B DriverEntry	
00000015	166.77734375	DriverA:Enter A HelloDDKCreate	
00000016	166.77735901	DriverA:Leave A HelloDDKCreate	
00000017	166.77740479	DriverB:Enter B HelloDDKClose	
00000018	166.77740479	DriverA:Enter A HelloDDKClose	
00000019	166.77740479	DriverA:Leave A HelloDDKClose	
00000020	166.77740479	DriverB:Leave B HelloDDKClose	
00000021	166.77845764	DriverB:B attached A successfully!	
00000022	166.77845764	DriverB:Leave B DriverEntry	
00000023	678.71575928	DriverB:Enter B HelloDDKCreate	
00000024	678.71582031	DriverA:Enter A HelloDDKCreate	
00000025	678.71582031	DriverA:Leave A HelloDDKCreate	
00000026	678.71582031	DriverB:Leave B HelloDDKCreate	
00000027	678.71582031	DriverB:Enter B HelloDDKCreate	
00000028	678.71582031	DriverA:Enter A HelloDDKRead	
00000029	678.71582031	DriverA:Leave A HelloDDKRead	
00000030	678.71582031	DriverB:Leave B HelloDDKCreate	
00000031	681.70587158	DriverA:complete the Driver A IRP_MJ_READ irp!	
00000032	681.70593262	DriverB:Enter B HelloDDKClose	
00000033	681.70599365	DriverA:Enter A HelloDDKClose	
00000034	681.70599365	DriverA:Leave A HelloDDKClose	
00000035	681.70599365	DriverB:Leave B HelloDDKClose	

 

4、

5、

 

posted @ 2018-12-14 16:20  DriverSkill  阅读(188)  评论(0编辑  收藏  举报