基于VxWorks的以太网驱动程序设计_第1页
基于VxWorks的以太网驱动程序设计_第2页
基于VxWorks的以太网驱动程序设计_第3页
基于VxWorks的以太网驱动程序设计_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 ( ) ( ) 释放 : :结构 释放存有数据的 链表 ) ( ) ( 从内 存池中 取 结构 从内存池中 结构 取 从 得到。 存中 从内存中得到 并联结它到指定的 从存中得到 勺 结构 将 。 与存有数据的 联结起来 ) ( 将 与 结构联接起来 从与指定的 缓冲区尺寸相匹配的 获取 一 池中 值 拷贝 链中数据到缓冲区中 ( ) ( ) 对 结构中的 进行复制 复制 链 中断处理 网 卡的中断处理函 数用于当网卡以中断方式工作时, 如果设备产生中断, 进行中断响应, 进而根据中断状态寄存器的值来处理报文接收,出 错处理等不同的中断。中断函数一般分为 两部分。 第一部分是一些耗时较小的响

2、应中断的函数 ( 溢出错误处理、 如 报文接收错误处理、 报文发送错误处理等中断例程)。 这些中断例程通过 中 提供的系统函 挂接 数 ) ( 到系统的中 断结构上, 一般在 ( ) 完成此操作。 第二部分是耗费时间的中断处理例 程( 如数据报处理例程)。 在实时系统中驱动程序应避免对这些数据报处理例程直接调用, 以 减少中断 关闭的 时间, 通过调 而是 用系统函 将数 数 ( 据处理函 在 ) 数放 任务的 网络队列中,通过系统任务 来处理。 数据报的 接收 设备直接将接收到的数据报放入内 存池预先分配的 中 和产生一个中断。 如果设备不 能完成上述功能, 驱 动函数完成将数据从 中的拷贝

3、。 到 数据被放 中后, 驱动程序将通过对 数的调用来完成 中函 链的创建, 从而为数据在 网络协议各层之间的传递做好准各,创建此结构链一般需要以下四步: ) 存池中取 调用函数 从内 ( 结构。 ) 调用函数将 ( 与存有数据的 联结起来。 从内 调用函数 ) 存池中取 结构 ( ( 调用函数 ) 结构连接起来。 将 与 为了向 上层协议栈传递此结构链,还将调用 中 所提供的函数, 具体的 传递过程一般 分为以下两步: 调用 结构中的成员 己 ( 将 ( ) 成员初始化位 函数二 ( ) 调用协议层的入口 函数 数据报的接收过程如图 所示, ( ) 南 曰 曰 ( ) 图数据报的接收过程 图

4、数据报的发送过程 当 数据报到 会触发一个中断,中 服务 序 ( ) 通过调用 ( 一个 来时 断 程 将 项 ) 任务队 列添加一个网 络任务, 此网 络任务为数据报接收函数 ( ),它通过系统任务 来调用。 然后接收函数调用 的接口 函数 ,而 又调用协议层 提供的接口函数 将数据报传递到协议层, 最终数据将通过协议层到达应用程序的 缓冲区中, 应用程序通过 函 ( 数对其读取。 ) 从图 中 我们可以 看到, 数据报经过物理层到 达数据链路层, 然后再通过 层到达网络层, 在通过 协议层到达应用层, 完成了数据报 接收的全过程。 数据报的发送 数据报的发送基本上是数据报接收的反过程, 如

5、图 所示。 应用程序通过( ) 数调用, 将要发送的数据放入应用程序数据缓冲区 ( )中。网 络协议负责将 中的数据放入 为其分配的内存池中, 并以 链的形式来存储, 这样实现了再往下层协议传递数 据报时, 传递的只是 指向 此数据链结构的指针, 而代替了数据在各层协议之间的拷贝。当由 数据要发送时, 协议 网络 层通过 其与 接口 用 函 而 ( 层的 调 数, 函数又 ) 通 过调用 数负责将利用指针传递来的数据报送到发送 队列中, 然后起动网卡设备 的发送功能,发送完后将随之产生中断信号, 调用中断服务程序, 清除设备缓冲区。 四、结束语 本文对 驱动程序所涉及的一些问 题进行了总结, 但还有更多复杂的问题本文并未进 行讨论。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论