raingl
驱动牛犊
驱动牛犊
  • 注册日期2005-07-07
  • 最后登录2008-02-28
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望1631点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
阅读:1718回复:3

Passthru装载过程疑问

楼主#
更多 发布于:2005-08-09 11:04
这段时间一直再看DDK2003的Passthru,逐渐有了概念,但是还有几个细节问题不是太清楚。下面是安装过程的输出(里面带“DDK”的是我自己加的):

00000000       0.00000000       Passthru:        
00000001       0.00002375       PtPnPHandler: Adapt 00000000, Event 4      
00000002       0.00003241       Passthru:        
00000003       0.00004190       PtPnPHandler NetEventReconfigure DDK      
00000004       0.00005001       Passthru:        
00000005       0.00005839       PtPnPHandler pAdapt == NULL DDK      
00000006       0.00053024       Passthru:        
00000007       0.00054085       ==> Protocol BindAdapter      
00000008       0.00054867       Passthru:        
00000009       0.00055817       ==> NdisOpenProtocolConfiguration DDK      
00000010       0.00056851       Passthru:        
00000011       0.00057801       ==> NdisOpenProtocolConfiguration Success DDK      
00000012       0.00170413       Passthru:        
00000013       0.00173346       ==> PtOpenAdapterComplete: Adapt FF32DAE8, Status 0      
00000014       0.00174687       Passthru:        
00000015       0.00175777       ==> Ndis open apapter pending complete DDK      
00000016       0.00364935       Passthru:        
00000017       0.00366918       ==> Miniport Initialize: Adapt FF32DAE8      
00000018       0.00367756       Passthru:        
00000019       0.00368622       NdisMSetAttributesEx DDK      
00000020       0.00369796       Passthru:        
00000021       0.00370634       ==>PtRegisterDevice      
00000022       0.00378512       Passthru:        
00000023       0.00379462       <==PtRegisterDevice: 0      
00000024       0.00380328       Passthru:        
00000025       0.00381529       <== Miniport Initialize: Adapt FF32DAE8, Status 0      
00000026       0.02372369       Passthru:        
00000027       0.02375470       <== Protocol BindAdapter: pAdapt FF32DAE8, Status 0      
00000028       0.02414050       Passthru:        
00000029       0.02415111       ==> Protocol BindAdapter      
00000030       0.02415894       Passthru:        
00000031       0.02416816       ==> NdisOpenProtocolConfiguration DDK      
00000032       0.02417821       Passthru:        
00000033       0.02418855       ==> NdisOpenProtocolConfiguration Success DDK      
00000034       0.08958904       Passthru:        
00000035       0.08961530       ==> PtOpenAdapterComplete: Adapt FF33E328, Status 0      
00000036       0.08963010       Passthru:        
00000037       0.08964212       ==> Ndis open apapter pending complete DDK      
00000038       0.08967034       Passthru:        
00000039       0.08968347       <== Protocol BindAdapter: pAdapt FF33E328, Status 0      
00000040       0.08971392       Passthru:        
00000041       0.08972677       PtPnPHandler: Adapt 00000000, Event 6      
00000042       0.08973543       Passthru:        
00000043       0.08974353       PtPnPHandler default DDK      
00000044       0.08975275       Passthru:        
00000045       0.08976225       PtPnPHandler pAdapt == NULL DDK      
00000046       0.08977007       Passthru:        
00000047       0.08978124       <==PtPNPNetEventReconfigure: pAdapt 00000000      
00000048       0.08978962       Passthru:        
00000049       0.08979996       PtPnPHandler NetEventReconfigure Complete DDK      
00000050       0.09093837       Passthru:        
00000051       0.09095597       PtPnPHandler: Adapt 00000000, Event 6      
00000052       0.09096435       Passthru:        
00000053       0.09097218       PtPnPHandler default DDK      
00000054       0.09774203       Passthru:        
00000055        0.09776829       ==> Miniport Initialize: Adapt FF33E328      
00000056       0.09777695       Passthru:        
00000057       0.09778533       NdisMSetAttributesEx DDK      
00000058       0.09779735       Passthru:        
00000059       0.09780601       ==>PtRegisterDevice      
00000060       0.09781383       Passthru:        
00000061       0.09782221       <==PtRegisterDevice: 0      
00000062       0.09783031       Passthru:        
00000063       0.09784260       <== Miniport Initialize: Adapt FF33E328, Status 0      
00000064       0.10037058       GetDefaultGWList: read 1      


我的问题是:
1) 好像MiniportInitialize被调用了两次,为什么?
2) 两次调用的内部执行顺序也不一样:第一个是在调用PtBindAdapter时调用,MiniportInitialize退出以后PtBindAdapter才退出(看程序也应该是这样的);第二个则有点怪,PtBindAdapter退出时,MiniportInitialize还没有调用,一直到“00000055”这行才调用,难道这次调用NdisIMInitializeDeviceInstanceEx时没有调用MiniportInitialize,这又是为什么?
3) 最后一行的的“GetDefaultGWList: read 1”是什么意思?

希望得到高手指点,谢谢!
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-08-09 13:13
1、有几个MINIPORT就调用几次。
2、因为是异步的,所以次序不太确定。
3、那是别的程序输出的。
raingl
驱动牛犊
驱动牛犊
  • 注册日期2005-07-07
  • 最后登录2008-02-28
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望1631点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-08-09 14:55
我在另一台电脑上试了一下,MiniportInitialize被调用了三次,也没有最后一句话了。

还有一个问题,怎么知道自己电脑里装了几个Miniport驱动呢?
rangzh
驱动小牛
驱动小牛
  • 注册日期2005-04-24
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望150点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-01-10 23:12
devmgmt.msc
设备管理器里面可以看见有几个miniport
游客

返回顶部