Windows+2000下应用程序与网卡驱动程序间的数据交互

合集下载

2000操作系统习题[1]

2000操作系统习题[1]

第2章windows 2000操作系统习题1、单项选择题1.下面几种操作系统中,不是网络操作系统。

A) MS-DOS B) Windows 2000C) Linux D) Unix2.下面有关Windows系统的叙述中,正确的是。

A) Windows文件夹与DOS目录的功能完全相同。

B) 在Windows环境中,安装一个设备驱动程序,必须重新启动后才起作用。

C) 在Windows环境中,一个程序没有运行结束就不能启动另外的程序。

D) Windows是一种多任务操作系统。

3.对话框和窗口的区别是:对话框。

A) 标题栏下面有菜单B) 标题栏上无最小化按钮C) 可以缩小D) 单击最大化按钮可放大到整个屏幕4.在Windows中,个项目通常是给该项目作标记,使之突出显示。

A) 选择B) 选定C) 单击D) 双击5.在Windows中,一个项目导致一个动作。

A) 选择B) 选定C) 单击D) 双击6.Windows操作具有的特点。

A) 先选择操作对象,再选择操作项B) 先选择操作对象,再选择操作项C) 同时选择操作对象和操作项D) 把操作项拖到操作对象上7.按键可以在已打开的几个应用程序之间切换。

A) Alt+Esc B) Alt+Shift C) Ctrl+Esc D) Ctrl+Tab8.启动盘的文件夹中有一个文件夹,Windows启动时自动启动其中的文档、应用程序和快捷方式。

A) 启动B) 程序C) 附件D) 运行9.选择了项之后,用户就不能再自行移动桌面上的图标了。

A) 自动排列B) 按类型排列C) 平铺D) 层叠10.如果一个窗口右下角有三条斜线组成的标志,则。

A) 按住这个标志就可以把窗口最小化成任务栏上的一个按钮B) 说明该窗口不能最小化成任务栏上的一个按钮C) 说明该窗口不是最大化的D) 这个标志只是一种装饰11.“资源管理器”中“文件”菜单的“复制”选项可以用来复制。

A) 菜单项B) 文件夹C) 窗口D) 对话框12.下面有关Windows帮助系统的叙述中,是正确的。

Windows2000设备驱动程序

Windows2000设备驱动程序

Windows2000设备驱动程序引言:因为工作关系,我经常涉及PC机与外围设备接口的工作,从PC机这方面要做的工作看来,主要是通过接口处理外围设备的中断,通过I/O 端口或内存地址与外设互相传递数据。

从计算机原理的角度看,所要达到的目的很简单,那么如何编写程序完成上述功能呢?当前国内流行的PC操作系统有三种:DOS,Win95/98系列,WindowsNT。

DOS是单用户、单任务操作系统,因为PC机硬件处理速度持续提升,基于单用户、单任务的操作系统越来越不能充分发挥硬件的功能,现在只应用于一些老式PC及其它个别场合,有逐渐被淘汰的趋势;Win95/98系列和WindowsNT属于多任务操作系统,不论从其原理还是界面上看,这两种操作系统都比DOS有着无可比拟的优越性,这两种操作系统虽然在界面和操作上及其相似,但其内部实现的诸多方面有很多区别,有些区别是本质上的。

Win95/98设计目标是针对一般家庭用户,安全性及可靠性存有很多薄弱环节,就可靠性来说,Win95/98系列不能很好的防止多任务环境中某个进程的非法操作导致系统中其它程序甚至整个系统的崩溃,而WindowsNT在这方面及其它诸多方面设计的相当严谨。

这两种操作系统是Microsoft公司同一时期的产品,但针对不同的使用群,所以在一些重要场合及生产实践中应该选择WindowsNT作为计算机的操作系统,此外,从发展趋势来看,WindowsNT已经成为定型产品,具有相对稳定性。

