极其详细地介绍了基于DDK的底层网络驱动设计,包括微端口NIC驱动程序设计,NDIS中间层驱动程序和TDI驱动程序设计,网络组件的安装指南,以及与应用程序的通信,绝对是一本不可多得的好书!
2021-11-08 15:32:53 1.87MB 网络驱动程序设计指南 NDIS DDK
1
目录: 第五卷 网络驱动程序设计指南 1 第一部分 网络驱动程序 2 第一章 网络驱动程序设计指南的向导 3 第二章 内核模式驱动程序的网络结构 6 2.1 Windows 2000 网络结构和OSI模型 6 2.2 NDIS驱动程序 7 2.2.1 NDIS微端口驱动程序 7 2.2.2 NDIS中间层驱动程序 8 2.2.3 NDIS协议驱动程序 9 2.3 TDI驱动程序 9 2.4 网络驱动程序环境 9 2.4.1 无连接环境的网络驱动程序 10 2.4.2 面向连接环境下的网络驱动程序 10 2.4.3 WAN网络驱动程序的环境 11 第三章 网络驱动程序编程要点 13 3.1 可移植性 13 3.2 多处理器支持 13 3.3 IRQL 14 3.4 同步和指示 14 3.5 包结构 16 3.6 使用共享内存 17 3.7 异步I/O和完成函数 17 第二部分 微端口NIC驱动程序 19 第一章 NDIS NIC微端口驱动程序 20 1.1 NIC微端口驱动程序类型 20 1.2 网络接口卡支持 20 1.3 微端口驱动程序代码的重要特征 22 1.3.1 MiniportXxx函数 22 1.3.2 与NDIS库链接 22 1.3.3 微端口适配器环境 22 1.3.4 VC环境 23 1.3.5 网络OID 23 1.4 驱动程序例子 24 第二章 NIC微端口操作和函数概要 25 2.1 NIC微端口操作 25 2.1.1 初始化NDIS库和注册微端口驱动程序 25 2.1.2 注册网络接口卡 25 2.1.3 对查询和设置微端口信息作出响应 26 2.1.4 产生,激活,去活,和删除虚连接 26 2.1.5 发送数据 27 2.1.5.1 多包发送 27 2.1.5.2 单包发送 28 2.1.6 指示和传递接收的数据 28 2.1.6.1 多包接收 29 2.1.6.2 单包接收 29 2.1.7 指示状态 30 2.1.8 复位网络接口卡 30 2.1.9 终止一个微端口NIC驱动程序 30 2.2 微端口上层函数 30 2.2.1 无连接微端口的上层函数 31 2.2.2 面向连接微端口的上层函数 32 2.3 由微端口调用的NDIS函数 33 2.3.1 NDIS提供的初始化和注册函数 34 2.3.2 NDIS提供的硬件设置函数 35 2.3.3 NDIS提供的I/O端口函数 36 2.3.4 NDIS数据的与DMA相关的函数 37 2.3.5 NDIS提供的中断处理函数 38 2.3.6 NDIS提供的同步函数 38 2.3.7 NDIS提供的状态函数 39 2.3.8 NDIS为无连接微端口提供的发送和接收函数 39 2.3.9 NDIS为面向连接微端口提供的发送和接收函数 40 2.3.10 NDIS提供的带外数据宏 41 2.3.11 NDIS提供的包和缓存处理函数 41 2.3.12 NDIS提供的支持函数 43 2.3.13 NDIS提供的媒体相关宏 46 第三章 NIC微端口驱动程序入口点和初始化 47 3.1 NDIS微端口驱动程序入口函数 47 3.1.1 初始化包裹 47 3.1.2 注册微端口 48 3.1.2.1 指定NDIS版本号 48 3.1.2.2 注册MiniportXxx函数 48 3.1.2.3 为中断支持的注册处理程序 50 3.1.2.4 为无连接微端口选择一个发送函数 51 3.1.2.5 为无连接微端口选择接收函数 51 3.1.2.6 注册一个分配完成处理程序 52 3.1.2.7 注册一个挂起检测(CheckForHang) 处理程序 52 3.2 NDIS微端口初始化 53 3.2.1 注册一个NIC 53 3.2.1.1 分配一个适配器指定的环境区域 54 3.2.1.2 读取配置信息 54 3.2.1.3 注册NIC 54 3.2.2 声明资源 55 3.2.2.1 分配内存 55 3.2.2.2 注册端口 56 3.2.2.3 总线管理器DMA设备初始化 56 3.2.2.4可编程I/O设备初始化 57 3.2.2.5 内存映射设备初始化 58 3.2.2.6 从属DMA设备初始化 58 3.2.3 注册一个中断 59 3.2.4 注册一个关闭函数 59 3.2.5 初始化轮询时钟 59 3.2.6 在初始化当中的同步 60 3.2.7 在初始化时处理错误 60 3.3 查询微端口信息 61 3.4 减少微端口初始化时间 61 第四章 数据传输 64 4.1 中断处理 64 4.2 DPC处理程序 66 4.3 带外(OOB)数据包 66 4.3.1 等待发送的OOB数据 67 4.3.2 接收的OOB数据 68 4.4
2021-11-08 14:32:11 2.23MB 驱动
1