Возможный дубликат:
Чем этот загадочный удар управляет средний?
Почему эта команда разрушает Linux?
:(){ :|:& };:
Команда определяет названную функцию :
, который при вызове порождает две копии себя в фоновом режиме и выходов. Те две копии делают то же, приведя к огромному объему процессов за только секунду, продолжаясь неограниченно долго.
Ниже точно та же функция, но с более читаемым именем:
foo() {
foo | foo &
}
foo
С технической точки зрения система не отказала. Системный катастрофический отказ производит выход с ошибками. Это ни один не висел. Это подразумевало бы, что система делает что-то и не возвратилась. В особом случае это работает правильно. Просто занимает слишком много времени отвечать, потому что компьютерная реализация имеет конечные ресурсы. Следовательно бесконечные процессы и конечные ресурсы заканчиваются в бесконечное время для ответа.