当前位置: 首页 > news >正文

战队头像logo免费自动生成器seo网站优化培训要多少钱

战队头像logo免费自动生成器,seo网站优化培训要多少钱,蒙阴哪有做淘宝网站的,cms类型网站开发1. NETCONN接口简介 NETCONN API 使用了操作系统的 IPC 机制#xff0c; 对网络连接进行了抽象#xff0c;使用同一的接口完成UDP和TCP连接。 NETCONN API接口是在RAW接口基础上延申出来的一套API接口 首先会调用netconn_new创建一个pcb控制块#xff0c;其实际是一个宏定…1. NETCONN接口简介 NETCONN API 使用了操作系统的 IPC 机制 对网络连接进行了抽象使用同一的接口完成UDP和TCP连接。 NETCONN API接口是在RAW接口基础上延申出来的一套API接口 首先会调用netconn_new创建一个pcb控制块其实际是一个宏定义调用了netconn_new_with_proto_and_callback函数其就是先定义了一个netconn的结构体conn然后通过netconn_alloc申请内存并通过netconn_apimsg构建一个API消息 netconn_apimsg在里面就是调用tcpip_send_msg_wait_sem这个函数中显示构建了一系列消息的初始化然后调用sys_mbox_post发送邮箱 当然以上所述是需要通过宏定义修改才能实现的lwIP内核默认是直接调用RAW而不需要API消息如果是默认方式那么就会直接调用也就是直接通过lwip_netconn_do_newconn函数执行该函数中构建了一个api_msg结构体的指针msg然后只要msg-conn-pcb.tcp为空就调用peb_new创建内存这其中会根据宏定义判断是UDP还是TCP UDP就会调用udp_new_ip_type里面调用udp_new进行创建pcb控制块创建完成后会调用udp_recv构建udp的recv回调函数这里的回到函数就不需要像RAW接口一样自己编写了lwIP已经实现了recv_udp里面创建流程跟之前讲的很像调用memp_malloc创建内存给netbuf结构体buf然后初始化buf的参数比如p和ptr指针还有IP地址和端口号最重要的就是调用sys_mbox_trypost发送邮箱给tcp线程然后会把当前pbuf的指针发送出去 2. NETCONN实现原理 NETCONN控制块 这里比较好用的是union这个联合体在里面定义了四个控制块分别是IP、TCP、UDP以及RAW控制块这里是通过union选定了之后其他的结构体参数就会自动连接到union选定的结构体之中非常方便 netconn中定义了netconn_type连接类型netconn_state表示当前的连接状态然后union pcb定义了四种控制块选其一err_t last_err表示最新错误sys_sem_t op_completed表示API同步的信号量以及sys_mbox_t recvmbox表示接收数据的邮箱等 NETCONN收发的数据管理 定义了netbuf的结构体包含pbuf类型的p和ptiji发送方IP地址ip_addr_t addr以及发送方端口号u16_t port 其中p和ptr都指向pbuf链表不同的是p一直只想pbuf链表的第一个pbuf结构而ptr可能指向链表的其他位置netbuf_next()和netbuf_first()操作ptr字段 addr和port来记录数据发送方的IP地址和端口号netbuf_fromaddr和netbuf_fromport这两个宏定义来返回addr和port字段 之前就有过解析在通过NETCONN创建udp的控制块中会有recv_udp函数来进行udp_recv的回到函数的编写是lwIP内核实现的recv_udp中会构造netbuf结构体的指针bufmemp_malloc之后buf的p和ptr指针都赋值paddr和port也是给定相应的Ip地址和端口号然后通过sys_mbox_trypost把buf发送出去 接收数据则是调用netconn_recv完成而该函数最后如果是调用了UDP协议会return netconn_recv_data函数这个函数中会调用sys_arch_mbox_fetch接收消息接受的就是buf这个pbuf数据接受到了之后会把他传入recvbuf之中然后遍历pbuf链表并调用memcpy进行拷贝获取udp数据到数据缓冲区g_lwip_demo_recvbuf之中。 针对netconn结构体中需要注意宏定义LWIP_SO_SNDTIMEO这个宏定义之0则recv和send函数都是阻塞状态也就是说接收和发送在同一任务重由超时事件来控制一般都不这么使用会影响效率所以这个宏置1 3. NETCONN实现原理 netconn_alloc创建了netconn结构体和邮箱调用了udp_new和udp_recv完成了udp控制块以及rcv的实现netconn_bind把IP地址和端口号传入netconn然后调用netconn_connect进行连接数据会先进入udp控制块进入pbuf后借由recv_udp给到发送邮箱recvnbox发送出去后在通过接收邮箱recvmbox接收到。 邮箱传输的是pbuf的地址pbuf由netbuf管理 NETCONN与RAW区别 NETCONN就类似于STM32的标准库开发而RAW接口类似于STM32寄存器开发 3. NETCONN相关函数 总结 NETCONN就是对RAW接口进行初步封装能够省去自己实现五个回调函数的步骤更好的进行抽象帮助我们开发以太网的连接。
http://www.dnsts.com.cn/news/178456.html

相关文章:

  • 怎么建设自己的卡盟网站石家庄有哪些做网站的公司
  • 北京学校网站建设珠海房产网
  • 企业网站建设的核心现在去环球中心会变黄码吗
  • 提高网站转化率响应式网站解决方案
  • 哪个网站做的系统好用跨境电商开店
  • 济南专业做企业网站电子商务营销的概念
  • 湖南长沙微信平台号铁岭网站建设网络优化
  • 广东移动网站精品课程网站设计报告
  • 萧山做网站的企业WordPress行距太大
  • 域名和主机有了怎么做网站制作人是干什么的
  • 网站建设与管理维护的答案李建青哈尔滨电商设计企业
  • 建设网站的要点wordpress仿百度首页
  • 游戏网站开发找什么人可建旅游商城网站建设
  • php会了 怎么做网站广州网站建设排名一览表
  • 网站交互主要做什么软件开发的基本过程
  • 小说网站开发的目的wordpress开发网上商城
  • 马鞍山网站建设cnfg商城app定制
  • 国办网站建设规范惠州seo排名公司
  • 网站模板绑定域名wordpress 多站点 子目录
  • 如何把做的网站与域名连接不上镇江网站建设方式优化
  • 现在asp做网站政务网站建设交流发言
  • 淘宝客网站程序模板东乡建设网站
  • 网站开发主管岗位职责wordpress列表提取文章第一张图片
  • 婚纱设计网站wordpress放哪个文件夹
  • 湖北网站建站系统哪家好河南网站公司
  • 做网站的公司现在还 赚钱吗wordpress禁用自动保存
  • 网站建设能做什么工作自己开网站需要什么
  • 龙岗建网站公司全渠道分销零售平台
  • 华企立方网站代发货网站建设
  • 制作网站商城phpcms 手机网站