
выполненные работы / Л.р.4 Архангельский М.В. 2154
.docx
М
инистерство
цифрового развития, Связи и Массовых
Коммуникаций Российской Федерации
Ордена Трудового Красного Знамени
федеральное государственное бюджетное образовательное
учреждение высшего образования
«Московский Технический Университет Связи и Информатики» (МТУСИ)
Кафедра «Системного программирования»
Лабораторная работа №4
«Управление процессами»
по дисциплине:
Операционные системы
Выполнил:
студент группы БСТ2154
Архангельский Максим Вячеславович
Студенческий билет № ЗБСТ21001
Проверил:
Старший преподаватель
Королькова Татьяна Валерьевна
Москва 2024
Цели работы
Изучить основные команды и инструменты для управления процессами.
Ознакомиться со средствами мониторинга производительности в Linux.
Приобрести практический навык автоматизации запуска процессов.
Порядок выполнения работы
Задание 1. Мониторинг производительности системы
1. Выполните проверку системы при помощи команды top. Отсортируйте процессы по: объему используемой памяти; времени работы; идентификатору; проценту использования времени процессора.
2. Запустите новый процесс в системе, найдите его в выводе команды top. Измените приоритет запущенного процесса командой nice и убедитесь, что изменения отражены в выводе top.
3. С помощью команд atop и atopsar выполните сортировку процессов минимум по трем параметрам общей нагрузки.
4. При помощи команды mpstat и опции P выведите информацию по: определенному процессору, всем процессорам.
5. Выполните проверку системы при помощи команды pidstat. Выведите по четыре отчета статистики использования процессора для каждой активной задачи в системе с интервалом в три секунды.
В отчете приведите ответ в виде снимков экрана по каждому пункту задания.
Задание 2. Создание скрипта для получения статистики
Напишите скрипт, осуществляющий сбор статистики использования процессоров и статистики работы процессов средствами mpstat и pidstat, выводящий данные в текстовый файл с именем yyyy-mm-dd_h:m:s_syslog.
В отчет включите текст скрипта, содержимое файла лога и вывод команды ls -l для директории сохранения логов скрипта.
Задание 3. Создание автозапускаемой службы
С помощью утилиты systemd зарегистрируйте свою службу по сбору статистики, запускающую скрипт из задания 2 при старте системы. Запустите службу и проверьте ее работу.
В отчете приведите снимок экрана с выводом команды ls -l для директории сохранения логов скрипта, статистику выполнения службы и текст файла .service.
Задание 4. Создание таймера
Создайте таймер для запуска созданной службы каждую минуту, запустите таймер и проверьте его статус. После нескольких (5-7) минут работы, остановите таймер. Отразите в отчете результат работы таймера (снимок экрана со статистикой работы таймера и вывод команды ls –l для директории сохранения логов скрипта).
Выполнение (ход работы)
Задание 1. Мониторинг производительности системы
1. Выполните проверку системы при помощи команды top. Отсортируйте процессы по: объему используемой памяти; времени работы; идентификатору; проценту использования времени процессора.
Без сортировки (top)
С сортировкой по объему используемой памяти — top -o %MEM
С сортировкой по времени работы — top -o TIME+
С сортировкой по идентификатору процесса — top -o PID
С сортировкой по загрузке процессора — top -o %CPU
2. Запустите новый процесс в системе, найдите его в выводе команды top. Измените приоритет запущенного процесса командой nice и убедитесь, что изменения отражены в выводе top.
Выполним смену приоритета для процесса ssh-agent.
Изменим приоритет с помощью команды renice на -20 (переопределить приоритет можно только с помощью команды renice, команда nice задает приоритет при запуске процесса).
Как видим, приоритет у процесса изменился на -20.
3. С помощью команд atop и atopsar выполните сортировку процессов минимум по трем параметрам общей нагрузки.
Команда atop, без сортировки
Сортировка по времени (параметр t)
Сортировка по нагрузке на диск (параметр d)
Сортировка по использованию памяти (параметр m)
Для работы в atopsar установим sysstat командой: sudo apt-get install sysstat и запустим atopsar.
4. При помощи команды mpstat и опции P выведите информацию по определенному процессору и всем процессорам.
Выведем информацию по всем процессорам с помощью команды mpstat.
Выведем информацию по процессору 3: mpstat -Р 3
5. Выполните проверку системы при помощи команды pidstat. Выведите по четыре отчета статистики использования процессора для каждой активной задачи в системе с интервалом в три секунды.
Выведем статистику использования процессора 4 раза с интервалом в 3 секунды с помощью команды pidstat -u 3 4
Задание 2. Создание скрипта для получения статистики
Напишите скрипт, осуществляющий сбор статистики использования процессоров и статистики работы процессов средствами mpstat и pidstat, выводящий данные в текстовый файл с именем yyyy-mm-dd_h:m:s_syslog.
В отчет включите текст скрипта, содержимое файла лога и вывод команды ls -l для директории сохранения логов скрипта.
Создадим папку logs, перейдём в неё и создадим файл logs.sh.
Создадим скрипт, как показано на изображении
Файл со скриптом следует сделать исполняемым с помощью команды «chmod +x», затем выполнить его. После чего можно увидеть, что в каталоге появился новый файл с логами, прочитаем его с помощью команды «cat».
Задание 3. Создание автозапускаемой службы
С помощью утилиты systemd зарегистрируйте свою службу по сбору статистики, запускающую скрипт из задания 2 при старте системы. Запустите службу и проверьте ее работу.
В отчете приведите снимок экрана с выводом команды ls -l для директории сохранения логов скрипта, статистику выполнения службы и текст файла .service.
Создадим файл logs.service и запишем в нем скрипт
Скопируем файл logs.service в директорию /etc/systemd/system, перезапустим демон systemd, активируем, запустим службу:
Проверим статус службы. Как видим, служба функционирует, логи собраны в файл.
Задание 4. Создание таймера
Создайте таймер для запуска созданной службы каждую минуту, запустите таймер и проверьте его статус. После нескольких (5-7) минут работы, остановите таймер. Отразите в отчете результат работы таймера (снимок экрана со статистикой работы таймера и вывод команды ls –l для директории сохранения логов скрипта).
Создадим файл logs.timer и напишем скрипт
Файл скопируем в /etc/systemd/system/, перезапустим демон systemd. Запустим и активируем таймер.
Проверим статус службы, а также подождём 9 минут и остановим сервис таймера.
Заключение
В ходе выполнения лабораторной работы я изучил основные команды и инструменты для управления процессами, ознакомился со средствами мониторинга производительности в Linux и приобрел практические навыки по автоматизации запуска процессов.