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

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

ID:22219617

大小:76.50 KB

页数:13页

时间:2018-10-27

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

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

1、windowsnt环境下fddi网卡驱动程序设计总体结构先容第一节interconnection:osi)参考模型分层建立的,这种方式有利于随时扩展其它功能和服务。ac子层,X卡驱动程序就驻留在其中。它通过相关的X卡把iniportX卡驱动程序:miniport驱动程序只须实现和X络硬件相关的操纵(包括发送和接收)。而所有底层X卡驱动程序的通用操纵(如同步),一般由ndis接口程序来实现。fullX卡驱动程序:fullX卡驱动程序必须实现所有硬件相关和同步、排队等操纵。例如fullX卡驱动程序为了响应数据接收,需要保持本身的**

2、*信息,而miniport就可以由ndis接口库来实现。在iniportX卡驱动程序答应开发者仅仅写一些和X络硬件相关的代码即可,而那些通用的函数由ndis接口库来实现,这样开发出来的驱动程序减少了不必要的工作。第二节miniport驱动程序的结构ndis接口规范了X卡驱动程序的实现,同时也对tdi驱动程序的实现提出了一定的要求,在nt中,ndis约束下的X卡驱动程序、tdi驱动程序和系统的关系如下图所示:图2.0ndis约束下的X卡驱动程序、tdi驱动程序和系统的关系miniport驱动程序包括驱动程序对象、驱动程序源代码和n

3、dis接口库代码。iniport驱动程序的主要头文件,定义了miniport驱动程序的进口点、ndis接口库函数和通用数据结构。上边沿函数的功能是X卡驱动和ndis接口库进行通讯,而下边沿函数是tdi协议驱动程序和ndis通讯的手段。§1.2.1miniportX卡对象ndis用一个叫做逻辑X卡的软件对象来描述系统中的每块X卡,而逻辑X卡和iniportinitialize这个上边沿函数的一个结构中,然后miniportX卡驱动程序将在以后提供这个句柄来给ndis调用,这个结构一直被ndis保持,并且对miniport驱动程序不

4、透明。当miniportX卡驱动程序初始化一块X卡时,它创立自己的内部数据结构来描述X卡,记录需要它治理的和设备相关的状态信息。当miniportX卡驱动程序调用ndismsetatttibutes或ndismsetattribute***两ndis库函数时,它传递一个句柄给这数据结构。这样,当调用miniport驱动程序进口点时,它就传递这个句柄来验证驱动程序所对应的X卡的正确性。这个数据结构为miniportX卡驱动程序所拥有并维护。§1.2.2X络对象标识符miniportnic驱动程序还需要维护一组对象,这些对象是系统定

5、义的对象标识符(objectidetifier:oid)来标识,以描述驱动程序的性能和当前状态信息。为查询这些信息,上层驱动程序调用ndisrequest向ndis接口库指示oid。oid表示了调用所需的信息类型,如miniport驱动程序所支持的lookahead缓冲区大小等。ndis接到上层驱动程序的查询请求,将oid传递给上边沿函数miniportqueryinformation实现对oid的查询,假如上层驱动程序请求改变状态信息则调用miniportsetinformation实现对oid的设置。§1.2.3minipo

6、rtX卡驱动程序代码典型的miniportnic驱动程序必须有一些函数来通过ndis接口实现上层驱动程序和硬件的通讯。这些函数称为上边沿服务函数。这些上边沿服务函数由驱动程序的开发者根据驱动程序面向的特定低层X络类型和硬件以及相应环境,可以有选择地实现,但必须保证驱动程序最基本的功能,这些基本功能包括初始化、发送、中断处理、重置、参数查询和设置和报文接收。miniportinitialize:操纵系统根据系统配置信息,检测出X卡已安装时,由ndis接口在初始化时调用,主要完成低层X络类型确定,对应于物理X卡的逻辑X卡初始化,中断

7、信息注册,X卡和主机通讯方式的确认。i/o端口的申请和注册,内存映像,mib的初始化,物理X卡的验证和初始化等。miniportreconfigure:支持X卡参数动态变化,和miniportinitilize一样由ndis接口以初始化级别调度执行(不能屏蔽中断,必须由驱动程序承认并清除在此期间产生的中断),支持即插即用和软配置的X卡在动态改变参数时,必须提供此函数。miniportqueryinformation:查询X卡的状态以及X卡驱动程序的操纵或统计参数,如是否支持组通讯、X卡的物理速率是否支持回环、是否支持直接拷贝等,

8、这些参数以oid方式同一治理。miniportsetinformation:ndis接口或协议驱动程序通过调用此接口改变驱动程序维护的oid库,一些操纵参数的改变也将同时改变驱动程序状态,例如组地址的设置。miniportreset:包括X卡硬件重置和驱动程序软

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

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

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