linux网络编程 LINUX网卡驱动框架分析(1)

网卡的驱动很简单,就是填充net_device结构体,其应用层到网络协议层内核已经完成了,我们的工作就是填写这个net_device,然后注册就可以了。像STM32 跑裸机或跑ucos的,因为没有tcp、udp协议栈层,所以要移植LWIP小型协议栈修正一下:上面第三步应该是:register_netdev下面代码实现一个虚拟网卡,这里没有实际的网卡,只是把发出去的数据模拟远程回复过来,把数据转发到接收缓存里面,也就是回环操作。/** 参考 drivers\net\cs89x.
摘要由CSDN通过智能技术生成

网卡的驱动很简单,就是填充net_device结构体,

其应用层到网络协议层内核已经完成了,我们的工作就是填写这个net_device,然后注册就可以了。

像STM32 跑裸机或跑ucos的,因为没有tcp、udp协议栈层,所以要移植LWIP小型协议栈

修正一下:上面第三步应该是:register_netdev

下面代码实现一个虚拟网卡,这里没有实际的网卡,只是把发出去的数据模拟远程回复过来,把数据转发到接收缓存里面,也就是回环操作。

 

/*
* 参考 drivers\net\cs89x0.c
*/
#include <linux/module.h>
#include <linux/errno.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/fcntl.h>
#include <linux/interrupt.h>
#include <linux/ioport.h>
#include <linux/in.h>
#include <linux/skbuff.h>
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <linux/string.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值