linux - 计算在运行 Linux 的 ARM Controller 板上运行的触摸屏 UI 的延迟

标签 linux touch linux-device-driver

我有一个带有 ARM Controller 的嵌入式板,运行 Linux 作为操作系统,它也有触摸屏。屏幕上的数据取自帧缓冲区 (/dev/fb0)。有什么方法可以计算出触摸选择任何选项时两次 UI 屏幕切换之间的响应时间?

最佳答案

上述场景涉及3个延迟

1。触摸屏记录手指并引发输入事件所花费的时间。

  • 通常是几毫秒。
  • 启用FTRACE并用时间戳记录以下内容
    -- 情报服务侦察
    -- 下半区入口
    -- 调用 input_report()

2。负责 GUI 的应用更新它所花费的时间。

  • 取决于应用/框架,通常是造成延迟的最重要因素。
  • 在 GUI 应用的代码中添加带有时间戳的普通控制台日志
    -- 接收到输入事件
    -- 就在修改 GUI 的命令之前

3。显示更新所花费的时间。

  • 通常在 15-30 毫秒内

最终延迟是上述 3 个延迟的总和。

关于linux - 计算在运行 Linux 的 ARM Controller 板上运行的触摸屏 UI 的延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18506135/

相关文章:

android - (Android 布局)将按钮放在不规则形状图像顶部或获取图像特定区域的触摸检测(可触摸区域)的解决方案?

Android 通过 touchEvent 从类 View 完成 Activity

linux - 基于 chanctx 的驱动程序和非基于 chanctx 的驱动程序有什么区别?

linux - 进程会在抢占式内核中失去唤醒机会吗?

linux - 一旦在 Linux 中添加设备,udev 规则就不起作用

c - 无法从 Linux 中的 C 访问程序集的正确全局标签数据

xml - 使用 xmllint 从 xml 中获取多次出现的属性值

android - 如果在屏幕上的任何位置单击,Unity 调用 3d 文本上的触摸功能。而不是只点击文字

Linux 询问自定义/别名命令的密码?

linux - MTR 返回奇怪的结果。每跳多个结果