月朗风清洋 发表于 2017-6-16 15:02:40

【请教】Linux中断响应时间的测试

本帖最后由 月朗风清洋 于 2017-6-16 15:04 编辑

基于驱动,如何测试Linux内核响应中断的时间和用户响应中断的时间,即从底层发出一个中断到中断被响应结束时的这段时间!!!可以基于驱动的开发能完成测试吗?坐等大神解答!!!



飞凌-seventeen 发表于 2017-6-16 16:05:44

一般来说,非实时操作系统在非常短的时间间隔上的处理能力都是比较弱的,要想得到这个时间,一般来说在应用程序存在的情况下不容易实现。

月朗风清洋 发表于 2017-6-16 16:18:35

飞凌-seventeen 发表于 2017-6-16 16:05
一般来说,非实时操作系统在非常短的时间间隔上的处理能力都是比较弱的,要想得到这个时间,一般来说在应用 ...

明白,就内核来说,这个时间达到微秒级。在开发驱动程序中使用定时器能得到这个时间吗?另外,查阅了相关资料,在内核测试达到微秒级时间可以用do_gettimeofday()这个函数,倒是用这个函数测试过一个设备注册的时间,那是否可以用来测试从发送一个中断到响应完后这段时间呢?

飞凌-seventeen 发表于 2017-6-16 17:09:23

您好,这个时间在操作系统下基本无法取得,因为执行响应中断本身都需要时间,而且do_gettimeofday得到的时间受操作系统以及CPU影响较大,精度基本上只能是一个参考。

月朗风清洋 发表于 2017-6-16 17:16:29

飞凌-seventeen 发表于 2017-6-16 17:09
您好,这个时间在操作系统下基本无法取得,因为执行响应中断本身都需要时间,而且do_gettimeofday得到的时 ...

很感谢您的耐心回答!
那在您看来,基于驱动程序开发下有什么办法可以测试得到这个时间呢?希望能得到您的思路建议!

飞凌-seventeen 发表于 2017-6-16 17:29:12

一般如果不是要求非常精确的时间,我会考虑用示波器来得到这个时间。忽略执行响应中断本身。

月朗风清洋 发表于 2017-6-16 17:46:13

飞凌-seventeen 发表于 2017-6-16 17:29
一般如果不是要求非常精确的时间,我会考虑用示波器来得到这个时间。忽略执行响应中断本身。

好的,我在研究研究。
借此,再向您请教一个问题,就是我现在是基于OK335xD开发板下学习Linux驱动开发,参照提供的相关资料,已把操作系统烧进开发板,现在有个问题就是:比如先写个模拟字符设备驱动程序,有什么办法可以直接在虚拟机上通过开发板约束的Linux内核版本进行编译生成.ko文件呢?而不是每次添加驱动都是在约束的Linux内核版本里进行整个内核编译来生成.ko文件,这样花费了很多时间。。。让虚拟机安装运行开发板约束的Linux内核版本,这样以后可以直接把编译好的驱动.ko文件下到开发板,这可以吗?不知您有没有明白我的意思:)
页: [1]
查看完整版本: 【请教】Linux中断响应时间的测试