在不同操作系统下编写驱动程序是有很大区别的,在DOS平台上,应用程序和设备驱动程序之间没有标准的接口,它们在外部表现为一个扩展名为EXE的文件,驱动程序的作用被柔和在应用程序中,这样,应用程序为了使用不同厂商的同一类设备,必须了解这些设备在接口上具体的硬件实现,同时,对于一个特定型号的硬件产品,所有支持它的应用软件中对于控制整个设备动作的这部分代码,可能被多次重写。

这种情况不适合硬件及应用软件的飞速发展。

2021年计算机应用基础(专升本)考试题库(带答案)

2021年计算机应用基础(专升本)考试题库(带答案)
8
A、各神数据的载体 B、打印信息的载体 C、各种信息和数据的编码 D、表示和传播信息的载体 答案:D 30.计算机是一种通用的信息处理工具,下面是关于计算机信息处理能力的叙述: ①它不但能处理数值数据,而且还能处理图像和声音等非数值数据②它不仅能对 数据进行计算,而且还能进行分析和推理③它具有极大的信息存储能力④它能方 便而迅速地与其它计算机交换信息上面这些叙述()是正确的。 A、仅①.②和④ B、仅①.③和④ C、①.②.③和④ D、仅②.③.④ 答案:C 31.计算机的功能是由 CPU 一条一条地执行来完成的。 A、用户命令 B、机器指令 C、汇编指令 D、BI0S 程序 答案:B 32.以下硬盘的主要性能指标中,最能体现硬盘整体性能的是()。 A、转速 B、外部数据传输速率
13
答案:B 47.下列关于计算机网络中协议功能的叙述最为完整是()。 A、决定谁先接收到信息 B、决定计算机如何进行内部处理 C、为网络中进行通信的计算机制定的一组需要共同遵守的规则和标准 D、检查计算机通信时传送中的错误 答案:C 48.下列有关软件的叙述,错误的是 A、office 软件可由用户自定义选择安装某些组件,如只安装 Word 而不安装 Pow erPoint B、采用压缩软件对某文件或文件夹进行压缩后的数据量一般比原文件要小 C、如用户不改变软件安装的程序,大多数软件默认安装在 C 盘 D、正在运行的软件一般位于虚拟内存中 答案:D 49.微型计算机硬件系统中最核心的部件是()。 A、内存储器 B、输入输出设备 C、CPU D、主板 答案:C 50.下面关于内存储器(也称为主存)的叙述中,正确的是()。 A、内存储器和外存储器是统一编址的,字是存储器的基本编址单位
3
C、D D、B 答案:A 12.二进制数 01 与 01 分别进行算术加和逻辑加运算,其结果用二进制形式分别表 示为()。 A、01.10 B、01.01 C、10.01 D、10.10 答案:C 13.http://home.microsoft./main/index.html 意义是()。 A、主机域名 http.服务标志 home.microsoft..目录名 main.文件名 index.html B、服务标志 http.主机域名 home.microsoft..目录名 main.文件名 index.html C、服务标志 http.目录名 home.microsoft..主机域名 main.文件名 index.html D、目录名 http.主机域名 home.microsoft..服务标志 main.文件名 index.html 答案:B 14.是存储在计算机内有结构的数据的集合。 A、数据项 B、数据库 C、数据厍管理系统 D、数据库系统 答案:B

名词解释驱动程序__概述说明以及解释

名词解释驱动程序__概述说明以及解释

名词解释驱动程序概述说明以及解释1. 引言1.1 概述名词解释驱动程序(Noun Explanation Driver)是一种计算机软件或程序,其主要功能是提供对特定领域的概念及术语的解释和定义。

它为用户提供了一种便捷的方式来获取相关术语的含义和解释,从而帮助他们更好地理解和应用相关领域的知识。

1.2 文章结构本文将围绕名词解释驱动程序展开详细讨论。

首先,将给出名词解释驱动程序的定义,并介绍其功能与用途。

