![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 68
another heaven
这个作者很懒,什么都没留下…
展开
-
【Linux 命令行参数解析函数getopt()】原理及直白理解
首先理解这个函数的功能(不能保证大家都能理解)获取命令行信息,并读取命令行中的选项;(命令行组成或许存在盲区,这是某位博主的这是他的博客)Option就是选项,Option argument是参数:每读取到一个选项,会返回一个int整型,这个整型不是选项位置,而是选项对应的ASCII码值;这个函数附带了一些全局变量,这些全局变量中的optarg会对应着解析到的某个选项对应的参数;在C程序中,我们可能会这样使用getopt:运行上面的程序,输出将会是:注意,尽管命令行中包含–c=argc原创 2024-06-28 19:00:00 · 1260 阅读 · 0 评论 -
【Linux-守护进程 原理及模型分析,以及代码创建过程】请提前熟悉一下Linux“会话”
Linux守护进程(Daemon)是运行在后台的一种特殊进程,用于执行特定的系统任务或等待处理某些发生的事件。守护进程独立于控制终端,通常在系统启动时开始运行,并持续运行直到被停止或系统关闭。守护进程对于操作系统的稳定运行至关重要,因为它们负责处理许多关键的系统功能。原创 2024-06-09 23:06:42 · 237 阅读 · 0 评论 -
【Linux下的动态链接和静态链接 及 调用libevent库函数的可执行文件无法正常运行情况剖析】
静态链接是指在编译时,将程序所依赖的函数或数据直接复制到最终的可执行文件中。这意味着可执行文件包含了程序运行所需的所有代码和数据。动态链接是指在运行时,程序所依赖的函数或数据从外部的共享库(shared library)中加载。这意味着可执行文件只包含了必要的引用信息,而实际的代码和数据则存储在外部的共享库中。原创 2024-06-09 21:00:07 · 379 阅读 · 0 评论 -
【Linux-关于makefile的原理及知识】通过五次代码结构的迭代来直白展示
后面表示注释;#这是自定义变量OBJS、TARGET;#这是自定义变量的使用方法$(name);#这是模式规则%+文件类型,自动找到依赖.c生成目标.o;%.o:%.c#最后使用了自动变量 $@ 目标 | $< 第一个依赖 | $^ 所有依赖;原创 2024-06-09 17:56:13 · 271 阅读 · 0 评论 -
【Linux 解析libevent下的bufferevent监听事件sample-helloworld.c】及改写read使能
【代码】【Linux 解析libevent下的bufferevent监听事件sample-helloworld.c】及改写read使能。原创 2024-06-06 09:13:14 · 173 阅读 · 0 评论 -
【Linux-Ubuntu环境下安装libevent + 安装、编译遇到问题解决方法】
执行configure ,检测环境生成makefile。头文件目录: /usr/local/include’库的路径: /usr/local/lib。没有目录就新建一个目录。原创 2024-06-02 18:55:00 · 151 阅读 · 0 评论 -
【LInux内核中IO多路复用 - reactor反应堆 - 基于epoll】一句话总结反应堆
不知道大家有没有看代码,各种各样的函数交错,第一次看难免恐惧,但实际上整个过程只需要一句话就可以总结,而且这个总结的方法你的开发过程中肯定用到过,因为真的很普通。。。。【反应堆就是用结构体将某个文件描述符的各种属性,其中主要是其回调函数关联起来,然后当监视到其状态发生变化返回时,自动调用对应的回调函数做相应处理】是不是很普通?我也询问了一下AI,为什么这么简单的逻辑,网络编程会将其复杂化、然后用各种专业术语加以约束?拿到的回答很多,总结就是一句话:一开始就有人是这样规定的;别人就是这样要求的;原创 2024-06-01 17:27:48 · 404 阅读 · 0 评论 -
【LInux内核中IO多路复用 背景+原理+直白总结+优缺点】EPoll篇 及大总结
epoll与select和poll相比,第一点是底层创建了一棵红黑树(不同的linux系统或内核不一样),红黑树会将接收的文件描述符进行存储维护,当文件描述符的个数发生改变时,只需要通过epoll_ctl系统调用告诉红黑树进行新增、删除、修改等操作,相比于select和poll每次拷贝一份新的文件描述符集给内核,节省了不少的资源;同时红黑树的数据结构相比于结构体数组、位图,时间复杂度方面优势更高;另外(epoll的另一个优点是它的可伸缩性。原创 2024-05-31 17:37:22 · 1626 阅读 · 0 评论 -
【LInux内核中IO多路复用 背景+原理+直白总结+优缺点】Poll篇
poll多路复用机制通过监视多个文件描述符的状态变化,实现了高效的I/O事件处理。然而,在文件描述符数量较多时,其性能可能会受到影响。因此,在实际应用中,通常会根据具体场景选择更合适的I/O多路复用机制,如epoll等。poll机制和select差不多,可以看看select篇的直白总结。比较显著不同的是poll中文件描述符集存储的方式是通过数据中存放结构体实现的。其次是没有文件描述符数量的限制。原创 2024-05-30 17:34:57 · 388 阅读 · 0 评论 -
【LInux内核中IO多路复用 背景+原理+直白总结+优缺点】Select篇
select的本质是将判断某个文件描述符(TCP中通常是socket,因为多个客户端和服务器通信,服务器就需要建立多个socket)是否处于就绪状态(就绪状态是指socket进入可读、可写、异常的某一种状态(比较重要),也有地方描述为socket可以进行IO操作的状态)的工作交给后台,这个时间你可以去处理其它的事情,等后台处理完了返回给你一个新的就绪状态的文件描述符集,你就可以接着处理这些处于就绪状态的socket连接。原创 2024-05-30 17:34:04 · 363 阅读 · 0 评论