Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ОСРВ_Л6

.docx
Скачиваний:
10
Добавлен:
30.07.2022
Размер:
524.79 Кб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

Московский технический университет связи и информатики

(МТУСИ)

Кафедра

«Интеллектуальные системы в управлении и автоматизации»

Отчет по дисциплине

«Операционные системы реального времени»

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

Москва 2022

  1. Цель

Изучение средств для мониторинга производительности, управления процессами и автоматизации заданий.

  1. Задания

  1. Работа с процессами

    1. Посмотреть работу утилит top и ps.

    2. Посмотреть приоритет своего процесса и уменьшить скорость его выполнения за счет повышения номера приоритета.

    3. Создать программу на Си с бесконечным циклом, откомпилировать ее и запустить в фоновом режиме.

    4. Прервать выполнение этой программы.

  2. Запуск заданий по расписанию

    1. Создать каталог в своём домашнем каталоге.

    2. Создать сценарий shell, выполняющий следующие действия над другим непустым каталогом:

      1. проверка непустой ли каталог;

      2. если каталог непустой, то все файлы этого каталога архивируются и сжимаются в архив с именем, включающем текущую дату и время;

      3. сжатый архив помещается в другой каталог.

    3. Добавить созданному сценарию право на выполнение.

    4. Создать сценарий cron, по которому shell -сценарий выполняется каждые две минуты.

    5. Через две минуты проверить сработал ли сценарий.

    6. Удалить cron-сценарий

  1. Выполнение работы.

    1. Управление процессами

Утилита ps служит для отображения запущенных процессов, их PID. Пример работы утилиты представлен на рисунке 1.

Рисунок 1 - Утилита ps

Утилита top служит примерно для того же, что и ps, но выводит на экран гораздо больше информации. Вывод данной утилиты представлен на рисунке 2.

Рисунок 2 - Вывод утилиты top

В данной утилите можно увидеть различные параметры процессов, такие как PID, имя пользователя-владельца, приоритет процесса, используемые ресурсы.

С помощью команды renice можно изменить приоритет уже запущенного процесса (от высшего -20 до низшего 19) (рисунок 3).

Рисунок 3 - Команда renice

Для того, чтобы запустить программу в фоновом режиме нужно в конце команды для запуска поставить символ &.

Создадим и запустим на фоне программу с бесконечным циклом на C (рисунки 4, 5, 6).

Рисунок 4 - Программа с бесконечным циклом на C

Рисунок 5 - Компиляция программы в исполняемый файл

Рисунок 6 - Запуск программы на фоне

Проверим, работает ли программа на фоне с помощью утилиты top (рисунок 7).

Рисунок 7 - Проверка с помощью top

Для того, чтобы выключить процесс, используется команда kill [pid].

Выключим нашу запущенную на фоне программу и проверим остановку процесса с помощью утилиты ps (рисунок 8).

Рисунок 8 - Остановка процесса

    1. Запуск заданий по расписанию

Создадим 2 папки и в одной из них разместим несколько файлов (рисунок 9).

Рисунок 9 - Создание папок и файлов

Далее необходимо написать сценарий, который будет выполнять архивацию файлов в этой папке. Код этого сценария представлен на рисунке 10.

Рисунок 9 - Код сценария

Теперь необходимо добавить сценарий в cron, чтобы проводить архивацию каждые две минуты. Команда для этого: crontab -e.

Добавим сценарий в cron (рисунок 11).

Рисунок 10 - Добавление сценария

Проверим изменение cron, а также время и дату (рисунок 12).

Рисунок 11 – Проверка изменения cron

Проверим, был ли создан архив в указанной папке (рисунок 13).

Рисунок 12 - Проверка

Вывод.

В ходе выполнения данной лабораторной работы были изучены методы для управления процессами и работой с запуском программ по расписанию.

Соседние файлы в предмете Системы реального времени