Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры еба!.doc
Скачиваний:
24
Добавлен:
23.12.2018
Размер:
631.3 Кб
Скачать

18. Основные команды unix для управления процессами (переключение между фоновым и оперативным режимами, управление приоритетом процессов, посылка и обработка сигналов). Процессы-демоны.

Все процессы в системе работают с определёнными приоритетами, также называемыми «значениями nice», которые могут изменяться от -20 (наивысший приоритет) до 20 (наименьший приоритет). Если приоритет не опредёлен, каждый процесс будет запускаться с приоритетом по умолчанию - 0 («базовым» приоритетом распределения машинного времени). Обычные пользователи могут только понижать приоритет своих собственных процессов в диапазоне от 0 до 19. Суперпользователь (root) может установить для любого процесса любое значение приоритета.

Команда renice

renice приоритет [[-p] pid ...] [[-g] pgrp ...] [[-u] пользователь ...]

где приоритет - значение приоритета, pid - идентификатор процесса (используйте опцию -p для указания нескольких процессов), pgrp - идентификатор группы процесса (если их несколько, используйте -g) и пользователь - имя пользователя, владеющего процессом (-u для нескольких пользователей).

renice +15 785

Команда nice

Чтобы запустить программу с определенным приоритетом, можно использовать команду nice. В этом случае необходимо указать свою команду в качестве опции для nice. Опция -n используется для установки значения приоритета. По умолчанию nice устанавливает приоритет 10.

nice -n 19 firefox

Процессы-демоны - это неинтерактивные процессы, которые запускаются обычным образом — путем загрузки в память соответствующих им программ, и выполняются в фоновом режиме. Обычно демоны запускаются при инициализации системы и обеспечивают работу различных подсистем: системы терминального доступа, системы печати, почтовый сервер.

Посылка и обработка сигналов

Каждый процесс в UNIX может реагировать на отправленные ему сигналы. Также процессы могут взаимодействовать друг с другом с помощью сигналов. Всего существует 64 различных сигнала, которые идентифицируются по

номерам (начиная с 1) или по символьным именам (SIGx, где x - имя

сигнала).

Пользователь может отправить процессу сигнал, для этого используется

команда kill. Формат команды:

kill [-<сигнал>] <PID>

Сигнал 9(KILL) безвозвратно уничтожает процесс, не оставляя ему времени на

нормальное завершение работы. Полный список сигналов

можно вызвать при помощи команды kill -l.

Переключение между фоновым и оперативным режимами

Задания могут быть либо на переднем плане (foreground), либо фоновыми (background). На переднем плане в любой момент времени может быть только одно задание. Задание на переднем плане – это то задание, с которым происходит взаимодействие пользователя; оно получает ввод с клавиатуры и посылает вывод на экран (если ввод или вывод не перенаправили куда-либо еще). Напротив, фоновые задания не получают ввода с терминала; как правило, такие задания не нуждаются во взаимодействии с пользователем.

Для приостановки задания надо нажать соответствующую комбинацию клавиш, обычно это Ctrl-Z. Для возобновления выполнения задания на переднем плане можно использовать команду fg. Для того, чтобы приостановить задание, работающее в фоновом режиме, нельзя пользоваться комбинацией клавиш Ctrl-Z. Прежде, чем приостанавливать задание, его нужно перевести на передний план командой fg и лишь потом приостановить. Таким образом, команду fg можно применять либо к приостановленным заданиям, либо к заданию, работающему в фоновом режиме.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]