Как предотвратить процесс зависания компьютера?

Процесс может привести к тому, что компьютер «замерзнет», например, при истощении процессора или свопа. Есть ли способ предотвратить это? Например, установив максимальный% CPU или IO MB / s, который может быть предоставлен процессу?

2 Solutions collect form web for “Как предотвратить процесс зависания компьютера?”

Для команды, которую вы запускаете из оболочки, прочитайте документацию оболочки на ulimit .

Существует функция ulimit() которая делает то же самое в C.

Существуют также различные ограничения, которые вы можете применять с помощью специфичных для реализации методов. В FreeBSD вы можете установить лимиты для каждого пользователя в login.conf или с помощью команды rctl . Некоторые дистрибутивы Linux используют limits.conf .

Существует программа cpulimit которая приостанавливает процесс, чтобы гарантировать, что с течением времени он использует меньше определенного количества процессора.

И, конечно же, всегда nice и nice , если вы просто хотите настроить приоритеты.

Частично. См. ulimit который обычно является командной консолью. (В bash, help ulimit ). Вы можете ограничить его память, общие циклы процессора и время (но не процент) и размер файлов, написанных им.

Вы также можете использовать команду nice . Но на самом деле, если нет ничего другого, требующего ресурсов, то приятное не будет иметь эффекта. Он вступает в силу только тогда, когда несколько процессов борются за ресурсы ЦП.

В Linux одна вещь, которую вы можете сделать, это сообщить убийце OOM, что этот процесс должен быть убит первым, когда память низкая.

  • Cron job throwing error "service: not found ", но при выполнении вручную в терминальном скрипте работает нормально
  • Получить PID функции, выполняемой в фоновом режиме
  • Как контролировать использование огромных страниц на процесс
  • Понимание формата прошедшего времени ps для длительных процессов
  • Можете ли вы указать отдельную ловушку в подоболочке, созданной с помощью ()?
  • Нитки против (Forked) Процессы
  • Создавать несколько процессов с помощью одной команды
  • Использование top для просмотра процессов, выполняемых пользователем от имени sudo
  • Время начала процесса с часовым поясом
  • Как узнать процесс (ы), который вилки много?
  • подозрительная активность на сервере?
  • Linux и Unix - лучшая ОС в мире.