rtla timerlat 工具是 timerlat 追踪器的一个接口。timerlat 追踪器为每个 CPU 分配一个内核线程。这些线程设置一个周期性定时器来唤醒自己并重新进入睡眠状态。唤醒后,它们收集并生成有用信息,用于调试操作系统定时器延迟。

timerlat 追踪器以两种方式输出信息。它会在定时器 IRQ 处理程序和 线程 处理程序中周期性地打印定时器延迟。它还通过 osnoise: 追踪点启用最相关信息的追踪。

rtla timerlat 工具设置 timerlat 追踪器的选项,并收集和显示结果摘要。默认情况下,收集是在内核空间中同步完成的,使用一个附加到 timerlat 追踪器的专用 BPF 程序。如果 BPF 或其所附加的 osnoise:timerlat_sample 追踪点不可用,rtla timerlat 工具会回退到使用 tracefs 在用户空间异步处理数据。