Measuring Interrupt Latency

Interrupt latency is comprised of hardware propagation time, register saving, and software execution. Propagation time and register saving occur extremely fast—on the order of 10s of nanoseconds. Software execution, on the other hand, can be extremely slow. The Linux kernel allows device drivers to disable interrupts by using the cli system call. While interrupts are disabled, other interrupts can occur, but their service routines are not executed until interrupts are re-enabled. Developers disable interrupts to protect critical sections of their code. For example, a video card driver might disable interrupts for 16ms while waiting for video sync. Or a serial card driver might disable interrupts during a byte transmission. ...

Get Embedded Linux®: Hardware, Software, and Interfacing now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.