接着,将探究名词解释驱动程序的发展历程,了解它在技术上的进步和演变过程。

然后,文章将深入探讨名词解释驱动程序的工作原理,包括解析器模块、数据库管理模块和输出生成模块等方面的内容。

之后,将通过几个具体应用领域以及相应案例分析,介绍名词解释驱动程序在操作系统、数据库管理系统和网络通信设备中的应用。

最后,在结论部分进行总结,并展望未来名词解释驱动程序可能面临的挑战与发展方向。

1.3 目的本文的目的是通过对名词解释驱动程序的全面分析和介绍,使读者能够深入了解这一技术,并认识到其在不同领域中应用的重要性和价值。

同时,希望通过本文的阐述,能够为相关研究者、开发者以及其他对该技术感兴趣的人提供一个参考和借鉴,从而推动名词解释驱动程序的进一步发展与创新。

2. 名词解释驱动程序:2.1 定义:名词解释驱动程序是一种计算机软件或代码,用于实现操作系统或应用程序与设备之间的沟通和交互。

它作为一个接口层,连接了硬件设备和操作系统/应用程序之间的通信桥梁。

2.2 功能与用途:名词解释驱动程序的主要功能是允许操作系统或应用程序能够正确地理解和使用硬件设备。

它通过提供设备相关的命令、协议和函数,将高级用户或应用程序的请求转换为底层设备能够理解和执行的指令。

驱动程序的设计旨在使用户无需了解底层硬件的详细信息,而能够直接进行操作。

名词解释驱动程序广泛应用于各个领域,包括操作系统管理、数据库管理系统和网络通信等方面。

它们可以被看作是设备和操作系统/应用程序之间的翻译器或适配器,帮助不同构架、不同标准的设备与软件进行无缝集成。

Windows2000下ISA卡驱动程序的开发

Windows2000下ISA卡驱动程序的开发

兵工自动化 软件技术 O. I. Automation 2003年第22卷第3期 Software Technique 2003, Vol. 22, No. 3・49・文章编号:1006-1576(2003)03-0049-03Windows 2000下ISA 卡驱动程序的开发冯毅1,梅海青1,王霞2(1. 华南理工大学 工控学院,广州 510640;2. 华南师范大学 数学系,广州 510000) 摘要:Windows 2000环境下,使用WinDriver ,通过用户态API 函数,可开发基于ISA /EISA /PCI /USB 等总线的用户驱动程序,实现对硬件的操作。

WinDriver 安装后,利用开发向导选择设备和驱动程序类型,定义I /O 等资源和地址范围,即能完成对I /O 的直接读写。

以ISA K812A 卡驱动程序为例,其开发步骤是:调用WD_Open() 函数以返回WinDriver 设备句柄,调用WD_CardRegister() 以注册硬件,调用WD_Transfer()进行数据读写操作,如有中断则调用WD_IntEnable()、WD_IntWait()、WD_IntDisable() 函数来处理。

关键词:驱动程序;WinDriver ;ISA 卡;I /O 中图分类号:TP3111.11 文献标识码:ADevelopment of ISA Device Driver under Windows 2000FENG Yi 1, MEI Hai-qing 1, WANG Xia2(1. Dept. of Automation, South China University of Technology, Guangzhou, 510640, China;2. Dept. of Math, South China Normal University, Guangzhou, 510000, China) Abstract: On Win2000 platform, hardware driver for ISA /EISA /PCI /USB can be developed withWinDriver , through API interface functions. After installation WinDriver, WinDriver wizard can help users select drive types, define I /O resources and address range, write /read I /O port directly, and the n, hardware operation is realized. Taken the driver of ISA k812 card as an example, its main procedure is as below: first the driver handle can be obtained by means of WD_Open, then hardware information can be registered by means of WD_CardRegister(), at last data read-write operation is realized by means of WD_Transfer(). If signal is interrupted, it is disposed by the functions of WD_IntEnable(), WD_IntWait(), WD_IntDisable().Key words: WinDriver; Device Driver; ISA; I /O1 前言Windows 2000是一个多任务非实时操作系统,整个操作系统被分为核心态模式和用户态模式两部分[1]。

