История изменений
Исправление tailgunner, (текущая версия) :
Это как раз случай чтения с диска.
И что конкретно «блокирует» ядро от чтения данных с диска?
Внезапно, операция обмена с диском.
«Хитрая магия» продолжается миллисекунды
Ну и зачем прерывать эти миллисекунды?
Вот именно эти миллисекунды можно и не прерывать (хотя можно и прерывать), за одним важным исключением - за счет сигналов и/или тайм-аутов должно быть обеспечено разумное функционирование на сбойных устройствах (привет ушлепку Хартману и USB-подсистеме). Но большая операция read/write включает в себя десятки операций В/В на устройствах - после завершения каждой из них следует проверять флаг получения сигнала и отваливаться.
Исходная версия tailgunner, :
Это как раз случай чтения с диска.
И что конкретно «блокирует» ядро от чтения данных с диска?
Внезапно, операция обмена с диском.
«Хитрая магия» продолжается миллисекунды
Ну и зачем прерывать эти миллисекунды?
Вот именно эти миллисекунды можно и не прерывать (хотя можно и прерывать), за одним важным исключением - за счет сигналов и/или тайм-аутов должно быть обеспечено разумное функционирование на сбойных устройствах (привет ушлепку Хартману и USB-подсистеме). Но большая операция read/write включает в себя десятки операций В/В на устроствах - после завершения каждой из них следует проверять флаг получения сигнала и отваливаться.