Лабораторная 1
Автоматический перезапуск сервисов

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

Задача заключается в эмуляции работы такой системы инициализации. Требуется разработать программу mysystemd, которая запускается с четырьмя параметрами: min, max, mintime, maxtime. Программа при старте запускает min своих копий (дочерних процессов) и контролирует их завершение. По факту завершения любой копии mysystemd запускает новую копию, пока количество запусков не достигнет значения max, после чего mysystemd ожидает завершения работы копий, а затем - завершает свою работу. Каждая копия функционирует от mintime до maxtime секунд (определяется случайным образом), выводит информацию о своем старте и завершении совместно с идентификатором процесса.