- •Управление процессами в ос Linux
 - •Операторы перенаправления ввода-вывода Linux перечислены в таблице 1.
 - •Приостановим её выполнение:
 - •Информация о состоянии процессов. Мониторинг процессов с помощью ps
 - •Теперь, посмотрим результат вывода следующей команды:
 - •Получение списка пользователей, работающих в системе
 - •Запуск команд в определенное время с помощью команды at
 - •Первая команда
 - •После ввода всей команды вы увидите на дисплее нечто, наподобие:
 - •Командный интерпретатор shell
 - •Работа в графической среде X Windows
 
Приостановим её выполнение:
Ctrl+Z
На экране появится сообщение:
[1]+ Stopped yes
Это означает, что данный приостановленный процесс является текущим с номером 1.
Продолжим выполнение этого процесса в фоновом режиме:
#bg %1
или, в данном случае:
#bg (так как процесс текущий)
Убедимся в выполнении этого процесса с помощью команды jobs:
[1]+ Running yes
Пример 2
Уничтожим процесс с номером 3:
#kill %3
Возможно, на экране появится сообщение вида:
[3]+ Stopped <название команды>
Это сообщение о том что, опять таки, процесс был приостановлен, может ввести в заблуждение. Чтобы выяснить, «жив» ли еще процесс (т.е. исполняется или находится в приостановленном состоянии), напишите в командной строке:
#jobs
[3]+ Terminated yes
Это означает, что процесс был завершен. В случае повторного ввода команды jobs– процесс с номером 3 больше упоминаться не будет. Возможно, что командаjobsне выдаст никакого сообщения. Это означает, что ни один из процессов не запущен в фоновом режиме.
Обобщим то, что вы должны были узнать в этом разделе:
[ctrl-z]– Такая комбинация клавиш вызывает приостановку задачи работающей в приоритетном режиме, хотя некоторые программы могут игнорировать её. После того, как задача приостановлена, она может исполняться в фоновом режиме.
[fg] [%номер задачи]– Эта встроенная командаshell'а устанавливает задачу в приоритетный режим. Чтобы понять, какая задача будет установлена в приоритетный режим по умолчанию, напишитеjobs, и найдите задачу с «+».
[&]– Когда&добавляется в конец командной строки, это заставляет команду исполняться в фоновом режиме.
[bg] [%номер задачи]– Это встроенная командаshell'а,которая устанавливает задачу в фоновый режим. Чтобы понять, какая задача будет установлена по умолчанию, наберитеjobs, и найдите задачу с «+».
[kill] [%номер задачи]– Эта команда завершает задачу работающую в фоновом режиме или приостановленную. Вместо параметра[%номер задачи] можно использоватьPIDпроцесса (его можно увидеть, например, при запуске процесса в фоновый режим)
[jobs]– Эта командаshell'а просто перечисляет информацию о задачах, которые исполняются или приостановлены. Иногда, она также сообщают о процессах, которые благополучно завершились или были завершены.
[ctrl-c]– Это общий символ прерывания. Обычно, если вы нажимаете эту комбинацию клавиш, когда программа исполняется в приоритетном режиме, то уничтожаете программу (иногда для этого надо несколько попыток). Однако не все программы будут реагировать на этот способ прерывания.
Мониторинг многозадачной среды
Информация о состоянии процессов. Мониторинг процессов с помощью ps
Назначение команды ps – отслеживание работы фоновых и других процессов в системе. Поскольку в большинстве случаев фоновые процессы никак не взаимодействуют ни с экраном, ни с клавиатурой, то ps остается основным средством наблюдения за ними. Как правило, эта команда используется с рядом параметров, которые определяют выводимые поля. Одни из основных полей, выводимые командой ps перечислены в таблице 3, а некоторые опции этой команды – в таблице 4.
Таблица 3 . Основные поля, выводимые командой ps
			
  | 
			
  | 
| 
			 USER  | 
			
  | 
| 
			 PID  | 
			
  | 
| 
			 %CPU  | 
			
  | 
| 
			 %MEM  | 
			
  | 
| 
			 TTY  | 
			 Терминал, с которого был запущен процесс  | 
| 
			 STAT  | 
			 Статус процесса (R– выполняется,S– в режиме ожидания,N– процесс сниженного приоритета,W– временно полностью выгружен из памяти)  | 
| 
			 START  | 
			
  | 
| 
			 TIME  | 
			 Время работы процесса  | 
| 
			 COMMAND  | 
			 Имя выполненной команды  | 
Таблица 4. Некоторые опции команды ps
			
  | 
			
  | 
| 
			 -a  | 
			 Процессы всех пользователей  | 
| 
			 -l  | 
			 Расширенный формат вывода с дополнительной информацией  | 
| 
			 -r  | 
			 Только работающие процессы  | 
| 
			 -u  | 
			 Формат вывода с указанием пользователя  | 
| 
			 -x  | 
			 Показать процессы без контролирующего терминала  | 
Теперь приведем несколько примеров использования команды ps. Итак, если без опций команда ps вывела информацию в виде
# ps
PID TTY TIME CMD
559 tty1 00:00:01 login
560 tty1 00:00:01 bash
583 tty1 00:00:00 ps
то при запросе информации только о работающих процессах:
#ps - r
PID TTY STAT TIME COMMAND
594 tty1 R 0:00 ps -r
