0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

深入探究Linux系统噪音统计(osnoise tracer)

Linux阅码场 来源:相遇Linux 作者:JeffXie 2021-09-18 10:53 次阅读

Linux系统中作为一个普通线程是非常苦逼的。不仅NMI 、硬中断、软中断可以打断它,甚至其它普通线程也可以来打断干扰到它的运行。

如果没有这些打断事件,一个普通线程执行while循环,可以high过天际。这些打断事件对一个普通线程来说,就相当于噪音一样的存在。

从Linux 5.14-rc1开始引入了一个新的tracer---(osnoise tracer)。就是从一个线程thread的角度把这些噪音全部详细统计出来。

2a6b43b0-156e-11ec-8fb8-12bb97331649.png

上图中 在1秒内普通线程(pid=98) 受到的各个干扰事件的次数和cpu available百分比等都可以显示出来。

统计到这个程度,感觉还是不够详细。 可以打开osnoise对应的trace event.

2a7b91e8-156e-11ec-8fb8-12bb97331649.png

上面的interference 5说明在一个采样周期内被打断了5次(包括4次中断和一次a.out线程事件产生的噪音),上面的每一次打断都有事件名称和对应的时间统计:

1232+1222+1192+1262+3994882=4000242-452 (~4000242)

统计时间约等于4000242ns 因为包含了检查代码的时间时间。

代码实现:

在以上每个打断事件处理函数中都插上trace event的钩子函数 来统计事件的执行时间,然后在每个cpu上运行一个内核线程进行周期性统计。

这个强大的osnoise tracer使用到的技术仅仅是用到了tracer event提供的基础设施。

我在阅码场发布过一个视频课程,对linux系统中各个tracer的使用和代码实现都有非常详细的讲解:

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10428

    浏览量

    206516
  • Linux
    +关注

    关注

    87

    文章

    10986

    浏览量

    206712
  • 噪音
    +关注

    关注

    1

    文章

    157

    浏览量

    23774
  • 代码
    +关注

    关注

    30

    文章

    4554

    浏览量

    66724

原文标题:Linux系统噪音统计(osnoise tracer)

文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    linux和windows的区别 linux系统一般用来干嘛

    Linux和Windows是两种不同的操作系统,有着不同的设计理念和用途。本文将对Linux和Windows的区别进行详细分析,并介绍Linux系统
    的头像 发表于 02-05 14:06 318次阅读

    深入了解Linux中vi命令的使用

    深入了解Linux中vi命令的使用 VI是一款在Linux系统中使用的文本编辑器,它是一款功能强大、灵活性高的编辑器。VI编辑器具有非常高效的命令行操作方式,并且在各个版本的
    的头像 发表于 12-25 11:15 208次阅读

    linux系统基础入门教程

    Linux是一种开源的操作系统,它被广泛应用于服务器、嵌入式系统以及个人电脑上。本篇文章将带领读者从入门的角度,详细介绍Linux系统的基础
    的头像 发表于 11-16 16:45 401次阅读

    Linux perf 简要介绍

    (profile)应用程序,从而找出瓶颈和优化点,以提高系统的性能和稳定性。它支持多种统计和视图模式,能够为开发人员和系统管理员提供深入的性能分析
    的头像 发表于 11-09 17:06 352次阅读

    linux属于什么操作系统

    Linux属于一种类UNIX操作系统Linux,全称GNU/Linux,是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX
    的头像 发表于 11-08 11:01 1707次阅读

    应急灯是否有噪音控制功能?

    大成智慧应急灯厂家的小编将深入探讨这一话题,为您解答疑问。 什么是应急灯噪音控制功能?噪音控制功能是指应急灯在工作状态下,能够尽量降低噪音的特性。一般来说,应急灯的
    的头像 发表于 10-20 10:26 328次阅读

    嵌入式操作系统之成绩统计管理系统

    题目:学生成绩统计管理系统一 实训任务 以VM ware虚拟机软件和Ubuntu12.04操作系统为平台,使用shell脚本编写程序,实现对学生成绩的统计计算等功能。要求使用
    发表于 08-22 09:54 3次下载

    产生噪音的原因有哪些 怎么去除录音中的噪音

     消除噪音的最好办法往往取决于噪音的来源和具体情况。以下是一些常见的方法来减少或消除噪音:   1. 声音隔离:建立物理隔离,使用隔音墙、隔音门窗、隔音材料等来阻止噪音传播,减少外部
    的头像 发表于 08-18 15:11 1376次阅读

    关于DC电源模块的噪音问题

    噪音问题会影响到电子设备的正常运行和使用,因此需要对这些问题进行深入了解,并找到相应的解决方法。 DC电源模块 首先,我们需要了解什么是噪音噪音是指在电路中存在的不必要的电信号,这些
    的头像 发表于 08-04 11:00 568次阅读
    关于DC电源模块的<b class='flag-5'>噪音</b>问题

    Linux驱动移植 Linux系统架构优点

    系统移植 linux 驱动移植 移植是说同样的一个 linux 操作系统,我们可以跑到不同的硬件上面,我们把操作系统移植到不同的硬件上面,这
    的头像 发表于 07-27 17:06 555次阅读
    <b class='flag-5'>Linux</b>驱动移植 <b class='flag-5'>Linux</b><b class='flag-5'>系统</b>架构优点

    通过linux跑一个ubuntu的带图形界面的系统

    一直想通过linux平台跑一个类似于ubuntu的带图形界面的系统,于是买了一块linux开发板,最终只是能跑个linux系统,没有把图形加
    发表于 07-21 14:29 519次阅读
    通过<b class='flag-5'>linux</b>跑一个ubuntu的带图形界面的<b class='flag-5'>系统</b>

    Linux ftrace工具宏定义

    =y 而后在 /sys/kernel/debug/trace 目录下提供了各种跟踪器(tracer)和 event 事件,一些常用的选项如下。 available_tracers:列出当前系统支持的跟踪器。 available_events:列出当前
    的头像 发表于 07-20 11:18 447次阅读

    揭秘中国激光焊接及激光锡焊市场份额,探究其发展前景

    随着科技的不断发展,激光焊接技术越来越受到人们的重视,成为工业制造领域的重要技术之一。据统计,中国激光焊接市场占据了重要地位,其市场份额不断攀升,而激光锡焊市场也在迅速发展,成为广受关注的焊接技术。本文将深入探究中国激光焊接市场
    的头像 发表于 06-27 10:43 449次阅读

    认识Cisco Packet Tracer思科模拟器

    Packet Tracer 是由Cisco公司发布的一个辅助学习工具,为学习思科网络课程的初学者去设计、配置、排除网络故障提供了网络模拟环境。
    的头像 发表于 06-07 10:03 2404次阅读
    认识Cisco Packet <b class='flag-5'>Tracer</b>思科模拟器

    深入理解 Linux 的 I/O 系统

    传统的 System Call I/O 在 Linux 系统中,传统的访问方式是通过 write() 和 read() 两个系统调用实现的,通过 read() 函数读取文件到到缓存区中,然后通过 write() 方法把缓存中的数
    发表于 05-26 09:31 276次阅读
    <b class='flag-5'>深入</b>理解 <b class='flag-5'>Linux</b> 的 I/O <b class='flag-5'>系统</b>