上一篇文章中《图解Linux网络包接收过程》,我们梳理了在Linux系统下一个数据包被接收的整个过程。Linux内核对网络包的接收过程大致可以分为接收到RingBuffer、硬中断处理、ksoftirqd软中断处理几个过程。其中在ksoftirqd软中断处理中,把数据包从RingBuffer中摘下来 ...
分类:
系统相关 时间:
2020-12-08 12:45:42
阅读次数:
10
前面的几篇文章里讨论过了进程上下文切换和系统调用对系统性能的影响,我们今天再来看另外一个CPU吃货,那就是软中断。 你在用vmstat或者其他一些工具查看系统CPU消耗的时候,发现有两列是单独列出来的,分别是是hi和si。他们分别是硬中断和软中断。既然vmstat把中断的开销单独列出来了,就说明一个 ...
分类:
其他好文 时间:
2020-11-01 21:59:48
阅读次数:
21
Author: "zhangskd @ csdn blog" 概述 从本质上来讲,中断是一种电信号,当设备有某种事件发生时,它就会产生中断,通过总线把电信号发送给中断控制器。 如果中断的线是激活的,中断控制器就把电信号发送给处理器的某个特定引脚。处理器于是立即停止自己正在做的事, 跳到中断处理程序的 ...
分类:
系统相关 时间:
2020-03-24 11:02:54
阅读次数:
89
谁在消耗cpu? 用户+系统+IO等待+软硬中断+空闲 祸首是谁? 用户 用户空间CPU消耗,各种逻辑运算 正在进行大量tps 函数/排序/类型转化/逻辑IO访问… 用户空间消耗大量cpu,产生的系统调用是什么?那些函数使用了cpu周期? IO等待 等待IO请求的完成 此时CPU实际上空闲 如vms ...
分类:
数据库 时间:
2020-03-21 13:15:24
阅读次数:
101
并发与竟态,以及自旋锁,原子操作等 并发:多个任务并行执行。 竟态:并发的线程对共享资源的访问容易发生竟态。 竟态发生情况举例: 1.多处理器SMP的多个cpu,smp是一种紧耦合,共享总线存贮的系统模型。 2.单CPU内进程与抢占他的进程。 3.中断与进程之间:硬中断,软中断,tasklet,低半 ...
分类:
其他好文 时间:
2019-10-13 11:11:51
阅读次数:
70
软中断(softirq)会导致CPU 使用率升高 中断 是系统用来响应硬件设备请求的一种机制,它会打断进程的正常调度和执行,然后调用内核中的中断处理程序来响应设备的请求。中断其实是一种异步的事件处理机制,可以提高系统的并发处理能力。由于中断处理程序会 ...
分类:
系统相关 时间:
2019-08-20 22:11:08
阅读次数:
121
CPU性能指标 (1)CPU使用率 :1) 用户态CPU使用率(包括用户态 user 和低优先级用户态 nice)、2) 系统CPU使用率、3) 等待 I/O 的CPU使用率、4) 软中断和硬中断的CPU使用率、5) 虚拟机占用的CPU使用率。 & ...
分类:
系统相关 时间:
2019-08-20 21:50:01
阅读次数:
104
cpu使用率:描述了cpu非空闲时间占总cpu时间的百分比,根据运行任务的不同又分为,用户cpu使用率,系统cpu使用率,io cpu使用率,硬中断软中断cpu使用率 用户cpu使用率:cpu在用户态进程(user)和低优先级进程(nice)占cpu总运行时间的百分比,如果该值较高,则用户态有进程非 ...
分类:
其他好文 时间:
2019-06-29 00:44:03
阅读次数:
104
关于linux哪些能调用schedule或者等待事件的问题对同步问题,需要注意:1)不能调用schedule的情况(wait_event、sleep等,等待函数内部会调用schedule):(1)中断、(2)软中断、(3)tasklet、(4)timer(基于软中断实现)、(5)hrtimer(软中断或硬中断环境下执行)执行环境下、(6)或者“内核线程、普通线程内核态环境下调用了preempt_d
分类:
系统相关 时间:
2019-03-24 00:29:54
阅读次数:
265
编写linux设备驱动的注意事项之一当然写驱动,你得清楚上层调用是否导致存在函数重入、什么执行context下(1.中断、2.软中断、3.tasklet(软中断的一种)、4.timer(基于软中断实现)、5.hrtimer(软中断或硬中断环境下执行)、6.workqueue(也是kernelthread)、7.kernelthread、8.普通thread的内核态下)会访问此函数和此资源,需要什么
分类:
系统相关 时间:
2019-03-24 00:28:34
阅读次数:
251