KernelShark分析内核任务执行过程

news2024/11/18 3:00:23

一、KernelShark简介

KernelShark是一个非常实用的工具,其可以搭配 trace-cmd 使用,将内核的任务执行过程以直观的形式展现出来。下面的文档中详细的介绍了KernelShark的使用方法和功能,这里不再详细描述

https://www.kernelshark.org/Documentation.html

二、必要的组件安装

安装KernelShark

sudo apt-get install kernelshark

安装trace-cmd

sudo apt-get install trace-cmd

三、获取内核任务执行信息

1.使用 trace-cmd 进行追踪(通常在root权限下)

trace-cmd 会追踪当前状态下的内核中进行的所有任务进行追踪,也可以通过特定的参数来指定不同跟踪对象,下面的文章中有详细的描述。

ftrace利器之trace-cmd和kernelshark

我们这里只对进程切换事件(sched_switch)和进程唤醒事件(sched_wakeup)进行跟踪,

trace-cmd record -e sched_switch -e sched_wakeup

追踪时进程处于阻塞状态,需要我们手动停止(Ctrl + C)

 追踪结束后会在当前目录生成 trace.dat 文件,里面记录了追踪得到的结果。

2.使用 KernelShark 分析追踪结果

kernelshark 可以将 trace-cmd 生成的文件图像化,并进行相应的分析操作。

kernelshark trace.dat

图形化界面如下:

 不同颜色的任务条代表着不同的任务,可以通过鼠标点击在表格中锁定该任务的详细信息,还可以对任务进行搜索和筛选,详见 KernelShark 文档 https://www.kernelshark.org/Documentation.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/195333.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言--模拟实现库函数strcpy

目录前言strcpy实现的基本原理函数的模拟实现代码优化assert--断言const关键字strcpy的返回值结语前言 本章内容我们将通过相关函数来实现库函数中的strcpy。 strcpy实现的基本原理 C语言 strcpy()函数用于对字符串进行复制(拷贝)。需要的头文件为 &l…

IPtables进行端口复用

目录第一种方式:ICMP做遥控开关1、创建端口复用链2、创建端口复用规则,将流量转发至22端口3、开启开关4、关闭开关5、lets do it第二种方式:利用tcp数据包的关键字做遥控开关1、端口复用链2、端口复用规则(与上面一致)3、开启开关4、关闭开关…

手机上怎么制作动图?两招教你手机在线制作gif动画

