- •Операционные системы
- •1. Краткие теоретические сведения
- •2. Задание.
- •1. Краткие теоретические сведения
- •Утилиты dos
- •Команда проверки дисков chkdsk
- •2. Задания
- •3. Содержание отчета
- •Лабораторная работа №4 Установка операционной системы. Загрузка операционной системы Windows.
- •2. Задание
- •1.Ход работы:
- •2. Задание
- •Лабораторная работа № 6
- •Упражнение 3: передача прав владения
- •Добавление элементов к дереву консоли
- •Добавление видов панели задач и задач
- •Режимы доступа консоли.
- •Структура reg-файлов
- •Восстановление реестра
- •1.Краткие теоретические сведения
- •Настройка параметров центра обеспечения безопасности
- •2.Ход работы
- •Команды chown и chgrp
- •Команда mkdir
- •Команда cat
- •Команда cp
- •Команда mv
- •Команды rm и rmdir
- •Команды more и less
- •2.Задание
- •Команда ps
- •Команда top
- •Приоритеты, значение nice и команда renice
- •Сигналы и команда kill
- •Перевод процесса в фоновый режим
- •Команда nohup
- •Содержание
Перевод процесса в фоновый режим
Если вы запускаете какой-то процесс путем запуска программы из командной строки, то обычно процесс запускается, как говорят, "на переднем плане". Это значит, что процесс "привязывается" к терминалу, с которого он запущен, воспринимая ввод с этого терминала и осуществляя на него вывод. Но можно запустить процесс в фоновом режиме, когда он не связан с терминалом. Для запуска процесса в фоновом режиме в конце командной строки запуска программы добавляют символ &.
В оболочке bash имеются две встроенные команды, которые служат для перевода процессов на передний план или возврата их в фоновый режим. Но прежде, чем рассказывать об этих командах, надо рассказать о команде jobs. Она всегда вызывается без аргументов и показывает задания, запущенные из текущего экземпляра shell. В начале каждой строки вывода этой команды указывается порядковый номер задания в виде числа в квадратных скобках. После номера указывается состояние процесса: stopped (остановлен), running (выполняется) или suspended (приостановлен). В конце строки указывается команда, которая исполняется данным процессом. Один из номеров выполняющихся заданий помечен знаком +, а еще один — знаком -. Процесс, помеченный знаком +, будет по умолчанию считаться аргументом команд fg или bg, если они вызываются без параметров. Процесс, помеченный знаком -, получит знак +, если только завершится по какой-либо причине процесс, который был помечен знаком +.
А теперь можно рассказать и о командах fg и bg, которые служат для перевода процессов на передний план или возврата их в фоновый режим. В качестве аргумента обеим этим командам передаются номера тех заданий, которые присутствуют в выводе команды jobs. Если аргументы отсутствуют, то подразумевается задание, помеченное знаком +. Команда fg переводит указанный в аргументе процесс на передний план, а команда bg — переводит процесс в фоновый режим. Одной командой bg можно перевести в фоновый режим сразу несколько процессов, а вот возвращать их на передний план необходимо по одному.
Команда nohup
Предположим, вы запустили из оболочки bash несколько процессов, часть из них в фоновом режиме. И по каким-то причинам завершили текущую сессию работы в оболочке. При завершении сессии оболочка посылает всем порожденным ею процессам сигнал "отбой", по которому некоторые из порожденных ею процессов могут завершиться, что не всегда желательно. Если вы хотите запустить в фоновом режиме программу, которая должна выполняться и после вашего выхода из оболочки, то ее нужно запускать с помощью утилиты nohup. Делается это так:
nohup команда &
Запускаемый таким образом процесс будет игнорировать посылаемые ему сигналы (если это возможно). Стандартный выходной поток и стандартный поток ошибок при таком запуске команд перенаправляются в файл nohup.out или $HOME/nohup.out.
Команда nohup имеет побочный эффект, заключающийся в том, что значение nice для запускаемого процесса увеличивается на 5, т. е. процесс выполняется с более низким приоритетом.
Порядок выполнения работы.
Зарегистрироваться в системе как root в первом терминале.
Во втором терминале зарегистрироваться как user.
Вывести текущее состояние процессов на экран.
Перейти в первый терминал и сделать тоже, что и в пункте 3.
Сохранить текущий список процессов в файл proc.
Просмотреть процессы пользователя user, находясь в первом терминале.
Зарегистрироваться в третьем терминале под своими пользователями.
Запустить любые процессы от своего пользователя.
Перейти во второй терминал и попытаться завершить процессы, запущенные в третьем терминале.
Завершить процессы вашего пользователя, предварительно перейдя в окно первого терминала.
Просмотреть текущие процессы всех пользователей.
Завершить все процессы пользователя user.
Просмотреть результаты, перейдя во второй и третий терминал.
Вернуться в первый терминал.
Показать работу преподавателю.
Осуществить выход из системы.
Контрольные вопросы.
Как запустить несколько процессов в одной строке?
Как просмотреть все процессы одного пользователя, если в системе зарегистрировано несколько пользователей (мы зарегистрированы в системе как root)?
Как идентифицировать порождённые процессы в системе?
Как прекратить порождённый процесс?
Как прекратить процесс, запущенный другим пользователем?
Рекомендуемая литература
Таненбаум Э. Современные операционные системы. 2-е изд. -СПб.:Питер, 2002 - 1040 с.
Фигурнов В.Э. ШМ PC для пользователя. Краткий курс. - М.:Инфра-М, 2000. - 480 с.
Берлинер Э.М. и др. Windows 2000 professional (русская и английская версия). М.:Компьютер Пресс, 2000 - 360 с.
Андреев А.Г. MS Windows 2000 Professional русская версия/ под ред. А.Н.Чекмарева и Д.Б. Вишнякова. -СПб.:БХВ - Петербург, 2002. - 752 с.
Андреев А.Г. и др. MS Windows 2000: Server и Professional. Русские версии.-С-Пб.:ВНУ, 2000-1056 с.
Кокарева О. Реестр Windows 2000. С-Пб.:ВНУ, 2000 - 352 с.
Red Hat Linux. Секреты профессионала. М.: Вильяме, 2004 - 1056 с.
Степаненко О.С. Установка и настройка Windows XP. Само- учитель.- М: Изд. дом «Вильямс», 2005- 325с.
Каплан А., Нильсен М.Ш. Windows 2000 изнутри. М.:ДМК, 2000 - 400 с.
Симонович СВ. и др. Windows: лаборатория мастера. М.: АСТ-ПРЕСС, 2000 - 656 с.
Linux 5.2. Энциклопедия пользователя: Пер. с англ. / Тим Паркер - К.: "ДиаСофт", 1999. - 688 с.
Microsoft Windows 2000 Server. Справочник администратора. М.: Эконом. Серия, 2003.
В. Столингс. Операционные системы. М.: Вильяме, 2004. - 1040 с.
13.Microsoft Windows ХР. Колосков П. В. и др. М.: Наука и техника, 2005. - 256 с. 14. Запускаем Linux. Уэлш М. и др. М.: Символ-Плюс, 2004. - 730 с.