首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux源码epoll

前言 在linux的高性能网络编程中,绕不开的就是epoll。和select、poll等系统调用相比,epoll在需要监视大量文件描述符并且其中只有少数活跃的时候,表现出无可比拟的优势。...本文就是笔者在探究epoll源码过程中,对kernel将就绪描述符添加到epoll并唤醒对应进程的一次源码分析(基于linux-2.6.32内核版本)。...源码socket的阻塞和非阻塞>>中,博客地址如下: https://my.oschina.net/alchemystar/blog/1791017) 既然知道了tfile->f_op->poll的实现...的软中断机制调用net_rx_action,如下图所示: 注:上图来自PLKA(>) step2: 紧接着跟踪next_rx_action next_rx_action...总结 epoll作为linux下非常优秀的事件触发机制得到了广泛的运用。其源码还是比较复杂的,本文只是阐述了epoll读写事件的触发机制,探究linux kernel源码的过程非常快乐_。

2.2K20
您找到你想要的搜索结果了吗?
是的
没有找到

这是我平时的技术视频总结!

现在网上的学习资料是真的丰富,我上大学时除了图书馆借书之外很难看到自己想看的知识,羡慕现在的大学生可以在网上搜到海量的学习资料,甚至可以去听清华北大等名校教授的课程,这对自己的职业发展是非常有好处的。...现在只要你想学习某方面的知识,除了各种网站,书籍外还有很多的公众号自媒体分享自己的学习与经验,文字不够还可以去B站名校里的名师授课。总之,你要你想学,没有找不到的资源。...今天就分享下我平时经常看的视频学习内容,欢迎大家收藏,加群一起学习讨论。 Linux 内核 1....channel=learn_title 本课程对Linux内核进行有效的归纳,以机制与策略分离为指导思想,对Linux内核的设计思想和数据结构进行分析,让大家在每一章学习后,通过编写Linux内核模块并分析源代码...以上是我平时收藏的学习视频,希望对大家有所帮助,如果你也有自己的宝藏欢迎留言让更多的粉丝们看到。 对了,以下是人人极客社区的视频平台,欢迎关注,一起搞事情!

62030

高清视频,如何做到不卡顿?

我们看到视频1已经开始卡了,视频2还在继续播放,但清晰度角标已经变为超清了。...视频1 视频2 好,刚刚播放的是《长安十二时辰》张小敬追捕狼卫的一段视频,是在带宽限速的情况下播放的,大致是在 1.5Mbps 左右。...这种方式直接放弃速度,只 buffer,没数据可播时才会卡。当buffer 低时,选择最低清晰度,buffer随播放进度和下载进度一点点变化,清晰度不会有太大波动。 ?...学术论文的衡量标准是QoE,它包含了对清晰度质量、卡顿和清晰度波动的因素。但它是单一值,两次不同的播放,QoE一个高一个低,说明前一个体验更好,但是无法知道差的原因,是卡顿太多还是清晰度太低?...所以,我们最终通过和实际业务目标相结合,整体全盘数据,同时将卡顿率、高清晰度的播放时长占比拆开来看。

2.8K30

linux源码socket的close

linux源码socket的close 笔者一直觉得如果能知道从应用到框架再到操作系统的每一处代码,是一件Exciting的事情。...上篇博客讲了socket的阻塞和非阻塞,这篇就开始谈一谈socket的close(以tcp为例且基于linux-2.6.24内核版本) TCP关闭状态转移图: 众所周知,TCP的close过程是四次挥手...出现大量close_wait的情况 linux中出现大量close_wait的情况一般是应用在检测到对端fin时没有及时close当前连接。有一种可能如下图所示: ?...总结 linux内核源代码博大精深,阅读其代码很费周折。之前读>的时候由于有先辈引导和梳理,所以看书中所使用的BSD源码并不觉得十分费劲。...直到现在自己带着问题独立linux源码的时候,尽管有之前的基础,仍旧被其中的各种细节所迷惑。希望笔者这篇文章能帮助到阅读linux网络协议栈代码的人。

5.2K80

从无盘启动 Linux 启动原理

但是家里没有找到合适的 U 盘(穷~~),加上前段时间听了同事关于 linux 内核的分享,感慨自己对系统的理解不够。因此我决定使用无盘启动 volumio 顺便研究一下 linux 启动原理。...可以直接通过 Http 协议获取 Linux kernel 和 ramdisk 然后启动 或者加载一块 iscsi 磁盘,将 linux kernel 和 ramdisk 等信息放在 iscsi 磁盘中...引导加载程序:Syslinux 和 GRUB 前文说到 MBR 的 bootloader 主要功能是交棒内核,但是 bootloader 不会直接拉起 linux 内核,400K 太小,它没有能力将 linux...它可以提供选单选择 Linux 内核版本,此外加载程序使得我们可以向 Linux 内核传递参数。这点很重要,在我的案例中 volumio 就是通过 Syslinux 向内核传递启动参数的。...Linux 能够使用硬盘空间作为虚拟内存,因此得名“vm”。vmlinuz 是可执行的 Linux 内核。 initrd 是“initial ramdisk”的简写。

