windowsnt环境下fddi网卡驱动程序设计(2)

windowsnt环境下fddi网卡驱动程序设计(2)

ID:25341796

大小:64.50 KB

页数:9页

时间:2018-11-19

windowsnt环境下fddi网卡驱动程序设计(2)_第1页
windowsnt环境下fddi网卡驱动程序设计(2)_第2页
windowsnt环境下fddi网卡驱动程序设计(2)_第3页
windowsnt环境下fddi网卡驱动程序设计(2)_第4页
windowsnt环境下fddi网卡驱动程序设计(2)_第5页
资源描述:

《windowsnt环境下fddi网卡驱动程序设计(2)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、windowsnt环境下fddi网卡驱动程序设计(2)achine下system和hardinitializeiniport类网卡驱动程序注册。ndis建立它需要记录的驱动程序状态信息,同时返回ndisiniport_characteristics属性结构,主要记录ndis版本号和驱动程序支持的miniportxxx函数的入口点,然后调用ndismregisterminiport函数实现驱动程序的整体注册。以yhfddi为例所要注册的属性结构的内容大致如下:ndis_miniport_characteristicsyhfddichar;(ndis_miniport_c

2、haracteristics这个结构将在第三章介绍)yhfddichar.majorndisversion=yhfddi_ndis_major_version;yhfddichar.minorndisversion=yhfddi_ndis_minor_version;这两个属性决定驱动程序是ndis的哪个版本所支持,我们所用的是ndis3.0yhfddichar.disablEinterrupthandler=yhfddidisableinterrupt;yhfddichar.enableinterrupthandler=yhfddienableinterrupt;y

3、hfddichar.isrhandle=yhfddiinterruptservice;yhfddichar.handleinterrupthandler=yhfddihandleinterrupt;以上四项属性是中断处理所需的上边缘服务函数的入口点(句柄)。fddi网卡驱动程序需要有smt站管理功能,而smt是以中断处理方式进行的,故这四项属性在fddi网卡驱动程序中是很重要的。yhfddichar.initializehandler=yhfddiinitialize;此项注册的是驱动程序的初始化函数句柄。yhfddichar.queryinformationhand

4、ler=yhfddiqueryinformation;yhfddichar.setinformationhandler=yhfddisetinformation;这两项注册的是参数查询和设置函数的句柄。yhfddichar.sendhanler=yhfddisend;yhfddichar.transferdatahandler=yhfdditransferdata;主要提供数据发送和接收函数句柄。  yhfddichar.resethandler=yhfddireset;此项注册网卡软硬件重置函数句柄。yhfddichar.halthandler=yhfddihalt

5、;此项注册网卡驱动程序挂起函数句柄。yhfddichar.checkforhandler=null;yhfddichar.reconfigurehandler=null;这两个上边缘服务函数是fddi网卡驱动程序所不提供的,故置为null。填好这些结构以后,调用以下函数实现驱动程序的注册:ndismregisterminiport(yhfddip;yhfddichar,sizeof(yhfddichar));其中yhfddiinitializeregisterminiport不能返回ndis_status_success,必须在退出driverentry之前释放已经分

6、配的资源(如yhfddiinateiniportqueryinformation查询参数和通过miniportsetinformation设置参数。oid也可被分为操作特性(如多目地址表长度参数)和统计参数(如广播包接收)。最后oid可分为必须的和可选的两种。oid的前三个字节表明oid的不同类别,而最后一个字节确定这一类别内特定的信息管理对象。针对于fddi网卡,被查询的oid的第一个字节为0x03。而ndis所查询的介质相关参数为:0x03010104oid_fddi_long_max_list_size0x03010108oid_fddi_short_max_l

7、ist_size0x03010102oid_fddi_long_current_addr0x03010106oid_fddi_short_current_addrtcp/ip传输驱动程序所要查询的fddioid为:0x03010102oid_fddi_long_current_addr0x03010103oid_fddi_long_multicast_list0x03010107oid_fddi_short_multicast_list通过以上两阶段的查询,ndis和tcp/ip驱动程序就分别了解了网卡驱动程序对其的支持,从而进行相应的捆绑,以便数据

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。