第5章试题

第5章试题

动? A. 应用层 B. 表示层 C. 会话层 D. 传输层 答案:D 23、请参见图示。主机 A 正在使用 FTP 从服务器 1 下载大型文件。在 下载期间,服务器 1 没有收到主机 A 对若干字节传输数据的确认。服 务器 1 将默认执行什么操作?
A. 创建第1层堵塞信号 B. 到达超时时间后重新发送需要确认的数据 C. 向主机发送 RESET 位 D. 更改第 4 层报头中的窗口大小 答案:B 24、采用 TCP/IP 数据封装时,以下哪个端口号范围标识了所有常用应 用程序? A. 0 到 255 B. 256 到 1022 C. 0 到 1023 D. 1024 到 66359 答案:C 25、请参见图示。图中显示的是两台主机之间的 TCP 初始数据交换。 假设初始序列号为 0,如果数据段 6 丢失,确认 2 中将包含哪个序列 号?
561、在下面各项中,哪一个字段不是TCP报头的一部分? A、 子网掩码 B、 源端口号 C、 源IP地址 D、 序列号 E、 紧急指针 ANSWER:ACE
A. TCP B. IP C. UDP D. HTTP E. DNS 答案:C 33、在 TCP 通信会话期间,如果数据包到达目的主机的顺序混乱,将 对原始消息执行什么操作? A.数据包将无法送达 B.将从源主机重新传输数据包 C.数据包将送达目的主机并重组 D.数据包将送达目的主机但并不重组。 答案:C 34、. 在如图所示的TCP 连接的建立过程中,SYN 中的Z 部分应该填入 ________
A. 会话创建 B. 数据段重传 C. 数据传输 D. 会话断开 答案:A 21、数据段的 TCP 报头中为什么包含端口号? A. 指示转发数据段时应使用的正确路由器接口 B. 标识接收或转发数据段时应使用的交换机端口 C. 确定封装数据时应使用的第 3 层协议 D. 让接收主机转发数据到适当的应用程序 答案:D 22、OSI 模型哪一层负责规范信息从源设备到目的设备准确可靠地流

计算机基础知识选择题500个

计算机基础知识选择题500个

1.下列叙述中,不属于电子计算机特点的是_____。

A.运算速度快B.计算精度高C.高度自动化D.高度智能的思维方式答案:。

D2.按照计算机的分代来说,目前市场上的主流计算机属于_____。

A.第二代计算机B.第三代计算机C.第四代计算机D.第五代计算机答案:.C 3.现代电子计算机的本质工作原理是_____。

A.能进行算术运算B.能进行逻辑运算C.能进行智能思考D.存储并自动执行程序答案:.D4.当今的计算机实际上属于_____.A.电子数字计算机B.电子模拟计算机C.工业控制计算机D.模拟计算机答案:.A5.我们常把计算机分巨型机、大中型机、小型机和微型机,是按_____来划分的。

A.计算机的应用对象B.CPU的集成度C.计算机综合性能指标D.计算机的存储容量答案:。

C6.当前我国具有自主知识产权CPU的名称是_____。

A.东方红B.银河C.曙光D.龙芯答案:.D7.电子计算机的分代主要是根据_____来划分的。

A.集成电路B.电子元件C.电子管D.晶体管答案:。

B8.微型计算机的型号主要是指_____的型号。

A.操作系统B.中央处理器C.主机D.软件答案:。

B9.冯·诺依曼型计算机的最主要体现是_____.A.提供了人机交互的界面B.具有输入输出的设备C.能进行逻辑运算D.可运行预先存储的程序答案:.D10.到目前为止,计算机的发展已经经历了_____代。

