推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

实验38_CPU利用率统计.docx

资料介绍

实验 38:CPU 利用率统计

实验说明

实验概述

CPU 利用率是衡量系统负载和性能的重要指标。在嵌入式系统开发中,了解 CPU 的忙闲程度有助于优化任务结构、合理分配优先级和评估系统是否满足实时性要求。FreeRTOS 提供了运行时统计功能,可以收集每个任务的执行时间信息,从而计算 CPU 利用率。

实验原理

FreeRTOS 的运行时统计功能通过 configGENERATE_RUN_TIME_STATS 宏启用。使用时,需要提供一个高精度定时器(分辨率高于系统节拍定时器),用于测量任务执行时间。调度器在每次任务切换时记录当前任务的执行时间,并累加到该任务的统计计数器中。vTaskGetRunTimeStats() 函数将统计信息格式化为可读的字符串。

关键知识点

1. configGENERATE_RUN_TIME_STATS 启用运行时统计。

2. 需要额外的高精度定时器作为计时基准。

3. vTaskGetRunTimeStats() 获取各任务的 CPU 占用率。

实验现象

统计任务每 5 秒打印一次所有任务的 CPU 利用率,包括运行时间和占用百分比。

完整代码

  c
#include "FreeRTOS.h"
#include "task.h"
#include "stm32f7xx_hal.h"
#include <stdio.h>

/* 在 FreeRTOSConfig.h 中需定义:
 *   #define configGENERATE_RUN_TIME_STATS 1


部分文件列表

文件名 大小
实验38_CPU利用率统计.docx 38K

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单
  • 21下载积分 打赏60.00元   3天前

    用户:gsy幸运

  • 21下载积分 打赏70.00元   3天前

    用户:铁蛋锅

  • 21下载积分 打赏65.00元   3天前

    用户:xzxbybd

  • 21下载积分 打赏60.00元   3天前

    用户:jh0355

  • 21下载积分 打赏60.00元   3天前

    用户:w178191520

  • 21下载积分 打赏20.00元   3天前

    用户:jh03551

  • 21下载积分 打赏20.00元   3天前

    用户:sun2152

  • 21下载积分 打赏20.00元   3天前

    用户:kk1957135547

  • 21下载积分 打赏25.00元   3天前

    用户:w1966891335

  • 21下载积分 打赏20.00元   3天前

    用户:xuzhen1

  • 21下载积分 打赏15.00元   3天前

    用户:x15580286248

  • 21下载积分 打赏25.00元   3天前

    用户:pcb

  • 21下载积分 打赏20.00元   3天前

    用户:bhacker

  • 21下载积分 打赏15.00元   3天前

    用户:liqiang9090

  • 21下载积分 打赏25.00元   3天前

    用户:有理想666

  • 21下载积分 打赏15.00元   3天前

    用户:godbox

  • 21下载积分 打赏15.00元   3天前

    用户:aetek

  • 21下载积分 打赏5.00元   3天前

    用户:mulanhk

  • 21下载积分 打赏5.00元   3天前

    用户:JuneLin61

推荐下载