rt-thread 裁剪系列(一) 之 lwip

本文介绍了如何裁剪rt-thread操作系统的lwip协议栈和sal层,包括网络检测、socket数量限制、协议优化等,以适应嵌入式设备的需求。通过减少不必要的功能和优化内存使用,可以提高系统的效率和资源利用率。

本文由RT-Thread论坛用户@出出啊原创发布:https://club.rt-thread.org/ask/article/3011.html

前言

很久之前就开始整理下面的优化项列表了,但是有很多问题研究不深,一时不敢冒失推出。
前不久,有人在论坛上提问,当时我给的答案比现在少,但是现在列出来的这些也不能保证是全部,以后再做补充吧。

lwip 协议栈、sal socket 抽象层使用了很多全局数组变量当作线程栈,可以修改成从内存堆动态申请的内存。
有些功能和特性在嵌入式设备里是用不到的,可以先去掉。
还有的是可有可无的特性,如果想用,也存在优化空间,可以自己实现。

以下说明不限于 lwip ,sal 部分也有涉及。

裁剪详解

sal 可裁剪优化项
  1. SAL_INTERNET_CHECK: 网络检测,使用到了 workqueue 。检测原理就是尝试连接 “link.rt-thread.org::8101”,发送检测数据。
    这个或者可以去掉检测,或者换成自家服务器。
  2. #define SAL_SOCKETS_NUM 4: 这个可能是支持创建 socket 的最大数量。
  3. RT_USING_NETDEV: 网络接口设备,没有终端操作的情况下可以优化掉。其中,NETDEV_USING_IFCONFIG NETDEV_USING_PING NETDEV_USING_NETSTAT NETDEV_USING_AUTO_DEFAULT 分别可以单独增删。
  4. NETDEV_IPV6: 目前支持还不普及的吧,可以关掉,如果需要才开启。
lwip 可裁剪优化项
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值