vxworks下libpcap的移植】的更多相关文章

linux下的libpcap应用能够成熟的使用在第三方的应用中,但基于vxworks开发的项目中需要使用libpcap的部分功能则无相应的实现. 研究了下libpcap向vxworks的移植,并且小有所成,也算是填平两年前的一个技术坑. 目前已经完成的移植功能模块包括: 1 pcap_compile() 编译用户定义的过滤规则并且生成中间字节码. 2 pcap_filter() 对单个pcap数据包进行规则判断,过滤出符合规则的数据包 利用上述的两个功能加上vxworks的自定义网络驱动就可以实…
inet_addr("192.168.1.1");//返回网络字节序整型ip地址inet_ntoa(saddr);//将包含网络字节序整型ip地址的in_addr对象转换成本地char*类型的ip地址sockaddr_in中的in_addr对象sin_addr的s_addr一定要用网络字节序整型ip地址赋值 inet_addr返回的也是网络字节序sockaddr_in全是网络字节序in_addr使用时也全是网络字节序inet_ntoa参数存放的必须是网络字节序 struct socka…
Windows下将ImageMagick移植到Android平台 原文链接  http://www.pedant.cn/2014/06/18/imagemagick-ported-android/ ImageMagick是一个用来创建.编辑.合成图片的软件.它可以读取.转换.写入多种格式的图片.在移动平台做一些较复杂的图像处理时,难免会请出这尊大神.官方网站上也说明了它可以运行在多个平台之上,包括Android.不过官方的Releases版本只有Unix.Mac OS X.IOS.Windows…
3:USBD驱动详解 这一部分将要描述USBD(USB Host Driver)的典型应用.例如初始化,client注册,动态连接注册,设备配置,数据传输,同时还探讨了USBD内部设计的关键特性.这部分是VxWorks下USB驱动的核心. 1 初始化USBD:分为两步 (1)必须至少调用一次函数usbdInitialize().在一个给定的系统中,usbdlnifialize()初始化内部USBD数据结构,并依次调用其它USB驱动栈模块的入口.usbdinitialize()可以在启动时调用一次…
1.       ATA接口的三种数据传输方式 (1)PIO(Programmable Input-Output)传输,可以分为PIO寄存器传输和PIO数据传输.PIO寄存器传输主要用于对ATA设备中的寄存器进行读写.读写的数据位数为8位DD[7:0].ATA主机控制器根据所要读写的寄存器地址设置CS0_.CS1_.DA[2:0]地址信号,同时将DIOW_或DIOR_设为有效,ATA主机控制器或ATA设备驱动数据总线释放数据.当DIOW_或DIOR_撤销时,ATA主机控制器或ATA设备从数据总线…
.cdromFs:允许系统从按照ISO9660标准文件系统格式化的CD-ROM上读取设备: 通常文件系统驱动位于磁盘(块存取)设备驱动和IO系统之间,这一点在VxWorks中也不例外,但它在此基础上扩充了功能,即在文件系统下方增加了一个CBIO(Core Blocked IO)接口,在CBIO下方才是块存取设备驱动,其示意图如下: 图1 VxWorks I/O系统层次图 而CBIO接口部分又细分为4个逻辑子层,每个逻辑层都有与创建文件系统相关的函数,将CBIO接口部分细分后,包含各子层相关操作函…
最近因项目需要,做一个数据采集的单片机平台.需要移植 FatFs .现在把最后成果贴上来. 1.摘要 在 STM32 单片机上,成功移植 FatFs 0.12b,使用的 Nand Flash 芯片为 K9F2G08 . 特点: 系统配合 FatFs 实现了坏块管理,硬件ECC,软件 ECC 纠错 2.代码分析 2.1.擦写均衡分析 在create_chain 函数中实现,每次分配都由当前scl 指向的 free cluster 开始,逐块检查,是否有可用 cluster 存在.如果没有则取下一块…
1.首先按下面的博客教程下载和安装四个软件包: 点击打开链接 2.这四个软件都安装好之后按下面教程新建Makefile文件和test.c文件: 点击打开链接 Makefie: all: test.c gcc -g -Wall -o test test.c -lpcap clean: rm -rf *.o test test.c: #include <pcap.h> #include <stdio.h> int main() { char errBuf[PCAP_ERRBUF_SIZ…
在应用编程的时候,通常会碰到需要一个任务在特定的延时之后执行一个指定的动作,如等待外设以确保数据可靠,控制扬声器发声时间以及串口通信超时重发等.这就需要利用定时器机制来计量特定长度的时间段. vxWorks作为实时嵌入式系统,提供多样的定时接口函数.下面结合我的项目经历和网上的参考资料列举一些常用的定时方式,并说明其注意事项. 一.taskDelay taskDelay(n)使调用该函数的任务延时n个tick(内核时钟周期).该任务在指定的时间内主动放弃CPU,除了taskDelay(0)专用于…
一.首先下载libpcap包http://www.tcpdump.org/#latest-release 然后安装,安装完成后进入安装根目录的tests文件夹,编译运行findalldevstest.c(编译时加上-lpcap),查看是否发现所有网络设备. 二.下载wireshark观察抓包软件的各种功能 三.熟悉libpcap工作原理: 四.了解libpcap抓包基本流程: 五.编程实现 未完待续... PS:整理了一下libpcap常用的数据类型定义 libpcap的类型定义: 0).typ…