trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1032回复:4

some trouble,look

楼主#
更多 发布于:2002-08-14 15:23
DDK中这么写道:
When a transport driver has a packet to transmit, it calls an NdisXxx function exported by the NDIS library. NDIS then passes the packet to the miniport by calling the appropriate MiniportXxx function exported by the miniport. The miniport driver then forwards the packet to the NIC for transmission by calling the appropriate NdisXxx functions.

我不明白:
不是
protocol driver
|
NDIS
|
Miniport dirver
结构嘛,NDIS导出NDISxxx供Miniport调用,而Miniport导出Miniportxxx供NDIS或更高层调用

我的理解是当接收数据时Miniport调用NDISxxx向NIDS传
而发送时NDIS调用MINIPORTxxx向Miniport传,Miniport向NIC传数据我们应该不关心吧,怎么DDK中
The miniport driver then forwards the packet to the NIC for transmission by calling the appropriate NdisXxx functions.
是不是我的理解一直有问题?
我不仅要金子,我还要点石成金的手指!
smallbarrow
驱动小牛
驱动小牛
  • 注册日期2002-06-05
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2002-08-14 15:45
小猪猪,我不太明白你的意思。老MO的帖子你看过了吧?我所说的是passthru会在ndis中注册它的过程调用这个在driverentry中实现。具体来讲,要明白imd是处在ndis中的。它的发送功能是:协议驱动调用ndis,ndis找到passthru imd中的相应函数mpsend,然后,mpsend调用ndis的ndissend,ndissend会去找下层nic的miniportsend函数。接收过程也可据此推解。
还是那句老话,你在发问前最好实际跑跑看看,然后尽量多看一些以前的帖子,这样对你的理解是有帮助的。
嗒嗒的,是那马蹄 是我的心声 别了 一瞬间的花朵
trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-08-14 16:05
你的意思我明白,就DDK中的
The miniport driver then forwards the packet to the NIC for transmission by calling the appropriate NdisXxx functions.
让我很费解,为什么miniport向NIC传的时候回调用到NdisXxx?

BTW:我搞了很长时间怎么装.sys。还是不太会,是不是就把.sys文件copy到system32/drivers下,然后在注册表中添一项后重起就OK?
如果不需要pnp,是不是inf文件可以不要?
我不仅要金子,我还要点石成金的手指!
smallbarrow
驱动小牛
驱动小牛
  • 注册日期2002-06-05
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2002-08-14 16:39
那句话比较简略,我想如果你明白我说的那些东东,应该也会明白那句话的。因为nic驱动也会在ndis中注册它的miniport呀,imd的miniportsend当然要通过ndis调用已在ndis中注册过的nic驱动的miniportsend了。

你现在安装passthru的时候,系统需要什么你就给他什么好了,但是inf文件是不能丢的了,要是丢了这个东东,注册表里会有什么信息呢?给你个建议,将passthru的inf文件和编译生成的sys文件以及filter.dll拷贝到一个目录下,安装的时候直接指定到这个目录就万事大吉了。

另外呢,你需要金子,也需要指出金子的手指,而那个手指只能是你自己的,在imd中,问题会一大堆,但是应该大部分都是你自己解决的,相信你自己,没错的。
嗒嗒的,是那马蹄 是我的心声 别了 一瞬间的花朵
trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-08-14 17:10
3q3q,好像我的概念错了,NdisXxx的范围是不是不仅仅在NDIS。
Miniport向NIC数据收发的服务也算NdisXxx,只是这部分不需要我们处理了吧
我不仅要金子,我还要点石成金的手指!
游客

返回顶部