改造Linux 内核协议栈代码

89 篇文章 0 订阅
32 篇文章 0 订阅

产品原型验证,需要在内核进行修改。初步想法是在原有网络栈代码里增加对自己封装的一个模块调用。


1.基础知识

模块函数的导出使用EXPORT_SYMBOL();

引用其他模块导出的符号时,需要先extern 函数定义。

测试:

编写内核模块module1。module2.其中module2 export_symbol(func1);

编写内核模块module2.extern func1后,调用func1。编译时,module1成功,module2提示

WARNING: "func1" [module2路径] undefined!

将module1加载到内核后,再编译,也不行。

2.内核代码修改

将原先在2.6版本上编译通过的代码移植到3.0内核上。发现3.0内核的函数接口netif_receive_skb(struct sk_buff *skb)跟2.6的完全不一样了。原先代码还能用吗?头疼。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值