Назад | Перейти на главную страницу

Как изолировать (или контролировать) процесс в OSX

Я запускаю часть программного обеспечения OCR [с графическим интерфейсом и т. Д.] На OSX, которое просматривает папку и PDF-файлы OCR, помещенные в нее. Иногда процесс начинает плохо себя вести и потребляет огромное количество системной памяти и ЦП, выполняя неограниченное время для определенного PDF-файла.

Вы можете изолировать приложение в OS X с помощью встроенного средства песочницы (7). См. Справочные страницы для sandbox (7), sandbox-exec (1) и sandboxd (8). Этот репозиторий сценариев песочницы также может быть полезен.

OS X 10.7 (Lion) принесет больше функции песочницы приложений, тоже, но подробностей на сайте Apple не так много. Я предполагаю, что это будет связано с указанной выше функцией.

чтобы убить процесс, вам нужно найти его номер процесса.

$ ps a| grep _process_name_

это приводит к списку:

Образец:

$ ps a|grep Safari
31755 s000  R+     0:00.00 grep Safari

теперь убейте процесс:

kill 31755

Есть несколько переключателей для команды kill, иногда вам нужно использовать kill -kill _process number_

Чтобы получить полный список опций, используйте main kill

Обычный ол ' ps может помочь в этом: мы запускаем процесс, который учитывает количество секунд процессора, потребленных каждым процессом в соответствии с ps по сравнению с истекшим временем настенных часов и предупреждает системного администратора, чтобы тот посмотрел, является ли это соотношение чрезмерным; Вы, конечно, можете связать это с уничтожением определенных процессов, если захотите.