想要在手机上制作gif动态图片,还不想下载软件的时候要怎么办呢?很简单,下面给大家分享两招在线gif制作(https://www.gif.cn/)的工具,不需要下载任何软件。小白也能轻松上手,支持原画质导出&…

STM32 (十五)ESP8266WIFI

简介1 ESP8266wifi 模块低功耗串口WiFi模块ESP8266内置一个Tensilica(泰思立达) Xtensa架构的32位处理器L106,具有5级流水线(ARM CortexM3是3级流水线),最大时钟速度为160MHz,可以使用高达16MB的外部SPI Flash。 该模块…

Kotlin Navigation开发

前言 其实小编之前一直都是用的Java来开发Android,但是工作需求,开始了Kotlin的编程,接触到了JetPack,发现其中的Navigation特别有意思,今天来给大家分享一下,我们做一个四个页面吧,从APP的 欢…

2023年PMP考试如何备考?

下面我给各位正在学习备考或者正在犹豫是否报名的朋友分享下我的想法和学习经验,希望对各位朋友有帮助。 一, 关于读PMBOK 在整个学习和备考期间我总共读了五遍PMBOK,第一遍是粗略的读,在读的时候一定要有耐心,因为在…

电商系统的高质量容量保障是怎样“炼成”的?

一分钟精华速览 容量保障的目标是保证服务在大量用户访问时,依然可以正常为用户提供服务。比如,在“双11”购物节的超高访问量下,各电商系统依然能够稳定地运行,可以说容量保障是所有技术人都应当具备的技能。 知名技术博主老张…

【0-1背包变式题】何以包邮(来自Acwing寒假每日一题)

⭐️前面的话⭐️ 本篇文章介绍来自一道0-1背包的变式原题,展示语言java/C。 📒博客主页:未见花闻的博客主页 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 📌本文由未见花闻原创,…

振弦采集模块监测传感器频率值不稳定

振弦采集模块监测传感器频率值不稳定 基本概念 振弦传感器:(vibrating wire sensor)是以拉紧的金属钢弦作为敏感元件的谐振式传感器。当弦的长度确定之后,其固有振动频率的变化量即可表征钢弦所受拉力的大小。根据这一特性原理&a…

2023华数杯B题社会稳定预警研究的材料支撑以及解题思路【全网独家社会稳定预警研究材料支撑】

B题社会稳定预警研究 材料支撑:(动态链接,后期会一直不断新增支撑论文进去) 社会稳定预警研究材料支撑合集下载 部分截图如下:(还会不断更新) 题目问题B:社会稳定预警研究 人类和…

【C语言】文件相关函数详解

🌇个人主页:平凡的小苏 📚学习格言:别人可以拷贝我的模式,但不能拷贝我不断往前的激情 🛸C语言专栏:https://blog.csdn.net/vhhhbb/category_12174730.html 小苏希望大家能从这篇文章中收获到许…

C++类基础(四)

访问限定符与友元 ● 使用 public/private/protected 限定类成员的访问权限 //main.cpp struct Str { //结构体默认的访问权限,可以省略 //public:int x 0; private:int y 0; };int main() {Str m_str;//OK: 在同一个翻译单元内,结构体struct Str { .…

单车价值超整车售价?智能汽车「新赛道」扎堆供应商

汽车网络安全赛道正在进入新周期。 1月初,HL Mando与全球汽车网络安全方案提供商Argus Cyber Security达成协议,扩大网络安全技术合作。前者将Argus CAN入侵检测系统(IDS)解决方案应用于刹车和转向等电气化系统产品。 目前&#x…

希尔排序基本思想示例及代码

希尔排序是插入排序的一种,直接插入排序相关内容可见: https://blog.csdn.net/weixin_43978384/article/details/128836898?spm1001.2014.3001.5502 1、算法思想 希尔排序又称“缩小增量”的排序,属于插入排序的一种。希尔排序的基本思想是…

Springboot+ssm企业员工考勤管理系统

毕业的进度: 第一阶段 系统概要设计,设计系统架构,数据库模型 第二阶段 完成模块的开发与测试 第三阶段 实现主要模块 本公司员工管理系统的设计与实现以Springboot作为框架,B/S模式以及MySql作为后台运行的数据库。…

2023年深圳积分入户考这个软考高级证书错不了!加分真高!

信息系统项目管理师是全国计算机技术与软件专业技术资格(水平)考试(简称软考)项目之一,是由国家人力资源和社会保障部、工业和信息化部共同组织的国家级考试,既属于国家职业资格考试,又是职称资…

最完整的文档成像工具包:GdPicture.NET Crack

GdPicture.NET企业级智能 PDF 和文档处理 SDK,使用最先进的人工智能、机器学习和模糊逻辑算法的高度复杂的 API 集。经过超过 15 年专注于创新的持续研究,GdPicture.NET 已成为市场上最全面的PDF、OCR、条形码、文档图像和格式的 SDK 。 最佳文档影像 SD…

设计模式之装饰器模式,以C++为例。

昨天更新了适配器,今天来盘一盘装饰器模式。装饰器模式以一种动态的方式给对象添加额外的职责,好似“装饰”在对象身上一样,通常通过继承和委托来实现。 目录 一、装饰器模式介绍 二、游戏人物如何使用装饰器模式 三、进阶写法(…

VScode ssh远程登陆到服务器阅读代码

1、背景介绍在工作中经常使用ssh远程访问服务阅读代码,但是通过ssh远程访问后没有图形界面,阅读代码非常不方便,本文向大家介绍使用VScode通过ssh远程登陆到服务器,本地可视化阅读查看服务器的代码文件。2、安装VS CodeVisual Stu…

Nginx优化

一.设置Nginx运行进程个数 1.查看cpu个数 grep processor /proc/cpuinfo 使用top 按1,也可以查看cpu的核心数 2.设置Nginx进程数 我的cpu数量是4,修改为4 vim /usr/local/nginx/conf/nginx.conf 二.Nginx运行CPU亲和力 vim /usr/local/nginx/conf/nginx.conf 4核4线程配置 注…