Причина, по которой работает вилочная бомба, заключается в том, что существует ограниченный предел количества процессов, которые могут быть запущены в любой момент времени, и для того, чтобы заполнить этот предел, разработана вилка-бомба.
Поскольку предоставленный вами код forkbomb умирает, если он не может порождать дочерний процесс, родительские процессы фактически не висят, но тот факт, что дети продолжают создавать новые большие * -детские дети, полностью заполняет таблицу процессов.
Таким образом, решение сна предназначено для проникновения в некоторые процессы, которые просто спят в течение короткого периода времени, и для каждого процесса сна, который удается создать, происходит меньше вилок-бомб. В конечном счете, процессы сна заполняют сами таблицы процессов, а вилочные бомбы отмирают.
После того, как таблица процессов завершит процесс сна, цикл while может быть убит, а процессы сна будут умирать после того, как их время сна закончится. Задача решена.
Как уже упоминалось важную часть ЗШ команды является вводного фону &
, поэтому команда Баш будет в основном быть такой же, как указано в других ответах:
while (sleep 100 &) do; done
Я надеваю Не думаю, что часть nohup
/!
важна, если вы не хотите выходить из системы во время сна, но я был бы счастлив, если бы был прав, если я ошибаюсь.