logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【C/C++】C 语言实现 WebSocket:握手、帧解析、掩码和回显

WebSocket 不是一开始就直接发送二进制帧,它先通过 HTTP 发起升级请求。服务端要读取,按 RFC 6455 的规则生成,再返回。之后这条 TCP 连接才进入 WebSocket 帧通信阶段。项目中的 WebSocket 状态用state == 0state == 1state == 2。

文章图片
#c语言#c++#websocket
【C/C++学习】从通讯录项目理解 C 语言里的分层设计

本文通过通讯录项目实践,阐述了C语言分层设计的重要性。项目将代码分为业务层(用户操作)、接口层(数据操作)和支撑层(存储实现),通过封装人员信息的增删查改及文件操作接口(如person_insert()、save_file()等),实现存储结构变更不影响上层逻辑。文中特别强调输入安全应使用fgets替代scanf,并指出分层设计的核心价值在于隔离变化点(如存储方式),使简单项目也能具备扩展性。该案

文章图片
#c语言#c++#学习
【C/C++】从 POSIX Socket 到 TCP 生命周期:一文理解网络 IO 的核心原理

文章摘要:理解网络IO核心原理:从POSIX Socket到TCP生命周期 本文系统梳理了C/C++网络编程的核心原理,从POSIX Socket API到TCP连接生命周期管理。主要内容包括:socket()创建文件描述符与TCP控制块,bind()绑定地址端口,listen()准备连接队列,TCP三次握手同步序列号,accept()获取已建立连接,send/recv操作内核缓冲区数据的原理。文

文章图片
#网络#c语言#c++
【C/C++】从 setjmp 到 ucontext 再到 hook:C 语言协程是怎么跑起来的?

网络服务里经常有一个矛盾:课程笔记里对这个问题的概括很直接:协程要解决的就是这个问题:业务代码看起来像同步代码,底层遇到 IO 不就绪时主动让出 CPU;等 fd 就绪后,调度器再恢复它。所以协程不是为了“炫技式切栈”,而是为高并发 IO 服务:一个函数普通调用时,执行权从调用者进入被调用者;函数返回后,栈帧销毁,不能随便回到中间某一行继续执行。协程不一样。它要支持两个基本动作:课程里列了三种常见

文章图片
#c语言#c++#java
【C/C++】用户态协议栈如何实现 epoll:红黑树、就绪队列和回调通知

用户态协议栈实现epoll的核心机制 本文介绍了在用户态协议栈中实现epoll功能的三个核心组件: 数据结构设计:使用红黑树(rbr)维护关注集合,链表(rdlist)管理就绪事件,条件变量(cond)实现等待机制。 关键操作流程: nepoll_create创建eventpoll对象并初始化数据结构 nepoll_ctl通过红黑树管理关注的socket描述符 协议栈通过回调函数将就绪事件加入就绪

文章图片
#c语言#c++#开发语言
【C/C++】从 DPDK 收包到用户态 TCP/IP 协议栈:一个 ustack 示例拆解

本文介绍了基于DPDK实现用户态TCP/IP协议栈的核心流程。首先明确DPDK并非协议栈,而是绕过内核直接访问网卡的工具箱。文章详细拆解了五个关键环节:(1)DPDK初始化阶段创建内存池和网卡队列;(2)主循环通过ring结构解耦收发包过程;(3)协议分发层处理Ethernet/IPv4/UDP/TCP等协议;(4)UDP报文如何进入应用缓冲区;(5)KNI机制将不处理的数据包交回内核。示例代码展

文章图片
#c语言#c++#tcp/ip
机器学习第3周(上)

监督学习之分类问题1、定义2、模型设置2.1、背景2.2、逻辑回归模型2.2.1、假设函数(模型)2.2.2、代价函数2.2.3、梯度下降2.2.4、软件自带的高级优化算法2.3、多元分类处理1、定义常见的二元分类如下:邮件:垃圾邮件/非垃圾邮件网络交易:欺诈/非欺诈癌症:恶性/良性多元分类如下:将邮件分类为:工作、家人、朋友等气候分类为:晴天、阴天、下雨、下雪等...

到底了