Выбор ответа Middle Процессы и сигналы обновлено

Процесс в состоянии D

Вопрос

Процесс висит в состоянии D и не реагирует на kill -9. Что это значит?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Непрерываемый сон: ждёт ввода-вывода в ядре (диск, NFS). D (uninterruptible sleep) значит, что поток внутри ядра ждёт ввода-вывода, и доставка сигналов отложена.

Варианты ответа

  1. Процесс стал зомби и ждёт, пока родитель заберёт код
  2. Непрерываемый сон: ждёт ввода-вывода в ядре (диск, NFS)правильный ответ
  3. Процесс остановлен через Ctrl+Z и ждёт SIGCONT
  4. Процесс заблокирован другим процессом через flock

Разбор

D (uninterruptible sleep) значит, что поток внутри ядра ждёт ввода-вывода, и доставка сигналов отложена. Типичные причины: умирающий диск, недоступный NFS, перегруженное хранилище. Зомби это Z, остановленный T. Ожидание flock обычно прерываемое (S), такой процесс kill -9 убьёт.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.