驱动开发之中间层驱动
文章平均质量分 77
floweronwarmbed
这个作者很懒,什么都没留下…
展开
-
【转帖】 基于IMD的包过滤防火墙原理与实现
创建时间:2003-07-13文章属性:原创文章提交:xiaobai (xiaobai_at_openfind.com.cn)基于IMD的包过滤防火墙原理与实现xiaobaixiaobai@openfind.com.cn711网络安全小组 http://www.cpyy.net一、前言二、IMD中间层技术介绍三、passthru例程分析四、部分演示代码五、驱动编译与安装六. 总结一、前言转载 2008-11-01 16:15:00 · 519 阅读 · 0 评论 -
【转帖】DriverNetwork miniport驱动学习
DriverNetwork miniport驱动学习(1)NDIS Miniport驱动框架介绍 NDIS miniport adapter 类继承了 KNdisMiniAdapter 类 并且声明了处理程序所需的signatures,例如Initialize(), Halt()和 Reset()。它们可以是虚拟的或者非虚拟的,或是派生类内联成员。对于这些处理程序的命名和DDK很接近。例如转载 2008-11-03 09:54:00 · 3123 阅读 · 2 评论 -
【转帖】解读makefile和source文件
编译驱动 需要三个文件:源文件(假设只有一个), MAKEFILE, SOURCE总共三个文件。源文件是你的驱动程序了。MAKEFILE如下: ## DO NOT EDIT THIS FILE!!! Edit ./sources. if you want to add a new source# file to this component. This file merely indirec转载 2008-11-03 10:08:00 · 989 阅读 · 0 评论 -
【转帖】安装驱动的inf文件资料
INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操作。在INF文件中指明了硬件驱动该如何安装到系统中,源文件在哪里、安装到哪一个文件夹中、怎样在注册 表中加入自身相关信息等等。安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的转载 2008-11-03 10:34:00 · 907 阅读 · 0 评论 -
【转帖】Passthru和Application耦合方式
目前所有的Passthru和Application耦合方式中,方法有二: 方法一(简单)、使用Shared Event和Shared Memory Application首先Register Shared Event和Get Shared Memory。这个Shared Event一般可以有Application生成。注意不要把Shared Event设置成Auto Reset,而是使用manu转载 2008-11-03 10:47:00 · 590 阅读 · 0 评论 -
【转帖】[翻译][NDIS]重命名Microsoft NDISUIO 驱动程序名字的步骤
[翻译]FAQ:重命名Microsoft NDISUIO 驱动程序名字的步骤 译者:feikoo 日期:2006-4-3 原作者:PCAUSA 原文链接:http://www.ndis.com/faq/QA02110401.htm 说明:原文是的NDISProt驱动示例,我在XP中没找到,可能是其它版本的DDK中带的,但我用NDISUIO驱动示例试过,成功。此方法也可用到其它转载 2008-11-03 10:49:00 · 1145 阅读 · 0 评论 -
【转帖】Passthru流程图
底层驱动使用NdisMIndicateReceive / NdisMEthIndicateReceive通知上层已经收到数据报文在PtReceive中如果通过NdisGetReceivedPacket得到了一个完整的packet,就分配我们自己的MyPacket,根据底下传上来的packet设置MyPacket,然后调用NdisMIndicateReceivePacket通知NDIS转载 2008-11-03 08:59:00 · 1318 阅读 · 0 评论 -
【转帖】NDIS_PACKET结构讨论
[翻译][NDIS]NDIS_PACKET结构讨论[一] 译者:feikoo 作者:NDIS.com 日期:2006-4-3 这篇文章的目的是探讨一下在网络上截取的包(如IP包)与在NDIS驱动中代表相同内容的NDIS_PACKET之间的关系。 标准化组织:我们经常在新闻组上看到如下的内容: 1.微软的开发文档是如何描述Window2000网络转载 2008-11-03 10:51:00 · 2096 阅读 · 0 评论 -
【转帖】NAT在NDIS中间层驱动中的实现
1.概要 相信在IPv6的时代到来之前,NAT仍然是解决大多数人上网的主要途径,而且它在企业内网Intranet中也扮演着十分重要的角色. NAT的全称是Network Address Translator(网络地址转换),其主要作用是把内网IP地址转换成为全球唯一的可定位的外部IP地址,从而使得局域网内的所有用户可以通过一个或者少数几个IP地址与全球的Internet通信,不仅转载 2008-11-14 17:37:00 · 936 阅读 · 0 评论 -
[转载]NDIS函数简明手册
函数 描述无连接微端口的上层函数 DriverEntry 由操作系统调用来激活和初始化微端口驱动程序MiniportAllocateComple 调用它来指示以前调用的NdisMAllocateMemoryAsync已经完成MiniportCheckForHang 检查NIC的内部状态MiniportDisableInterrupt 禁止NIC产生中断Miniport转载 2008-11-01 17:27:00 · 833 阅读 · 0 评论 -
【转帖】Ndis中间层驱动自己发包的实现(经典问题)
这个问题,大部分学习Ndis中间层的人都会去思考,算是一个比较经典的问题了。到论坛上问,别人只会告诉你大概的方法和步骤,这里贴出具体的代码,希望对研究Ndis中间层的哥们有些帮助:NDIS_STATUSMySendPacket ( NDIS_HANDLE NdisBindingHandle, NDIS_HANDLE NdisSendPacketPool, PV转载 2008-11-01 17:22:00 · 3441 阅读 · 3 评论 -
【转帖】passthru的说明书!!!
1) During DriverEntry, the Passthru driver registers as a protocol and an Intermediate miniport driver. 1)在DriverEntry(驱动进入点,相当于动态链接库的DllMain)模块,passthru驱动将向系统注册一个protocol(协议)和一个intermedia minipo转载 2008-11-01 17:09:00 · 3165 阅读 · 0 评论 -
【转帖】基于PassThru的NDIS中间层驱动程序扩展
概要:开发一个NDIS驱动是一项相对复杂的工作,这一方面是由于核心驱动本身有更多的限制和要求,有更多的“游戏规则”要求开发者理解和掌握,NDIS 的复杂性把难度更是提高了,本文以PassThru为例,加上自己的理解,讲述了NDIS驱动的处理过程和在PassThru的基础上进行扩展的基本方法,本文并不是一个入门读物,所以没有提及任何核心驱动开发的相关知识,本文主要讲述的是NDIS中间层对数据包转载 2008-11-01 16:35:00 · 1026 阅读 · 0 评论 -
【转帖】基于PassThru的NDIS中间层驱动程序扩展(完整版)
基于PassThru的NDIS中间层驱动程序扩展创建时间:2006-05-02 更新时间:2006-05-05文章属性:原创文章提交:Addylee (Addylee2004_at_163.com)基于PassThru的NDIS中间层驱动程序扩展 独孤求真 概要:开发一个NDIS驱动是一项相对复杂的工作,这一方面是由于转载 2008-11-01 17:13:00 · 2071 阅读 · 0 评论 -
【转帖】楚狂人的 DriverNetworks开发网络驱动教材(0-7课)
楚狂人的 DriverNetworks开发网络驱动教材(0-7课) 简要说明: 这是一本您可以免费得到和自由传播的Ndis网络驱动开发的教材。以循序渐进的方式,通过大量的简单的示例代码介绍如何使用DriverrNetworks开发网络驱动。这本书由楚狂人搜集撰写。可以自由传阅修改。仅仅用于交流与学习。一部分来源于DriverNetworks帮助的翻译。一部分是楚狂人本人本人的工作经验介绍。若转载 2008-11-01 15:46:00 · 2046 阅读 · 0 评论 -
【转帖】ndis开发
NDIS开发目 录1 NDIS中间层驱动程序 21.1 NDIS中间层驱动程序(NDIS Intermediate Drivers)概述 21.2 NDIS中间层驱动程序的用途 41.3 NDIS中间层驱动程序的开发环境 42 NDIS中间层驱动程序的开发 42.1 可分页和可丢弃代码 42.2 共享资源的访问同步 52.3 中间层驱动程序的DriverEntry函数转载 2008-11-01 15:56:00 · 1591 阅读 · 0 评论 -
【转帖】对PassThru中的Protocol.c的注释
#include "precomp.h"#pragma hdrstop#define MAX_PACKET_POOL_SIZE 0x0000FFFF//最大64K#define MIN_PACKET_POOL_SIZE 0x000000FF//最小256字节//--------------------------------------------------------------------转载 2008-11-01 16:18:00 · 588 阅读 · 0 评论 -
【转帖】扩展微软DDK中的NDIS IM驱动的功能:添加一个DeviceIoControl接口
July 15, 2003作者:Thomas F. Divine 译:feikoo 微软的Windows驱动开发工具(DDK) 附带的NDIS中间层驱动PassThru源代码给我们提供了一个极好的示例,它向我们展示了实现NDIS 中间层过滤驱动框架一种方法。(感谢NDIS开发团队)。但是,PassThru中缺乏实际的功能。要想让它具备实际的用途,我们必须进行下一步的工作,就是向这个框架中添加自转载 2008-11-01 16:19:00 · 1059 阅读 · 0 评论 -
【转帖】 扩展PassThru驱动:两个实现IP过滤的NDIS IM驱动
作者:James Antognini and Thomas F. DivineCopyright ? 2003 by Printing Communications Assoc., Inc. (PCAUSA). All rights reserved 译:feikoo 时间:2006年3月1日 本文是扩展Microsoft? Windows? Driver Development Kit (D转载 2008-11-01 16:21:00 · 1735 阅读 · 0 评论 -
【转帖】Passthru IM Driver简析
如果你希望对本机发出的数据包进行修改,则涉及如下几个函数:1)MPSendPackets由本机协议层调用,用于发送数据包。在这里你可以针对要发送的数据包进行识别及修改,然后再调用NdisSend发送到网络上。此处涉及新内存分配、新Buffer分配以及Buffer与Packet关联NdisChainBufferAtFront。2)PtSendComplete当NdisSend成功将转载 2008-11-01 16:39:00 · 1647 阅读 · 0 评论 -
【转帖】管理硬件优先级
1.1 管理硬件优先级特定设备或中间层驱动程序例程运行的IRQL决定了它能调用哪些内核模式的支持例程。例如,有些支持例程要求调用者运行在为DISPATCH_LEVEL的IRQL上。其他例程在调用者运行在提高的(raised)IRQL(即高于PASSIVE_LEVEL的IRQL)时不能被安全地调用。表16.1列出了最常见的标准驱动程序例程被调用的缺省IRQL以及Kernel定义的IRQL值(由转载 2009-06-01 16:42:00 · 2085 阅读 · 2 评论