i/o 设备轮询间隔是不是经常一致?

Posted

技术标签:

【中文标题】i/o 设备轮询间隔是不是经常一致?【英文标题】:Are i/o device polling intervals often consistent?i/o 设备轮询间隔是否经常一致? 【发布时间】:2021-08-24 11:15:59 【问题描述】:

这是一个关于常见现有操作系统的快速问题。

被轮询的 io 设备(例如 120hz 或 250hz)是否通常以固定速率进行轮询,或者轮询间隔通常存在相当大的波动,如果有波动,它们是以毫秒还是微/纳秒为单位的?

【问题讨论】:

【参考方案1】:

这取决于处理器架构、系统和应用程序设计。您的基本参考是this Wikipedia article。

在嵌入式系统中,轮询特定设备的结果和延迟可能是系统最重要和最核心的目的,您可能会看到一个紧凑的循环繁忙等待处理器指令速度(微/纳秒)低抖动。由于现代处理器体系结构的改进(例如取决于周围代码的推测分支),这些间隔可能不是完全确定的;见this relevant *** answer。

在一个多任务系统中,做很多事情并且偶尔轮询来自HID 的击键,当然会有相当高的延迟(以毫秒为单位)。任务可以切换,进程可以换入换出等。

这是对您的快速问题的快速回答 - 试图让您进入球场,但要明确根据您的环境,这里可能会有很多事情发生。

【讨论】:

这么好的快速答案,我真的很喜欢它,祝您度过愉快的一天/休息一天。

以上是关于i/o 设备轮询间隔是不是经常一致?的主要内容,如果未能解决你的问题,请参考以下文章

I/O控制方式

:Linux设备驱动中的异步通知与同步I/O

linux内核源码分析之设备驱动

I/O系统

操作系统概念笔记——第十三章:I/O输入系统

coursera 《现代操作系统》 -- 第十一周 IO系统