A.3 B.4 C.5 D.6 答案:。

B11.Microsoft Access 软件属于_____软件。

A.幻灯片制作B.数据库管理C.教学D.游戏答案:。

B12.计算机术语中,英文CAD是指_____。

A.计算机辅助制造B.计算机辅助设计C.计算机辅助测试D.计算机辅助教学答案:。

B13.计算机术语中,英文CAT是指_____.A.计算机辅助制造B.计算机辅助设计C.计算机辅助测试D.计算机辅助教学答案:。

C14.门禁系统的指纹识别功能所运用的计算机技术是_____。

西交14秋《计算机网络组网技术》在线作业答案

西交14秋《计算机网络组网技术》在线作业答案

计算机网络组网技术西交《计算机网络组网技术》在线作业一,单选题1. 实现从IP地址到以太网MAC地址转换的命令为:()。

A. pingB. ifconfigC. arpD. traceroute?正确答案:C2. 当DHCP客户端跟DHCP服务器要求IP地址失败时,DHCP客户端每隔()分钟继续与DHCP 服务器进行通信以便更新IP地址。

A. 1B. 3C. 5D. 0.5?正确答案:C3. 定义了令牌环网的媒体访问控制(MAC)技术和物理层结构标准的是()。

A. IEEE802.2B. IEEE802.3C. IEEE802.5D. 以上都是?正确答案:C4. 不属于以太网交换机的架构分类的是()。

A. 单台B. 群组C. 可堆叠D. 箱体模块式?正确答案:B5. 在Windows 中,ping命令的-n选项表示()。

A. ping 的次数B. ping 的网络号C. 用数字形式显示结果D. 不要重复,只ping 一次?正确答案:A6. 用户在交换机上配置VLAN时,下面数值中不能被设置成VLAN ID的是()。

A. 1B. 10C. 100D. 1000?正确答案:A7. 可以完成主机名与IP地址的正向解析和反向解析任务的命令是:()。

A. nslookupB. arpC. ifconfigD. dnslook?正确答案:A8. 交换机工作在OSI标准的()。

A. 物理层B. 数据链路层C. 网络层D. 传输层?正确答案:B9. 具有筛选、过滤作用的互联设备是()。

A. 网桥B. 集线器C. 传输介质D. 中继器?正确答案:A10. 建立虚拟局域网的交换技术一般包括()、帧交换、信元交换三种方式。

A. 线路交换B. 报文交换C. 分组交换D. 端口交换?正确答案:D11. 以太网交换机上,存储转发交换方式中()。

