引用 35 楼 huabinsir 的回复:
驱动是有模型的。
网卡驱动 有 网卡驱动的模型.
恩,那个分层我看了,在外部驱动里面专门罗列了两个驱动,一个是USB驱动,一个就是网卡驱动。其中我看了下网卡驱动的大概步骤,因为它是分三层的:
NDIS驱动程序是使网络协议生效的驱动程序模型,例如TCP/IP和PPP等数据通信协议,NDIS驱动程序采用了windows NT操作系统的驱动程序标准,与网卡驱动程序的具体细节无关。NDIS网络驱动程序分为三类:
(1)NDIS Miniport NIC Driver: 底层的微端口NIC驱动,这就是网络设备的物理的驱动程序
(2)NDIS Protocol Driver: 高层的协议驱动,用来实现某个具体的协议栈, 并向上导出TDI接口。
(3)NDIS Intermediate Driver: 中间层驱动,位于Miniport Driver和Protocol Driver之间。
在WinCE中,开发网卡驱动就是写一个Miniport Driver,导出相应的Miniport接口函数,调用NDIS的接口访问底层硬件。
Miniport driver直接管理硬件网卡,它使用NDIS Library中的接口函数读写硬件网卡,同时对上层导出Miniport接口函数,这样上层通过该接口可以配置网卡,发送和接收网络数据包。 |