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

linux源码epoll

前言 在linux的高性能网络编程中,绕不开的就是epoll。和select、poll等系统调用相比,epoll在需要监视大量文件描述符并且其中只有少数活跃的时候,表现出无可比拟的优势。...由于linux系统调用是通过(SYSCALL_DEFINE1,SYSCALL_DEFINE2......SYSCALL_DEFINE6)定义的,那么sys_epoll_create1对应的源码即是SYSCALL_DEFINE...(注:受限于寄存器数量的限制,(80x86下的)kernel限制系统调用最多有6个参数。...源码socket的阻塞和非阻塞>>中,博客地址如下: https://my.oschina.net/alchemystar/blog/1791017) 既然知道了tfile->f_op->poll的实现...总结 epoll作为linux下非常优秀的事件触发机制得到了广泛的运用。其源码还是比较复杂的,本文只是阐述了epoll读写事件的触发机制,探究linux kernel源码的过程非常快乐_。

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

Linux系统|Linux系统应急响应

目录 排查用户相关的信息 排查进程端口相关的信息 查找恶意程序并杀掉 斩草除根 判断入侵方式,修复漏洞 当我们被告知一台Linux服务器被黑客入侵,黑客利用该服务器进行挖矿...w #显示已经登陆系统的用户列表,并显示用户正在执行的指令 users #显示当前登录系统的所有用户的用户列表 last #查看最近登录成功的用户及信息...,查看的是 /var/log/wtmp 文件 lastb #查看最近登录失败的用户及信息,查看的是 /var/log/btmp 文件 lastlog #显示系统中所有用户最近一次登录信息...#查看爆破用户名字典 总的来说,黑客入侵主机有下列几种情况: 通过 redis 未授权漏洞入侵(好多挖矿程序是通过这个) ssh 弱口令暴力破解 Web 程序漏洞入侵 参考文章: 记一次Linux...木马清除过程 相关文章:Redis未授权访问漏洞 Linux挖矿病毒的清除与分析 Linux下性能监控、守护进程与计划任务管理 来源:

9.4K20

linux系统怎么内存使用率_cpu使用率0

top命令可以看到总体的系统运行状态和cpu的使用率 。 %us:表示用户空间程序的cpu使用率(没有通过nice调度) %sy:表示系统空间的cpu使用率,主要是内核程序。...在Linux系统监控的工具中,free命令是最经常使用的命令之一。...当可用内存少于额定值的时候,就会进行交换 如何额定值: 命令: cat /proc/meminfo 输出: [root@sss ~]# cat /proc/meminfo MemTotal:...所以我们linux,只要不用swap的交换空间,就不用担心自己的内存太少.如果常常swap用很多,可能你就要考虑加物理内存了.这也是linux内存是否够用的标准....如果是应用服务器的话,一般只第二行,+buffers/cache,即对应用程序来说free的内存太少了,也是该考虑优化程序或加内存了。

21.8K50

从操作系统Docker

Linux 操作系统的内核裁剪不仅是为了提升系统的安全性,而且是为了进一步提升应用系统的性能。...目前Linux Namespace 大致有7种,如下表所示: 类型 系统调用参数 隔离资源 Mount CLONE_NEWNS 系统挂载点 IPC CLONE_NEWIPC system V IPC(信号量...AUFS本质上仍是堆栈式的联合文件系统。在 Linux启动时,首先加载 bootfs目录,这个目录里面包括 Bootloader和kernel,Bootloader用来加载启动 kernel。...Docker 的架构模型 目前来说,除了 Linux 系统可以直接运行 Docker之外,其他系统都是基于虚拟机运行的。 其中,Client是与 Docker 通信的一个组件,也就是客户端。...一句话小结 从操作系统Docker,Docker 是操作系统能力的抽象重组,或者, 可以看成进程组粒度的可复用内核裁剪,其中以linux 内核中的Cgroup来管理进程组,以命名空间来实现资源隔离,以

53730

赵晨雨:从文件系统的数据结构Linux内核设计

作者简介 赵晨雨:西安邮电大学2018级陈莉君教授研究生,天真无邪小白一枚,已经爱上linux内核而不能自拔,正在成长为内核狂热爱好者?...跟随陈老师学习linux内核两个月了,对linux内核产生了极大的兴趣,最近学习文件系统,有一些自己的看法,很荣幸能在linux内核之旅进行分享^_^ 本篇文章使用尽量通俗的语言来说明linux内核文件系统中各个数据结构之间的关系...由于linux内核足够复杂,就会有多种解释方式,我认为所有关于linux内核的书籍,都是不同作者对内核的不同的看法,说不定这些看法对于linus本人来说都是很巧妙的,所以我在这里也大胆地提出自己对linux...第一条线(绿色) 这一条线是进程部分,也就是以进程的眼光来看文件系统。task_struct是一个非常复杂的结构体,我们在这里只与文件系统相关的字段。...由于自己接触linux内核时间不长,才疏学浅,班门弄斧了,如果有错误的地方欢迎大家指正,小赵万分感谢:-D

1.3K30

LinuxLinux系统调用

Linux系统调用 前言 操作系统——管理计算机硬件与软件资源的软件,是用户和系统交互的操作接口,为它上面运行的程序提供服务。...操作系统内核——操作系统的内核,负责管理系统的进程、内存、设备驱动程序、文件和网络系统。一个内核不是一套完整的操作系统。例如LinuxLinux操作系统——基于Linux内核的操作系统。...通常由Linux内核、shell(特殊的应用程序,提供运行其他程序的接口)、文件系统和应用程序组成。常见的有:Redhat、Fedora、Centos、Ubuntu和Android等。...Linux的运行空间: Linux的运行空间:内核空间+用户空间 ---- 内核空间——存放的是整个内核代码和所有内核模块,以及内核所维护的数据。 用户空间——用户程序的代码和数据。...---- 系统调用的实现 通过软件中断实现。 **软件中断:**它是通过软件指令触发的中断。Linux系统内核响应软件中断,从用户态切换到内核态,执行相应的系统调用。

27.8K10

linux源码socket的close

linux源码socket的close 笔者一直觉得如果能知道从应用到框架再到操作系统的每一处代码,是一件Exciting的事情。...socket_fd = socket(AF_INET, SOCK_STREAM, 0); ... // 此处通过文件描述符关闭对应的socket close(socket_fd) 而close(int fd)又是通过系统调用...操作系统何时回收close_wait 如果应用迟迟没有调用close_wait,那么操作系统有没有一个回收机制呢,答案是有的。...总结 linux内核源代码博大精深,阅读其代码很费周折。之前读>的时候由于有先辈引导和梳理,所以看书中所使用的BSD源码并不觉得十分费劲。...直到现在自己带着问题独立linux源码的时候,尽管有之前的基础,仍旧被其中的各种细节所迷惑。希望笔者这篇文章能帮助到阅读linux网络协议栈代码的人。

5.2K80

从无盘启动 Linux 启动原理

但是家里没有找到合适的 U 盘(穷~~),加上前段时间听了同事关于 linux 内核的分享,感慨自己对系统的理解不够。因此我决定使用无盘启动 volumio 顺便研究一下 linux 启动原理。...目标:无盘启动 volumio 系统 0.2 方案 正常 Linux 启动流程大体如下: BIOS 启动,完成自检,选择启动硬件 如果是磁盘系统读取 MBR 从 MBR 指示,找到 GRUB 所在分区,...Bootloader:这部分记录了一段较小引导代码,用于去启动硬盘其他分区位置上更大的引导文件,例如 linux 操作系统的 grub 目录。...如上图,第一个分区的 boot sector 存放着 windows 的 loader,第二个分区放着 Linux 的 loader,第三个第四个由于没有安装操作系统所以空着。...PXE 批量部署安装 Linux 系统 MBR 与 GPT iPXE MBR vs.

8.1K104

小说能写操作系统内核?

最近逛开源社区,发现一个开源项目 flash-linux0.11-talk 把学习操作系统源码,写成了一部小说,把内核当小说,挺爽的。...简介 品读 Linux 0.11 核心代码这个开源项目,作者以写小说的方式进行介绍操作系统核心代码,深入浅出的介绍了操作系统是怎样写出来的。...部分章节标题: 大纲 项目主要分为6大模块: 第一部分:进入内核前的苦力活 第二部分:大战前期的初始化工作 第三部分:一个新进程的诞生 第四部分:shell 程序的到来 第五部分:从一个命令的执行操作系统各模块的运作...第六部分:操作系统哲学与思想 细节 该开源项目每章的内容都写的简洁明了,就比如第一回,写到的就两行代码: mov ax,0x07c0 mov ds,ax 图文并茂的讲解了具体是什么意思 可见作者是很用心的讲解操作系统源码...小结 想想我们小说的时候是不是很爽,看这个开源项目也是一样,作者也是想要像写小说一样的把操作系统源码,生动有趣的展现给我们。快看起来像刷小说一样,一口气刷完它。

44130

站在操作系统层面JVM

站在操作系统层面JVM 编译型语言内存使用图 JAVA呢?...Java Heap和本地内存区别 参考 ---- 编译型语言内存使用图 在Java出现之前,像C/C++这样的编译型语言写出来的代码经过编译后,得到的是可直接在某平台(Windows或Linux)上执行的机器码...二是堆空间无法自动GC,因为内存管理是手工和操作系统交互,申请与释放的内存的操作交给程序员来做,操作系统并不支持GC。 ---- JAVA呢?...Native Memory没有相应的参数来控制大小,其大小依赖于操作系统进程的最大值(对于32位系统就是3~4G,各种系统的实现并不一样)。...JVM 的角度,JVM 内存之外的部分叫作本地内存,C 程序代码在运行过程中用到的内存就是本地内存中分配的。下面我们通过一张图来理解一下。

54430

Linux】初步认识Linux系统

Linux 操作系统 主要作用是管理好硬件设备,并为用户和应用程序提供一个简单的接口,以便于使用。...作为中间人,连接硬件和软件 常见操作系统 桌面操作系统 Windows macOs Linux 服务器操作系统 Linux Windows Server 嵌入式操作系统 Linux...移动设备操作系统 ios Android 操作系统发展历史 Unix ——> Minix ——> Linux GNU/Linux 狭义的LinuxLinux kernel 广义的Linux:...GUN/Linux Linux的发行版 Red Hat Debian SUSE gentoo archLinux 下载centOs 推荐镜像网站:阿里云 下载VMware 官方网站:VMware...Linux文件 Linux中一切皆文件 Linux目录结构 注意: /bin :是Binary的缩写,这个目录存放着最常使用的命令 /sbin : s是system的意思,这里存放的是系统管理员使用的系统管理程序

13420

Linux - Linux系统优化思路

文章目录 影响Linux性能的因素 CPU 内存 磁盘I/O性能 网络宽带 操作系统相关资源 系统安装优化 内核参数优化 文件系统优化 应用程序软件资源 系统性能分析工具 vmstat命令 iostat...---- 操作系统相关资源 系统安装优化 系统优化可以从安装操作系统开始。当安装Linux系统时,磁盘的划分、交换分区内存的分配都直接影响以后系统的运行性能....在Linux下可选的文件系统有ext2、ext3、ReiserFS、ext4、XFS。...---- 系统性能分析工具 如何从系统上发现是某个方面或某几个方面出现问题了呢?这就需要使用Linux系统提供的几个常用性能分析工具。...---- 小结 我们只说了三个常用的系统性能分析工具。其实Linux下的性能分析工具还有很多。

6.3K50
领券