Лабораторная работа №2


НазваниеЛабораторная работа №2
страница4/9
ТипЛабораторная работа
1   2   3   4   5   6   7   8   9

Приостановка и продолжение работы заданий.


Запустим командой yes на переднем плане процесс, как это делалось раньше:

$ yes > /dev/null

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

Теперь вместо того, чтобы прервать задание комбинацией клавиш +, приостановим его (suspend, англ. подвесить), отправив сигнал STOP. Для приостановки задания надо нажать соответствующую комбинацию клавиш, обычно это +.

$ yes > /dev/null Ctrl-Z[1]+ Stopped yes >/dev/null $

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

Для возобновления выполнения задания на переднем плане можно использовать команду fg (от англ. foreground — передний план).

$ fg yes >/dev/null

Командная оболочка ещё раз выведет на экран название команды, чтобы пользователь знал, какое именно задание он в данный момент запустил на переднем плане. Приостановим это задание ещё раз нажатием клавиш +, но в этот раз запустим его в фоновом режиме командой bg (от англ. background — фон). После перевода в фоновый режим процесс будет работать так, как если бы при его запуске использовалась команда с символом & (амперсанд) на конце (как это делалось в предыдущем
разделе):

$ bg [1]+ yes $>$/dev/null & $

При этом приглашение командной оболочки возвращается пользователю, а команда jobs будет показывать, что процесс yes действительно в данный момент работает. Этот процесс можно уничтожить командой kill, как показывалось ранее.

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

Задания, работающие в фоновом режиме, могут пытаться выводить некоторый текст на экран. Это будет мешать работать над другими задачами.

$ yes &

Здесь стандартный вывод не был перенаправлен на устройство /dev/null, поэтому на экран будет выводиться бесконечный поток символов y. Этот поток невозможно будет остановить, поскольку комбинация клавиш + не воздействует на задания в фоновом режиме. Для того чтобы остановить эту выдачу, надо использовать команду fg, которая переведёт задание на передний план, а затем уничтожить задание комбинацией клавиш +.

Вызываемые без аргументов, команды fg и bg воздействуют на те задания, которые были приостановлены последними (если ввести команду jobs, эти задания будут помечены символом + (плюс) рядом с их номером). Если в одно и то же время работает одно или несколько заданий, задания можно помещать на передний план или в фоновый режим, задавая в качестве аргументов команды fg или команды bg их идентификационный номер (англ. job ID). Например, команда fg %2 помещает задание номер 2 на передний план, а команда bg %3 помещает задание номер 3 в фоновый режим. Использовать PID в качестве аргументов команд fg и bg нельзя.

Более того, для перевода задания на передний план можно просто указать его номер. Так, команда %2 будет эквивалентна команде fg %2.

Отметим также, что функции управления заданиями реализуются средствами командного интерпретатора. Команды fg, bg и jobs являются внутренними командами оболочки, т. е. одноимённых файлов с их программным кодом в файловой системе нет. В простых командных интерпретаторах, например на встраиваемых системах, эти команды могут не поддерживаться. В этих случаях управлять работой процессов можно, посылая им сигналы стандартной командой kill .
1   2   3   4   5   6   7   8   9

Похожие:

Лабораторная работа №2 iconЛабораторная работа №8 распределенный udp сервер/ udp клиент 38 Лабораторная...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

Лабораторная работа №2 iconЛабораторная работа №1
Лабораторная работа Выполнение расчетов с использованием программирования в среде Visual Basic for Applications (vba). 8

Лабораторная работа №2 iconЛабораторная работа №1
Лабораторная работа №8. Структурирование таблицы с автоматическим подведением итогов

Лабораторная работа №2 iconЛабораторная работа №1. Изучение основ микроструктурного анализа...
...

Лабораторная работа №2 iconЛабораторная работа №1 (одномерные массивы) 27
Лабораторная работа №6 (статические массивы, знакомство с графическим режимом. Возможно будет изменена) 49

Лабораторная работа №2 iconЛабораторная работа Создание и использование запросов (продолжение)....
Задания на экзамен выполняются студентом в компьютерном классе при наличии конспектов под руководством преподавателя

Лабораторная работа №2 iconЛабораторная работа уважаемые студенты! Сейчас вам предстоит выполнить...
«Бухгалтерский учет и анализ». Она состоит из нескольких частей, каждая из которых относится к разделу 3 «Первичные бухгалтерские...

Лабораторная работа №2 iconЛабораторная работа уважаемые студенты! Сейчас вам предстоит выполнить...
«Бухгалтерский учет и анализ». Она состоит из нескольких частей, каждая из которых относится к разделу 3 «Первичные бухгалтерские...

Лабораторная работа №2 iconЛабораторная работа №1 «Выполнение работы в сети Интернет. Работа с электронной почтой»

Лабораторная работа №2 iconЛабораторная работа №7 Отпуск материалов на производство, прочее...
Лабораторная работа №7 Отпуск материалов на производство, прочее выбытие материалов

Вы можете разместить ссылку на наш сайт:


Все бланки и формы на filling-form.ru




При копировании материала укажите ссылку © 2019
контакты
filling-form.ru

Поиск