8.1K104

深度学习让系统“”懂短视频内容

伴随短视频的火热,用户规模、视频观看时长也在日益增长,而面对海量的视频,如何有效的推荐给用户、如何洞察热点事件成为了关键。...短视频领域概况&场景分析 来源:第一财经商业数据中心(CBNData)《2017短视频行业大数据洞察》 近两年短视频领域特别火爆,从最早的美拍,到快手、抖音、火山小视频、秒拍等等,越来越多的短视频应用走进了大家的日常生活...而围绕短视频的业务场景的应用也在增长:首先是推荐,如APP首页的Feed流推荐以及播放页面相关视频的推荐;第二是视频内容的搜索;此外还有基于短视频用户的行为数据(如上传视频内容)进行全方位、多维度画像;...视频内容分析三大基本问题 短视频业务相关的各业务场景,都涉及对视频内容的理解,而视频内容的理解需要解决三个问题:第一个问题“有什么”,也就是视频内容中包含的主题是什么;第二个问题“在哪里”,即视频发生的场景...短视频内容分析挑战 接下来我们介绍深度学习实际应用到短视频内容分析时需要解决的一些问题:首先要解决视频中“有什么”——识别视频中的物体、挖掘主题、并将视频特征信息提取保存;其次是“在哪里”——检测视频发生的场景以及文字识别

1.5K30

三大亮点带你 Linux 内核 5.6

当我们还在体验 Linux 5.5 稳定发行版带来更好的硬件支持时,Linux 5.6 已经来了。说实话,Linux 5.6 比 5.5 更令人兴奋。...即使即将发布的 Ubuntu 20.04 LTS 发行版将自带 Linux 5.5,你也需要切实了解一下 Linux 5.6 内核为我们提供了什么。...我将在本文中重点介绍 Linux 5.6 发布版中值得期待的关键更改和功能: Linux 5.6 功能亮点 当 Linux 5.6 有新消息时,我会努力更新这份功能列表。...换句话说,这只是 Linux 文件系统的一种新压缩技术,你可以选择待定的文件扩展技术。...因此,如果你好奇 Linux 5.6 所涉及的全部更改,则可以亲自了解一下。 现在你已经了解了 Linux 5.6 发布版带来的新功能,对此有什么看法呢?在下方评论中留下你的看法。

1.2K20

AI黑科技:超低码率实时高清视频

然而将超分辨率技术用在实时视频,音视频实验室在手Q上双人实时视频通话应该是公司内的第一个产品。...也正是因为视频前后帧存在着一定的相似度,视频超分辨率可以利用视频前后帧的相关性,借助其统计特性,进一步提高超分辨率的效果。...下面这个视频是超分辨率合入手Q 7.3.5视频通话的效果,点击可看到细节: ?...展望 音视频实验室的实时视频超分技术,是首次将大计算量的神经网络用在手机客户端实时视频这样性能预算吃紧的场景的一次大胆尝试,目前来看取得了不错的效果。...视频超分辨率除了可以提高视频质量,还可在保持相同视频质量的前提下节省上行、下行带宽。

8.8K90

Linux源码Socket(TCP)的accept

今天笔者就从Linux源码的角度看下Server端的Socket在进行Accept的时候到底做了哪些事情(基于Linux 3.10内核)。...关于epoll的原理可以看下笔者之前的博客《从linux源码epoll》: https://www.cnblogs.com/alchemystar/p/13161781.html 在这里描述一下原因,...为了解决这一问题,Linux提供了so_reuseport这个参数,其原理如下图所示: 多个fd监听同一个端口号,在内核中做负载均衡(Sharding),将accept的任务分散到不同的线程的不同...accept_queue被填充后,由用户线程通过accept系统调用从队列中获取对应的fd 值得注意的是,当用户线程来不及处理的时候,内核会drop掉三次握手成功的连接,导致一些诡异的现象,具体可以笔者的另一篇博客...源码Socket(TCP)的listen及连接队列》: https://www.cnblogs.com/alchemystar/p/13845081.html 总结 Linux内核源码博大精深,每次扎进去探索时候都会废寝忘食

1.8K00
领券