自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 Linux虚拟机dpdk环境搭建

Linux虚拟机dpdk环境搭建

2025-04-19 11:59:36 533

原创 用epoll实现reactor模式

reactor是事件驱动的,其核心是不同的I/O事件对应不同的回调函数。不仅是 epoll,select 和poll,它们都是聚焦于I/O事件管理,实现对应的I/O操作。但是之前在了解 epoll 的时候,了解到 epoll 不也是事件驱动的吗?实际上还是有区别的:epoll 只是负责高效地监听 fd 上的事件,比如告诉应用程序哪些套接字有数据可读、哪些可以写入数据等。但是对于这些具体的事件要执行什么操作,epoll 并不关心。

2025-04-16 16:00:00 898

原创 select、poll、epoll解析

是最早被引入的 I/O 多路复用机制,select 的工作原理是将 fd 集合 fd_set 从用户空间复制到内核空间,由内核检查 fd 的状态,将有状态变化的 fd 集合返回给用户空间。nfds:它是需要监视的最大 fd 值加 1。为什么要加 1 呢?因为 fd 是从 0 开始编号的,例如最大 fd 是 5,那么实际需要检查的位是从第 0 位到第 5 位,总共 6 个位,所以 nfds 应该是 6(5 + 1)。这一参数用于指定 select 函数检查的 fd 范围。

2025-04-14 18:46:38 595

原创 socket网络编程常用API不完全指南

虽然 struct sockaddr 通用性强,但是它的成员变量在实际使用时不够方便,所以通常会使用特定协议族的地址结构,例如 struct sockaddr_in(用于 IPv4), struct sockaddr_in6(用于 IPv6)和 struct sockaddr_un(用于 Unix 域套接字)。UNIX\Linux中的一切都是文件。不同的计算机系统可能采用不同的字节序来存储多字节数据,常见的字节序有大端字节序(Big - Endian)和小端字节序(Little - Endian)。

2025-04-13 18:58:49 940

原创 互斥锁、自旋锁以及原子操作的简单了解及使用(C语言)

互斥锁、自旋锁以及原子操作的简单了解及使用(C语言)

2025-04-06 15:36:43 236

原创 Linux实现tcp服务器的百万并发出现的问题总结

tcp服务器同时创建100w个长连接问题总结

2025-04-04 20:26:42 633

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除