在Linux内核中,中断处理程序运行期间是不能发生进程切换的,因此,也就不能够使用睡眠。因为中断的内核控制路径在恢复时需要的所有数据都存放在被中断进程的内核栈中,如果发生了进程切换,那么在恢复时就找不到之前的那个进程,因为也就不能够获得那个进程的内核栈中的数据,使得中断能够正确的退出。
在Linux内核中,中断处理程序运行期间是不能发生进程切换的,因此,也就不能够使用睡眠。因为中断的内核控制路径在恢复时需要的所有数据都存放在被中断进程的内核栈中,如果发生了进程切换,那么在恢复时就找不到之前的那个进程,因为也就不能够获得那个进程的内核栈中的数据,使得中断能够正确的退出。