В многозадачных системах некоторые ненормальные условия предотвращают прогресс выполнения процессов или потоков. Я рассмотрю как процессы, так и потоки просто как "процессы". Два из этих условий называются dead-lock и live-lock.
Первое относится к процессам, которые блокируют друг друга, тем самым предотвращая выполнение. Последнее относится к процессам, которые не позволяют друг другу прогрессировать, но фактически не блокируют выполнение. Например, они могут постоянно заставлять друг друга откатывать транзакции, и не могут их завершить.
Другое условие называется ресурсным голоданием, в котором один или несколько конечных ресурсов, необходимых для прогресса процессов, были исчерпаны ими и не могут быть восстановлены, если процессы не прогрессируют. Это также особый случай live-lock.
Я хотел бы знать, есть ли какое-либо другое определение, особенно академическое, для "голодания", которое не ограничивается "ресурсным голоданием". Ссылки приветствуются.
И нет, это не домашнее задание.: -)