Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Отправка сигналов процессам ⇐ ПредыдущаяСтр 3 из 3
Команда kill -СИГНАЛ PID
отправляет процессу с идентификатором PID указанный сигнал. Сигнал указывается либо в символьной форме (за вычетом приставки 'SIG'), либо в виде номера сигнала. Например, "kill -HUP PID" и "kill -1 PID" (цифра "один") - одно и то же. Список всех сигналов и их номеров можно просмотреть командой kill -l (буква "эль"). По умолчанию, если сигнал не указан, посылается сигнал SIGTERM (номер 15). Идентификатор процесса можно узнать с помощью команды ps . Пользователь может отправлять сигналы только к процессам, запущенным от его имени. Пример выполнения команды kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
Порядок выполнения работы Выполните в командной строке ОС семейства UNIX перечисленные ниже действия. Протоколируйте процесс выполнения (с помощь скриншотов или записывая команды) и представьте их в отчете.
1. Просмотрите список всех загруженных модулей. 2. Запустите процесс ls в фоновом режиме. 3. Запустите процесс ls в режиме демона. 4. Перенаправьте поток вывода команды ls в файл test и просмотрите его. 5. Перенаправьте поток вывода команд «ls –l» и «ls –l /proc» в файл test с его дозаписью. Просмотрите этот файл 6. Изучите список всех запущенных в вашей системе процессов. 7. Определите, какой процесс истратил больше всего процессорного времени. 8. Определите, какой процесс занимает больше всего памяти. 9. Определите, сколько демонов и зомби запущено в системе. 10. Определите количество свободной и используемой в системе памяти. 11. Получите дерево процессов. 12. Запустите два процесса (например, find и sort) в фоновом режиме (c подавлением потоков вывода), и два (например, ps и cat) - в интерактивном. find / 2>/dev/null | sort >/dev/null 2>&1 & ps -ej | cat
Выпишите из листинга команды ps строки, относящиеся к четырем выше указанным процессам. Найдите идентификаторы группы и сеанса для каждого процесса, определите лидеров групп и сеанса. Проверьте, работают ли запущенные процессы: ps -fu ваш_пользователь Закройте терминал. Вновь откройте и проверьте, какие процессы остались с прошлого сеанса. 13. Пошлите сигнал SIGTERM процессу find (если он еще работает, иначе предварительно запустите его). Убедитесь, что find исчез из списка процессов. 14. Пошлите какой-нибудь сигнал любому процессу, которым вы не владеете. 15. Найдите номер процесса своего shellа и отправьте ему сигнал SIGHUP. 3. Контрольные вопросы 1. Как происходит порождение процессов? 2. Какие функции выполняет процесс init? 3. Могут ли родственные процессы разделять общую память? 4. Каким образом может быть порожден новый процесс? Какова структура нового процесса? 5. В каких состояниях может находиться процесс? 6. Какими процессами в системе могут управлять пользователи? 7. Для чего используется фоновый режим? 8. Как можно перевести программу в фоновый режим? 9. Какая информация о процессах выводится при использовании команды ps? 10. Для чего используются сигналы в ОС UNIX? 11. В каких случаях следует принудительно завершить процесс?
|
||
Последнее изменение этой страницы: 2018-04-12; просмотров: 205. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |