1

我想测量手动触发的更新任务所花费的时间,为此,我想访问系统时间。我怎样才能做到这一点?

4

1 回答 1

3

假设您的目标已经有一个工作计时器,并且它提供了适合您的分辨率(毫秒刻度已成为标准),它应该很容易。

对于通过 u-boot COLI 手动触发的任务,可以启用一些命令来提供时间信息。您不必编写任何代码。如果这些命令目前不在您的目标构建中,您将使用#define 添加到您的板配置文件中。

来自u-boot/README

  CONFIG_CMD_TIME    run command and report execution time
  CONFIG_CMD_TIMER   access to the system tick timer

请参阅common/cmd_time.ccommon/cmd_misc.c

CONFIG_CMD_TIME 示例,如果在环境变量中定义了更新序列:

MyTarget # time run myupdatesequence
...
time: 0.214 seconds, 214 ticks
MyTarget # 

如果启动/停止事件仅在运行代码中可见,您可以自己编写代码来调用 get_timer() 并将结果输出到控制台。引用的源代码非常清楚。

于 2013-12-02T22:47:42.900 回答