Я очень смущен, чтобы понять, почему обработчик прерываний не может спать? У меня есть 2 мнения по той же проблеме: -Почему у обработчика прерывания есть функция сна?
Обработчик прерываний не является планируемым? Потому что у него нет task_struct.
Если обработчик спит, система может висеть, потому что прерывание системного такта маскируется и неспособно планировать процесс сна.
, что я не получает, является обработчик прерываний планируемым, но из-за более низкие часы приоритета системы прерываний, которая маскируется из-за более высокий приоритетом intrrupt не в состоянии генерировать снова.
, пожалуйста, дайте мне хороший пример для этого же.
* система может зависнуть * - Почему может? Почему вы думаете, что это возможность? –
Возможный дубликат: http://stackoverflow.com/questions/1053572/why-kernel-code-thread-executing-in-interrupt-context-cannot-sleep, см. Также https://www.quora.com/Why- cant-you-sleep-in-an-interrupt-handler-in-the-Linux-kernel-Is-this-true-of-all-OS-ядра? share = 1 – augurar
Почему у этого есть тег C? Это вопрос ОС :( –