"); //-->
这个配置选项在《linux设备驱动程序第三版》中并没有介绍,但是linux2.6.10有该项。
如果该选项打开,则在/proc/下会生成schedstat文件,否则不会生成。
这一选项对于分析CPU性能,内核调度策略是非常重要的,但对于我们调试驱动或BSP作用似乎不大。
Timestamp表示系统启动到现在所运行的时间;
第三行中,cpu0表示此系统只有一个cpu 并且编号为0,如果有三个CPU,则将会按如下方式列出:
Cpu0 ….Cpu1…..Cpu2…..那么cpu0后面的一串数字表示什么意思呢?第一个四个数字表示sched_yield()状态;接下来的三个数字表示schedule()状态;再接下来的两个数字表示try_to_wake_up()状态;最后的三个数字描述调度的反应时间;
8.2.1 什么是sched_yield()
Sched_yield()是一个内核API,当此函数被调用,cpu执行权从当前正在执行的线程切换到另一个(就绪并等待运行的)活动线程(优先级等于或高于当前线程)。
如果,没有优先级等于或高于当前执行线程的活动并且就绪的线程,那么Sched_yield()将立即返回,当前线程继续运行直到时间片到期。
下面再来解析这四个数字:
1#:表示活动和过期队列为空的次数; 2#:表示活动队列为空的次数;
3#:表示过期队列为空的次数;4#:表示Sched_yield()被调用的次数;
实验中:第一组数字为0 0 0 0;(Sched_yield()一次都没有被调用)。
疑问:Sched_yield()什么情况下被调用???
=======================================================================================
By 下家山 QQ 1209050967 上海松江文汇路928号258室 松江大学城 8/3/2012
上海索漫科技 http://www.xiajiashan.com 专注嵌入式(ARM7,Cortex-M0,Cortex-M3,ARM9,linux)培训
8.2.2什么是schedule()
schedule()也是一个内核API函数,通过这个函数对进程调度。
下面解释第二组数据的具体意思:
5#:至少有一个进程呆在活动队列的次数;
6#:schedule()被调用的次数;
7#:schedule()让CPU空闲的次数;
第二组数据分别为:3,5425,2358
8.2.3什么是try_to_wake_up()try_to_wake_up()也是一个内核API函数,此函数通过把进程状态设置为TASK_RUNNING,并调用activate_task将此进程插入本地CPU的运行队列,从而唤醒睡眠或停止的进程。
下面解释第三组数据的具体意思:
8#:try_to_wake_up()被调用的次数;
9#:try_to_wake_up()发现进程是觉醒的次数;
第三组数据分别为:0,0
8.2.4什么是“scheduling latency”(调度反应时间)最后一组数字是对“scheduling latency”(调度反应时间)的描述,Scheduling Latency的意思有点不好理解
(摘自:Clark Williams写的《Linux Scheduler Laterncy》)
主要是指调度—到响应的时间,这种调度是指一种刺激信号(如一个中断或一个事件发生),而这里的响应是指内核通过这种刺激信号得到一个机会来调度线程(正在等待唤醒)。
下面解释最后一组数据的具体意思:
10#:被任务消耗在运行上的时间总和(单位ms);
11#:被任务消耗在等待运行上的时间总和(单位ms);
12#: cpu执行到的任务总数;
最后一组数据分别为:848,1970,3067
写于上海松江
作者:下家山(请尊重原创, 转载请注明) http://www.xiajiashan.com,有什么问题可与我联系:ximenpiaoxue4016@sina.com
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
场效应管大全
具有缓冲差分输入和增益的精密压控电流源(INA105)
具有差动输出的差分放大器(INA105)
精密平均值放大电路(INA105)
鼎阳科技发布SDS7000L系列紧凑型数字示波器,助力多通道测试系统
差动输入电压-电流变换器(INA105)
纳芯微电子集成隔离电源的NSIP984x和NSIP954x系列
摆脱充电宝?手机电池容量步入“万级”时代
恩智浦S32R47系列雷达处理器:可支持L2+至L4级自动驾驶
Qorvo QPA3311和QPA3316:新型混合功率倍增放大器
[原创]4510 bootloader的实现与分析 (附源代码)
富士通半导体 MB95260系列“Easy-Kit”演示
现代汽车为CES 2026制定了AI机器人战略
Mathcad在6西格玛方面的应用
[求助]有人弄过DTMF的东西没?
常用场效应管和晶体管参数
[求] PCMCIA 标准的文档
德州仪器通过单芯片 AWRL6844 60GHz 毫米波雷达传感器,降低车内传感的复杂性和成本
中国开源AI模型崛起,Llama彻底出局
[原创]4510 bootloader的实现与分析 (附源代码)
串—并移位寄存器 74HC164芯片
台积电计划连续四年调升先进制程报价
2010英特尔杯大学生电子设计竞赛(9)
带PROFIBUS2PA 总线接口的矿用变频器的设计与实现
2010英特尔杯大学生电子设计竞赛(8)
巧判三点式振荡电路能否振荡
中芯国际重磅收购迎来新进展
由INA105构成的窗口比较器
word中文字体里的藏着的人名
Mathcad基本功能演示(101 demo)