A. 交换器有较长的延迟时间B. 不能进行链路分段C. 不能进行差错检验D. 以上都不是?正确答案:A12. 以太网帧前导码是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5 通过分组过滤器后 将未过滤掉的数据包提 交给核心缓冲区 然后等待系统缓冲区满后 再将数 据包拷贝到用户缓冲区 数据采集程序可以直接从用 户缓冲区中读取捕获的原始数据包
在整个数据采集的过程当中 应用程序先调用 Wpcap.dll 提供的函数接口搜索并打开网卡设备 成功 后函数将返回给应用程序一个用于操作该网卡设备的 句柄 应用程序通过操作这个句柄调用一系列相应函 数 就可通过 WinPcap 库直接访问底层网卡驱动程序 通知网卡驱动程序将原始数据包捕获下来并转交给上 层应用程序 完成数据信息的交互 3.2 结合 Packet.dll 控制双通道以太网卡进行通道切 换
用户态
WDM 协议驱动程序
NDIS
网卡驱动程序
核心态
应用程序
Wpcap.dll
Packet.dll 网络数据包过滤
用户态 其他协议栈
网卡驱动程序
核心态
数据包
网路
图 2 WinPcap 结构图
2.3 两种数据交互方式的比较
Packet.dll 库与 WinPcap 库都有用户级的程序接
数据包
主机 A 中运行数据采集程序 这个采集程序的作 用是采集主机 B 和主机 C 发出的数据 在某一时刻 主机 A 只能采集主机 B 或主机 C 中所发出的数据 主机 A 根据特殊事件进行通道切换 以此来决定数据 采集对象 该应用当中 主机 A 的数据采集程序需要 采集主机 B 和主机 C 发出的完整原始数据报的内容
一般来说 Windows 2000 中的网络应用程序通过 操作系统提供的上层接口经由协议栈来与网卡驱动程 序进行交互 从而实现数据的发送和接收 这种方式 仅限于应用程序与网卡驱动程序之间的数据传输 如 果应用程序需要对双通道以太网卡驱动程序进行信息 查询或设置则存在问题 本文将就这个问题进一步展 开 以双通道以太网卡驱动程序为例 通过一个具体 的应用体系结构来探讨 Windows 2000 中的应用程序 与双通道以太网卡驱动程序之间的数据交互
万方数据
第4期
指挥控制与仿真
109
2.1 Packet.dll 库 Packet.dll 库是一个底层的动态链接库 直接映射
了内核的调用 它提供了一套独立于微软操作系统的 统一编程接口 使应用程序可以通过 Packet.dll 库中提 供的函数接口直接访问网卡驱动程序中的相应函数 实现与网卡驱动程序之间的数据交互 如系统为了知 道网卡的性能 从而决定分配多少任务给网卡 需要 与网卡驱动程序进行数据交互 这种交互可以通过网 卡驱动程序的标准接口函数 MiniportSetInformation 和 MiniportQueryInformation 函数实现 其中前者允许系 统向网卡驱动程序设置一些特定信息 后者则允许系 统向网卡驱动程序查询一些特定信息 应用程序可以 通过 Packet.dll 库提供的相应函数实现对驱动程序中 这两个函数的操作 从而直接对网卡驱动程序进行信 息查询或设置 2.2 WinPcap 库
网路
图 3 数据包采集流程图
图 3 中 的 NDIS(Network Driver Interface Specification)是 Microsoft 和 3Com 公司联合制定的网 络驱动规范 并提供了大量的操作函数 它为上层的 协议驱动提供服务 屏蔽了下层各种网卡的差别 NDIS 向上支持多种网络协议 比如 TCP/IP NWLink IPX/SPX NETBEUI 等 向下支持不同厂家生产的多 种网卡 NDIS 还支持多种工作模式 支持多处理器 提供一个完备的 NDIS 库 但库中所提供的各个函 数都是工作在核心模式下的 用户不宜直接操作 这 就需要寻找另外的接口 利用 WinPcap 库可以实现对 该库的操作
用程序与网卡驱动程序之间的原始数据报文交互以及控制信息交互 较好地满足了准确快速判断舰载系统网络工
作状态的需求
关键词 应用程序 网卡驱动程序 数据交互
中图分类号 TP393.09
文献标识码 Aຫໍສະໝຸດ Data Communication between Applications Program
and Network Card Drivers in Windows 2000
口 通过这些接口 它们可以访问网卡驱动程序的函 数 从而充分利用网卡驱动程序提供的高级特性 Packet.dll 为 Win32 平台提供了一个公共界面 屏蔽了 不同 Windows 操作系统之间的差异 可以简单直接地 对 网 卡 驱 动 程 序 进 行 访 问 而 WinPcap 库 中 的 Wpcap.dll 架构在 Packet.dll 之上 提供了更加高层 抽象的函数 导出了一组更强大的与 Libpcap 一致的 高层抓包涵数库 Capture Primitives 这些函数使得 数据包的捕获以一种与网络硬件和操作系统无关的方 式进行 相比之下 Packet.dll 在 Win32 平台上对网卡 驱动程序的访问更加直接 而 WinPcap 则更适用于通 过网卡驱动程序进行原始数据包的捕获等操作
巴海涛 1 张振华 2 孙 艺 2
1. 海军驻南京地区通信军事代表室 江苏 南京 210002 中国船舶重工集团公司江苏自动化研究所 江苏 连云港 222006 摘 要 为解决准确快速判断舰载系统网络工作状态的问题 提出了两种简单易行的网络应用程序与双通道以太
网卡驱动程序之间数据交互的方法 这两种方法分别以 WinPcap 库和 Packet.dll 库为基础 简单高效地实现了应
1 基于双通道以太网卡应用的体系结构
收稿日期 作者简介
2007-01-11
修回日期 2007-03-26
巴海涛 1964- 男 河北玉田人 工程师
研究方向为电子通信工程
张振华 1982- 男 助理工程师
孙 艺 1980- 女 助理工程师
如图 1 所示 主机 A 是一台装有双通道以太网卡 的 PC 机 双通道以太网卡的两个端口分别与主机 B 和主机 C 相连 主机 A 在同一时刻只能在其中一条通 道上传输数据 通道的切换由双通道以太网卡驱动程 序通过特殊指令控制 切换的时机由应用程序根据具 体事件决定
BA Hai-tao1, ZHANG Zhen-hua2, SUN Yi2 (1. Navy Communication Representative Office in Nanjing, Nanjing 210002, China;
2. Jiangsu Automation Research Institute of CSIC, Lianyungang 222006, China) Abstract: In order to exactly and rapidly judge the status of shipboard network system, this paper brings out two simple methods to solve the communication between application program and network card drivers. The two methods are basing on WinPcap library and Packet.dll library, realize high performance communication for raw packets and control information between application program and network card drivers simply, and meet the need of judging network status for shipboard system exactly and rapidly as well. Key words: application program; network card drivers; data communication
3 数据交互的实现[3]
3.1 使用 WinPcap 方式捕获原始数据包 根据主机 A 上运行的数据采集程序的需求 数据
采集程序需要与双通道以太网卡驱动程序进行交互 从而直接获取原始数据包 这个交互可以结合 WinPcap 库来实现 数据包采集流程如图 3 所示
应用程序
WinPcap 库函数接口
由于主机 A 在数据采集的过程中需要根据特定事 件进行双通道以太网卡数据采集通道的切换 而通道 的切换指令由网卡驱动程序控制 所以这就需要应用 程序通过某种方法与网卡驱动程序进行直接的数据交 互 通知双通道以太网卡驱动程序在特定时刻进行数 据采集通道的切换 通常 应用程序与网卡驱动程序 之间可以通过 Packet.dll 中提供的函数接口调用驱动 程序实现的标准接口函数 MiniportSetInformation 和 MiniportQueryInformation 函数来设置或查询网卡驱动 程序中的一些信息 但对于本文环境中提到的这种双 通道以太网卡 由于通道切换功能接口并不是标准的 网卡驱动程序功能接口 所以在 Packet.dll 中没有相应 的函数接口实现 因而也就无法通过 Packet.dll 与网卡 驱动程序之间进行直接的数据交互 及时通知网卡驱 动程序执行通道切换指令了 在这个应用环境中 有 两种相对比较容易的方法来达到应用程序控制双通道 以太网卡驱动程序进行通道切换的目的 一种是通过 增加系统调用的方法来实现用户级的应用程序与内核 级的网卡驱动程序进行交互 另外一种就是同时修改 应用程序和网卡驱动程序 增加一个 OID 标识并增加 相应的处理操作 以此来通知网卡驱动程序进行数据 采集通道的切换 相比之下 第二种改动方式显然更 加简单高效 所以这里只介绍如何采用第二种方法来 实现数据采集应用程序与双通道以太网卡驱动程序之 间的数据交互 在此 先介绍一下网卡驱动程序中将 要修改的函数 MiniportSetInformation
WinPcap 将从网络设备驱动程序处收集原始数据包并
相关文档
最新文档