据我了解,如果中断处理程序中有一些数据与其他进程共享,则应使用自旋锁保护,我们还需要禁用本地中断。但是,如果数据在多个中断处理程序之间共享,我该怎样保护呢?
答案 0 :(得分:2)
每当有critical section
(CS
)可以在interrupt context
中运行时,您使用spinlock
来保护它,CS
无关紧要interrupt handler
1}}在process
和interrupt handlers
之间或semaphore
之间共享。
您不使用mutex
或interrupt context
的原因很明显,因为您无法在{{1}}中睡觉。
答案 1 :(得分:1)
中断处理程序是不可抢占且不可重入的,因此没有并发访问数据的范围。